summaryrefslogtreecommitdiff
path: root/server/composer.phar
blob: 02812376d6f60c80ddbf702c112b29475d20a479 (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 64 65 66 69 6e 65 mapPhar('composer.phar');.define
0360 28 27 43 4f 4d 50 4f 53 45 52 5f 44 45 56 5f 57 41 52 4e 49 4e 47 5f 54 49 4d 45 27 2c 20 31 34 ('COMPOSER_DEV_WARNING_TIME',.14
0380 35 38 33 30 34 31 35 34 29 3b 0a 72 65 71 75 69 72 65 20 27 70 68 61 72 3a 2f 2f 63 6f 6d 70 6f 58304154);.require.'phar://compo
03a0 73 65 72 2e 70 68 61 72 2f 62 69 6e 2f 63 6f 6d 70 6f 73 65 72 27 3b 0a 0a 5f 5f 48 41 4c 54 5f ser.phar/bin/composer';..__HALT_
03c0 43 4f 4d 50 49 4c 45 52 28 29 3b 20 3f 3e 0d 0a d1 76 00 00 94 01 00 00 11 00 00 00 01 00 0d 00 COMPILER();.?>...v..............
03e0 00 00 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..composer.phar....+...src/Compo
0400 73 65 72 2f 41 75 74 6f 6c 6f 61 64 2f 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 2e 70 ser/Autoload/AutoloadGenerator.p
0420 68 70 b1 52 00 00 9a da 9c 56 b1 52 00 00 92 86 8b d4 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 hp.R.....V.R..............+...sr
0440 63 2f 43 6f 6d 70 6f 73 65 72 2f 41 75 74 6f 6c 6f 61 64 2f 43 6c 61 73 73 4d 61 70 47 65 6e 65 c/Composer/Autoload/ClassMapGene
0460 72 61 74 6f 72 2e 70 68 70 13 0f 00 00 9a da 9c 56 13 0f 00 00 4a 4d 41 e9 b6 01 00 00 00 00 00 rator.php.......V....JMA........
0480 00 16 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 61 63 68 65 2e 70 68 70 56 12 00 00 9a .....src/Composer/Cache.phpV....
04a0 da 9c 56 56 12 00 00 7d 15 c8 29 b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..VV...}..)........%...src/Compo
04c0 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 41 62 6f 75 74 43 6f 6d 6d 61 6e 64 2e 70 68 70 bc 02 00 00 ser/Command/AboutCommand.php....
04e0 9a da 9c 56 bc 02 00 00 5a 46 8f 87 b6 01 00 00 00 00 00 00 27 00 00 00 73 72 63 2f 43 6f 6d 70 ...V....ZF..........'...src/Comp
0500 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 41 72 63 68 69 76 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 dd oser/Command/ArchiveCommand.php.
0520 12 00 00 9a da 9c 56 dd 12 00 00 b6 33 b6 87 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 ......V.....3..........*...src/C
0540 6f 6d 70 6f 73 65 72 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 omposer/Command/ClearCacheComman
0560 64 2e 70 68 70 5a 05 00 00 9a da 9c 56 5a 05 00 00 89 ec 17 3e b6 01 00 00 00 00 00 00 20 00 00 d.phpZ......VZ......>...........
0580 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 43 6f 6d 6d 61 6e 64 2e 70 68 .src/Composer/Command/Command.ph
05a0 70 89 06 00 00 9a da 9c 56 89 06 00 00 b5 0c 76 4a b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 p.......V......vJ........&...src
05c0 2f 43 6f 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 /Composer/Command/ConfigCommand.
05e0 70 68 70 87 38 00 00 9a da 9c 56 87 38 00 00 b3 81 ad 4e b6 01 00 00 00 00 00 00 2d 00 00 00 73 php.8.....V.8.....N........-...s
0600 72 63 2f 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 rc/Composer/Command/CreateProjec
0620 74 43 6f 6d 6d 61 6e 64 2e 70 68 70 80 33 00 00 9a da 9c 56 80 33 00 00 a9 04 3b 29 b6 01 00 00 tCommand.php.3.....V.3....;)....
0640 00 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 44 65 70 ....'...src/Composer/Command/Dep
0660 65 6e 64 73 43 6f 6d 6d 61 6e 64 2e 70 68 70 a3 10 00 00 9a da 9c 56 a3 10 00 00 5c 3b 19 4c b6 endsCommand.php.......V....\;.L.
0680 01 00 00 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 .......(...src/Composer/Command/
06a0 44 69 61 67 6e 6f 73 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 94 3d 00 00 9a da 9c 56 94 3d 00 00 49 DiagnoseCommand.php.=.....V.=..I
06c0 f3 93 e3 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 ...........,...src/Composer/Comm
06e0 61 6e 64 2f 44 75 6d 70 41 75 74 6f 6c 6f 61 64 43 6f 6d 6d 61 6e 64 2e 70 68 70 db 08 00 00 9a and/DumpAutoloadCommand.php.....
0700 da 9c 56 db 08 00 00 03 53 37 d0 b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..V.....S7.........&...src/Compo
0720 73 65 72 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 13 07 00 ser/Command/GlobalCommand.php...
0740 00 9a da 9c 56 13 07 00 00 a9 a8 40 95 b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d ....V......@.........$...src/Com
0760 70 6f 73 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 60 0d 00 poser/Command/HomeCommand.php`..
0780 00 9a da 9c 56 60 0d 00 00 73 67 9c 32 b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d ....V`...sg.2........$...src/Com
07a0 70 6f 73 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 0c 38 00 poser/Command/InitCommand.php.8.
07c0 00 9a da 9c 56 0c 38 00 00 8f e2 a8 ae b6 01 00 00 00 00 00 00 27 00 00 00 73 72 63 2f 43 6f 6d ....V.8..............'...src/Com
07e0 70 6f 73 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 poser/Command/InstallCommand.php
0800 0c 14 00 00 9a da 9c 56 0c 14 00 00 60 43 ed 11 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f .......V....`C..........(...src/
0820 43 6f 6d 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 Composer/Command/LicensesCommand
0840 2e 70 68 70 1e 0e 00 00 9a da 9c 56 1e 0e 00 00 92 ad 4a 07 b6 01 00 00 00 00 00 00 26 00 00 00 .php.......V......J.........&...
0860 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 6d 61 src/Composer/Command/RemoveComma
0880 6e 64 2e 70 68 70 6e 10 00 00 9a da 9c 56 6e 10 00 00 80 cb 73 15 b6 01 00 00 00 00 00 00 27 00 nd.phpn......Vn.....s.........'.
08a0 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 43 6f ..src/Composer/Command/RequireCo
08c0 6d 6d 61 6e 64 2e 70 68 70 a5 1b 00 00 9a da 9c 56 a5 1b 00 00 ff d9 73 86 b6 01 00 00 00 00 00 mmand.php.......V......s........
08e0 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 63 72 .)...src/Composer/Command/RunScr
0900 69 70 74 43 6f 6d 6d 61 6e 64 2e 70 68 70 90 0b 00 00 9a da 9c 56 90 0b 00 00 e2 e8 32 da b6 01 iptCommand.php.......V......2...
0920 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 2f 53 ......+...src/Composer/Command/S
0940 63 72 69 70 74 41 6c 69 61 73 43 6f 6d 6d 61 6e 64 2e 70 68 70 b2 05 00 00 9a da 9c 56 b2 05 00 criptAliasCommand.php.......V...
0960 00 f1 c7 24 bd 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 43 6f ...$.........&...src/Composer/Co
0980 6d 6d 61 6e 64 2f 53 65 61 72 63 68 43 6f 6d 6d 61 6e 64 2e 70 68 70 61 09 00 00 9a da 9c 56 61 mmand/SearchCommand.phpa......Va
09a0 09 00 00 d0 55 7d 50 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 ....U}P........*...src/Composer/
09c0 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 0e 1a 00 Command/SelfUpdateCommand.php...
09e0 00 9a da 9c 56 0e 1a 00 00 e5 bf 78 89 b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d ....V......x.........$...src/Com
0a00 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 89 40 00 poser/Command/ShowCommand.php.@.
0a20 00 9a da 9c 56 89 40 00 00 f9 86 f1 f3 b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f 6d ....V.@..............&...src/Com
0a40 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 70 9c poser/Command/StatusCommand.php.
0a60 09 00 00 9a da 9c 56 9c 09 00 00 23 83 87 63 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 ......V....#..c........(...src/C
0a80 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 64 2e omposer/Command/SuggestsCommand.
0aa0 70 68 70 ff 07 00 00 9a da 9c 56 ff 07 00 00 be 3f 67 d0 b6 01 00 00 00 00 00 00 26 00 00 00 73 php.......V.....?g.........&...s
0ac0 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 61 6e rc/Composer/Command/UpdateComman
0ae0 64 2e 70 68 70 c0 20 00 00 9a da 9c 56 c0 20 00 00 1e e5 66 72 b6 01 00 00 00 00 00 00 28 00 00 d.php.......V......fr........(..
0b00 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 43 6f .src/Composer/Command/ValidateCo
0b20 6d 6d 61 6e 64 2e 70 68 70 ef 12 00 00 9a da 9c 56 ef 12 00 00 a0 8c d2 47 b6 01 00 00 00 00 00 mmand.php.......V.......G.......
0b40 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 29 09 .....src/Composer/Composer.php).
0b60 00 00 9a da 9c 56 29 09 00 00 ed 4c 2e df b6 01 00 00 00 00 00 00 17 00 00 00 73 72 63 2f 43 6f .....V)....L..............src/Co
0b80 6d 70 6f 73 65 72 2f 43 6f 6e 66 69 67 2e 70 68 70 38 1a 00 00 9a da 9c 56 38 1a 00 00 f8 88 3b mposer/Config.php8......V8.....;
0ba0 f4 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 69 67 .........-...src/Composer/Config
0bc0 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 9a da /ConfigSourceInterface.php......
0be0 9c 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 6f 73 .V....6J[.........(...src/Compos
0c00 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 ad 0c er/Config/JsonConfigSource.php..
0c20 00 00 9a da 9c 56 ad 0c 00 00 67 9e dc c8 b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f .....V....g...........$...src/Co
0c40 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 d2 23 mposer/Console/Application.php.#
0c60 00 00 9a da 9c 56 d2 23 00 00 6c f2 17 cf b6 01 00 00 00 00 00 00 2c 00 00 00 73 72 63 2f 43 6f .....V.#..l...........,...src/Co
0c80 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 74 74 mposer/Console/HtmlOutputFormatt
0ca0 65 72 2e 70 68 70 33 06 00 00 9a da 9c 56 33 06 00 00 da 81 45 75 b6 01 00 00 00 00 00 00 2d 00 er.php3......V3.....Eu........-.
0cc0 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 65 ..src/Composer/DependencyResolve
0ce0 72 2f 44 65 63 69 73 69 6f 6e 73 2e 70 68 70 51 0f 00 00 9a da 9c 56 51 0f 00 00 3f 98 ac 24 b6 r/Decisions.phpQ......VQ...?..$.
0d00 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 65 6e .......1...src/Composer/Dependen
0d20 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 6a 18 00 00 cyResolver/DefaultPolicy.phpj...
0d40 9a da 9c 56 6a 18 00 00 5e 2c 1c 6d b6 01 00 00 00 00 00 00 3e 00 00 00 73 72 63 2f 43 6f 6d 70 ...Vj...^,.m........>...src/Comp
0d60 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 6f oser/DependencyResolver/Operatio
0d80 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 9a da 9c 56 43 02 n/InstallOperation.phpC......VC.
0da0 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 2f 44 ...\.*........I...src/Composer/D
0dc0 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 72 6b ependencyResolver/Operation/Mark
0de0 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 00 9a AliasInstalledOperation.php.....
0e00 da 9c 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 70 6f ..V................K...src/Compo
0e20 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 6f 6e ser/DependencyResolver/Operation
0e40 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 2e 70 /MarkAliasUninstalledOperation.p
0e60 68 70 fd 02 00 00 9a da 9c 56 fd 02 00 00 19 33 23 86 b6 01 00 00 00 00 00 00 40 00 00 00 73 72 hp.......V.....3#.........@...sr
0e80 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 4f 70 c/Composer/DependencyResolver/Op
0ea0 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 d3 00 eration/OperationInterface.php..
0ec0 00 00 9a da 9c 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 43 6f .....V......&.........=...src/Co
0ee0 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
0f00 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 9a da 9c 56 b9 ion/SolverOperation.php.......V.
0f20 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 72 2f ...&.e.........@...src/Composer/
0f40 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 6e 69 DependencyResolver/Operation/Uni
0f60 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 2e 70 68 70 49 02 00 00 9a da 9c 56 49 02 00 00 46 nstallOperation.phpI......VI...F
0f80 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 70 65 ...........=...src/Composer/Depe
0fa0 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 65 4f ndencyResolver/Operation/UpdateO
0fc0 70 65 72 61 74 69 6f 6e 2e 70 68 70 68 03 00 00 9a da 9c 56 68 03 00 00 f6 53 d5 5d b6 01 00 00 peration.phph......Vh....S.]....
0fe0 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 79 52 ....3...src/Composer/DependencyR
1000 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 94 01 00 00 9a esolver/PolicyInterface.php.....
1020 da 9c 56 94 01 00 00 b0 0f 8d ad b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..V................(...src/Compo
1040 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 70 aa ser/DependencyResolver/Pool.php.
1060 21 00 00 9a da 9c 56 aa 21 00 00 45 6c fc 38 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 !.....V.!..El.8........+...src/C
1080 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 62 6c omposer/DependencyResolver/Probl
10a0 65 6d 2e 70 68 70 ed 14 00 00 9a da 9c 56 ed 14 00 00 19 6e fb 85 b6 01 00 00 00 00 00 00 2b 00 em.php.......V.....n..........+.
10c0 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 65 ..src/Composer/DependencyResolve
10e0 72 2f 52 65 71 75 65 73 74 2e 70 68 70 80 04 00 00 9a da 9c 56 80 04 00 00 d0 77 83 19 b6 01 00 r/Request.php.......V.....w.....
1100 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 63 79 .....(...src/Composer/Dependency
1120 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 2e 70 68 70 fb 17 00 00 9a da 9c 56 fb 17 00 00 20 21 7d Resolver/Rule.php.......V.....!}
1140 48 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 6e 64 H........+...src/Composer/Depend
1160 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 9a da 9c 56 encyResolver/RuleSet.php.......V
1180 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 65 72 ....:Z.E........4...src/Composer
11a0 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 65 72 /DependencyResolver/RuleSetGener
11c0 61 74 6f 72 2e 70 68 70 5d 1b 00 00 9a da 9c 56 5d 1b 00 00 34 93 d1 39 b6 01 00 00 00 00 00 00 ator.php]......V]...4..9........
11e0 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 6f 6c 3...src/Composer/DependencyResol
1200 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 9a da 9c 56 14 ver/RuleSetIterator.php.......V.
1220 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 72 2f ...}...........2...src/Composer/
1240 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 61 69 DependencyResolver/RuleWatchChai
1260 6e 2e 70 68 70 69 01 00 00 9a da 9c 56 69 01 00 00 68 ef 9a 2c b6 01 00 00 00 00 00 00 32 00 00 n.phpi......Vi...h..,........2..
1280 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 65 72 .src/Composer/DependencyResolver
12a0 2f 52 75 6c 65 57 61 74 63 68 47 72 61 70 68 2e 70 68 70 dc 06 00 00 9a da 9c 56 dc 06 00 00 89 /RuleWatchGraph.php.......V.....
12c0 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 70 65 ..8........1...src/Composer/Depe
12e0 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 68 70 ndencyResolver/RuleWatchNode.php
1300 e7 03 00 00 9a da 9c 56 e7 03 00 00 97 de 12 c8 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f .......V................*...src/
1320 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 6c 76 Composer/DependencyResolver/Solv
1340 65 72 2e 70 68 70 16 37 00 00 9a da 9c 56 16 37 00 00 1e 40 ff c2 b6 01 00 00 00 00 00 00 36 00 er.php.7.....V.7...@..........6.
1360 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 65 ..src/Composer/DependencyResolve
1380 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 9a da 9c 56 r/SolverBugException.php.......V
13a0 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 65 72 ....."qN........;...src/Composer
13c0 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 6c 65 /DependencyResolver/SolverProble
13e0 6d 73 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 28 04 00 00 9a da 9c 56 28 04 00 00 53 8b 8e bc b6 msException.php(......V(...S....
1400 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 65 6e ......./...src/Composer/Dependen
1420 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 d4 13 00 00 9a da cyResolver/Transaction.php......
1440 9c 56 d4 13 00 00 a0 33 f4 1b b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .V.....3..........-...src/Compos
1460 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 72 2e er/Downloader/ArchiveDownloader.
1480 70 68 70 87 0e 00 00 9a da 9c 56 87 0e 00 00 ac b8 a3 a0 b6 01 00 00 00 00 00 00 31 00 00 00 73 php.......V................1...s
14a0 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 65 70 rc/Composer/Downloader/ChangeRep
14c0 6f 72 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 cc 00 00 00 9a da 9c 56 cc 00 00 00 af e0 a8 bf ortInterface.php.......V........
14e0 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 6f 61 ........+...src/Composer/Downloa
1500 64 65 72 2f 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2e 70 68 70 8f 11 00 00 9a da 9c 56 8f der/DownloadManager.php.......V.
1520 11 00 00 46 0b ab fc 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 ...F.........../...src/Composer/
1540 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 2e 70 Downloader/DownloaderInterface.p
1560 68 70 ca 01 00 00 9a da 9c 56 ca 01 00 00 67 73 21 6c b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 hp.......V....gs!l........*...sr
1580 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 46 69 6c 65 44 6f 77 6e 6c 6f c/Composer/Downloader/FileDownlo
15a0 61 64 65 72 2e 70 68 70 95 15 00 00 9a da 9c 56 95 15 00 00 cc dd 96 c3 b6 01 00 00 00 00 00 00 ader.php.......V................
15c0 2f 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 46 69 6c 65 /...src/Composer/Downloader/File
15e0 73 79 73 74 65 6d 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 0a 01 00 00 9a da 9c 56 0a 01 00 00 2e systemException.php.......V.....
1600 2d 1e 8b 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 77 6e -..........)...src/Composer/Down
1620 6c 6f 61 64 65 72 2f 47 69 74 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 c5 25 00 00 9a da 9c 56 loader/GitDownloader.php.%.....V
1640 c5 25 00 00 54 b5 de cd b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 .%..T...........*...src/Composer
1660 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 47 7a 69 70 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 10 06 /Downloader/GzipDownloader.php..
1680 00 00 9a da 9c 56 10 06 00 00 33 05 54 d6 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f .....V....3.T.........(...src/Co
16a0 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 48 67 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 mposer/Downloader/HgDownloader.p
16c0 68 70 64 08 00 00 9a da 9c 56 64 08 00 00 ab 2e bd 16 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 hpd......Vd...............*...sr
16e0 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 50 61 74 68 44 6f 77 6e 6c 6f c/Composer/Downloader/PathDownlo
1700 61 64 65 72 2e 70 68 70 38 04 00 00 9a da 9c 56 38 04 00 00 73 7f 65 cc b6 01 00 00 00 00 00 00 ader.php8......V8...s.e.........
1720 30 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 50 65 61 72 0...src/Composer/Downloader/Pear
1740 50 61 63 6b 61 67 65 45 78 74 72 61 63 74 6f 72 2e 70 68 70 75 1b 00 00 9a da 9c 56 75 1b 00 00 PackageExtractor.phpu......Vu...
1760 7a 84 15 87 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 44 6f 77 z...............src/Composer/Dow
1780 6e 6c 6f 61 64 65 72 2f 50 65 72 66 6f 72 63 65 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 79 07 nloader/PerforceDownloader.phpy.
17a0 00 00 9a da 9c 56 79 07 00 00 28 8e 29 33 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f .....Vy...(.)3........*...src/Co
17c0 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 50 68 61 72 44 6f 77 6e 6c 6f 61 64 65 72 mposer/Downloader/PharDownloader
17e0 2e 70 68 70 e5 00 00 00 9a da 9c 56 e5 00 00 00 de c9 1f e7 b6 01 00 00 00 00 00 00 29 00 00 00 .php.......V................)...
1800 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 52 61 72 44 6f 77 6e 6c src/Composer/Downloader/RarDownl
1820 6f 61 64 65 72 2e 70 68 70 27 08 00 00 9a da 9c 56 27 08 00 00 c6 5b e9 8f b6 01 00 00 00 00 00 oader.php'......V'....[.........
1840 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 72 2f 53 76 6e .)...src/Composer/Downloader/Svn
1860 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 d6 10 00 00 9a da 9c 56 d6 10 00 00 c2 0f 92 c6 b6 01 Downloader.php.......V..........
1880 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
18a0 72 2f 54 61 72 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 e3 00 00 00 9a da 9c 56 e3 00 00 00 cd r/TarDownloader.php.......V.....
18c0 92 58 3f 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 44 6f 77 6e .X?............src/Composer/Down
18e0 6c 6f 61 64 65 72 2f 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 96 01 00 loader/TransportException.php...
1900 00 9a da 9c 56 96 01 00 00 68 22 42 72 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d ....V....h"Br........)...src/Com
1920 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 56 63 73 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 poser/Downloader/VcsDownloader.p
1940 68 70 f7 11 00 00 9a da 9c 56 f7 11 00 00 df 87 76 61 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 hp.......V......va........(...sr
1960 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 58 7a 44 6f 77 6e 6c 6f 61 64 c/Composer/Downloader/XzDownload
1980 65 72 2e 70 68 70 a7 04 00 00 9a da 9c 56 a7 04 00 00 57 24 3b e1 b6 01 00 00 00 00 00 00 29 00 er.php.......V....W$;.........).
19a0 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 5a 69 70 44 6f 77 ..src/Composer/Downloader/ZipDow
19c0 6e 6c 6f 61 64 65 72 2e 70 68 70 a5 0b 00 00 9a da 9c 56 a5 0b 00 00 97 6b 76 0a b6 01 00 00 00 nloader.php.......V.....kv......
19e0 00 00 00 26 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 ...&...src/Composer/EventDispatc
1a00 68 65 72 2f 45 76 65 6e 74 2e 70 68 70 a0 02 00 00 9a da 9c 56 a0 02 00 00 b1 99 6a ef b6 01 00 her/Event.php.......V......j....
1a20 00 00 00 00 00 30 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 .....0...src/Composer/EventDispa
1a40 74 63 68 65 72 2f 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2e 70 68 70 f1 20 00 00 9a da 9c tcher/EventDispatcher.php.......
1a60 56 f1 20 00 00 67 cd e0 d5 b6 01 00 00 00 00 00 00 39 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V....g...........9...src/Compose
1a80 72 2f 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2f 45 76 65 6e 74 53 75 62 73 63 72 69 62 65 r/EventDispatcher/EventSubscribe
1aa0 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 a9 00 00 00 9a da 9c 56 a9 00 00 00 68 b7 01 30 b6 01 rInterface.php.......V....h..0..
1ac0 00 00 00 00 00 00 18 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 46 61 63 74 6f 72 79 2e 70 ..........src/Composer/Factory.p
1ae0 68 70 24 39 00 00 9a da 9c 56 24 39 00 00 37 47 fe 01 b6 01 00 00 00 00 00 00 1a 00 00 00 73 72 hp$9.....V$9..7G..............sr
1b00 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 4f 2f 42 61 73 65 49 4f 2e 70 68 70 01 06 00 00 9a da 9c 56 c/Composer/IO/BaseIO.php.......V
1b20 01 06 00 00 11 41 2b f8 b6 01 00 00 00 00 00 00 1c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 .....A+.............src/Composer
1b40 2f 49 4f 2f 42 75 66 66 65 72 49 4f 2e 70 68 70 10 04 00 00 9a da 9c 56 10 04 00 00 68 76 15 e1 /IO/BufferIO.php.......V....hv..
1b60 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 49 4f 2f 43 6f 6e 73 ............src/Composer/IO/Cons
1b80 6f 6c 65 49 4f 2e 70 68 70 38 11 00 00 9a da 9c 56 38 11 00 00 16 ad c3 f4 b6 01 00 00 00 00 00 oleIO.php8......V8..............
1ba0 00 1f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 4f 2f 49 4f 49 6e 74 65 72 66 61 63 65 .....src/Composer/IO/IOInterface
1bc0 2e 70 68 70 84 04 00 00 9a da 9c 56 84 04 00 00 b4 3d 53 e5 b6 01 00 00 00 00 00 00 1a 00 00 00 .php.......V.....=S.............
1be0 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 4f 2f 4e 75 6c 6c 49 4f 2e 70 68 70 b3 03 00 00 9a da src/Composer/IO/NullIO.php......
1c00 9c 56 b3 03 00 00 7e 31 13 c4 b6 01 00 00 00 00 00 00 1a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .V....~1..............src/Compos
1c20 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 4b 84 00 00 9a da 9c 56 4b 84 00 00 8f 8f 97 25 er/Installer.phpK......VK......%
1c40 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 49 6e 73 74 61 6c 6c ............src/Composer/Install
1c60 65 72 2f 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2e 70 68 70 06 16 00 00 9a da er/InstallationManager.php......
1c80 9c 56 06 16 00 00 d3 fd c7 db 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
1ca0 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 2e 70 68 70 0e er/Installer/InstallerEvent.php.
1cc0 06 00 00 9a da 9c 56 0e 06 00 00 6c d4 7a 69 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 ......V....l.zi........*...src/C
1ce0 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 omposer/Installer/InstallerEvent
1d00 73 2e 70 68 70 de 00 00 00 9a da 9c 56 de 00 00 00 ec 9f 40 47 b6 01 00 00 00 00 00 00 2d 00 00 s.php.......V......@G........-..
1d20 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 6c 65 .src/Composer/Installer/Installe
1d40 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 e3 02 00 00 9a da 9c 56 e3 02 00 00 5e 83 93 ca b6 01 rInterface.php.......V....^.....
1d60 00 00 00 00 00 00 2b 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 ......+...src/Composer/Installer
1d80 2f 4c 69 62 72 61 72 79 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 57 21 00 00 9a da 9c 56 57 21 00 /LibraryInstaller.phpW!.....VW!.
1da0 00 80 16 b7 a2 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 49 6e ............./...src/Composer/In
1dc0 73 74 61 6c 6c 65 72 2f 4d 65 74 61 70 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 staller/MetapackageInstaller.php
1de0 9c 04 00 00 9a da 9c 56 9c 04 00 00 c6 12 c5 21 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f .......V.......!........(...src/
1e00 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 72 Composer/Installer/NoopInstaller
1e20 2e 70 68 70 2b 05 00 00 9a da 9c 56 2b 05 00 00 c0 b7 4d 7d b6 01 00 00 00 00 00 00 27 00 00 00 .php+......V+.....M}........'...
1e40 73 72 63 2f 43 6f 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 src/Composer/Installer/PackageEv
1e60 65 6e 74 2e 70 68 70 65 03 00 00 9a da 9c 56 65 03 00 00 3b b0 20 1a b6 01 00 00 00 00 00 00 28 ent.phpe......Ve...;...........(
1e80 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 61 63 6b 61 67 ...src/Composer/Installer/Packag
1ea0 65 45 76 65 6e 74 73 2e 70 68 70 b8 01 00 00 9a da 9c 56 b8 01 00 00 64 62 d8 73 b6 01 00 00 00 eEvents.php.......V....db.s.....
1ec0 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 65 ...(...src/Composer/Installer/Pe
1ee0 61 72 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 56 11 00 00 9a da 9c 56 56 11 00 00 9d 7a f0 01 b6 arInstaller.phpV......VV....z...
1f00 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 65 .......*...src/Composer/Installe
1f20 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 9a da 9c 56 0a 06 00 r/PluginInstaller.php.......V...
1f40 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 6e .6...........+...src/Composer/In
1f60 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 00 staller/ProjectInstaller.php....
1f80 9a da 9c 56 1d 06 00 00 2a 30 40 50 b6 01 00 00 00 00 00 00 1e 00 00 00 73 72 63 2f 43 6f 6d 70 ...V....*0@P............src/Comp
1fa0 6f 73 65 72 2f 4a 73 6f 6e 2f 4a 73 6f 6e 46 69 6c 65 2e 70 68 70 af 13 00 00 9a da 9c 56 af 13 oser/Json/JsonFile.php.......V..
1fc0 00 00 b0 ab 23 5c b6 01 00 00 00 00 00 00 23 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 4a ....#\........#...src/Composer/J
1fe0 73 6f 6e 2f 4a 73 6f 6e 46 6f 72 6d 61 74 74 65 72 2e 70 68 70 06 06 00 00 9a da 9c 56 06 06 00 son/JsonFormatter.php.......V...
2000 00 1e d0 71 75 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 4a 73 ...qu........%...src/Composer/Js
2020 6f 6e 2f 4a 73 6f 6e 4d 61 6e 69 70 75 6c 61 74 6f 72 2e 70 68 70 19 2a 00 00 9a da 9c 56 19 2a on/JsonManipulator.php.*.....V.*
2040 00 00 72 03 25 0c 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 4a ..r.%.........-...src/Composer/J
2060 73 6f 6e 2f 4a 73 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 5c son/JsonValidationException.php\
2080 01 00 00 9a da 9c 56 5c 01 00 00 2e 58 f3 dc b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 ......V\....X..........%...src/C
20a0 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 41 6c 69 61 73 50 61 63 6b 61 67 65 2e 70 68 70 omposer/Package/AliasPackage.php
20c0 fb 16 00 00 9a da 9c 56 fb 16 00 00 a2 d1 34 8b b6 01 00 00 00 00 00 00 37 00 00 00 73 72 63 2f .......V......4.........7...src/
20e0 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 63 68 69 76 Composer/Package/Archiver/Archiv
2100 61 62 6c 65 46 69 6c 65 73 46 69 6e 64 65 72 2e 70 68 70 be 04 00 00 9a da 9c 56 be 04 00 00 84 ableFilesFinder.php.......V.....
2120 8c f5 c9 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 6b ...........0...src/Composer/Pack
2140 61 67 65 2f 41 72 63 68 69 76 65 72 2f 41 72 63 68 69 76 65 4d 61 6e 61 67 65 72 2e 70 68 70 7a age/Archiver/ArchiveManager.phpz
2160 0c 00 00 9a da 9c 56 7a 0c 00 00 21 73 4b 99 b6 01 00 00 00 00 00 00 33 00 00 00 73 72 63 2f 43 ......Vz...!sK.........3...src/C
2180 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 63 68 69 76 65 omposer/Package/Archiver/Archive
21a0 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 ef 00 00 00 9a da 9c 56 ef 00 00 00 07 3c ca b8 b6 01 rInterface.php.......V.....<....
21c0 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 2f 41 ......3...src/Composer/Package/A
21e0 72 63 68 69 76 65 72 2f 42 61 73 65 45 78 63 6c 75 64 65 46 69 6c 74 65 72 2e 70 68 70 91 06 00 rchiver/BaseExcludeFilter.php...
2200 00 9a da 9c 56 91 06 00 00 5b ff 30 3d b6 01 00 00 00 00 00 00 37 00 00 00 73 72 63 2f 43 6f 6d ....V....[.0=........7...src/Com
2220 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 41 72 63 68 69 76 65 72 2f 43 6f 6d 70 6f 73 65 72 45 poser/Package/Archiver/ComposerE
2240 78 63 6c 75 64 65 46 69 6c 74 65 72 2e 70 68 70 1f 01 00 00 9a da 9c 56 1f 01 00 00 8b 53 5a 30 xcludeFilter.php.......V.....SZ0
2260 b6 01 00 00 00 00 00 00 32 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 ........2...src/Composer/Package
2280 2f 41 72 63 68 69 76 65 72 2f 47 69 74 45 78 63 6c 75 64 65 46 69 6c 74 65 72 2e 70 68 70 77 03 /Archiver/GitExcludeFilter.phpw.
22a0 00 00 9a da 9c 56 77 03 00 00 4c 67 55 bb b6 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f 43 6f .....Vw...LgU.........1...src/Co
22c0 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 41 72 63 68 69 76 65 72 2f 48 67 45 78 63 6c 75 64 mposer/Package/Archiver/HgExclud
22e0 65 46 69 6c 74 65 72 2e 70 68 70 13 05 00 00 9a da 9c 56 13 05 00 00 7e 94 0e b8 b6 01 00 00 00 eFilter.php.......V....~........
2300 00 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 41 72 63 68 .......src/Composer/Package/Arch
2320 69 76 65 72 2f 50 68 61 72 41 72 63 68 69 76 65 72 2e 70 68 70 5b 03 00 00 9a da 9c 56 5b 03 00 iver/PharArchiver.php[......V[..
2340 00 ca 35 cd f8 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 61 ..5..........$...src/Composer/Pa
2360 63 6b 61 67 65 2f 42 61 73 65 50 61 63 6b 61 67 65 2e 70 68 70 3d 0d 00 00 9a da 9c 56 3d 0d 00 ckage/BasePackage.php=......V=..
2380 00 ce 9d e7 16 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 50 61 .............(...src/Composer/Pa
23a0 63 6b 61 67 65 2f 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 2e 70 68 70 ff 06 00 00 9a da 9c ckage/CompletePackage.php.......
23c0 56 ff 06 00 00 6f 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 V....o+..........1...src/Compose
23e0 72 2f 50 61 63 6b 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 r/Package/CompletePackageInterfa
2400 63 65 2e 70 68 70 f5 01 00 00 9a da 9c 56 f5 01 00 00 a6 ca 81 f2 b6 01 00 00 00 00 00 00 2b 00 ce.php.......V................+.
2420 00 00 73 72 63 2f 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 ..src/Composer/Package/Dumper/Ar
2440 72 61 79 44 75 6d 70 65 72 2e 70 68 70 ec 0b 00 00 9a da 9c 56 ec 0b 00 00 aa 96 7f e6 b6 01 00 rayDumper.php.......V...........
2460 00 00 00 00 00 1d 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 .........src/Composer/Package/Li
2480 6e 6b 2e 70 68 70 44 05 00 00 9a da 9c 56 44 05 00 00 4c d0 9e 0b b6 01 00 00 00 00 00 00 37 00 nk.phpD......VD...L...........7.
24a0 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 43 6f 6e 73 74 ..src/Composer/Package/LinkConst
24c0 72 61 69 6e 74 2f 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 82 01 00 00 9a da 9c raint/EmptyConstraint.php.......
24e0 56 82 01 00 00 0e 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 V......~.........?...src/Compose
2500 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 4c 69 6e 6b 43 6f 6e r/Package/LinkConstraint/LinkCon
2520 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 64 01 00 00 9a da 9c 56 64 01 00 00 straintInterface.phpd......Vd...
2540 a4 f4 4c 6e 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 ..Ln........7...src/Composer/Pac
2560 6b 61 67 65 2f 4c 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 kage/LinkConstraint/MultiConstra
2580 69 6e 74 2e 70 68 70 82 01 00 00 9a da 9c 56 82 01 00 00 f3 62 60 fd b6 01 00 00 00 00 00 00 3a int.php.......V.....b`.........:
25a0 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 43 6f 6e 73 ...src/Composer/Package/LinkCons
25c0 74 72 61 69 6e 74 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 traint/SpecificConstraint.phpi..
25e0 00 9a da 9c 56 69 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 ....Vi......%........9...src/Com
2600 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 56 65 72 poser/Package/LinkConstraint/Ver
2620 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 58 01 00 00 9a da 9c 56 58 01 00 00 02 7d sionConstraint.phpX......VX....}
2640 60 79 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 50 61 63 6b 61 `y........+...src/Composer/Packa
2660 67 65 2f 4c 6f 61 64 65 72 2f 41 72 72 61 79 4c 6f 61 64 65 72 2e 70 68 70 e7 1c 00 00 9a da 9c ge/Loader/ArrayLoader.php.......
2680 56 e7 1c 00 00 4d f9 d8 72 b6 01 00 00 00 00 00 00 37 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V....M..r........7...src/Compose
26a0 72 2f 50 61 63 6b 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 r/Package/Loader/InvalidPackageE
26c0 78 63 65 70 74 69 6f 6e 2e 70 68 70 45 02 00 00 9a da 9c 56 45 02 00 00 78 62 13 be b6 01 00 00 xception.phpE......VE...xb......
26e0 00 00 00 00 2a 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
2700 64 65 72 2f 4a 73 6f 6e 4c 6f 61 64 65 72 2e 70 68 70 f9 01 00 00 9a da 9c 56 f9 01 00 00 21 7e der/JsonLoader.php.......V....!~
2720 88 7b 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 50 61 63 6b 61 .{......../...src/Composer/Packa
2740 67 65 2f 4c 6f 61 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 ge/Loader/LoaderInterface.php...
2760 00 9a da 9c 56 b2 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 ....V.....}..........1...src/Com
2780 70 6f 73 65 72 2f 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 poser/Package/Loader/RootPackage
27a0 4c 6f 61 64 65 72 2e 70 68 70 11 14 00 00 9a da 9c 56 11 14 00 00 c4 23 1c 78 b6 01 00 00 00 00 Loader.php.......V.....#.x......
27c0 00 00 35 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 64 65 ..5...src/Composer/Package/Loade
27e0 72 2f 56 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 2e 70 68 70 e9 2f 00 00 9a r/ValidatingArrayLoader.php./...
2800 da 9c 56 e9 2f 00 00 5a ed 3b d5 b6 01 00 00 00 00 00 00 1f 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..V./..Z.;.............src/Compo
2820 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 6f 63 6b 65 72 2e 70 68 70 8f 21 00 00 9a da 9c 56 8f 21 ser/Package/Locker.php.!.....V.!
2840 00 00 3d 2d 77 92 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 ..=-w.............src/Composer/P
2860 61 63 6b 61 67 65 2f 50 61 63 6b 61 67 65 2e 70 68 70 c0 1a 00 00 9a da 9c 56 c0 1a 00 00 5f b0 ackage/Package.php.......V...._.
2880 cd 20 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 ..........)...src/Composer/Packa
28a0 67 65 2f 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 a0 07 00 00 9a da 9c 56 a0 ge/PackageInterface.php.......V.
28c0 07 00 00 fb c7 5e 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 .....^.........)...src/Composer/
28e0 50 61 63 6b 61 67 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 Package/RootAliasPackage.php....
2900 9a da 9c 56 d7 08 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 ...V................$...src/Comp
2920 6f 73 65 72 2f 50 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 oser/Package/RootPackage.phpn...
2940 9a da 9c 56 6e 04 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 ...Vn....ACO........-...src/Comp
2960 6f 73 65 72 2f 50 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 oser/Package/RootPackageInterfac
2980 65 2e 70 68 70 96 03 00 00 9a da 9c 56 96 03 00 00 ff 66 c6 67 b6 01 00 00 00 00 00 00 2f 00 00 e.php.......V.....f.g......../..
29a0 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 6f 6e 2f 56 65 .src/Composer/Package/Version/Ve
29c0 72 73 69 6f 6e 47 75 65 73 73 65 72 2e 70 68 70 fb 13 00 00 9a da 9c 56 fb 13 00 00 39 bc 0f d2 rsionGuesser.php.......V....9...
29e0 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 50 61 63 6b 61 67 65 ............src/Composer/Package
2a00 2f 56 65 72 73 69 6f 6e 2f 56 65 72 73 69 6f 6e 50 61 72 73 65 72 2e 70 68 70 f2 02 00 00 9a da /Version/VersionParser.php......
2a20 9c 56 f2 02 00 00 06 26 43 66 b6 01 00 00 00 00 00 00 30 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .V.....&Cf........0...src/Compos
2a40 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 53 65 6c 65 63 74 er/Package/Version/VersionSelect
2a60 6f 72 2e 70 68 70 28 0c 00 00 9a da 9c 56 28 0c 00 00 1e b5 df bb b6 01 00 00 00 00 00 00 24 00 or.php(......V(...............$.
2a80 00 00 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 ..src/Composer/Plugin/CommandEve
2aa0 6e 74 2e 70 68 70 e2 02 00 00 9a da 9c 56 e2 02 00 00 b3 c6 c7 57 b6 01 00 00 00 00 00 00 24 00 nt.php.......V.......W........$.
2ac0 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 45 76 65 6e ..src/Composer/Plugin/PluginEven
2ae0 74 73 2e 70 68 70 a4 00 00 00 9a da 9c 56 a4 00 00 00 30 ef de 58 b6 01 00 00 00 00 00 00 27 00 ts.php.......V....0..X........'.
2b00 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 49 6e 74 65 ..src/Composer/Plugin/PluginInte
2b20 72 66 61 63 65 2e 70 68 70 f4 00 00 00 9a da 9c 56 f4 00 00 00 0c 31 89 25 b6 01 00 00 00 00 00 rface.php.......V.....1.%.......
2b40 00 25 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 .%...src/Composer/Plugin/PluginM
2b60 61 6e 61 67 65 72 2e 70 68 70 69 19 00 00 9a da 9c 56 69 19 00 00 23 fc 7c 97 b6 01 00 00 00 00 anager.phpi......Vi...#.|.......
2b80 00 00 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 ..,...src/Composer/Plugin/PreFil
2ba0 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 2e 70 68 70 60 02 00 00 9a da 9c 56 60 02 00 00 00 39 eDownloadEvent.php`......V`....9
2bc0 2d ce 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 -.........+...src/Composer/Repos
2be0 69 74 6f 72 79 2f 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 7c 0d 00 00 9a da 9c itory/ArrayRepository.php|......
2c00 56 7c 0d 00 00 f5 7b 5e 66 b6 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V|....{^f............src/Compose
2c20 72 2f 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 r/Repository/ArtifactRepository.
2c40 70 68 70 e9 0b 00 00 9a da 9c 56 e9 0b 00 00 aa ef f9 dd b6 01 00 00 00 00 00 00 2e 00 00 00 73 php.......V....................s
2c60 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 73 65 72 52 rc/Composer/Repository/ComposerR
2c80 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 24 42 00 00 9a da 9c 56 24 42 00 00 a7 67 44 55 b6 01 00 epository.php$B.....V$B...gDU...
2ca0 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 74 6f 72 79 ...../...src/Composer/Repository
2cc0 2f 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 2e 08 00 00 9a da 9c 56 /CompositeRepository.php.......V
2ce0 2e 08 00 00 43 13 c5 78 b6 01 00 00 00 00 00 00 3b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 ....C..x........;...src/Composer
2d00 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 73 69 74 6f /Repository/ConfigurableReposito
2d20 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 85 00 00 00 9a da 9c 56 85 00 00 00 b1 9f 5f 1c b6 ryInterface.php.......V......_..
2d40 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 73 69 74 6f .......0...src/Composer/Reposito
2d60 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 c0 04 00 00 9a ry/FilesystemRepository.php.....
2d80 da 9c 56 c0 04 00 00 26 78 62 a3 b6 01 00 00 00 00 00 00 34 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..V....&xb.........4...src/Compo
2da0 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 79 52 65 70 ser/Repository/InstalledArrayRep
2dc0 6f 73 69 74 6f 72 79 2e 70 68 70 a3 00 00 00 9a da 9c 56 a3 00 00 00 2f f6 7e 3e b6 01 00 00 00 ository.php.......V..../.~>.....
2de0 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 72 79 2f 49 ...9...src/Composer/Repository/I
2e00 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 2e 70 68 70 nstalledFilesystemRepository.php
2e20 a3 00 00 00 9a da 9c 56 a3 00 00 00 56 0a 95 5f b6 01 00 00 00 00 00 00 38 00 00 00 73 72 63 2f .......V....V.._........8...src/
2e40 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 64 52 65 70 Composer/Repository/InstalledRep
2e60 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 87 00 00 00 9a da 9c 56 87 00 00 00 ositoryInterface.php.......V....
2e80 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 2f 52 65 70 ..9p........6...src/Composer/Rep
2ea0 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 65 70 74 69 ository/InvalidRepositoryExcepti
2ec0 6f 6e 2e 70 68 70 6e 00 00 00 9a da 9c 56 6e 00 00 00 e0 93 eb 98 b6 01 00 00 00 00 00 00 2d 00 on.phpn......Vn...............-.
2ee0 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 63 6b 61 67 ..src/Composer/Repository/Packag
2f00 65 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 47 03 00 00 9a da 9c 56 47 03 00 00 ed 04 3a 6b b6 eRepository.phpG......VG.....:k.
2f20 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 73 69 74 6f .......*...src/Composer/Reposito
2f40 72 79 2f 50 61 74 68 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 92 08 00 00 9a da 9c 56 92 08 00 ry/PathRepository.php.......V...
2f60 00 0d 96 44 bf b6 01 00 00 00 00 00 00 32 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 ...D.........2...src/Composer/Re
2f80 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 64 65 72 2e pository/Pear/BaseChannelReader.
2fa0 70 68 70 36 05 00 00 9a da 9c 56 36 05 00 00 2e 66 69 21 b6 01 00 00 00 00 00 00 2c 00 00 00 73 php6......V6....fi!........,...s
2fc0 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 43 68 61 6e rc/Composer/Repository/Pear/Chan
2fe0 6e 65 6c 49 6e 66 6f 2e 70 68 70 c4 01 00 00 9a da 9c 56 c4 01 00 00 3a 54 2a c9 b6 01 00 00 00 nelInfo.php.......V....:T*......
3000 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 2f 50 .......src/Composer/Repository/P
3020 65 61 72 2f 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 2e 70 68 70 6e 06 00 00 9a da 9c 56 6e 06 00 ear/ChannelReader.phpn......Vn..
3040 00 1c 9a 38 15 b6 01 00 00 00 00 00 00 34 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 ...8.........4...src/Composer/Re
3060 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 65 61 64 65 pository/Pear/ChannelRest10Reade
3080 72 2e 70 68 70 c1 09 00 00 9a da 9c 56 c1 09 00 00 04 4f 80 eb b6 01 00 00 00 00 00 00 34 00 00 r.php.......V.....O..........4..
30a0 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 43 68 .src/Composer/Repository/Pear/Ch
30c0 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 9a da 9c 56 26 09 00 annelRest11Reader.php&......V&..
30e0 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 72 2f 52 65 ..Ub.........5...src/Composer/Re
3100 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 74 72 61 69 pository/Pear/DependencyConstrai
3120 6e 74 2e 70 68 70 71 02 00 00 9a da 9c 56 71 02 00 00 39 0e 17 3d b6 01 00 00 00 00 00 00 2f 00 nt.phpq......Vq...9..=......../.
3140 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 44 ..src/Composer/Repository/Pear/D
3160 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 2e 70 68 70 71 01 00 00 9a da 9c 56 71 01 00 00 66 ba 54 ependencyInfo.phpq......Vq...f.T
3180 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 70 6f 73 69 .........8...src/Composer/Reposi
31a0 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 61 72 73 65 tory/Pear/PackageDependencyParse
31c0 72 2e 70 68 70 25 16 00 00 9a da 9c 56 25 16 00 00 06 6a 3f 93 b6 01 00 00 00 00 00 00 2c 00 00 r.php%......V%....j?.........,..
31e0 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 50 61 .src/Composer/Repository/Pear/Pa
3200 63 6b 61 67 65 49 6e 66 6f 2e 70 68 70 b0 03 00 00 9a da 9c 56 b0 03 00 00 9f 0d b8 0c b6 01 00 ckageInfo.php.......V...........
3220 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 74 6f 72 79 .....,...src/Composer/Repository
3240 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 9a da 9c 56 92 01 00 /Pear/ReleaseInfo.php.......V...
3260 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 72 2f 52 65 .o...........*...src/Composer/Re
3280 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 4e 16 00 00 9a pository/PearRepository.phpN....
32a0 da 9c 56 4e 16 00 00 70 36 05 80 b6 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..VN...p6..............src/Compo
32c0 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 69 74 6f 72 ser/Repository/PlatformRepositor
32e0 79 2e 70 68 70 0d 13 00 00 9a da 9c 56 0d 13 00 00 de 0d 90 53 b6 01 00 00 00 00 00 00 2f 00 00 y.php.......V.......S......../..
3300 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 74 .src/Composer/Repository/Reposit
3320 6f 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 da 01 00 00 9a da 9c 56 da 01 00 00 37 40 1f 80 oryInterface.php.......V....7@..
3340 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 52 65 70 6f 73 69 74 ........-...src/Composer/Reposit
3360 6f 72 79 2f 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2e 70 68 70 88 09 00 00 9a da 9c ory/RepositoryManager.php.......
3380 56 88 09 00 00 a6 c8 67 e2 b6 01 00 00 00 00 00 00 37 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V......g.........7...src/Compose
33a0 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 52 65 70 6f 73 69 74 6f 72 79 53 65 63 75 72 69 74 79 45 r/Repository/RepositorySecurityE
33c0 78 63 65 70 74 69 6f 6e 2e 70 68 70 6f 00 00 00 9a da 9c 56 6f 00 00 00 70 d5 ab aa b6 01 00 00 xception.phpo......Vo...p.......
33e0 00 00 00 00 32 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 ....2...src/Composer/Repository/
3400 56 63 73 2f 47 69 74 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 2e 70 68 70 a3 0e 00 00 9a da Vcs/GitBitbucketDriver.php......
3420 9c 56 a3 0e 00 00 45 51 25 2a b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 .V....EQ%*........)...src/Compos
3440 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 47 69 74 44 72 69 76 65 72 2e 70 68 70 01 er/Repository/Vcs/GitDriver.php.
3460 16 00 00 9a da 9c 56 01 16 00 00 5c 7f ee ef b6 01 00 00 00 00 00 00 2c 00 00 00 73 72 63 2f 43 ......V....\...........,...src/C
3480 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 47 69 74 48 75 62 44 72 69 omposer/Repository/Vcs/GitHubDri
34a0 76 65 72 2e 70 68 70 e1 27 00 00 9a da 9c 56 e1 27 00 00 cd 3a cb 38 b6 01 00 00 00 00 00 00 2c ver.php.'.....V.'...:.8........,
34c0 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
34e0 69 74 4c 61 62 44 72 69 76 65 72 2e 70 68 70 71 19 00 00 9a da 9c 56 71 19 00 00 71 9d 2f e6 b6 itLabDriver.phpq......Vq...q./..
3500 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f .......1...src/Composer/Reposito
3520 72 79 2f 56 63 73 2f 48 67 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 2e 70 68 70 ab 0f 00 00 ry/Vcs/HgBitbucketDriver.php....
3540 9a da 9c 56 ab 0f 00 00 42 be db ab b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 ...V....B...........(...src/Comp
3560 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 48 67 44 72 69 76 65 72 2e 70 68 70 oser/Repository/Vcs/HgDriver.php
3580 e0 12 00 00 9a da 9c 56 e0 12 00 00 f1 91 e7 b6 b6 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f .......V....................src/
35a0 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 50 65 72 66 6f 72 63 65 Composer/Repository/Vcs/Perforce
35c0 44 72 69 76 65 72 2e 70 68 70 22 0a 00 00 9a da 9c 56 22 0a 00 00 b0 60 ec 45 b6 01 00 00 00 00 Driver.php"......V"....`.E......
35e0 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 72 79 2f 56 63 ..)...src/Composer/Repository/Vc
3600 73 2f 53 76 6e 44 72 69 76 65 72 2e 70 68 70 b2 19 00 00 9a da 9c 56 b2 19 00 00 cb c2 a0 57 b6 s/SvnDriver.php.......V.......W.
3620 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
3640 72 79 2f 56 63 73 2f 56 63 73 44 72 69 76 65 72 2e 70 68 70 ff 05 00 00 9a da 9c 56 ff 05 00 00 ry/Vcs/VcsDriver.php.......V....
3660 2a df d9 0e b6 01 00 00 00 00 00 00 32 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 *...........2...src/Composer/Rep
3680 6f 73 69 74 6f 72 79 2f 56 63 73 2f 56 63 73 44 72 69 76 65 72 49 6e 74 65 72 66 61 63 65 2e 70 ository/Vcs/VcsDriverInterface.p
36a0 68 70 88 02 00 00 9a da 9c 56 88 02 00 00 8e 50 a9 ce b6 01 00 00 00 00 00 00 29 00 00 00 73 72 hp.......V.....P..........)...sr
36c0 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 52 65 70 6f 73 69 74 c/Composer/Repository/VcsReposit
36e0 6f 72 79 2e 70 68 70 9a 1d 00 00 9a da 9c 56 9a 1d 00 00 63 b3 a8 67 b6 01 00 00 00 00 00 00 33 ory.php.......V....c..g........3
3700 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 57 72 69 74 61 ...src/Composer/Repository/Writa
3720 62 6c 65 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 0f 03 00 00 9a da 9c 56 0f 03 bleArrayRepository.php.......V..
3740 00 00 be 47 17 2a 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 52 ...G.*........7...src/Composer/R
3760 65 70 6f 73 69 74 6f 72 79 2f 57 72 69 74 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 epository/WritableRepositoryInte
3780 72 66 61 63 65 2e 70 68 70 89 01 00 00 9a da 9c 56 89 01 00 00 91 2f 73 ef b6 01 00 00 00 00 00 rface.php.......V...../s........
37a0 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 43 6f 6d 6d 61 6e 64 .$...src/Composer/Script/Command
37c0 45 76 65 6e 74 2e 70 68 70 57 00 00 00 9a da 9c 56 57 00 00 00 a3 56 5a 74 b6 01 00 00 00 00 00 Event.phpW......VW....VZt.......
37e0 00 1d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 63 72 69 70 74 2f 45 76 65 6e 74 2e 70 .....src/Composer/Script/Event.p
3800 68 70 b5 02 00 00 9a da 9c 56 b5 02 00 00 6c 74 a6 4d b6 01 00 00 00 00 00 00 24 00 00 00 73 72 hp.......V....lt.M........$...sr
3820 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 63 72 69 70 74 2f 50 61 63 6b 61 67 65 45 76 65 6e 74 2e 70 c/Composer/Script/PackageEvent.p
3840 68 70 9c 00 00 00 9a da 9c 56 9c 00 00 00 a7 ff c9 0d b6 01 00 00 00 00 00 00 24 00 00 00 73 72 hp.......V................$...sr
3860 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 63 72 69 70 74 2f 53 63 72 69 70 74 45 76 65 6e 74 73 2e 70 c/Composer/Script/ScriptEvents.p
3880 68 70 50 04 00 00 9a da 9c 56 50 04 00 00 87 8f 04 b6 b6 01 00 00 00 00 00 00 20 00 00 00 73 72 hpP......VP...................sr
38a0 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 41 75 74 68 48 65 6c 70 65 72 2e 70 68 70 cb 03 c/Composer/Util/AuthHelper.php..
38c0 00 00 9a da 9c 56 cb 03 00 00 3e 7a 78 96 b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f .....V....>zx.........$...src/Co
38e0 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 43 6f 6d 70 6f 73 65 72 4d 69 72 72 6f 72 2e 70 68 70 b1 04 mposer/Util/ComposerMirror.php..
3900 00 00 9a da 9c 56 b1 04 00 00 ad bd f8 d8 b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 6f .....V................%...src/Co
3920 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 43 6f 6e 66 69 67 56 61 6c 69 64 61 74 6f 72 2e 70 68 70 3c mposer/Util/ConfigValidator.php<
3940 11 00 00 9a da 9c 56 3c 11 00 00 d3 91 d9 32 b6 01 00 00 00 00 00 00 22 00 00 00 73 72 63 2f 43 ......V<......2........"...src/C
3960 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 45 72 72 6f 72 48 61 6e 64 6c 65 72 2e 70 68 70 59 04 00 omposer/Util/ErrorHandler.phpY..
3980 00 9a da 9c 56 59 04 00 00 b3 76 1d 42 b6 01 00 00 00 00 00 00 20 00 00 00 73 72 63 2f 43 6f 6d ....VY....v.B............src/Com
39a0 70 6f 73 65 72 2f 55 74 69 6c 2f 46 69 6c 65 73 79 73 74 65 6d 2e 70 68 70 3b 27 00 00 9a da 9c poser/Util/Filesystem.php;'.....
39c0 56 3b 27 00 00 15 60 4d 0b b6 01 00 00 00 00 00 00 19 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V;'...`M.............src/Compose
39e0 72 2f 55 74 69 6c 2f 47 69 74 2e 70 68 70 1f 19 00 00 9a da 9c 56 1f 19 00 00 82 fc 0e b7 b6 01 r/Util/Git.php.......V..........
3a00 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 48 ..........src/Composer/Util/GitH
3a20 75 62 2e 70 68 70 bd 0a 00 00 9a da 9c 56 bd 0a 00 00 86 d0 ec c1 b6 01 00 00 00 00 00 00 1c 00 ub.php.......V..................
3a40 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 47 69 74 4c 61 62 2e 70 68 70 b3 0b ..src/Composer/Util/GitLab.php..
3a60 00 00 9a da 9c 56 b3 0b 00 00 34 82 07 f5 b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f .....V....4...........$...src/Co
3a80 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 4e 6f 50 72 6f 78 79 50 61 74 74 65 72 6e 2e 70 68 70 be 06 mposer/Util/NoProxyPattern.php..
3aa0 00 00 9a da 9c 56 be 06 00 00 5a 2b b0 6d b6 01 00 00 00 00 00 00 1e 00 00 00 73 72 63 2f 43 6f .....V....Z+.m............src/Co
3ac0 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 50 65 72 66 6f 72 63 65 2e 70 68 70 05 33 00 00 9a da 9c 56 mposer/Util/Perforce.php.3.....V
3ae0 05 33 00 00 b6 2d d1 c8 b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 .3...-..........%...src/Composer
3b00 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 ed 06 00 00 9a da 9c /Util/ProcessExecutor.php.......
3b20 56 ed 06 00 00 62 46 91 ab b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 V....bF..........&...src/Compose
3b40 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 fb 3f 00 00 9a r/Util/RemoteFilesystem.php.?...
3b60 da 9c 56 fb 3f 00 00 33 c4 17 56 b6 01 00 00 00 00 00 00 21 00 00 00 73 72 63 2f 43 6f 6d 70 6f ..V.?..3..V........!...src/Compo
3b80 73 65 72 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 9a da 9c 56 ser/Util/SpdxLicense.php.......V
3ba0 03 01 00 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 .....7..........*...src/Composer
3bc0 2f 55 74 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 /Util/StreamContextFactory.php..
3be0 00 00 9a da 9c 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 .....V.....B..............src/Co
3c00 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 53 76 6e 2e 70 68 70 86 11 00 00 9a da 9c 56 86 11 00 00 19 mposer/Util/Svn.php.......V.....
3c20 65 40 ee b6 01 00 00 00 00 00 00 11 00 00 00 73 72 63 2f 62 6f 6f 74 73 74 72 61 70 2e 70 68 70 e@.............src/bootstrap.php
3c40 c5 01 00 00 9a da 9c 56 c5 01 00 00 a8 af 32 90 b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f .......V......2.........%...src/
3c60 43 6f 6d 70 6f 73 65 72 2f 41 75 74 6f 6c 6f 61 64 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 Composer/Autoload/ClassLoader.ph
3c80 70 b2 30 00 00 9a da 9c 56 b2 30 00 00 fa 81 dd 5d b6 01 00 00 00 00 00 00 18 00 00 00 72 65 73 p.0.....V.0.....]............res
3ca0 2f 63 6f 6d 70 6f 73 65 72 2d 73 63 68 65 6d 61 2e 6a 73 6f 6e 84 5d 00 00 9a da 9c 56 84 5d 00 /composer-schema.json.].....V.].
3cc0 00 22 3c c6 28 b6 01 00 00 00 00 00 00 36 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 ."<.(........6...vendor/composer
3ce0 2f 73 70 64 78 2d 6c 69 63 65 6e 73 65 73 2f 72 65 73 2f 73 70 64 78 2d 65 78 63 65 70 74 69 6f /spdx-licenses/res/spdx-exceptio
3d00 6e 73 2e 6a 73 6f 6e a5 06 00 00 9a da 9c 56 a5 06 00 00 76 64 9d 8a b6 01 00 00 00 00 00 00 34 ns.json.......V....vd..........4
3d20 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 73 ...vendor/composer/spdx-licenses
3d40 2f 72 65 73 2f 73 70 64 78 2d 6c 69 63 65 6e 73 65 73 2e 6a 73 6f 6e 4b 5f 00 00 9a da 9c 56 4b /res/spdx-licenses.jsonK_.....VK
3d60 5f 00 00 80 71 09 be b6 01 00 00 00 00 00 00 2a 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 63 _...q..........*...vendor/seld/c
3d80 6c 69 2d 70 72 6f 6d 70 74 2f 72 65 73 2f 68 69 64 64 65 6e 69 6e 70 75 74 2e 65 78 65 00 24 00 li-prompt/res/hiddeninput.exe.$.
3da0 00 9a da 9c 56 00 24 00 00 95 8d a5 76 b6 01 00 00 00 00 00 00 26 00 00 00 76 65 6e 64 6f 72 2f ....V.$.....v........&...vendor/
3dc0 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 41 70 70 6c 69 63 61 74 69 6f 6e 2e 70 68 70 7e symfony/console/Application.php~
3de0 55 00 00 9a da 9c 56 7e 55 00 00 56 59 dc 14 b6 01 00 00 00 00 00 00 2a 00 00 00 76 65 6e 64 6f U.....V~U..VY..........*...vendo
3e00 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 43 6f 6d 6d 61 6e 64 2f 43 6f 6d 6d 61 6e r/symfony/console/Command/Comman
3e20 64 2e 70 68 70 4f 20 00 00 9a da 9c 56 4f 20 00 00 e6 be 02 28 b6 01 00 00 00 00 00 00 2e 00 00 d.phpO......VO......(...........
3e40 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 64 2f .vendor/symfony/console/Command/
3e60 48 65 6c 70 43 6f 6d 6d 61 6e 64 2e 70 68 70 db 07 00 00 9a da 9c 56 db 07 00 00 54 c8 6a 2b b6 HelpCommand.php.......V....T.j+.
3e80 01 00 00 00 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 ...........vendor/symfony/consol
3ea0 65 2f 43 6f 6d 6d 61 6e 64 2f 4c 69 73 74 43 6f 6d 6d 61 6e 64 2e 70 68 70 58 08 00 00 9a da 9c e/Command/ListCommand.phpX......
3ec0 56 58 08 00 00 2c a3 aa a1 b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 VX...,...........(...vendor/symf
3ee0 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 73 2e 70 68 70 ef 00 00 ony/console/ConsoleEvents.php...
3f00 00 9a da 9c 56 ef 00 00 00 0d d5 48 b8 b6 01 00 00 00 00 00 00 3c 00 00 00 76 65 6e 64 6f 72 2f ....V......H.........<...vendor/
3f20 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 41 70 70 6c 69 symfony/console/Descriptor/Appli
3f40 63 61 74 69 6f 6e 44 65 73 63 72 69 70 74 69 6f 6e 2e 70 68 70 df 08 00 00 9a da 9c 56 df 08 00 cationDescription.php.......V...
3f60 00 b5 8c b0 37 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 ....7........0...vendor/symfony/
3f80 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 72 2e 70 68 console/Descriptor/Descriptor.ph
3fa0 70 9d 07 00 00 9a da 9c 56 9d 07 00 00 08 3b 7e c4 b6 01 00 00 00 00 00 00 39 00 00 00 76 65 6e p.......V.....;~.........9...ven
3fc0 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 44 dor/symfony/console/Descriptor/D
3fe0 65 73 63 72 69 70 74 6f 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 fc 00 00 00 9a da 9c 56 fc 00 escriptorInterface.php.......V..
4000 00 00 b1 51 07 b5 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 ...Q..........4...vendor/symfony
4020 2f 63 6f 6e 73 6f 6c 65 2f 44 65 73 63 72 69 70 74 6f 72 2f 4a 73 6f 6e 44 65 73 63 72 69 70 74 /console/Descriptor/JsonDescript
4040 6f 72 2e 70 68 70 9a 0d 00 00 9a da 9c 56 9a 0d 00 00 14 6c ac 05 b6 01 00 00 00 00 00 00 38 00 or.php.......V.....l..........8.
4060 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 44 65 73 63 72 69 70 ..vendor/symfony/console/Descrip
4080 74 6f 72 2f 4d 61 72 6b 64 6f 77 6e 44 65 73 63 72 69 70 74 6f 72 2e 70 68 70 7f 0e 00 00 9a da tor/MarkdownDescriptor.php......
40a0 9c 56 7f 0e 00 00 3f 77 0f 6e b6 01 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V....?w.n........4...vendor/sym
40c0 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 44 65 73 63 72 69 70 74 6f 72 2f 54 65 78 74 44 65 73 63 fony/console/Descriptor/TextDesc
40e0 72 69 70 74 6f 72 2e 70 68 70 e5 1c 00 00 9a da 9c 56 e5 1c 00 00 ce 6e cc bb b6 01 00 00 00 00 riptor.php.......V.....n........
4100 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 44 65 73 ..3...vendor/symfony/console/Des
4120 63 72 69 70 74 6f 72 2f 58 6d 6c 44 65 73 63 72 69 70 74 6f 72 2e 70 68 70 0f 1c 00 00 9a da 9c criptor/XmlDescriptor.php.......
4140 56 0f 1c 00 00 04 8b 50 24 b6 01 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 V......P$........4...vendor/symf
4160 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 43 6f 6d 6d 61 6e 64 ony/console/Event/ConsoleCommand
4180 45 76 65 6e 74 2e 70 68 70 b2 01 00 00 9a da 9c 56 b2 01 00 00 5a 6b 89 32 b6 01 00 00 00 00 00 Event.php.......V....Zk.2.......
41a0 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 2f 45 76 65 6e .-...vendor/symfony/console/Even
41c0 74 2f 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 2e 70 68 70 c5 02 00 00 9a da 9c 56 c5 02 00 00 d2 78 t/ConsoleEvent.php.......V.....x
41e0 db 5c 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 63 6f 6e .\........6...vendor/symfony/con
4200 73 6f 6c 65 2f 45 76 65 6e 74 2f 43 6f 6e 73 6f 6c 65 45 78 63 65 70 74 69 6f 6e 45 76 65 6e 74 sole/Event/ConsoleExceptionEvent
4220 2e 70 68 70 12 03 00 00 9a da 9c 56 12 03 00 00 e1 16 32 e9 b6 01 00 00 00 00 00 00 36 00 00 00 .php.......V......2.........6...
4240 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 6e 74 2f 43 6f 6e vendor/symfony/console/Event/Con
4260 73 6f 6c 65 54 65 72 6d 69 6e 61 74 65 45 76 65 6e 74 2e 70 68 70 7a 02 00 00 9a da 9c 56 7a 02 soleTerminateEvent.phpz......Vz.
4280 00 00 b3 2c ee 4c 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 ...,.L........=...vendor/symfony
42a0 2f 63 6f 6e 73 6f 6c 65 2f 45 78 63 65 70 74 69 6f 6e 2f 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 /console/Exception/CommandNotFou
42c0 6e 64 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 d4 01 00 00 9a da 9c 56 d4 01 00 00 c8 f7 20 4c b6 ndException.php.......V.......L.
42e0 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 63 6f 6e 73 6f 6c .......7...vendor/symfony/consol
4300 65 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 e/Exception/ExceptionInterface.p
4320 68 70 66 00 00 00 9a da 9c 56 66 00 00 00 a1 41 42 aa b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 hpf......Vf....AB.........=...ve
4340 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 69 6f 6e 2f 49 ndor/symfony/console/Exception/I
4360 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 a6 00 00 00 9a nvalidArgumentException.php.....
4380 da 9c 56 a6 00 00 00 d6 cc bd 5a b6 01 00 00 00 00 00 00 3b 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V.......Z........;...vendor/sy
43a0 6d 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 4f mfony/console/Exception/InvalidO
43c0 70 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 a6 00 00 00 9a da 9c 56 a6 00 00 00 13 cb ptionException.php.......V......
43e0 d7 48 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 63 6f 6e .H........3...vendor/symfony/con
4400 73 6f 6c 65 2f 45 78 63 65 70 74 69 6f 6e 2f 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 2e 70 68 sole/Exception/LogicException.ph
4420 70 92 00 00 00 9a da 9c 56 92 00 00 00 cd 4f 5c 65 b6 01 00 00 00 00 00 00 35 00 00 00 76 65 6e p.......V.....O\e........5...ven
4440 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 69 6f 6e 2f 52 75 dor/symfony/console/Exception/Ru
4460 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 96 00 00 00 9a da 9c 56 96 00 00 00 d9 ed ntimeException.php.......V......
4480 2c 36 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 ,6........4...vendor/symfony/con
44a0 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 2e 70 sole/Formatter/OutputFormatter.p
44c0 68 70 b3 0c 00 00 9a da 9c 56 b3 0c 00 00 28 af 0f 6f b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 hp.......V....(..o........=...ve
44e0 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 65 72 2f 4f ndor/symfony/console/Formatter/O
4500 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 8a 01 00 00 9a utputFormatterInterface.php.....
4520 da 9c 56 8a 01 00 00 3a df 05 07 b6 01 00 00 00 00 00 00 39 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V....:...........9...vendor/sy
4540 6d 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 mfony/console/Formatter/OutputFo
4560 72 6d 61 74 74 65 72 53 74 79 6c 65 2e 70 68 70 4c 10 00 00 9a da 9c 56 4c 10 00 00 8a 90 38 3c rmatterStyle.phpL......VL.....8<
4580 b6 01 00 00 00 00 00 00 42 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f ........B...vendor/symfony/conso
45a0 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 74 79 6c le/Formatter/OutputFormatterStyl
45c0 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 86 01 00 00 9a da 9c 56 86 01 00 00 dd 52 da ad b6 01 eInterface.php.......V.....R....
45e0 00 00 00 00 00 00 3e 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
4600 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 74 79 6c 65 53 /Formatter/OutputFormatterStyleS
4620 74 61 63 6b 2e 70 68 70 4c 05 00 00 9a da 9c 56 4c 05 00 00 2e 3d 16 62 b6 01 00 00 00 00 00 00 tack.phpL......VL....=.b........
4640 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 48 65 6c 70 65 6...vendor/symfony/console/Helpe
4660 72 2f 44 65 62 75 67 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 2e 70 68 70 78 08 00 00 9a da r/DebugFormatterHelper.phpx.....
4680 9c 56 78 08 00 00 4e a9 d8 bc b6 01 00 00 00 00 00 00 32 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .Vx...N...........2...vendor/sym
46a0 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 44 65 73 63 72 69 70 74 6f 72 48 65 fony/console/Helper/DescriptorHe
46c0 6c 70 65 72 2e 70 68 70 7a 05 00 00 9a da 9c 56 7a 05 00 00 66 c9 da fd b6 01 00 00 00 00 00 00 lper.phpz......Vz...f...........
46e0 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 48 65 6c 70 65 ....vendor/symfony/console/Helpe
4700 72 2f 44 69 61 6c 6f 67 48 65 6c 70 65 72 2e 70 68 70 59 1d 00 00 9a da 9c 56 59 1d 00 00 3e ed r/DialogHelper.phpY......VY...>.
4720 a3 86 b6 01 00 00 00 00 00 00 31 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e ..........1...vendor/symfony/con
4740 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 2e 70 68 70 63 sole/Helper/FormatterHelper.phpc
4760 04 00 00 9a da 9c 56 63 04 00 00 93 fd ab 4e b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e 64 6f ......Vc......N........(...vendo
4780 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 48 65 6c 70 65 72 2e r/symfony/console/Helper/Helper.
47a0 70 68 70 a9 06 00 00 9a da 9c 56 a9 06 00 00 7a c9 1d 1b b6 01 00 00 00 00 00 00 31 00 00 00 76 php.......V....z...........1...v
47c0 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 72 2f 48 65 6c endor/symfony/console/Helper/Hel
47e0 70 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 e7 00 00 00 9a da 9c 56 e7 00 00 00 a0 18 c7 e3 perInterface.php.......V........
4800 b6 01 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 ........+...vendor/symfony/conso
4820 6c 65 2f 48 65 6c 70 65 72 2f 48 65 6c 70 65 72 53 65 74 2e 70 68 70 ca 07 00 00 9a da 9c 56 ca le/Helper/HelperSet.php.......V.
4840 07 00 00 66 21 36 3e 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 ...f!6>........2...vendor/symfon
4860 79 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 49 6e 70 75 74 41 77 61 72 65 48 65 6c 70 65 y/console/Helper/InputAwareHelpe
4880 72 2e 70 68 70 63 01 00 00 9a da 9c 56 63 01 00 00 f1 f8 90 7c b6 01 00 00 00 00 00 00 2f 00 00 r.phpc......Vc......|......../..
48a0 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 72 2f 50 .vendor/symfony/console/Helper/P
48c0 72 6f 63 65 73 73 48 65 6c 70 65 72 2e 70 68 70 d1 09 00 00 9a da 9c 56 d1 09 00 00 40 b1 e3 81 rocessHelper.php.......V....@...
48e0 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 63 6f 6e 73 6f ........-...vendor/symfony/conso
4900 6c 65 2f 48 65 6c 70 65 72 2f 50 72 6f 67 72 65 73 73 42 61 72 2e 70 68 70 3b 27 00 00 9a da 9c le/Helper/ProgressBar.php;'.....
4920 56 3b 27 00 00 c4 da 82 cb 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
4940 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 48 65 6c 70 65 ony/console/Helper/ProgressHelpe
4960 72 2e 70 68 70 da 1a 00 00 9a da 9c 56 da 1a 00 00 d9 fe f1 54 b6 01 00 00 00 00 00 00 33 00 00 r.php.......V.......T........3..
4980 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 72 2f 50 .vendor/symfony/console/Helper/P
49a0 72 6f 67 72 65 73 73 49 6e 64 69 63 61 74 6f 72 2e 70 68 70 b6 15 00 00 9a da 9c 56 b6 15 00 00 rogressIndicator.php.......V....
49c0 14 65 d8 a1 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 .e..........0...vendor/symfony/c
49e0 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 2e 70 68 70 onsole/Helper/QuestionHelper.php
4a00 cb 1b 00 00 9a da 9c 56 cb 1b 00 00 62 f9 4b 5e b6 01 00 00 00 00 00 00 37 00 00 00 76 65 6e 64 .......V....b.K^........7...vend
4a20 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 53 79 6d 66 6f 6e or/symfony/console/Helper/Symfon
4a40 79 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 2e 70 68 70 6c 08 00 00 9a da 9c 56 6c 08 00 00 43 yQuestionHelper.phpl......Vl...C
4a60 81 e6 6f 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 63 6f ..o........'...vendor/symfony/co
4a80 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 54 61 62 6c 65 2e 70 68 70 7b 29 00 00 9a da 9c 56 7b 29 nsole/Helper/Table.php{).....V{)
4aa0 00 00 8f 9f 7c 6a b6 01 00 00 00 00 00 00 2b 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 ....|j........+...vendor/symfony
4ac0 2f 63 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 54 61 62 6c 65 43 65 6c 6c 2e 70 68 70 3a 03 00 /console/Helper/TableCell.php:..
4ae0 00 9a da 9c 56 3a 03 00 00 37 ae 0f 8f b6 01 00 00 00 00 00 00 2d 00 00 00 76 65 6e 64 6f 72 2f ....V:...7...........-...vendor/
4b00 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 48 65 6c 70 symfony/console/Helper/TableHelp
4b20 65 72 2e 70 68 70 14 0c 00 00 9a da 9c 56 14 0c 00 00 2d 8f a3 dc b6 01 00 00 00 00 00 00 30 00 er.php.......V....-...........0.
4b40 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 72 2f ..vendor/symfony/console/Helper/
4b60 54 61 62 6c 65 53 65 70 61 72 61 74 6f 72 2e 70 68 70 ce 00 00 00 9a da 9c 56 ce 00 00 00 3c 66 TableSeparator.php.......V....<f
4b80 3b a3 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
4ba0 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 54 61 62 6c 65 53 74 79 6c 65 2e 70 68 70 1f 0a 00 00 9a da sole/Helper/TableStyle.php......
4bc0 9c 56 1f 0a 00 00 50 de b5 a6 b6 01 00 00 00 00 00 00 2a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V....P...........*...vendor/sym
4be0 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 41 72 67 76 49 6e 70 75 74 2e 70 68 70 fony/console/Input/ArgvInput.php
4c00 03 14 00 00 9a da 9c 56 03 14 00 00 e4 8d 7e e5 b6 01 00 00 00 00 00 00 2b 00 00 00 76 65 6e 64 .......V......~.........+...vend
4c20 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 41 72 72 61 79 49 6e or/symfony/console/Input/ArrayIn
4c40 70 75 74 2e 70 68 70 70 0a 00 00 9a da 9c 56 70 0a 00 00 d5 06 a4 be b6 01 00 00 00 00 00 00 26 put.phpp......Vp...............&
4c60 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/
4c80 49 6e 70 75 74 2e 70 68 70 d4 0b 00 00 9a da 9c 56 d4 0b 00 00 e4 13 a0 f1 b6 01 00 00 00 00 00 Input.php.......V...............
4ca0 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 49 6e 70 75 .....vendor/symfony/console/Inpu
4cc0 74 2f 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 2e 70 68 70 12 06 00 00 9a da 9c 56 12 06 00 00 c1 t/InputArgument.php.......V.....
4ce0 dc 17 90 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 ...........4...vendor/symfony/co
4d00 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 49 6e 70 75 74 41 77 61 72 65 49 6e 74 65 72 66 61 63 65 2e nsole/Input/InputAwareInterface.
4d20 70 68 70 9a 00 00 00 9a da 9c 56 9a 00 00 00 87 6a 54 9f b6 01 00 00 00 00 00 00 30 00 00 00 76 php.......V.....jT.........0...v
4d40 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 49 6e 70 75 endor/symfony/console/Input/Inpu
4d60 74 44 65 66 69 6e 69 74 69 6f 6e 2e 70 68 70 93 19 00 00 9a da 9c 56 93 19 00 00 c9 ff ff e3 b6 tDefinition.php.......V.........
4d80 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 6e 73 6f 6c ......./...vendor/symfony/consol
4da0 65 2f 49 6e 70 75 74 2f 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 20 03 00 00 9a da e/Input/InputInterface.php......
4dc0 9c 56 20 03 00 00 39 94 f8 c7 b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V....9...........,...vendor/sym
4de0 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 49 6e 70 75 74 4f 70 74 69 6f 6e 2e 70 fony/console/Input/InputOption.p
4e00 68 70 1c 0c 00 00 9a da 9c 56 1c 0c 00 00 87 b9 a7 7f b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 hp.......V................,...ve
4e20 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 53 74 72 69 6e ndor/symfony/console/Input/Strin
4e40 67 49 6e 70 75 74 2e 70 68 70 98 06 00 00 9a da 9c 56 98 06 00 00 20 1d da a4 b6 01 00 00 00 00 gInput.php.......V..............
4e60 00 00 1e 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 4c 49 43 ......vendor/symfony/console/LIC
4e80 45 4e 53 45 29 04 00 00 9a da 9c 56 29 04 00 00 eb 08 26 95 b6 01 00 00 00 00 00 00 2f 00 00 00 ENSE)......V).....&........./...
4ea0 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 4c 6f 67 67 65 72 2f 43 6f vendor/symfony/console/Logger/Co
4ec0 6e 73 6f 6c 65 4c 6f 67 67 65 72 2e 70 68 70 3c 09 00 00 9a da 9c 56 3c 09 00 00 3a e2 c7 6c b6 nsoleLogger.php<......V<...:..l.
4ee0 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 6f 6c .......0...vendor/symfony/consol
4f00 65 2f 4f 75 74 70 75 74 2f 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 2e 70 68 70 5f 01 00 00 9a e/Output/BufferedOutput.php_....
4f20 da 9c 56 5f 01 00 00 fb 42 cd b7 b6 01 00 00 00 00 00 00 2f 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V_....B........../...vendor/sy
4f40 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 75 74 70 mfony/console/Output/ConsoleOutp
4f60 75 74 2e 70 68 70 b5 07 00 00 9a da 9c 56 b5 07 00 00 05 09 76 63 b6 01 00 00 00 00 00 00 38 00 ut.php.......V......vc........8.
4f80 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 2f ..vendor/symfony/console/Output/
4fa0 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 e5 00 00 00 9a da ConsoleOutputInterface.php......
4fc0 9c 56 e5 00 00 00 72 4e f4 00 b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V....rN..........,...vendor/sym
4fe0 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 4e 75 6c 6c 4f 75 74 70 75 74 2e 70 fony/console/Output/NullOutput.p
5000 68 70 c3 03 00 00 9a da 9c 56 c3 03 00 00 08 5a c5 6c b6 01 00 00 00 00 00 00 28 00 00 00 76 65 hp.......V.....Z.l........(...ve
5020 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 2f 4f 75 74 70 ndor/symfony/console/Output/Outp
5040 75 74 2e 70 68 70 8e 09 00 00 9a da 9c 56 8e 09 00 00 78 3a 6c a5 b6 01 00 00 00 00 00 00 31 00 ut.php.......V....x:l.........1.
5060 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 2f ..vendor/symfony/console/Output/
5080 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 1c 03 00 00 9a da 9c 56 1c 03 00 00 1a OutputInterface.php.......V.....
50a0 d3 da 3e 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 79 2f 63 6f ..>............vendor/symfony/co
50c0 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 53 74 72 65 61 6d 4f 75 74 70 75 74 2e 70 68 70 37 05 00 nsole/Output/StreamOutput.php7..
50e0 00 9a da 9c 56 37 05 00 00 69 43 18 9c b6 01 00 00 00 00 00 00 32 00 00 00 76 65 6e 64 6f 72 2f ....V7...iC..........2...vendor/
5100 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 68 6f 69 63 65 51 symfony/console/Question/ChoiceQ
5120 75 65 73 74 69 6f 6e 2e 70 68 70 dd 09 00 00 9a da 9c 56 dd 09 00 00 b0 02 a7 c2 b6 01 00 00 00 uestion.php.......V.............
5140 00 00 00 38 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 51 75 ...8...vendor/symfony/console/Qu
5160 65 73 74 69 6f 6e 2f 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 51 75 65 73 74 69 6f 6e 2e 70 68 70 e9 estion/ConfirmationQuestion.php.
5180 02 00 00 9a da 9c 56 e9 02 00 00 83 17 51 40 b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 6e 64 6f ......V......Q@........,...vendo
51a0 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 51 75 65 73 74 r/symfony/console/Question/Quest
51c0 69 6f 6e 2e 70 68 70 0b 0a 00 00 9a da 9c 56 0b 0a 00 00 15 10 8f 7b b6 01 00 00 00 00 00 00 20 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 53 68 65 6c 6c 2e ...vendor/symfony/console/Shell.
5200 70 68 70 e7 0f 00 00 9a da 9c 56 e7 0f 00 00 48 67 b5 65 b6 01 00 00 00 00 00 00 2c 00 00 00 76 php.......V....Hg.e........,...v
5220 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 4f 75 74 70 endor/symfony/console/Style/Outp
5240 75 74 53 74 79 6c 65 2e 70 68 70 5f 05 00 00 9a da 9c 56 5f 05 00 00 04 fb 05 b5 b6 01 00 00 00 utStyle.php_......V_............
5260 00 00 00 2f 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 53 74 .../...vendor/symfony/console/St
5280 79 6c 65 2f 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 d4 03 00 00 9a da 9c 56 d4 03 yle/StyleInterface.php.......V..
52a0 00 00 a0 df ca 6a 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 .....j........-...vendor/symfony
52c0 2f 63 6f 6e 73 6f 6c 65 2f 53 74 79 6c 65 2f 53 79 6d 66 6f 6e 79 53 74 79 6c 65 2e 70 68 70 45 /console/Style/SymfonyStyle.phpE
52e0 1d 00 00 9a da 9c 56 45 1d 00 00 7f 00 37 32 b6 01 00 00 00 00 00 00 33 00 00 00 76 65 6e 64 6f ......VE.....72........3...vendo
5300 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 41 70 70 6c 69 63 61 r/symfony/console/Tester/Applica
5320 74 69 6f 6e 54 65 73 74 65 72 2e 70 68 70 d4 05 00 00 9a da 9c 56 d4 05 00 00 ac ec a4 64 b6 01 tionTester.php.......V.......d..
5340 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 6e 73 6f 6c 65 ....../...vendor/symfony/console
5360 2f 54 65 73 74 65 72 2f 43 6f 6d 6d 61 6e 64 54 65 73 74 65 72 2e 70 68 70 ae 06 00 00 9a da 9c /Tester/CommandTester.php.......
5380 56 ae 06 00 00 45 d9 9a 7c b6 01 00 00 00 00 00 00 3a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 V....E..|........:...vendor/symf
53a0 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 45 78 63 65 70 74 69 ony/filesystem/Exception/Excepti
53c0 6f 6e 49 6e 74 65 72 66 61 63 65 2e 70 68 70 69 00 00 00 9a da 9c 56 69 00 00 00 24 20 ff 9b b6 onInterface.phpi......Vi...$....
53e0 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 6c 65 73 79 .......=...vendor/symfony/filesy
5400 73 74 65 6d 2f 45 78 63 65 70 74 69 6f 6e 2f 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 stem/Exception/FileNotFoundExcep
5420 74 69 6f 6e 2e 70 68 70 bc 01 00 00 9a da 9c 56 bc 01 00 00 70 ed 5c b6 b6 01 00 00 00 00 00 00 tion.php.......V....p.\.........
5440 33 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 3...vendor/symfony/filesystem/Ex
5460 63 65 70 74 69 6f 6e 2f 49 4f 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 87 01 00 00 9a da 9c 56 87 ception/IOException.php.......V.
5480 01 00 00 80 fc 23 d1 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 .....#.........<...vendor/symfon
54a0 79 2f 66 69 6c 65 73 79 73 74 65 6d 2f 45 78 63 65 70 74 69 6f 6e 2f 49 4f 45 78 63 65 70 74 69 y/filesystem/Exception/IOExcepti
54c0 6f 6e 49 6e 74 65 72 66 61 63 65 2e 70 68 70 a6 00 00 00 9a da 9c 56 a6 00 00 00 6a d9 77 4d b6 onInterface.php.......V....j.wM.
54e0 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 66 69 6c 65 73 79 .......(...vendor/symfony/filesy
5500 73 74 65 6d 2f 46 69 6c 65 73 79 73 74 65 6d 2e 70 68 70 43 2b 00 00 9a da 9c 56 43 2b 00 00 2c stem/Filesystem.phpC+.....VC+..,
5520 4f 59 6d b6 01 00 00 00 00 00 00 21 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 OYm........!...vendor/symfony/fi
5540 6c 65 73 79 73 74 65 6d 2f 4c 49 43 45 4e 53 45 29 04 00 00 9a da 9c 56 29 04 00 00 eb 08 26 95 lesystem/LICENSE)......V).....&.
5560 b6 01 00 00 00 00 00 00 29 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6c 65 73 ........)...vendor/symfony/files
5580 79 73 74 65 6d 2f 4c 6f 63 6b 48 61 6e 64 6c 65 72 2e 70 68 70 cd 05 00 00 9a da 9c 56 cd 05 00 ystem/LockHandler.php.......V...
55a0 00 28 f1 a8 27 b6 01 00 00 00 00 00 00 31 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f .(..'........1...vendor/symfony/
55c0 66 69 6e 64 65 72 2f 41 64 61 70 74 65 72 2f 41 62 73 74 72 61 63 74 41 64 61 70 74 65 72 2e 70 finder/Adapter/AbstractAdapter.p
55e0 68 70 5c 0b 00 00 9a da 9c 56 5c 0b 00 00 c6 93 c9 80 b6 01 00 00 00 00 00 00 35 00 00 00 76 65 hp\......V\...............5...ve
5600 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 41 62 73 74 ndor/symfony/finder/Adapter/Abst
5620 72 61 63 74 46 69 6e 64 41 64 61 70 74 65 72 2e 70 68 70 99 19 00 00 9a da 9c 56 99 19 00 00 70 ractFindAdapter.php.......V....p
5640 5c 5a 33 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 66 69 \Z3........2...vendor/symfony/fi
5660 6e 64 65 72 2f 41 64 61 70 74 65 72 2f 41 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 nder/Adapter/AdapterInterface.ph
5680 70 b1 03 00 00 9a da 9c 56 b1 03 00 00 e4 bb ca 26 b6 01 00 00 00 00 00 00 30 00 00 00 76 65 6e p.......V.......&........0...ven
56a0 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 42 73 64 46 69 dor/symfony/finder/Adapter/BsdFi
56c0 6e 64 41 64 61 70 74 65 72 2e 70 68 70 32 07 00 00 9a da 9c 56 32 07 00 00 51 2f c7 43 b6 01 00 ndAdapter.php2......V2...Q/.C...
56e0 00 00 00 00 00 30 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 .....0...vendor/symfony/finder/A
5700 64 61 70 74 65 72 2f 47 6e 75 46 69 6e 64 41 64 61 70 74 65 72 2e 70 68 70 15 07 00 00 9a da 9c dapter/GnuFindAdapter.php.......
5720 56 15 07 00 00 0d 17 a1 be b6 01 00 00 00 00 00 00 2c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 V................,...vendor/symf
5740 6f 6e 79 2f 66 69 6e 64 65 72 2f 41 64 61 70 74 65 72 2f 50 68 70 41 64 61 70 74 65 72 2e 70 68 ony/finder/Adapter/PhpAdapter.ph
5760 70 f4 07 00 00 9a da 9c 56 f4 07 00 00 16 1d 3a 3f b6 01 00 00 00 00 00 00 2f 00 00 00 76 65 6e p.......V......:?......../...ven
5780 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 2f 43 6f dor/symfony/finder/Comparator/Co
57a0 6d 70 61 72 61 74 6f 72 2e 70 68 70 8c 03 00 00 9a da 9c 56 8c 03 00 00 16 77 fe 54 b6 01 00 00 mparator.php.......V.....w.T....
57c0 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 65 72 2f 43 6f ....3...vendor/symfony/finder/Co
57e0 6d 70 61 72 61 74 6f 72 2f 44 61 74 65 43 6f 6d 70 61 72 61 74 6f 72 2e 70 68 70 25 03 00 00 9a mparator/DateComparator.php%....
5800 da 9c 56 25 03 00 00 4c bf 45 c7 b6 01 00 00 00 00 00 00 35 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V%...L.E.........5...vendor/sy
5820 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 43 6f 6d 70 61 72 61 74 6f 72 2f 4e 75 6d 62 65 72 43 6f mfony/finder/Comparator/NumberCo
5840 6d 70 61 72 61 74 6f 72 2e 70 68 70 7e 03 00 00 9a da 9c 56 7e 03 00 00 94 87 20 78 b6 01 00 00 mparator.php~......V~......x....
5860 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 72 2f 45 78 ....9...vendor/symfony/finder/Ex
5880 63 65 70 74 69 6f 6e 2f 41 63 63 65 73 73 44 65 6e 69 65 64 45 78 63 65 70 74 69 6f 6e 2e 70 68 ception/AccessDeniedException.ph
58a0 70 84 00 00 00 9a da 9c 56 84 00 00 00 bd be 73 9c b6 01 00 00 00 00 00 00 3b 00 00 00 76 65 6e p.......V......s.........;...ven
58c0 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 41 64 61 dor/symfony/finder/Exception/Ada
58e0 70 74 65 72 46 61 69 6c 75 72 65 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 af 02 00 00 9a da 9c 56 pterFailureException.php.......V
5900 af 02 00 00 9c f4 d4 c1 b6 01 00 00 00 00 00 00 36 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f ................6...vendor/symfo
5920 6e 79 2f 66 69 6e 64 65 72 2f 45 78 63 65 70 74 69 6f 6e 2f 45 78 63 65 70 74 69 6f 6e 49 6e 74 ny/finder/Exception/ExceptionInt
5940 65 72 66 61 63 65 2e 70 68 70 84 00 00 00 9a da 9c 56 84 00 00 00 1c 47 7a 2d b6 01 00 00 00 00 erface.php.......V.....Gz-......
5960 00 00 41 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 63 65 ..A...vendor/symfony/finder/Exce
5980 70 74 69 6f 6e 2f 4f 70 65 72 61 74 69 6f 6e 4e 6f 74 50 65 72 6d 69 74 65 64 45 78 63 65 70 74 ption/OperationNotPermitedExcept
59a0 69 6f 6e 2e 70 68 70 29 01 00 00 9a da 9c 56 29 01 00 00 ec 63 6a 3d b6 01 00 00 00 00 00 00 40 ion.php)......V)....cj=........@
59c0 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 63 65 70 74 69 ...vendor/symfony/finder/Excepti
59e0 6f 6e 2f 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 2e on/ShellCommandFailureException.
5a00 70 68 70 c2 02 00 00 9a da 9c 56 c2 02 00 00 19 76 82 c8 b6 01 00 00 00 00 00 00 2f 00 00 00 76 php.......V.....v........../...v
5a20 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 6f 6e 2f endor/symfony/finder/Expression/
5a40 45 78 70 72 65 73 73 69 6f 6e 2e 70 68 70 07 06 00 00 9a da 9c 56 07 06 00 00 b5 6f d4 06 b6 01 Expression.php.......V.....o....
5a60 00 00 00 00 00 00 29 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 ......)...vendor/symfony/finder/
5a80 45 78 70 72 65 73 73 69 6f 6e 2f 47 6c 6f 62 2e 70 68 70 69 04 00 00 9a da 9c 56 69 04 00 00 40 Expression/Glob.phpi......Vi...@
5aa0 8a 1b ba 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 66 69 ...........*...vendor/symfony/fi
5ac0 6e 64 65 72 2f 45 78 70 72 65 73 73 69 6f 6e 2f 52 65 67 65 78 2e 70 68 70 06 0f 00 00 9a da 9c nder/Expression/Regex.php.......
5ae0 56 06 0f 00 00 70 38 00 5c b6 01 00 00 00 00 00 00 33 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 V....p8.\........3...vendor/symf
5b00 6f 6e 79 2f 66 69 6e 64 65 72 2f 45 78 70 72 65 73 73 69 6f 6e 2f 56 61 6c 75 65 49 6e 74 65 72 ony/finder/Expression/ValueInter
5b20 66 61 63 65 2e 70 68 70 cd 01 00 00 9a da 9c 56 cd 01 00 00 b2 7e f8 62 b6 01 00 00 00 00 00 00 face.php.......V.....~.b........
5b40 20 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 46 69 6e 64 65 72 ....vendor/symfony/finder/Finder
5b60 2e 70 68 70 c2 2d 00 00 9a da 9c 56 c2 2d 00 00 1e 98 66 b4 b6 01 00 00 00 00 00 00 1e 00 00 00 .php.-.....V.-....f.............
5b80 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 47 6c 6f 62 2e 70 68 70 34 05 vendor/symfony/finder/Glob.php4.
5ba0 00 00 9a da 9c 56 34 05 00 00 b0 42 61 b3 b6 01 00 00 00 00 00 00 37 00 00 00 76 65 6e 64 6f 72 .....V4....Ba.........7...vendor
5bc0 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 43 75 73 74 6f 6d 46 /symfony/finder/Iterator/CustomF
5be0 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 5d 02 00 00 9a da 9c 56 5d 02 00 00 74 e0 b1 ilterIterator.php]......V]...t..
5c00 b5 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 6e 64 .........:...vendor/symfony/find
5c20 65 72 2f 49 74 65 72 61 74 6f 72 2f 44 61 74 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 er/Iterator/DateRangeFilterItera
5c40 74 6f 72 2e 70 68 70 7a 02 00 00 9a da 9c 56 7a 02 00 00 7f 7d 17 a2 b6 01 00 00 00 00 00 00 3b tor.phpz......Vz....}..........;
5c60 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 74 6f ...vendor/symfony/finder/Iterato
5c80 72 2f 44 65 70 74 68 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 f0 01 r/DepthRangeFilterIterator.php..
5ca0 00 00 9a da 9c 56 f0 01 00 00 df 30 99 04 b6 01 00 00 00 00 00 00 41 00 00 00 76 65 6e 64 6f 72 .....V.....0..........A...vendor
5cc0 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 45 78 63 6c 75 64 65 /symfony/finder/Iterator/Exclude
5ce0 44 69 72 65 63 74 6f 72 79 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 ca 05 00 00 9a DirectoryFilterIterator.php.....
5d00 da 9c 56 ca 05 00 00 90 39 36 86 b6 01 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V.....96.........4...vendor/sy
5d20 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 46 69 6c 65 50 61 74 68 73 49 mfony/finder/Iterator/FilePathsI
5d40 74 65 72 61 74 6f 72 2e 70 68 70 20 06 00 00 9a da 9c 56 20 06 00 00 66 51 43 65 b6 01 00 00 00 terator.php.......V....fQCe.....
5d60 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 72 2f 49 74 65 ...9...vendor/symfony/finder/Ite
5d80 72 61 74 6f 72 2f 46 69 6c 65 54 79 70 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 rator/FileTypeFilterIterator.php
5da0 5c 02 00 00 9a da 9c 56 5c 02 00 00 70 91 27 98 b6 01 00 00 00 00 00 00 3c 00 00 00 76 65 6e 64 \......V\...p.'.........<...vend
5dc0 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 6c 65 63 or/symfony/finder/Iterator/Filec
5de0 6f 6e 74 65 6e 74 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 35 02 00 00 9a da 9c 56 ontentFilterIterator.php5......V
5e00 35 02 00 00 9a ed 1f 14 b6 01 00 00 00 00 00 00 39 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 5...............9...vendor/symfo
5e20 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 46 69 6c 65 6e 61 6d 65 46 69 6c 74 65 ny/finder/Iterator/FilenameFilte
5e40 72 49 74 65 72 61 74 6f 72 2e 70 68 70 72 01 00 00 9a da 9c 56 72 01 00 00 74 08 1a 75 b6 01 00 rIterator.phpr......Vr...t..u...
5e60 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 49 .....1...vendor/symfony/finder/I
5e80 74 65 72 61 74 6f 72 2f 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 86 02 00 00 9a da terator/FilterIterator.php......
5ea0 9c 56 86 02 00 00 30 a3 be d4 b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V....0...........=...vendor/sym
5ec0 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 4d 75 6c 74 69 70 6c 65 50 63 72 fony/finder/Iterator/MultiplePcr
5ee0 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 2f 05 00 00 9a da 9c 56 2f 05 00 00 bb eFilterIterator.php/......V/....
5f00 c7 1f 59 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 ..Y........5...vendor/symfony/fi
5f20 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 50 61 74 68 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 nder/Iterator/PathFilterIterator
5f40 2e 70 68 70 cf 01 00 00 9a da 9c 56 cf 01 00 00 ba 1c aa c7 b6 01 00 00 00 00 00 00 3d 00 00 00 .php.......V................=...
5f60 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 52 vendor/symfony/finder/Iterator/R
5f80 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 2e 70 68 70 77 08 00 ecursiveDirectoryIterator.phpw..
5fa0 00 9a da 9c 56 77 08 00 00 6f 70 17 9b b6 01 00 00 00 00 00 00 3a 00 00 00 76 65 6e 64 6f 72 2f ....Vw...op..........:...vendor/
5fc0 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 53 69 7a 65 52 61 6e 67 symfony/finder/Iterator/SizeRang
5fe0 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 67 02 00 00 9a da 9c 56 67 02 00 00 21 eFilterIterator.phpg......Vg...!
6000 d4 97 e9 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 ...........3...vendor/symfony/fi
6020 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 2e 70 nder/Iterator/SortableIterator.p
6040 68 70 d8 05 00 00 9a da 9c 56 d8 05 00 00 60 8b 3e 63 b6 01 00 00 00 00 00 00 1d 00 00 00 76 65 hp.......V....`.>c............ve
6060 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 4c 49 43 45 4e 53 45 29 04 00 00 9a ndor/symfony/finder/LICENSE)....
6080 da 9c 56 29 04 00 00 eb 08 26 95 b6 01 00 00 00 00 00 00 27 00 00 00 76 65 6e 64 6f 72 2f 73 79 ..V).....&.........'...vendor/sy
60a0 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 68 65 6c 6c 2f 43 6f 6d 6d 61 6e 64 2e 70 68 70 53 0b mfony/finder/Shell/Command.phpS.
60c0 00 00 9a da 9c 56 53 0b 00 00 63 43 85 99 b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e 64 6f 72 .....VS...cC..........%...vendor
60e0 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 68 65 6c 6c 2f 53 68 65 6c 6c 2e 70 68 70 70 /symfony/finder/Shell/Shell.phpp
6100 04 00 00 9a da 9c 56 70 04 00 00 18 d3 7d 67 b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e 64 6f ......Vp.....}g........%...vendo
6120 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 70 6c 46 69 6c 65 49 6e 66 6f 2e 70 68 70 r/symfony/finder/SplFileInfo.php
6140 fb 02 00 00 9a da 9c 56 fb 02 00 00 91 05 86 36 b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e 64 .......V.......6........(...vend
6160 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 67 2f 4c 49 43 or/symfony/polyfill-mbstring/LIC
6180 45 4e 53 45 29 04 00 00 9a da 9c 56 29 04 00 00 1c 9b 9e 9b b6 01 00 00 00 00 00 00 2d 00 00 00 ENSE)......V)...............-...
61a0 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 67 vendor/symfony/polyfill-mbstring
61c0 2f 4d 62 73 74 72 69 6e 67 2e 70 68 70 35 30 00 00 9a da 9c 56 35 30 00 00 8a 41 81 ba b6 01 00 /Mbstring.php50.....V50...A.....
61e0 00 00 00 00 00 2e 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 6f 6c 79 66 69 6c 6c .........vendor/symfony/polyfill
6200 2d 6d 62 73 74 72 69 6e 67 2f 62 6f 6f 74 73 74 72 61 70 2e 70 68 70 6f 0e 00 00 9a da 9c 56 6f -mbstring/bootstrap.phpo......Vo
6220 0e 00 00 63 10 d7 35 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 ...c..5........7...vendor/symfon
6240 79 2f 70 72 6f 63 65 73 73 2f 45 78 63 65 70 74 69 6f 6e 2f 45 78 63 65 70 74 69 6f 6e 49 6e 74 y/process/Exception/ExceptionInt
6260 65 72 66 61 63 65 2e 70 68 70 66 00 00 00 9a da 9c 56 66 00 00 00 5d f6 3e 54 b6 01 00 00 00 00 erface.phpf......Vf...].>T......
6280 00 00 3d 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
62a0 65 70 74 69 6f 6e 2f 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 2e eption/InvalidArgumentException.
62c0 70 68 70 a8 00 00 00 9a da 9c 56 a8 00 00 00 d0 c0 2b 5f b6 01 00 00 00 00 00 00 33 00 00 00 76 php.......V......+_........3...v
62e0 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 65 70 74 69 6f 6e 2f endor/symfony/process/Exception/
6300 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 94 00 00 00 9a da 9c 56 94 00 00 00 20 b3 LogicException.php.......V......
6320 e3 f1 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 70 72 6f ..........;...vendor/symfony/pro
6340 63 65 73 73 2f 45 78 63 65 70 74 69 6f 6e 2f 50 72 6f 63 65 73 73 46 61 69 6c 65 64 45 78 63 65 cess/Exception/ProcessFailedExce
6360 70 74 69 6f 6e 2e 70 68 70 78 03 00 00 9a da 9c 56 78 03 00 00 a8 cc 7a 79 b6 01 00 00 00 00 00 ption.phpx......Vx.....zy.......
6380 00 3d 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 65 .=...vendor/symfony/process/Exce
63a0 70 74 69 6f 6e 2f 50 72 6f 63 65 73 73 54 69 6d 65 64 4f 75 74 45 78 63 65 70 74 69 6f 6e 2e 70 ption/ProcessTimedOutException.p
63c0 68 70 1f 04 00 00 9a da 9c 56 1f 04 00 00 2e 09 c3 e1 b6 01 00 00 00 00 00 00 35 00 00 00 76 65 hp.......V................5...ve
63e0 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 52 ndor/symfony/process/Exception/R
6400 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 98 00 00 00 9a da 9c 56 98 00 00 00 a2 untimeException.php.......V.....
6420 1b d8 3a b6 01 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 70 72 ..:........+...vendor/symfony/pr
6440 6f 63 65 73 73 2f 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 2e 70 68 70 81 04 00 00 9a da ocess/ExecutableFinder.php......
6460 9c 56 81 04 00 00 f2 29 e5 dc b6 01 00 00 00 00 00 00 1e 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V.....)..............vendor/sym
6480 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 4c 49 43 45 4e 53 45 29 04 00 00 9a da 9c 56 29 04 00 00 fony/process/LICENSE)......V)...
64a0 eb 08 26 95 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 79 2f 70 ..&.............vendor/symfony/p
64c0 72 6f 63 65 73 73 2f 50 68 70 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 2e 70 68 70 67 04 rocess/PhpExecutableFinder.phpg.
64e0 00 00 9a da 9c 56 67 04 00 00 8d e7 b5 06 b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e 64 6f 72 .....Vg...............%...vendor
6500 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 68 70 50 72 6f 63 65 73 73 2e 70 68 70 fc /symfony/process/PhpProcess.php.
6520 03 00 00 9a da 9c 56 fc 03 00 00 5f 17 97 39 b6 01 00 00 00 00 00 00 2e 00 00 00 76 65 6e 64 6f ......V...._..9............vendo
6540 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 69 70 65 73 2f 41 62 73 74 72 61 63 74 r/symfony/process/Pipes/Abstract
6560 50 69 70 65 73 2e 70 68 70 00 03 00 00 9a da 9c 56 00 03 00 00 98 7c a5 be b6 01 00 00 00 00 00 Pipes.php.......V.....|.........
6580 00 2f 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 69 70 65 ./...vendor/symfony/process/Pipe
65a0 73 2f 50 69 70 65 73 49 6e 74 65 72 66 61 63 65 2e 70 68 70 44 01 00 00 9a da 9c 56 44 01 00 00 s/PipesInterface.phpD......VD...
65c0 76 d8 ee a1 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 70 v...........*...vendor/symfony/p
65e0 72 6f 63 65 73 73 2f 50 69 70 65 73 2f 55 6e 69 78 50 69 70 65 73 2e 70 68 70 a4 0b 00 00 9a da rocess/Pipes/UnixPipes.php......
6600 9c 56 a4 0b 00 00 f8 01 55 74 b6 01 00 00 00 00 00 00 2d 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d .V......Ut........-...vendor/sym
6620 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 69 70 65 73 2f 57 69 6e 64 6f 77 73 50 69 70 65 73 2e fony/process/Pipes/WindowsPipes.
6640 70 68 70 9d 0e 00 00 9a da 9c 56 9d 0e 00 00 96 29 be 6e b6 01 00 00 00 00 00 00 22 00 00 00 76 php.......V.....).n........"...v
6660 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 72 6f 63 65 73 73 2e 70 68 endor/symfony/process/Process.ph
6680 70 02 51 00 00 9a da 9c 56 02 51 00 00 bc 04 38 25 b6 01 00 00 00 00 00 00 29 00 00 00 76 65 6e p.Q.....V.Q....8%........)...ven
66a0 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 50 72 6f 63 65 73 73 42 75 69 6c 64 dor/symfony/process/ProcessBuild
66c0 65 72 2e 70 68 70 03 0b 00 00 9a da 9c 56 03 0b 00 00 84 38 3c b2 b6 01 00 00 00 00 00 00 27 00 er.php.......V.....8<.........'.
66e0 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 72 6f 63 65 73 73 ..vendor/symfony/process/Process
6700 55 74 69 6c 73 2e 70 68 70 0e 06 00 00 9a da 9c 56 0e 06 00 00 5e dc b2 22 b6 01 00 00 00 00 00 Utils.php.......V....^..".......
6720 00 1c 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 6a 73 6f 6e 6c 69 6e 74 2f 4c 49 43 45 4e 53 .....vendor/seld/jsonlint/LICENS
6740 45 22 04 00 00 9a da 9c 56 22 04 00 00 61 83 73 79 b6 01 00 00 00 00 00 00 40 00 00 00 76 65 6e E"......V"...a.sy........@...ven
6760 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 4a 73 6f 6e 4c dor/seld/jsonlint/src/Seld/JsonL
6780 69 6e 74 2f 44 75 70 6c 69 63 61 74 65 4b 65 79 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 2a 01 00 int/DuplicateKeyException.php*..
67a0 00 9a da 9c 56 2a 01 00 00 19 95 70 f1 b6 01 00 00 00 00 00 00 35 00 00 00 76 65 6e 64 6f 72 2f ....V*.....p.........5...vendor/
67c0 73 65 6c 64 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 seld/jsonlint/src/Seld/JsonLint/
67e0 4a 73 6f 6e 50 61 72 73 65 72 2e 70 68 70 93 31 00 00 9a da 9c 56 93 31 00 00 9d 50 02 a6 b6 01 JsonParser.php.1.....V.1...P....
6800 00 00 00 00 00 00 30 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 ......0...vendor/seld/jsonlint/s
6820 72 63 2f 53 65 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 2f 4c 65 78 65 72 2e 70 68 70 07 0f 00 00 9a da rc/Seld/JsonLint/Lexer.php......
6840 9c 56 07 0f 00 00 89 84 6d 21 b6 01 00 00 00 00 00 00 3b 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c .V......m!........;...vendor/sel
6860 64 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 50 61 72 d/jsonlint/src/Seld/JsonLint/Par
6880 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 1e 01 00 00 9a da 9c 56 1e 01 00 00 89 b2 10 singException.php.......V.......
68a0 f1 b6 01 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 6a 73 6f 6e 6c 69 6e .........4...vendor/seld/jsonlin
68c0 74 2f 73 72 63 2f 53 65 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 2f 55 6e 64 65 66 69 6e 65 64 2e 70 68 t/src/Seld/JsonLint/Undefined.ph
68e0 70 3e 00 00 00 9a da 9c 56 3e 00 00 00 ff 71 9f 9f b6 01 00 00 00 00 00 00 1e 00 00 00 76 65 6e p>......V>....q..............ven
6900 64 6f 72 2f 73 65 6c 64 2f 63 6c 69 2d 70 72 6f 6d 70 74 2f 4c 49 43 45 4e 53 45 22 04 00 00 9a dor/seld/cli-prompt/LICENSE"....
6920 da 9c 56 22 04 00 00 88 f1 3f 65 b6 01 00 00 00 00 00 00 26 00 00 00 76 65 6e 64 6f 72 2f 73 65 ..V".....?e........&...vendor/se
6940 6c 64 2f 63 6c 69 2d 70 72 6f 6d 70 74 2f 72 65 73 2f 65 78 61 6d 70 6c 65 2e 70 68 70 27 01 00 ld/cli-prompt/res/example.php'..
6960 00 9a da 9c 56 27 01 00 00 49 1c 05 a3 b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e 64 6f 72 2f ....V'...I...........(...vendor/
6980 73 65 6c 64 2f 63 6c 69 2d 70 72 6f 6d 70 74 2f 73 72 63 2f 43 6c 69 50 72 6f 6d 70 74 2e 70 68 seld/cli-prompt/src/CliPrompt.ph
69a0 70 07 06 00 00 9a da 9c 56 07 06 00 00 ad e9 99 76 b6 01 00 00 00 00 00 00 28 00 00 00 76 65 6e p.......V.......v........(...ven
69c0 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 4c 49 dor/justinrainbow/json-schema/LI
69e0 43 45 4e 53 45 f7 05 00 00 9a da 9c 56 f7 05 00 00 78 de 78 74 b6 01 00 00 00 00 00 00 54 00 00 CENSE.......V....x.xt........T..
6a00 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 65 6d .vendor/justinrainbow/json-schem
6a20 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 43 6f 6c a/src/JsonSchema/Constraints/Col
6a40 6c 65 63 74 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 f9 09 00 00 9a da 9c 56 f9 09 00 lectionConstraint.php.......V...
6a60 00 f0 26 95 d8 b6 01 00 00 00 00 00 00 4a 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 ..&..........J...vendor/justinra
6a80 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
6aa0 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 9b 0f 00 00 9a /Constraints/Constraint.php.....
6ac0 da 9c 56 9b 0f 00 00 98 91 28 63 b6 01 00 00 00 00 00 00 53 00 00 00 76 65 6e 64 6f 72 2f 6a 75 ..V......(c........S...vendor/ju
6ae0 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
6b00 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 Schema/Constraints/ConstraintInt
6b20 65 72 66 61 63 65 2e 70 68 70 72 01 00 00 9a da 9c 56 72 01 00 00 e3 7b 73 36 b6 01 00 00 00 00 erface.phpr......Vr....{s6......
6b40 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 2d ..N...vendor/justinrainbow/json-
6b60 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 74 schema/src/JsonSchema/Constraint
6b80 73 2f 45 6e 75 6d 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 78 02 00 00 9a da 9c 56 78 02 00 00 s/EnumConstraint.phpx......Vx...
6ba0 02 d2 d9 91 b6 01 00 00 00 00 00 00 47 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 ............G...vendor/justinrai
6bc0 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 2f nbow/json-schema/src/JsonSchema/
6be0 43 6f 6e 73 74 72 61 69 6e 74 73 2f 46 61 63 74 6f 72 79 2e 70 68 70 80 06 00 00 9a da 9c 56 80 Constraints/Factory.php.......V.
6c00 06 00 00 a3 43 14 af 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 ....C..........P...vendor/justin
6c20 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 53 63 68 65 rainbow/json-schema/src/JsonSche
6c40 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 46 6f 72 6d 61 74 43 6f 6e 73 74 72 61 69 6e 74 2e ma/Constraints/FormatConstraint.
6c60 70 68 70 97 10 00 00 9a da 9c 56 97 10 00 00 1d 72 d9 82 b6 01 00 00 00 00 00 00 50 00 00 00 76 php.......V.....r..........P...v
6c80 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 2f endor/justinrainbow/json-schema/
6ca0 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 4e 75 6d 62 65 src/JsonSchema/Constraints/Numbe
6cc0 72 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 90 0a 00 00 9a da 9c 56 90 0a 00 00 bd 4b b8 89 b6 rConstraint.php.......V.....K...
6ce0 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/
6d00 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
6d20 72 61 69 6e 74 73 2f 4f 62 6a 65 63 74 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 d9 0b 00 00 9a raints/ObjectConstraint.php.....
6d40 da 9c 56 d9 0b 00 00 c6 41 80 72 b6 01 00 00 00 00 00 00 50 00 00 00 76 65 6e 64 6f 72 2f 6a 75 ..V.....A.r........P...vendor/ju
6d60 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
6d80 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 53 63 68 65 6d 61 43 6f 6e 73 74 72 61 Schema/Constraints/SchemaConstra
6da0 69 6e 74 2e 70 68 70 20 02 00 00 9a da 9c 56 20 02 00 00 c8 cc d5 e2 b6 01 00 00 00 00 00 00 50 int.php.......V................P
6dc0 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
6de0 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 53 ema/src/JsonSchema/Constraints/S
6e00 74 72 69 6e 67 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 51 04 00 00 9a da 9c 56 51 04 00 00 78 tringConstraint.phpQ......VQ...x
6e20 d0 f8 bc b6 01 00 00 00 00 00 00 4e 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e ...........N...vendor/justinrain
6e40 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
6e60 6f 6e 73 74 72 61 69 6e 74 73 2f 54 79 70 65 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 c6 08 00 onstraints/TypeConstraint.php...
6e80 00 9a da 9c 56 c6 08 00 00 dc f2 da 8a b6 01 00 00 00 00 00 00 53 00 00 00 76 65 6e 64 6f 72 2f ....V................S...vendor/
6ea0 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
6ec0 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 55 6e 64 65 66 69 6e 65 64 43 6f onSchema/Constraints/UndefinedCo
6ee0 6e 73 74 72 61 69 6e 74 2e 70 68 70 e7 18 00 00 9a da 9c 56 e7 18 00 00 5e 8f 67 d3 b6 01 00 00 nstraint.php.......V....^.g.....
6f00 00 00 00 00 56 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 ....V...vendor/justinrainbow/jso
6f20 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 74 69 6f n-schema/src/JsonSchema/Exceptio
6f40 6e 2f 49 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 76 00 n/InvalidArgumentException.phpv.
6f60 00 00 9a da 9c 56 76 00 00 00 ac 20 ab 22 b6 01 00 00 00 00 00 00 5d 00 00 00 76 65 6e 64 6f 72 .....Vv......"........]...vendor
6f80 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 4a /justinrainbow/json-schema/src/J
6fa0 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 64 53 63 68 65 6d sonSchema/Exception/InvalidSchem
6fc0 61 4d 65 64 69 61 54 79 70 65 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 76 00 00 00 9a da 9c 56 76 aMediaTypeException.phpv......Vv
6fe0 00 00 00 02 8a 43 d3 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 .....C.........W...vendor/justin
7000 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 53 63 68 65 rainbow/json-schema/src/JsonSche
7020 6d 61 2f 45 78 63 65 70 74 69 6f 6e 2f 49 6e 76 61 6c 69 64 53 6f 75 72 63 65 55 72 69 45 78 63 ma/Exception/InvalidSourceUriExc
7040 65 70 74 69 6f 6e 2e 70 68 70 77 00 00 00 9a da 9c 56 77 00 00 00 4e 2d f2 5b b6 01 00 00 00 00 eption.phpw......Vw...N-.[......
7060 00 00 53 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 ..S...vendor/justinrainbow/json-
7080 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 74 69 6f 6e 2f schema/src/JsonSchema/Exception/
70a0 4a 73 6f 6e 44 65 63 6f 64 69 6e 67 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 de 02 00 00 9a da 9c JsonDecodingException.php.......
70c0 56 de 02 00 00 86 be a9 91 b6 01 00 00 00 00 00 00 57 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 V................W...vendor/just
70e0 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 53 63 inrainbow/json-schema/src/JsonSc
7100 68 65 6d 61 2f 45 78 63 65 70 74 69 6f 6e 2f 52 65 73 6f 75 72 63 65 4e 6f 74 46 6f 75 6e 64 45 hema/Exception/ResourceNotFoundE
7120 78 63 65 70 74 69 6f 6e 2e 70 68 70 6f 00 00 00 9a da 9c 56 6f 00 00 00 c6 24 22 c5 b6 01 00 00 xception.phpo......Vo....$".....
7140 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 73 6f ....R...vendor/justinrainbow/jso
7160 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 74 69 6f n-schema/src/JsonSchema/Exceptio
7180 6e 2f 55 72 69 52 65 73 6f 6c 76 65 72 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 6a 00 00 00 9a da n/UriResolverException.phpj.....
71a0 9c 56 6a 00 00 00 53 d3 c7 b3 b6 01 00 00 00 00 00 00 3f 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 .Vj...S...........?...vendor/jus
71c0 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 53 tinrainbow/json-schema/src/JsonS
71e0 63 68 65 6d 61 2f 52 65 66 52 65 73 6f 6c 76 65 72 2e 70 68 70 d2 0d 00 00 9a da 9c 56 d2 0d 00 chema/RefResolver.php.......V...
7200 00 4b 24 0b a4 b6 01 00 00 00 00 00 00 54 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 .K$..........T...vendor/justinra
7220 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
7240 2f 55 72 69 2f 52 65 74 72 69 65 76 65 72 73 2f 41 62 73 74 72 61 63 74 52 65 74 72 69 65 76 65 /Uri/Retrievers/AbstractRetrieve
7260 72 2e 70 68 70 dc 00 00 00 9a da 9c 56 dc 00 00 00 1b 5d 6a 1c b6 01 00 00 00 00 00 00 47 00 00 r.php.......V.....]j.........G..
7280 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 65 6d .vendor/justinrainbow/json-schem
72a0 61 2f 73 72 63 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 a/src/JsonSchema/Uri/Retrievers/
72c0 43 75 72 6c 2e 70 68 70 74 04 00 00 9a da 9c 56 74 04 00 00 49 b7 fd 00 b6 01 00 00 00 00 00 00 Curl.phpt......Vt...I...........
72e0 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 73 6f 6e 2d 73 63 R...vendor/justinrainbow/json-sc
7300 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 72 69 65 76 65 hema/src/JsonSchema/Uri/Retrieve
7320 72 73 2f 46 69 6c 65 47 65 74 43 6f 6e 74 65 6e 74 73 2e 70 68 70 62 05 00 00 9a da 9c 56 62 05 rs/FileGetContents.phpb......Vb.
7340 00 00 57 18 fd c1 b6 01 00 00 00 00 00 00 52 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 ..W...........R...vendor/justinr
7360 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
7380 61 2f 55 72 69 2f 52 65 74 72 69 65 76 65 72 73 2f 50 72 65 64 65 66 69 6e 65 64 41 72 72 61 79 a/Uri/Retrievers/PredefinedArray
73a0 2e 70 68 70 2a 02 00 00 9a da 9c 56 2a 02 00 00 2d 33 ff 08 b6 01 00 00 00 00 00 00 58 00 00 00 .php*......V*...-3..........X...
73c0 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
73e0 2f 73 72 63 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 55 /src/JsonSchema/Uri/Retrievers/U
7400 72 69 52 65 74 72 69 65 76 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 a9 00 00 00 9a da 9c 56 riRetrieverInterface.php.......V
7420 a9 00 00 00 06 03 43 4f b6 01 00 00 00 00 00 00 43 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 ......CO........C...vendor/justi
7440 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 53 63 68 nrainbow/json-schema/src/JsonSch
7460 65 6d 61 2f 55 72 69 2f 55 72 69 52 65 73 6f 6c 76 65 72 2e 70 68 70 52 09 00 00 9a da 9c 56 52 ema/Uri/UriResolver.phpR......VR
7480 09 00 00 70 ff 69 31 b6 01 00 00 00 00 00 00 44 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e ...p.i1........D...vendor/justin
74a0 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 53 63 68 65 rainbow/json-schema/src/JsonSche
74c0 6d 61 2f 55 72 69 2f 55 72 69 52 65 74 72 69 65 76 65 72 2e 70 68 70 61 10 00 00 9a da 9c 56 61 ma/Uri/UriRetriever.phpa......Va
74e0 10 00 00 be 2c ce 97 b6 01 00 00 00 00 00 00 3d 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e ....,..........=...vendor/justin
7500 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 53 63 68 65 rainbow/json-schema/src/JsonSche
7520 6d 61 2f 56 61 6c 69 64 61 74 6f 72 2e 70 68 70 db 01 00 00 9a da 9c 56 db 01 00 00 0c 7a 44 34 ma/Validator.php.......V.....zD4
7540 b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 70 64 78 ........%...vendor/composer/spdx
7560 2d 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 1c 04 00 00 9a da 9c 56 1c 04 00 00 06 42 68 -licenses/LICENSE.......V.....Bh
7580 ed b6 01 00 00 00 00 00 00 32 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 70 64 .........2...vendor/composer/spd
75a0 78 2d 6c 69 63 65 6e 73 65 73 2f 73 72 63 2f 53 70 64 78 4c 69 63 65 6e 73 65 73 2e 70 68 70 e5 x-licenses/src/SpdxLicenses.php.
75c0 11 00 00 9a da 9c 56 e5 11 00 00 3d 0e d8 37 b6 01 00 00 00 00 00 00 1e 00 00 00 76 65 6e 64 6f ......V....=..7............vendo
75e0 72 2f 63 6f 6d 70 6f 73 65 72 2f 73 65 6d 76 65 72 2f 4c 49 43 45 4e 53 45 1c 04 00 00 9a da 9c r/composer/semver/LICENSE.......
7600 56 1c 04 00 00 06 42 68 ed b6 01 00 00 00 00 00 00 29 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 V.....Bh.........)...vendor/comp
7620 6f 73 65 72 2f 73 65 6d 76 65 72 2f 73 72 63 2f 43 6f 6d 70 61 72 61 74 6f 72 2e 70 68 70 02 04 oser/semver/src/Comparator.php..
7640 00 00 9a da 9c 56 02 04 00 00 77 6c 83 ef b6 01 00 00 00 00 00 00 3c 00 00 00 76 65 6e 64 6f 72 .....V....wl..........<...vendor
7660 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/
7680 41 62 73 74 72 61 63 74 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 d7 02 00 00 9a da 9c 56 d7 02 AbstractConstraint.php.......V..
76a0 00 00 f5 ee 3e 8e b6 01 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 ....>.........4...vendor/compose
76c0 72 2f 73 65 6d 76 65 72 2f 73 72 63 2f 43 6f 6e 73 74 72 61 69 6e 74 2f 43 6f 6e 73 74 72 61 69 r/semver/src/Constraint/Constrai
76e0 6e 74 2e 70 68 70 aa 0c 00 00 9a da 9c 56 aa 0c 00 00 c7 4f 37 b2 b6 01 00 00 00 00 00 00 3d 00 nt.php.......V.....O7.........=.
7700 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 72 63 2f 43 6f 6e ..vendor/composer/semver/src/Con
7720 73 74 72 61 69 6e 74 2f 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 df straint/ConstraintInterface.php.
7740 00 00 00 9a da 9c 56 df 00 00 00 30 43 2c 87 b6 01 00 00 00 00 00 00 39 00 00 00 76 65 6e 64 6f ......V....0C,.........9...vendo
7760 72 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 r/composer/semver/src/Constraint
7780 2f 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 e9 01 00 00 9a da 9c 56 e9 01 00 00 /EmptyConstraint.php.......V....
77a0 21 2d d8 99 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 65 72 2f !-..........9...vendor/composer/
77c0 73 65 6d 76 65 72 2f 73 72 63 2f 43 6f 6e 73 74 72 61 69 6e 74 2f 4d 75 6c 74 69 43 6f 6e 73 74 semver/src/Constraint/MultiConst
77e0 72 61 69 6e 74 2e 70 68 70 66 04 00 00 9a da 9c 56 66 04 00 00 44 f0 ec 3e b6 01 00 00 00 00 00 raint.phpf......Vf...D..>.......
7800 00 25 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 72 63 2f .%...vendor/composer/semver/src/
7820 53 65 6d 76 65 72 2e 70 68 70 76 06 00 00 9a da 9c 56 76 06 00 00 8b d7 c8 9b b6 01 00 00 00 00 Semver.phpv......Vv.............
7840 00 00 2c 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 72 63 ..,...vendor/composer/semver/src
7860 2f 56 65 72 73 69 6f 6e 50 61 72 73 65 72 2e 70 68 70 3c 28 00 00 9a da 9c 56 3c 28 00 00 88 89 /VersionParser.php<(.....V<(....
7880 53 78 b6 01 00 00 00 00 00 00 13 00 00 00 76 65 6e 64 6f 72 2f 61 75 74 6f 6c 6f 61 64 2e 70 68 Sx............vendor/autoload.ph
78a0 70 87 00 00 00 9a da 9c 56 87 00 00 00 3e 34 81 e4 b6 01 00 00 00 00 00 00 27 00 00 00 76 65 6e p.......V....>4..........'...ven
78c0 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 61 75 74 6f 6c 6f 61 64 5f 6e 61 6d 65 73 70 61 63 65 73 dor/composer/autoload_namespaces
78e0 2e 70 68 70 64 00 00 00 9a da 9c 56 64 00 00 00 5a a1 a6 48 b6 01 00 00 00 00 00 00 21 00 00 00 .phpd......Vd...Z..H........!...
7900 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 61 75 74 6f 6c 6f 61 64 5f 70 73 72 34 2e 70 68 vendor/composer/autoload_psr4.ph
7920 70 d0 03 00 00 9a da 9c 56 d0 03 00 00 0b ff ae 8c b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e p.......V................%...ven
7940 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 61 75 74 6f 6c 6f 61 64 5f 63 6c 61 73 73 6d 61 70 2e 70 dor/composer/autoload_classmap.p
7960 68 70 64 00 00 00 9a da 9c 56 64 00 00 00 5a a1 a6 48 b6 01 00 00 00 00 00 00 22 00 00 00 76 65 hpd......Vd...Z..H........"...ve
7980 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 61 75 74 6f 6c 6f 61 64 5f 66 69 6c 65 73 2e 70 68 70 ndor/composer/autoload_files.php
79a0 c3 00 00 00 9a da 9c 56 c3 00 00 00 d2 c2 fc 72 b6 01 00 00 00 00 00 00 21 00 00 00 76 65 6e 64 .......V.......r........!...vend
79c0 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 61 75 74 6f 6c 6f 61 64 5f 72 65 61 6c 2e 70 68 70 80 05 00 or/composer/autoload_real.php...
79e0 00 9a da 9c 56 80 05 00 00 64 32 54 86 b6 01 00 00 00 00 00 00 1f 00 00 00 76 65 6e 64 6f 72 2f ....V....d2T.............vendor/
7a00 63 6f 6d 70 6f 73 65 72 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 42 16 00 00 9a da 9c 56 composer/ClassLoader.phpB......V
7a20 42 16 00 00 e9 94 ed 18 b6 01 00 00 00 00 00 00 0e 00 00 00 72 65 73 2f 63 61 63 65 72 74 2e 70 B...................res/cacert.p
7a40 65 6d 15 e9 03 00 9a da 9c 56 15 e9 03 00 ed 8a 06 c0 b6 01 00 00 00 00 00 00 0c 00 00 00 62 69 em.......V....................bi
7a60 6e 2f 63 6f 6d 70 6f 73 65 72 6c 04 00 00 9a da 9c 56 6c 04 00 00 d4 9a c3 09 b6 01 00 00 00 00 n/composerl......Vl.............
7a80 00 00 07 00 00 00 4c 49 43 45 4e 53 45 33 04 00 00 9a da 9c 56 33 04 00 00 66 fd de 58 b6 01 00 ......LICENSE3......V3...f..X...
7aa0 00 00 00 00 00 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.
7ac0 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 Composer\Autoload;..use.Composer
7ae0 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 69 73 70 61 \Config;.use.Composer\EventDispa
7b00 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 6f tcher\EventDispatcher;.use.Compo
7b20 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 6e 61 67 65 ser\Installer\InstallationManage
7b40 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 0a r;.use.Composer\IO\IOInterface;.
7b60 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 6b 61 67 use.Composer\Package\AliasPackag
7b80 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 65 49 e;.use.Composer\Package\PackageI
7ba0 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 74 6f 72 nterface;.use.Composer\Repositor
7bc0 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;.
7be0 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 73 use.Composer\Util\Filesystem;.us
7c00 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 74 73 3b 0a e.Composer\Script\ScriptEvents;.
7c20 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 0a 7b 0a 0a .....class.AutoloadGenerator.{..
7c40 0a 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 ..private.$eventDispatcher;.....
7c60 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 24 64 65 76 4d 6f 64 private.$io;.....private.$devMod
7c80 65 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6c 61 73 73 4d 61 70 e.=.false;.....private.$classMap
7ca0 41 75 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 Authoritative.=.false;.....priva
7cc0 74 65 20 24 72 75 6e 53 63 72 69 70 74 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 70 75 62 6c 69 63 20 te.$runScripts.=.false;..public.
7ce0 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 45 76 65 6e 74 44 69 73 70 61 74 function.__construct(EventDispat
7d00 63 68 65 72 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 cher.$eventDispatcher,.IOInterfa
7d20 63 65 20 24 69 6f 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 ce.$io.=.null).{.$this->eventDis
7d40 70 61 74 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 24 74 68 69 patcher.=.$eventDispatcher;.$thi
7d60 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 s->io.=.$io;.}..public.function.
7d80 73 65 74 44 65 76 4d 6f 64 65 28 24 64 65 76 4d 6f 64 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 setDevMode($devMode.=.true).{.$t
7da0 68 69 73 2d 3e 64 65 76 4d 6f 64 65 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 64 65 76 4d 6f 64 his->devMode.=.(boolean).$devMod
7dc0 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 6e 20 73 65 74 43 e;.}........public.function.setC
7de0 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 75 lassMapAuthoritative($classMapAu
7e00 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 73 73 4d 61 70 41 75 thoritative).{.$this->classMapAu
7e20 74 68 6f 72 69 74 61 74 69 76 65 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 63 6c 61 73 73 4d 61 thoritative.=.(boolean).$classMa
7e40 70 41 75 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 pAuthoritative;.}.......public.f
7e60 75 6e 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 unction.setRunScripts($runScript
7e80 73 20 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 s.=.true).{.$this->runScripts.=.
7ea0 28 62 6f 6f 6c 65 61 6e 29 20 24 72 75 6e 53 63 72 69 70 74 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 (boolean).$runScripts;.}..public
7ec0 20 66 75 6e 63 74 69 6f 6e 20 64 75 6d 70 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 49 .function.dump(Config.$config,.I
7ee0 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 6c 6f 63 nstalledRepositoryInterface.$loc
7f00 61 6c 52 65 70 6f 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 alRepo,.PackageInterface.$mainPa
7f20 63 6b 61 67 65 2c 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 69 6e 73 74 ckage,.InstallationManager.$inst
7f40 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 24 74 61 72 67 65 74 44 69 72 2c 20 24 73 63 allationManager,.$targetDir,.$sc
7f60 61 6e 50 73 72 30 50 61 63 6b 61 67 65 73 20 3d 20 66 61 6c 73 65 2c 20 24 73 75 66 66 69 78 20 anPsr0Packages.=.false,.$suffix.
7f80 3d 20 27 27 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 75 74 68 6f =.'').{.if.($this->classMapAutho
7fa0 72 69 74 61 74 69 76 65 29 20 7b 0a 0a 20 24 73 63 61 6e 50 73 72 30 50 61 63 6b 61 67 65 73 20 ritative).{...$scanPsr0Packages.
7fc0 3d 20 74 72 75 65 3b 0a 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 29 =.true;.}.if.($this->runScripts)
7fe0 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 73 70 61 .{.$this->eventDispatcher->dispa
8000 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 52 45 5f 41 55 54 4f tchScript(ScriptEvents::PRE_AUTO
8020 4c 4f 41 44 5f 44 55 4d 50 2c 20 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 2c 20 61 72 72 61 79 LOAD_DUMP,.$this->devMode,.array
8040 28 29 2c 20 61 72 72 61 79 28 0a 27 6f 70 74 69 6d 69 7a 65 27 20 3d 3e 20 28 62 6f 6f 6c 29 20 (),.array(.'optimize'.=>.(bool).
8060 24 73 63 61 6e 50 73 72 30 50 61 63 6b 61 67 65 73 2c 0a 29 29 3b 0a 7d 0a 0a 24 66 69 6c 65 73 $scanPsr0Packages,.));.}..$files
8080 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 66 69 6c 65 73 ystem.=.new.Filesystem();.$files
80a0 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 63 6f ystem->ensureDirectoryExists($co
80c0 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 29 3b 0a 24 62 61 73 65 50 nfig->get('vendor-dir'));.$baseP
80e0 61 74 68 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 ath.=.$filesystem->normalizePath
8100 28 72 65 61 6c 70 61 74 68 28 67 65 74 63 77 64 28 29 29 29 3b 0a 24 76 65 6e 64 6f 72 50 61 74 (realpath(getcwd()));.$vendorPat
8120 68 20 3d 20 24 66 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 h.=.$filesystem->normalizePath(r
8140 65 61 6c 70 61 74 68 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 ealpath($config->get('vendor-dir
8160 27 29 29 29 3b 0a 24 75 73 65 47 6c 6f 62 61 6c 49 6e 63 6c 75 64 65 50 61 74 68 20 3d 20 28 62 ')));.$useGlobalIncludePath.=.(b
8180 6f 6f 6c 29 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 75 73 65 2d 69 6e 63 6c 75 64 65 2d 70 ool).$config->get('use-include-p
81a0 61 74 68 27 29 3b 0a 24 70 72 65 70 65 6e 64 41 75 74 6f 6c 6f 61 64 65 72 20 3d 20 24 63 6f 6e ath');.$prependAutoloader.=.$con
81c0 66 69 67 2d 3e 67 65 74 28 27 70 72 65 70 65 6e 64 2d 61 75 74 6f 6c 6f 61 64 65 72 27 29 20 3d fig->get('prepend-autoloader').=
81e0 3d 3d 20 66 61 6c 73 65 20 3f 20 27 66 61 6c 73 65 27 20 3a 20 27 74 72 75 65 27 3b 0a 24 74 61 ==.false.?.'false'.:.'true';.$ta
8200 72 67 65 74 44 69 72 20 3d 20 24 76 65 6e 64 6f 72 50 61 74 68 2e 27 2f 27 2e 24 74 61 72 67 65 rgetDir.=.$vendorPath.'/'.$targe
8220 74 44 69 72 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 tDir;.$filesystem->ensureDirecto
8240 72 79 45 78 69 73 74 73 28 24 74 61 72 67 65 74 44 69 72 29 3b 0a 0a 24 76 65 6e 64 6f 72 50 61 ryExists($targetDir);..$vendorPa
8260 74 68 43 6f 64 65 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 thCode.=.$filesystem->findShorte
8280 73 74 50 61 74 68 43 6f 64 65 28 72 65 61 6c 70 61 74 68 28 24 74 61 72 67 65 74 44 69 72 29 2c stPathCode(realpath($targetDir),
82a0 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 74 72 75 65 29 3b 0a 24 76 65 6e 64 6f 72 50 61 74 68 .$vendorPath,.true);.$vendorPath
82c0 43 6f 64 65 35 32 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5f 5f 44 49 52 5f 5f 27 2c 20 Code52.=.str_replace('__DIR__',.
82e0 27 64 69 72 6e 61 6d 65 28 5f 5f 46 49 4c 45 5f 5f 29 27 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 'dirname(__FILE__)',.$vendorPath
8300 43 6f 64 65 29 3b 0a 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 Code);.$vendorPathToTargetDirCod
8320 65 20 3d 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 e.=.$filesystem->findShortestPat
8340 68 43 6f 64 65 28 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 72 65 61 6c 70 61 74 68 28 24 74 61 72 hCode($vendorPath,.realpath($tar
8360 67 65 74 44 69 72 29 2c 20 74 72 75 65 29 3b 0a 0a 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 getDir),.true);..$appBaseDirCode
8380 20 3d 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 .=.$filesystem->findShortestPath
83a0 43 6f 64 65 28 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 62 61 73 65 50 61 74 68 2c 20 74 72 75 Code($vendorPath,.$basePath,.tru
83c0 65 29 3b 0a 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 e);.$appBaseDirCode.=.str_replac
83e0 65 28 27 5f 5f 44 49 52 5f 5f 27 2c 20 27 24 76 65 6e 64 6f 72 44 69 72 27 2c 20 24 61 70 70 42 e('__DIR__',.'$vendorDir',.$appB
8400 61 73 65 44 69 72 43 6f 64 65 29 3b 0a 0a 24 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 20 3d 20 aseDirCode);..$namespacesFile.=.
8420 3c 3c 3c 45 4f 46 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 5f 6e 61 6d 65 73 70 <<<EOF.<?php..//.autoload_namesp
8440 61 63 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 6f 73 65 72 0a aces.php.@generated.by.Composer.
8460 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 6f 64 65 35 32 .\$vendorDir.=.$vendorPathCode52
8480 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 3b 0a 0a ;.\$baseDir.=.$appBaseDirCode;..
84a0 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 0a 45 4f 46 3b 0a 0a 24 70 73 72 34 46 69 6c 65 20 3d return.array(..EOF;..$psr4File.=
84c0 20 3c 3c 3c 45 4f 46 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 5f 70 73 72 34 2e .<<<EOF.<?php..//.autoload_psr4.
84e0 70 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 php.@generated.by.Composer..\$ve
8500 6e 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 ndorDir.=.$vendorPathCode52;.\$b
8520 61 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 aseDir.=.$appBaseDirCode;..retur
8540 6e 20 61 72 72 61 79 28 0a 0a 45 4f 46 3b 0a 0a 0a 20 24 70 61 63 6b 61 67 65 4d 61 70 20 3d 20 n.array(..EOF;....$packageMap.=.
8560 24 74 68 69 73 2d 3e 62 75 69 6c 64 50 61 63 6b 61 67 65 4d 61 70 28 24 69 6e 73 74 61 6c 6c 61 $this->buildPackageMap($installa
8580 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 2c 20 24 6c 6f 63 61 tionManager,.$mainPackage,.$loca
85a0 6c 52 65 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 29 3b 0a lRepo->getCanonicalPackages());.
85c0 24 61 75 74 6f 6c 6f 61 64 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 $autoloads.=.$this->parseAutoloa
85e0 64 73 28 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 29 3b 0a 0a ds($packageMap,.$mainPackage);..
8600 0a 20 66 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 ..foreach.($autoloads['psr-0'].a
8620 73 20 24 6e 61 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 s.$namespace.=>.$paths).{.$expor
8640 74 65 64 50 61 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 tedPaths.=.array();.foreach.($pa
8660 74 68 73 20 61 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 ths.as.$path).{.$exportedPaths[]
8680 20 3d 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 .=.$this->getPathCode($filesyste
86a0 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 70 61 74 68 m,.$basePath,.$vendorPath,.$path
86c0 29 3b 0a 7d 0a 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 );.}.$exportedPrefix.=.var_expor
86e0 74 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 74 72 75 65 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 73 t($namespace,.true);.$namespaces
8700 46 69 6c 65 20 2e 3d 20 22 20 20 20 20 24 65 78 70 6f 72 74 65 64 50 72 65 66 69 78 20 3d 3e 20 File..=."....$exportedPrefix.=>.
8720 22 3b 0a 24 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 20 2e 3d 20 22 61 72 72 61 79 28 22 2e 69 ";.$namespacesFile..=."array(".i
8740 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 65 78 70 6f 72 74 65 64 50 61 74 68 73 29 2e 22 29 2c mplode(',.',.$exportedPaths)."),
8760 5c 6e 22 3b 0a 7d 0a 24 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 20 2e 3d 20 22 29 3b 5c 6e 22 \n";.}.$namespacesFile..=.");\n"
8780 3b 0a 0a 0a 20 66 6f 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 ;....foreach.($autoloads['psr-4'
87a0 5d 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 73 29 20 7b 0a 24 65 78 ].as.$namespace.=>.$paths).{.$ex
87c0 70 6f 72 74 65 64 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 portedPaths.=.array();.foreach.(
87e0 24 70 61 74 68 73 20 61 73 20 24 70 61 74 68 29 20 7b 0a 24 65 78 70 6f 72 74 65 64 50 61 74 68 $paths.as.$path).{.$exportedPath
8800 73 5b 5d 20 3d 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 s[].=.$this->getPathCode($filesy
8820 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 68 2c 20 24 70 stem,.$basePath,.$vendorPath,.$p
8840 61 74 68 29 3b 0a 7d 0a 24 65 78 70 6f 72 74 65 64 50 72 65 66 69 78 20 3d 20 76 61 72 5f 65 78 ath);.}.$exportedPrefix.=.var_ex
8860 70 6f 72 74 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 74 72 75 65 29 3b 0a 24 70 73 72 34 46 69 6c port($namespace,.true);.$psr4Fil
8880 65 20 2e 3d 20 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 e..=."....$exportedPrefix.=>.";.
88a0 24 70 73 72 34 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 2c $psr4File..=."array(".implode(',
88c0 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 70 .',.$exportedPaths)."),\n";.}.$p
88e0 73 72 34 46 69 6c 65 20 2e 3d 20 22 29 3b 5c 6e 22 3b 0a 0a 24 63 6c 61 73 73 6d 61 70 46 69 6c sr4File..=.");\n";..$classmapFil
8900 65 20 3d 20 3c 3c 3c 45 4f 46 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 5f 63 6c e.=.<<<EOF.<?php..//.autoload_cl
8920 61 73 73 6d 61 70 2e 70 68 70 20 40 67 65 6e 65 72 61 74 65 64 20 62 79 20 43 6f 6d 70 6f 73 65 assmap.php.@generated.by.Compose
8940 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 6f 64 65 r..\$vendorDir.=.$vendorPathCode
8960 35 32 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 3b 52;.\$baseDir.=.$appBaseDirCode;
8980 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 0a 45 4f 46 3b 0a 0a 0a 20 24 74 61 72 67 65 74 ..return.array(..EOF;....$target
89a0 44 69 72 4c 6f 61 64 65 72 20 3d 20 6e 75 6c 6c 3b 0a 24 6d 61 69 6e 41 75 74 6f 6c 6f 61 64 20 DirLoader.=.null;.$mainAutoload.
89c0 3d 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 3b 0a 69 =.$mainPackage->getAutoload();.i
89e0 66 20 28 24 6d 61 69 6e 50 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 20 f.($mainPackage->getTargetDir().
8a00 26 26 20 21 65 6d 70 74 79 28 24 6d 61 69 6e 41 75 74 6f 6c 6f 61 64 5b 27 70 73 72 2d 30 27 5d &&.!empty($mainAutoload['psr-0']
8a20 29 29 20 7b 0a 24 6c 65 76 65 6c 73 20 3d 20 63 6f 75 6e 74 28 65 78 70 6c 6f 64 65 28 27 2f 27 )).{.$levels.=.count(explode('/'
8a40 2c 20 24 66 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 24 6d 61 ,.$filesystem->normalizePath($ma
8a60 69 6e 50 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 29 29 29 3b 0a 24 70 inPackage->getTargetDir())));.$p
8a80 72 65 66 69 78 65 73 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6d 61 refixes.=.implode(',.',.array_ma
8aa0 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 70 72 65 66 69 78 29 20 7b 0a 72 65 74 75 72 6e 20 76 61 p(function.($prefix).{.return.va
8ac0 72 5f 65 78 70 6f 72 74 28 24 70 72 65 66 69 78 2c 20 74 72 75 65 29 3b 0a 7d 2c 20 61 72 72 61 r_export($prefix,.true);.},.arra
8ae0 79 5f 6b 65 79 73 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 29 y_keys($mainAutoload['psr-0'])))
8b00 3b 0a 24 62 61 73 65 44 69 72 46 72 6f 6d 54 61 72 67 65 74 44 69 72 43 6f 64 65 20 3d 20 24 66 ;.$baseDirFromTargetDirCode.=.$f
8b20 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 64 65 28 ilesystem->findShortestPathCode(
8b40 24 74 61 72 67 65 74 44 69 72 2c 20 24 62 61 73 65 50 61 74 68 2c 20 74 72 75 65 29 3b 0a 0a 24 $targetDir,.$basePath,.true);..$
8b60 74 61 72 67 65 74 44 69 72 4c 6f 61 64 65 72 20 3d 20 3c 3c 3c 45 4f 46 0a 0a 20 20 20 20 70 75 targetDirLoader.=.<<<EOF......pu
8b80 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 6f 6c 6f 61 64 28 5c 24 blic.static.function.autoload(\$
8ba0 63 6c 61 73 73 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 5c 24 64 69 72 20 3d 20 24 62 61 class).....{.........\$dir.=.$ba
8bc0 73 65 44 69 72 46 72 6f 6d 54 61 72 67 65 74 44 69 72 43 6f 64 65 20 2e 20 27 2f 27 3b 0a 20 20 seDirFromTargetDirCode...'/';...
8be0 20 20 20 20 20 20 5c 24 70 72 65 66 69 78 65 73 20 3d 20 61 72 72 61 79 28 24 70 72 65 66 69 78 ......\$prefixes.=.array($prefix
8c00 65 73 29 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 5c 24 70 72 65 66 69 78 65 73 es);.........foreach.(\$prefixes
8c20 20 61 73 20 5c 24 70 72 65 66 69 78 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 .as.\$prefix).{.............if.(
8c40 30 20 21 3d 3d 20 73 74 72 70 6f 73 28 5c 24 63 6c 61 73 73 2c 20 5c 24 70 72 65 66 69 78 29 29 0.!==.strpos(\$class,.\$prefix))
8c60 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 .{.................continue;....
8c80 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 5c 24 70 61 74 68 20 3d 20 .........}.............\$path.=.
8ca0 5c 24 64 69 72 20 2e 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 \$dir...implode('/',.array_slice
8cc0 28 65 78 70 6c 6f 64 65 28 27 5c 5c 5c 5c 27 2c 20 5c 24 63 6c 61 73 73 29 2c 20 24 6c 65 76 65 (explode('\\\\',.\$class),.$leve
8ce0 6c 73 29 29 2e 27 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 5c 24 ls)).'.php';.............if.(!\$
8d00 70 61 74 68 20 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 path.=.stream_resolve_include_pa
8d20 74 68 28 5c 24 70 61 74 68 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 th(\$path)).{.................re
8d40 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 turn.false;.............}.......
8d60 20 20 20 20 20 20 72 65 71 75 69 72 65 20 5c 24 70 61 74 68 3b 0a 0a 20 20 20 20 20 20 20 20 20 ......require.\$path;...........
8d80 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a ...return.true;.........}.....}.
8da0 0a 45 4f 46 3b 0a 7d 0a 0a 24 62 6c 61 63 6b 6c 69 73 74 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 .EOF;.}..$blacklist.=.null;.if.(
8dc0 21 65 6d 70 74 79 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 65 78 63 6c 75 64 65 2d 66 72 6f 6d 2d !empty($autoloads['exclude-from-
8de0 63 6c 61 73 73 6d 61 70 27 5d 29 29 20 7b 0a 24 62 6c 61 63 6b 6c 69 73 74 20 3d 20 27 7b 28 27 classmap'])).{.$blacklist.=.'{('
8e00 20 2e 20 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 24 61 75 74 6f 6c 6f 61 64 73 5b 27 65 78 63 6c ...implode('|',.$autoloads['excl
8e20 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 27 5d 29 20 2e 20 27 29 7d 27 3b 0a 7d 0a 0a ude-from-classmap'])...')}';.}..
8e40 0a 20 24 63 6c 61 73 73 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 24 73 63 61 6e ..$classMap.=.array();.if.($scan
8e60 50 73 72 30 50 61 63 6b 61 67 65 73 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 54 6f 53 63 61 Psr0Packages).{.$namespacesToSca
8e80 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 n.=.array();....foreach.(array('
8ea0 70 73 72 2d 30 27 2c 20 27 70 73 72 2d 34 27 29 20 61 73 20 24 70 73 72 54 79 70 65 29 20 7b 0a psr-0',.'psr-4').as.$psrType).{.
8ec0 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 73 5b 24 70 73 72 54 79 70 65 5d 20 61 73 foreach.($autoloads[$psrType].as
8ee0 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 73 29 20 7b 0a 24 6e 61 6d 65 73 70 .$namespace.=>.$paths).{.$namesp
8f00 61 63 65 73 54 6f 53 63 61 6e 5b 24 6e 61 6d 65 73 70 61 63 65 5d 5b 5d 20 3d 20 61 72 72 61 79 acesToScan[$namespace][].=.array
8f20 28 27 70 61 74 68 73 27 20 3d 3e 20 24 70 61 74 68 73 2c 20 27 74 79 70 65 27 20 3d 3e 20 24 70 ('paths'.=>.$paths,.'type'.=>.$p
8f40 73 72 54 79 70 65 29 3b 0a 7d 0a 7d 0a 0a 6b 72 73 6f 72 74 28 24 6e 61 6d 65 73 70 61 63 65 73 srType);.}.}..krsort($namespaces
8f60 54 6f 53 63 61 6e 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 61 6d 65 73 70 61 63 65 73 54 6f ToScan);..foreach.($namespacesTo
8f80 53 63 61 6e 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 67 72 6f 75 70 73 29 20 7b Scan.as.$namespace.=>.$groups).{
8fa0 0a 66 6f 72 65 61 63 68 20 28 24 67 72 6f 75 70 73 20 61 73 20 24 67 72 6f 75 70 29 20 7b 0a 24 .foreach.($groups.as.$group).{.$
8fc0 70 73 72 54 79 70 65 20 3d 20 24 67 72 6f 75 70 5b 27 74 79 70 65 27 5d 3b 0a 66 6f 72 65 61 63 psrType.=.$group['type'];.foreac
8fe0 68 20 28 24 67 72 6f 75 70 5b 27 70 61 74 68 73 27 5d 20 61 73 20 24 64 69 72 29 20 7b 0a 24 64 h.($group['paths'].as.$dir).{.$d
9000 69 72 20 3d 20 24 66 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 ir.=.$filesystem->normalizePath(
9020 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 24 64 69 72 $filesystem->isAbsolutePath($dir
9040 29 20 3f 20 24 64 69 72 20 3a 20 24 62 61 73 65 50 61 74 68 2e 27 2f 27 2e 24 64 69 72 29 3b 0a ).?.$dir.:.$basePath.'/'.$dir);.
9060 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d if.(!is_dir($dir)).{.continue;.}
9080 0a 0a 24 6e 61 6d 65 73 70 61 63 65 46 69 6c 74 65 72 20 3d 20 24 6e 61 6d 65 73 70 61 63 65 20 ..$namespaceFilter.=.$namespace.
90a0 3d 3d 3d 20 27 27 20 3f 20 6e 75 6c 6c 20 3a 20 24 6e 61 6d 65 73 70 61 63 65 3b 0a 24 63 6c 61 ===.''.?.null.:.$namespace;.$cla
90c0 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 64 65 28 24 ssMap.=.$this->addClassMapCode($
90e0 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
9100 74 68 2c 20 24 64 69 72 2c 20 24 62 6c 61 63 6b 6c 69 73 74 2c 20 24 6e 61 6d 65 73 70 61 63 65 th,.$dir,.$blacklist,.$namespace
9120 46 69 6c 74 65 72 2c 20 24 63 6c 61 73 73 4d 61 70 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 Filter,.$classMap);.}.}.}.}..for
9140 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 70 27 5d 20 61 73 20 each.($autoloads['classmap'].as.
9160 24 64 69 72 29 20 7b 0a 24 63 6c 61 73 73 4d 61 70 20 3d 20 24 74 68 69 73 2d 3e 61 64 64 43 6c $dir).{.$classMap.=.$this->addCl
9180 61 73 73 4d 61 70 43 6f 64 65 28 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 61 73 65 50 61 74 assMapCode($filesystem,.$basePat
91a0 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 64 69 72 2c 20 24 62 6c 61 63 6b 6c 69 73 74 h,.$vendorPath,.$dir,.$blacklist
91c0 2c 20 6e 75 6c 6c 2c 20 24 63 6c 61 73 73 4d 61 70 29 3b 0a 7d 0a 0a 6b 73 6f 72 74 28 24 63 6c ,.null,.$classMap);.}..ksort($cl
91e0 61 73 73 4d 61 70 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6c 61 73 73 4d 61 70 20 61 73 20 24 assMap);.foreach.($classMap.as.$
9200 63 6c 61 73 73 20 3d 3e 20 24 63 6f 64 65 29 20 7b 0a 24 63 6c 61 73 73 6d 61 70 46 69 6c 65 20 class.=>.$code).{.$classmapFile.
9220 2e 3d 20 27 20 20 20 20 27 2e 76 61 72 5f 65 78 70 6f 72 74 28 24 63 6c 61 73 73 2c 20 74 72 75 .=.'....'.var_export($class,.tru
9240 65 29 2e 27 20 3d 3e 20 27 2e 24 63 6f 64 65 3b 0a 7d 0a 24 63 6c 61 73 73 6d 61 70 46 69 6c 65 e).'.=>.'.$code;.}.$classmapFile
9260 20 2e 3d 20 22 29 3b 5c 6e 22 3b 0a 0a 69 66 20 28 21 24 73 75 66 66 69 78 29 20 7b 0a 69 66 20 ..=.");\n";..if.(!$suffix).{.if.
9280 28 21 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 66 66 69 (!$config->get('autoloader-suffi
92a0 78 27 29 20 26 26 20 69 73 5f 72 65 61 64 61 62 6c 65 28 24 76 65 6e 64 6f 72 50 61 74 68 2e 27 x').&&.is_readable($vendorPath.'
92c0 2f 61 75 74 6f 6c 6f 61 64 2e 70 68 70 27 29 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 66 69 /autoload.php')).{.$content.=.fi
92e0 6c 65 5f 67 65 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 61 75 le_get_contents($vendorPath.'/au
9300 74 6f 6c 6f 61 64 2e 70 68 70 27 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 43 toload.php');.if.(preg_match('{C
9320 6f 6d 70 6f 73 65 72 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 28 5b 5e 3a 5c 73 5d 2b 29 3a 3a omposerAutoloaderInit([^:\s]+)::
9340 7d 27 2c 20 24 63 6f 6e 74 65 6e 74 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 73 75 66 66 69 78 }',.$content,.$match)).{.$suffix
9360 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 73 75 66 66 69 78 29 .=.$match[1];.}.}..if.(!$suffix)
9380 20 7b 0a 24 73 75 66 66 69 78 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 61 75 74 6f 6c .{.$suffix.=.$config->get('autol
93a0 6f 61 64 65 72 2d 73 75 66 66 69 78 27 29 20 3f 3a 20 6d 64 35 28 75 6e 69 71 69 64 28 27 27 2c oader-suffix').?:.md5(uniqid('',
93c0 20 74 72 75 65 29 29 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 .true));.}.}..file_put_contents(
93e0 24 74 61 72 67 65 74 44 69 72 2e 27 2f 61 75 74 6f 6c 6f 61 64 5f 6e 61 6d 65 73 70 61 63 65 73 $targetDir.'/autoload_namespaces
9400 2e 70 68 70 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 29 3b 0a 66 69 6c 65 5f 70 75 .php',.$namespacesFile);.file_pu
9420 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 61 72 67 65 74 44 69 72 2e 27 2f 61 75 74 6f 6c 6f 61 64 t_contents($targetDir.'/autoload
9440 5f 70 73 72 34 2e 70 68 70 27 2c 20 24 70 73 72 34 46 69 6c 65 29 3b 0a 66 69 6c 65 5f 70 75 74 _psr4.php',.$psr4File);.file_put
9460 5f 63 6f 6e 74 65 6e 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 _contents($targetDir.'/autoload_
9480 63 6c 61 73 73 6d 61 70 2e 70 68 70 27 2c 20 24 63 6c 61 73 73 6d 61 70 46 69 6c 65 29 3b 0a 24 classmap.php',.$classmapFile);.$
94a0 69 6e 63 6c 75 64 65 50 61 74 68 46 69 6c 65 50 61 74 68 20 3d 20 24 74 61 72 67 65 74 44 69 72 includePathFilePath.=.$targetDir
94c0 2e 27 2f 69 6e 63 6c 75 64 65 5f 70 61 74 68 73 2e 70 68 70 27 3b 0a 69 66 20 28 24 69 6e 63 6c .'/include_paths.php';.if.($incl
94e0 75 64 65 50 61 74 68 46 69 6c 65 43 6f 6e 74 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 udePathFileContents.=.$this->get
9500 49 6e 63 6c 75 64 65 50 61 74 68 73 46 69 6c 65 28 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 24 66 IncludePathsFile($packageMap,.$f
9520 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
9540 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
9560 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
9580 6c 75 64 65 50 61 74 68 46 69 6c 65 50 61 74 68 2c 20 24 69 6e 63 6c 75 64 65 50 61 74 68 46 69 ludePathFilePath,.$includePathFi
95a0 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 69 73 leContents);.}.elseif.(file_exis
95c0 74 73 28 24 69 6e 63 6c 75 64 65 50 61 74 68 46 69 6c 65 50 61 74 68 29 29 20 7b 0a 75 6e 6c 69 ts($includePathFilePath)).{.unli
95e0 6e 6b 28 24 69 6e 63 6c 75 64 65 50 61 74 68 46 69 6c 65 50 61 74 68 29 3b 0a 7d 0a 24 69 6e 63 nk($includePathFilePath);.}.$inc
9600 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 50 61 74 68 20 3d 20 24 74 61 72 67 65 74 44 69 72 2e 27 ludeFilesFilePath.=.$targetDir.'
9620 2f 61 75 74 6f 6c 6f 61 64 5f 66 69 6c 65 73 2e 70 68 70 27 3b 0a 69 66 20 28 24 69 6e 63 6c 75 /autoload_files.php';.if.($inclu
9640 64 65 46 69 6c 65 73 46 69 6c 65 43 6f 6e 74 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 deFilesFileContents.=.$this->get
9660 49 6e 63 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 66 69 6c IncludeFilesFile($autoloads['fil
9680 65 73 27 5d 2c 20 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 es'],.$filesystem,.$basePath,.$v
96a0 65 6e 64 6f 72 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 35 32 2c 20 24 61 endorPath,.$vendorPathCode52,.$a
96c0 70 70 42 61 73 65 44 69 72 43 6f 64 65 29 29 20 7b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 ppBaseDirCode)).{.file_put_conte
96e0 6e 74 73 28 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 50 61 74 68 2c 20 24 69 6e 63 6c nts($includeFilesFilePath,.$incl
9700 75 64 65 46 69 6c 65 73 46 69 6c 65 43 6f 6e 74 65 6e 74 73 29 3b 0a 7d 20 65 6c 73 65 69 66 20 udeFilesFileContents);.}.elseif.
9720 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 50 61 (file_exists($includeFilesFilePa
9740 74 68 29 29 20 7b 0a 75 6e 6c 69 6e 6b 28 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 50 th)).{.unlink($includeFilesFileP
9760 61 74 68 29 3b 0a 7d 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 76 65 6e 64 6f ath);.}.file_put_contents($vendo
9780 72 50 61 74 68 2e 27 2f 61 75 74 6f 6c 6f 61 64 2e 70 68 70 27 2c 20 24 74 68 69 73 2d 3e 67 65 rPath.'/autoload.php',.$this->ge
97a0 74 41 75 74 6f 6c 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 tAutoloadFile($vendorPathToTarge
97c0 74 44 69 72 43 6f 64 65 2c 20 24 73 75 66 66 69 78 29 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f tDirCode,.$suffix));.file_put_co
97e0 6e 74 65 6e 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 72 65 61 ntents($targetDir.'/autoload_rea
9800 6c 2e 70 68 70 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 52 65 61 6c 46 69 l.php',.$this->getAutoloadRealFi
9820 6c 65 28 74 72 75 65 2c 20 28 62 6f 6f 6c 29 20 24 69 6e 63 6c 75 64 65 50 61 74 68 46 69 6c 65 le(true,.(bool).$includePathFile
9840 43 6f 6e 74 65 6e 74 73 2c 20 24 74 61 72 67 65 74 44 69 72 4c 6f 61 64 65 72 2c 20 28 62 6f 6f Contents,.$targetDirLoader,.(boo
9860 6c 29 20 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 43 6f 6e 74 65 6e 74 73 2c 20 24 76 l).$includeFilesFileContents,.$v
9880 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 43 6f 64 65 2c 20 endorPathCode,.$appBaseDirCode,.
98a0 24 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 $suffix,.$useGlobalIncludePath,.
98c0 24 70 72 65 70 65 6e 64 41 75 74 6f 6c 6f 61 64 65 72 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 61 $prependAutoloader));..$this->sa
98e0 66 65 43 6f 70 79 28 5f 5f 44 49 52 5f 5f 2e 27 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 feCopy(__DIR__.'/ClassLoader.php
9900 27 2c 20 24 74 61 72 67 65 74 44 69 72 2e 27 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 27 ',.$targetDir.'/ClassLoader.php'
9920 29 3b 0a 24 74 68 69 73 2d 3e 73 61 66 65 43 6f 70 79 28 5f 5f 44 49 52 5f 5f 2e 27 2f 2e 2e 2f );.$this->safeCopy(__DIR__.'/../
9940 2e 2e 2f 2e 2e 2f 4c 49 43 45 4e 53 45 27 2c 20 24 74 61 72 67 65 74 44 69 72 2e 27 2f 4c 49 43 ../../LICENSE',.$targetDir.'/LIC
9960 45 4e 53 45 27 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 29 20 ENSE');..if.($this->runScripts).
9980 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 73 70 61 74 {.$this->eventDispatcher->dispat
99a0 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 53 54 5f 41 55 54 4f chScript(ScriptEvents::POST_AUTO
99c0 4c 4f 41 44 5f 44 55 4d 50 2c 20 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 2c 20 61 72 72 61 79 LOAD_DUMP,.$this->devMode,.array
99e0 28 29 2c 20 61 72 72 61 79 28 0a 27 6f 70 74 69 6d 69 7a 65 27 20 3d 3e 20 28 62 6f 6f 6c 29 20 (),.array(.'optimize'.=>.(bool).
9a00 24 73 63 61 6e 50 73 72 30 50 61 63 6b 61 67 65 73 2c 0a 29 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 $scanPsr0Packages,.));.}.}..priv
9a20 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 43 6c 61 73 73 4d 61 70 43 6f 64 65 28 24 66 69 ate.function.addClassMapCode($fi
9a40 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 68 lesystem,.$basePath,.$vendorPath
9a60 2c 20 24 64 69 72 2c 20 24 62 6c 61 63 6b 6c 69 73 74 20 3d 20 6e 75 6c 6c 2c 20 24 6e 61 6d 65 ,.$dir,.$blacklist.=.null,.$name
9a80 73 70 61 63 65 46 69 6c 74 65 72 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 63 6c 61 73 73 spaceFilter.=.null,.array.$class
9aa0 4d 61 70 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d Map.=.array()).{.foreach.($this-
9ac0 3e 67 65 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 >generateClassMap($dir,.$blackli
9ae0 73 74 2c 20 24 6e 61 6d 65 73 70 61 63 65 46 69 6c 74 65 72 29 20 61 73 20 24 63 6c 61 73 73 20 st,.$namespaceFilter).as.$class.
9b00 3d 3e 20 24 70 61 74 68 29 20 7b 0a 24 70 61 74 68 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 67 =>.$path).{.$pathCode.=.$this->g
9b20 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 50 61 74 etPathCode($filesystem,.$basePat
9b40 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 70 61 74 68 29 2e 22 2c 5c 6e 22 3b 0a 69 66 h,.$vendorPath,.$path).",\n";.if
9b60 20 28 21 69 73 73 65 74 28 24 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 29 29 20 7b 0a 24 .(!isset($classMap[$class])).{.$
9b80 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 20 3d 20 24 70 61 74 68 43 6f 64 65 3b 0a 7d 20 classMap[$class].=.$pathCode;.}.
9ba0 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 20 26 26 20 24 63 6c 61 73 73 4d 61 70 5b 24 elseif.($this->io.&&.$classMap[$
9bc0 63 6c 61 73 73 5d 20 21 3d 3d 20 24 70 61 74 68 43 6f 64 65 20 26 26 20 21 70 72 65 67 5f 6d 61 class].!==.$pathCode.&&.!preg_ma
9be0 74 63 68 28 27 7b 2f 28 74 65 73 74 7c 66 69 78 74 75 72 65 7c 65 78 61 6d 70 6c 65 7c 73 74 75 tch('{/(test|fixture|example|stu
9c00 62 29 73 3f 2f 7d 69 27 2c 20 73 74 72 74 72 28 24 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 b)s?/}i',.strtr($classMap[$class
9c20 5d 2e 27 20 27 2e 24 70 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 29 29 20 7b 0a 24 74 68 69 ].'.'.$path,.'\\',.'/'))).{.$thi
9c40 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 0a 27 3c 77 61 72 6e 69 6e 67 3e 57 61 72 s->io->writeError(.'<warning>War
9c60 6e 69 6e 67 3a 20 41 6d 62 69 67 75 6f 75 73 20 63 6c 61 73 73 20 72 65 73 6f 6c 75 74 69 6f 6e ning:.Ambiguous.class.resolution
9c80 2c 20 22 27 2e 24 63 6c 61 73 73 2e 27 22 27 2e 0a 27 20 77 61 73 20 66 6f 75 6e 64 20 69 6e 20 ,."'.$class.'"'..'.was.found.in.
9ca0 62 6f 74 68 20 22 27 2e 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 24 76 65 6e 64 both."'.str_replace(array('$vend
9cc0 6f 72 44 69 72 20 2e 20 5c 27 27 2c 20 22 27 2c 5c 6e 22 29 2c 20 61 72 72 61 79 28 24 76 65 6e orDir...\'',."',\n"),.array($ven
9ce0 64 6f 72 50 61 74 68 2c 20 27 27 29 2c 20 24 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 29 dorPath,.''),.$classMap[$class])
9d00 2e 27 22 20 61 6e 64 20 22 27 2e 24 70 61 74 68 2e 27 22 2c 20 74 68 65 20 66 69 72 73 74 20 77 .'".and."'.$path.'",.the.first.w
9d20 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 0a 7d 0a 7d 0a 0a ill.be.used.</warning>'.);.}.}..
9d40 72 65 74 75 72 6e 20 24 63 6c 61 73 73 4d 61 70 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e return.$classMap;.}..private.fun
9d60 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 43 6c 61 73 73 4d 61 70 28 24 64 69 72 2c 20 24 62 6c ction.generateClassMap($dir,.$bl
9d80 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 74 65 72 acklist.=.null,.$namespaceFilter
9da0 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 43 6c 61 73 73 4d 61 70 47 65 6e 65 72 61 .=.null).{.return.ClassMapGenera
9dc0 74 6f 72 3a 3a 63 72 65 61 74 65 4d 61 70 28 24 64 69 72 2c 20 24 62 6c 61 63 6b 6c 69 73 74 2c tor::createMap($dir,.$blacklist,
9de0 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 6e 61 6d 65 73 70 61 63 65 46 69 6c 74 65 72 29 3b 0a 7d .$this->io,.$namespaceFilter);.}
9e00 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 50 61 63 6b 61 67 65 4d 61 ..public.function.buildPackageMa
9e20 70 28 49 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 p(InstallationManager.$installat
9e40 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 6d 61 ionManager,.PackageInterface.$ma
9e60 69 6e 50 61 63 6b 61 67 65 2c 20 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 29 0a 7b 0a 0a 20 inPackage,.array.$packages).{...
9e80 24 70 61 63 6b 61 67 65 4d 61 70 20 3d 20 61 72 72 61 79 28 61 72 72 61 79 28 24 6d 61 69 6e 50 $packageMap.=.array(array($mainP
9ea0 61 63 6b 61 67 65 2c 20 27 27 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 ackage,.''));..foreach.($package
9ec0 73 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 69 6e s.as.$package).{.if.($package.in
9ee0 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 6e 74 69 6e 75 stanceof.AliasPackage).{.continu
9f00 65 3b 0a 7d 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 50 61 63 6b 61 67 65 28 24 70 61 63 e;.}.$this->validatePackage($pac
9f20 6b 61 67 65 29 3b 0a 0a 24 70 61 63 6b 61 67 65 4d 61 70 5b 5d 20 3d 20 61 72 72 61 79 28 0a 24 kage);..$packageMap[].=.array(.$
9f40 70 61 63 6b 61 67 65 2c 0a 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 67 package,.$installationManager->g
9f60 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 2c 0a 29 3b 0a 7d 0a 0a 72 etInstallPath($package),.);.}..r
9f80 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 4d 61 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 eturn.$packageMap;.}.......prote
9fa0 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 50 61 63 6b 61 67 65 28 50 61 cted.function.validatePackage(Pa
9fc0 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 61 75 74 6f ckageInterface.$package).{.$auto
9fe0 6c 6f 61 64 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 3b 0a load.=.$package->getAutoload();.
a000 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 2d 34 27 5d 29 20 26 if.(!empty($autoload['psr-4']).&
a020 26 20 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
a040 72 28 29 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 r()).{.$name.=.$package->getName
a060 28 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 74 68 ();.$package->getTargetDir();.th
a080 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
a0a0 6e 28 22 50 53 52 2d 34 20 61 75 74 6f 6c 6f 61 64 69 6e 67 20 69 73 20 69 6e 63 6f 6d 70 61 74 n("PSR-4.autoloading.is.incompat
a0c0 69 62 6c 65 20 77 69 74 68 20 74 68 65 20 74 61 72 67 65 74 2d 64 69 72 20 70 72 6f 70 65 72 74 ible.with.the.target-dir.propert
a0e0 79 2c 20 72 65 6d 6f 76 65 20 74 68 65 20 74 61 72 67 65 74 2d 64 69 72 20 69 6e 20 70 61 63 6b y,.remove.the.target-dir.in.pack
a100 61 67 65 20 27 24 6e 61 6d 65 27 2e 22 29 3b 0a 7d 0a 69 66 20 28 21 65 6d 70 74 79 28 24 61 75 age.'$name'.");.}.if.(!empty($au
a120 74 6f 6c 6f 61 64 5b 27 70 73 72 2d 34 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 toload['psr-4'])).{.foreach.($au
a140 74 6f 6c 6f 61 64 5b 27 70 73 72 2d 34 27 5d 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e toload['psr-4'].as.$namespace.=>
a160 20 24 64 69 72 73 29 20 7b 0a 69 66 20 28 24 6e 61 6d 65 73 70 61 63 65 20 21 3d 3d 20 27 27 20 .$dirs).{.if.($namespace.!==.''.
a180 26 26 20 27 5c 5c 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 2d &&.'\\'.!==.substr($namespace,.-
a1a0 31 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 1)).{.throw.new.\InvalidArgument
a1c0 45 78 63 65 70 74 69 6f 6e 28 22 70 73 72 2d 34 20 6e 61 6d 65 73 70 61 63 65 73 20 6d 75 73 74 Exception("psr-4.namespaces.must
a1e0 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 6f 72 2c .end.with.a.namespace.separator,
a200 20 27 24 6e 61 6d 65 73 70 61 63 65 27 20 64 6f 65 73 20 6e 6f 74 2c 20 75 73 65 20 27 24 6e 61 .'$namespace'.does.not,.use.'$na
a220 6d 65 73 70 61 63 65 5c 5c 27 2e 22 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 mespace\\'.");.}.}.}.}.........p
a240 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 28 61 72 ublic.function.parseAutoloads(ar
a260 72 61 79 20 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 ray.$packageMap,.PackageInterfac
a280 65 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 29 0a 7b 0a 24 6d 61 69 6e 50 61 63 6b 61 67 65 4d 61 e.$mainPackage).{.$mainPackageMa
a2a0 70 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 70 61 63 6b 61 67 65 4d 61 70 29 3b 0a 24 73 p.=.array_shift($packageMap);.$s
a2c0 6f 72 74 65 64 50 61 63 6b 61 67 65 4d 61 70 20 3d 20 24 74 68 69 73 2d 3e 73 6f 72 74 50 61 63 ortedPackageMap.=.$this->sortPac
a2e0 6b 61 67 65 4d 61 70 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 kageMap($packageMap);.$sortedPac
a300 6b 61 67 65 4d 61 70 5b 5d 20 3d 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 4d 61 70 3b 0a 61 72 72 kageMap[].=.$mainPackageMap;.arr
a320 61 79 5f 75 6e 73 68 69 66 74 28 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 24 6d 61 69 6e 50 61 63 ay_unshift($packageMap,.$mainPac
a340 6b 61 67 65 4d 61 70 29 3b 0a 0a 24 70 73 72 30 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 41 kageMap);..$psr0.=.$this->parseA
a360 75 74 6f 6c 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 30 utoloadsType($packageMap,.'psr-0
a380 27 2c 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 29 3b 0a 24 70 73 72 34 20 3d 20 24 74 68 69 73 2d ',.$mainPackage);.$psr4.=.$this-
a3a0 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 54 79 70 65 28 24 70 61 63 6b 61 67 65 4d 61 70 2c >parseAutoloadsType($packageMap,
a3c0 20 27 70 73 72 2d 34 27 2c 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 29 3b 0a 24 63 6c 61 73 73 6d .'psr-4',.$mainPackage);.$classm
a3e0 61 70 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 65 28 61 ap.=.$this->parseAutoloadsType(a
a400 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 73 6f 72 74 65 64 50 61 63 6b 61 67 65 4d 61 70 29 2c rray_reverse($sortedPackageMap),
a420 20 27 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 24 66 69 6c .'classmap',.$mainPackage);.$fil
a440 65 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 54 79 70 65 28 24 es.=.$this->parseAutoloadsType($
a460 73 6f 72 74 65 64 50 61 63 6b 61 67 65 4d 61 70 2c 20 27 66 69 6c 65 73 27 2c 20 24 6d 61 69 6e sortedPackageMap,.'files',.$main
a480 50 61 63 6b 61 67 65 29 3b 0a 24 65 78 63 6c 75 64 65 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 Package);.$exclude.=.$this->pars
a4a0 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 67 65 4d 61 70 eAutoloadsType($sortedPackageMap
a4c0 2c 20 27 65 78 63 6c 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 27 2c 20 24 6d 61 69 6e ,.'exclude-from-classmap',.$main
a4e0 50 61 63 6b 61 67 65 29 3b 0a 0a 6b 72 73 6f 72 74 28 24 70 73 72 30 29 3b 0a 6b 72 73 6f 72 74 Package);..krsort($psr0);.krsort
a500 28 24 70 73 72 34 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 70 73 72 2d 30 27 20 ($psr4);..return.array(.'psr-0'.
a520 3d 3e 20 24 70 73 72 30 2c 0a 27 70 73 72 2d 34 27 20 3d 3e 20 24 70 73 72 34 2c 0a 27 63 6c 61 =>.$psr0,.'psr-4'.=>.$psr4,.'cla
a540 73 73 6d 61 70 27 20 3d 3e 20 24 63 6c 61 73 73 6d 61 70 2c 0a 27 66 69 6c 65 73 27 20 3d 3e 20 ssmap'.=>.$classmap,.'files'.=>.
a560 24 66 69 6c 65 73 2c 0a 27 65 78 63 6c 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 27 20 $files,.'exclude-from-classmap'.
a580 3d 3e 20 24 65 78 63 6c 75 64 65 2c 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 =>.$exclude,.);.}........public.
a5a0 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 4c 6f 61 64 65 72 28 61 72 72 61 79 20 24 61 75 74 function.createLoader(array.$aut
a5c0 6f 6c 6f 61 64 73 29 0a 7b 0a 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 43 6c 61 73 73 4c 6f 61 oloads).{.$loader.=.new.ClassLoa
a5e0 64 65 72 28 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 70 73 der();..if.(isset($autoloads['ps
a600 72 2d 30 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 73 5b 27 70 r-0'])).{.foreach.($autoloads['p
a620 73 72 2d 30 27 5d 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 29 20 7b sr-0'].as.$namespace.=>.$path).{
a640 0a 24 6c 6f 61 64 65 72 2d 3e 61 64 64 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 24 70 61 74 68 29 .$loader->add($namespace,.$path)
a660 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 70 73 72 ;.}.}..if.(isset($autoloads['psr
a680 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 73 5b 27 70 73 -4'])).{.foreach.($autoloads['ps
a6a0 72 2d 34 27 5d 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a r-4'].as.$namespace.=>.$path).{.
a6c0 24 6c 6f 61 64 65 72 2d 3e 61 64 64 50 73 72 34 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 24 70 61 $loader->addPsr4($namespace,.$pa
a6e0 74 68 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 th);.}.}..if.(isset($autoloads['
a700 63 6c 61 73 73 6d 61 70 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 classmap'])).{.foreach.($autoloa
a720 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 74 72 79 20 7b 0a ds['classmap'].as.$dir).{.try.{.
a740 24 6c 6f 61 64 65 72 2d 3e 61 64 64 43 6c 61 73 73 4d 61 70 28 24 74 68 69 73 2d 3e 67 65 6e 65 $loader->addClassMap($this->gene
a760 72 61 74 65 43 6c 61 73 73 4d 61 70 28 24 64 69 72 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 52 rateClassMap($dir));.}.catch.(\R
a780 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 69 73 2d 3e 69 6f 2d untimeException.$e).{.$this->io-
a7a0 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
a7c0 65 73 73 61 67 65 28 29 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 essage().'</warning>');.}.}.}..r
a7e0 65 74 75 72 6e 20 24 6c 6f 61 64 65 72 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 eturn.$loader;.}..protected.func
a800 74 69 6f 6e 20 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 46 69 6c 65 28 61 72 72 61 79 20 24 tion.getIncludePathsFile(array.$
a820 70 61 63 6b 61 67 65 4d 61 70 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 74 packageMap,.Filesystem.$filesyst
a840 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
a860 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).{.
a880 24 69 6e 63 6c 75 64 65 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 $includePaths.=.array();..foreac
a8a0 68 20 28 24 70 61 63 6b 61 67 65 4d 61 70 20 61 73 20 24 69 74 65 6d 29 20 7b 0a 6c 69 73 74 28 h.($packageMap.as.$item).{.list(
a8c0 24 70 61 63 6b 61 67 65 2c 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 20 3d 20 24 69 74 65 6d 3b $package,.$installPath).=.$item;
a8e0 0a 0a 69 66 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 ..if.(null.!==.$package->getTarg
a900 65 74 44 69 72 28 29 20 26 26 20 73 74 72 6c 65 6e 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 etDir().&&.strlen($package->getT
a920 61 72 67 65 74 44 69 72 28 29 29 20 3e 20 30 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 argetDir()).>.0).{.$installPath.
a940 3d 20 73 75 62 73 74 72 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2c 20 30 2c 20 2d 73 74 72 6c 65 =.substr($installPath,.0,.-strle
a960 6e 28 27 2f 27 2e 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 29 n('/'.$package->getTargetDir()))
a980 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 6e 63 6c 75 ;.}..foreach.($package->getInclu
a9a0 64 65 50 61 74 68 73 28 29 20 61 73 20 24 69 6e 63 6c 75 64 65 50 61 74 68 29 20 7b 0a 24 69 6e dePaths().as.$includePath).{.$in
a9c0 63 6c 75 64 65 50 61 74 68 20 3d 20 74 72 69 6d 28 24 69 6e 63 6c 75 64 65 50 61 74 68 2c 20 27 cludePath.=.trim($includePath,.'
a9e0 2f 27 29 3b 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 5b 5d 20 3d 20 65 6d 70 74 79 28 24 69 6e /');.$includePaths[].=.empty($in
aa00 73 74 61 6c 6c 50 61 74 68 29 20 3f 20 24 69 6e 63 6c 75 64 65 50 61 74 68 20 3a 20 24 69 6e 73 stallPath).?.$includePath.:.$ins
aa20 74 61 6c 6c 50 61 74 68 2e 27 2f 27 2e 24 69 6e 63 6c 75 64 65 50 61 74 68 3b 0a 7d 0a 7d 0a 0a tallPath.'/'.$includePath;.}.}..
aa40 69 66 20 28 21 24 69 6e 63 6c 75 64 65 50 61 74 68 73 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a if.(!$includePaths).{.return;.}.
aa60 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 43 6f 64 65 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 68 .$includePathsCode.=.'';.foreach
aa80 20 28 24 69 6e 63 6c 75 64 65 50 61 74 68 73 20 61 73 20 24 70 61 74 68 29 20 7b 0a 24 69 6e 63 .($includePaths.as.$path).{.$inc
aaa0 6c 75 64 65 50 61 74 68 73 43 6f 64 65 20 2e 3d 20 22 20 20 20 20 22 20 2e 20 24 74 68 69 73 2d ludePathsCode..=."...."...$this-
aac0 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 50 >getPathCode($filesystem,.$baseP
aae0 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 70 61 74 68 29 20 2e 20 22 2c 5c 6e 22 ath,.$vendorPath,.$path)...",\n"
ab00 3b 0a 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 69 6e 63 ;.}..return.<<<EOF.<?php..//.inc
ab20 6c 75 64 65 5f 70 61 74 68 73 2e 70 68 70 20 40 67 65 6e 65 72 61 74 65 64 20 62 79 20 43 6f 6d lude_paths.php.@generated.by.Com
ab40 70 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 poser..\$vendorDir.=.$vendorPath
ab60 43 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 Code;.\$baseDir.=.$appBaseDirCod
ab80 65 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 43 e;..return.array(.$includePathsC
aba0 6f 64 65 29 3b 0a 0a 45 4f 46 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f ode);..EOF;.}..protected.functio
abc0 6e 20 67 65 74 49 6e 63 6c 75 64 65 46 69 6c 65 73 46 69 6c 65 28 61 72 72 61 79 20 24 66 69 6c n.getIncludeFilesFile(array.$fil
abe0 65 73 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 24 62 61 73 es,.Filesystem.$filesystem,.$bas
ac00 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 6f 72 50 61 74 68 43 ePath,.$vendorPath,.$vendorPathC
ac20 6f 64 65 2c 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 29 0a 7b 0a 24 66 69 6c 65 73 43 6f ode,.$appBaseDirCode).{.$filesCo
ac40 64 65 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6c 65 73 20 61 73 20 24 66 69 6c de.=.'';.foreach.($files.as.$fil
ac60 65 49 64 65 6e 74 69 66 69 65 72 20 3d 3e 20 24 66 75 6e 63 74 69 6f 6e 46 69 6c 65 29 20 7b 0a eIdentifier.=>.$functionFile).{.
ac80 24 66 69 6c 65 73 43 6f 64 65 20 2e 3d 20 27 20 20 20 20 27 20 2e 20 76 61 72 5f 65 78 70 6f 72 $filesCode..=.'....'...var_expor
aca0 74 28 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 2c 20 74 72 75 65 29 20 2e 20 27 20 3d 3e 20 t($fileIdentifier,.true)...'.=>.
acc0 27 0a 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 '...$this->getPathCode($filesyst
ace0 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 66 75 6e em,.$basePath,.$vendorPath,.$fun
ad00 63 74 69 6f 6e 46 69 6c 65 29 20 2e 20 22 2c 5c 6e 22 3b 0a 7d 0a 0a 69 66 20 28 21 24 66 69 6c ctionFile)...",\n";.}..if.(!$fil
ad20 65 73 43 6f 64 65 29 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 esCode).{.return.false;.}..retur
ad40 6e 20 3c 3c 3c 45 4f 46 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 5f 66 69 6c 65 n.<<<EOF.<?php..//.autoload_file
ad60 73 2e 70 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 s.php.@generated.by.Composer..\$
ad80 76 65 6e 64 6f 72 44 69 72 20 3d 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 3b 0a 5c 24 62 vendorDir.=.$vendorPathCode;.\$b
ada0 61 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 aseDir.=.$appBaseDirCode;..retur
adc0 6e 20 61 72 72 61 79 28 0a 24 66 69 6c 65 73 43 6f 64 65 29 3b 0a 0a 45 4f 46 3b 0a 7d 0a 0a 70 n.array(.$filesCode);..EOF;.}..p
ade0 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 74 68 43 6f 64 65 28 46 69 rotected.function.getPathCode(Fi
ae00 6c 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 62 61 73 65 50 61 74 68 2c lesystem.$filesystem,.$basePath,
ae20 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 21 24 66 69 6c .$vendorPath,.$path).{.if.(!$fil
ae40 65 73 79 73 74 65 6d 2d 3e 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 70 61 74 68 29 29 20 esystem->isAbsolutePath($path)).
ae60 7b 0a 24 70 61 74 68 20 3d 20 24 62 61 73 65 50 61 74 68 20 2e 20 27 2f 27 20 2e 20 24 70 61 74 {.$path.=.$basePath...'/'...$pat
ae80 68 3b 0a 7d 0a 24 70 61 74 68 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 6e 6f 72 6d 61 6c h;.}.$path.=.$filesystem->normal
aea0 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 3b 0a 0a 24 62 61 73 65 44 69 72 20 3d 20 27 27 3b 0a izePath($path);..$baseDir.=.'';.
aec0 69 66 20 28 73 74 72 70 6f 73 28 24 70 61 74 68 2e 27 2f 27 2c 20 24 76 65 6e 64 6f 72 50 61 74 if.(strpos($path.'/',.$vendorPat
aee0 68 2e 27 2f 27 29 20 3d 3d 3d 20 30 29 20 7b 0a 24 70 61 74 68 20 3d 20 73 75 62 73 74 72 28 24 h.'/').===.0).{.$path.=.substr($
af00 70 61 74 68 2c 20 73 74 72 6c 65 6e 28 24 76 65 6e 64 6f 72 50 61 74 68 29 29 3b 0a 24 62 61 73 path,.strlen($vendorPath));.$bas
af20 65 44 69 72 20 3d 20 27 24 76 65 6e 64 6f 72 44 69 72 27 3b 0a 0a 69 66 20 28 24 70 61 74 68 20 eDir.=.'$vendorDir';..if.($path.
af40 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 62 61 73 65 44 69 72 20 2e 3d 20 22 20 2e 20 22 3b 0a !==.false).{.$baseDir..=."...";.
af60 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 74 68 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e }.}.else.{.$path.=.$filesystem->
af80 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 normalizePath($filesystem->findS
afa0 68 6f 72 74 65 73 74 50 61 74 68 28 24 62 61 73 65 50 61 74 68 2c 20 24 70 61 74 68 2c 20 74 72 hortestPath($basePath,.$path,.tr
afc0 75 65 29 29 3b 0a 69 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 ue));.if.(!$filesystem->isAbsolu
afe0 74 65 50 61 74 68 28 24 70 61 74 68 29 29 20 7b 0a 24 62 61 73 65 44 69 72 20 3d 20 27 24 62 61 tePath($path)).{.$baseDir.=.'$ba
b000 73 65 44 69 72 20 2e 20 27 3b 0a 24 70 61 74 68 20 3d 20 27 2f 27 20 2e 20 24 70 61 74 68 3b 0a seDir...';.$path.=.'/'...$path;.
b020 7d 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5c 2e 70 68 61 72 24 2f 27 2c }.}..if.(preg_match('/\.phar$/',
b040 20 24 70 61 74 68 29 29 20 7b 0a 24 62 61 73 65 44 69 72 20 3d 20 22 27 70 68 61 72 3a 2f 2f 27 .$path)).{.$baseDir.=."'phar://'
b060 20 2e 20 22 20 2e 20 24 62 61 73 65 44 69 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 62 61 73 65 ..."...$baseDir;.}..return.$base
b080 44 69 72 20 2e 20 28 28 24 70 61 74 68 20 21 3d 3d 20 66 61 6c 73 65 29 20 3f 20 76 61 72 5f 65 Dir...(($path.!==.false).?.var_e
b0a0 78 70 6f 72 74 28 24 70 61 74 68 2c 20 74 72 75 65 29 20 3a 20 22 22 29 3b 0a 7d 0a 0a 70 72 6f xport($path,.true).:."");.}..pro
b0c0 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 6f 6c 6f 61 64 46 69 6c 65 28 tected.function.getAutoloadFile(
b0e0 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 2c 20 24 73 75 66 $vendorPathToTargetDirCode,.$suf
b100 66 69 78 29 0a 7b 0a 72 65 74 75 72 6e 20 3c 3c 3c 41 55 54 4f 4c 4f 41 44 0a 3c 3f 70 68 70 0a fix).{.return.<<<AUTOLOAD.<?php.
b120 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 2e 70 68 70 20 40 67 65 6e 65 72 61 74 65 64 20 62 79 20 43 .//.autoload.php.@generated.by.C
b140 6f 6d 70 6f 73 65 72 0a 0a 72 65 71 75 69 72 65 5f 6f 6e 63 65 20 24 76 65 6e 64 6f 72 50 61 74 omposer..require_once.$vendorPat
b160 68 54 6f 54 61 72 67 65 74 44 69 72 43 6f 64 65 20 2e 20 27 2f 61 75 74 6f 6c 6f 61 64 5f 72 65 hToTargetDirCode...'/autoload_re
b180 61 6c 2e 70 68 70 27 3b 0a 0a 72 65 74 75 72 6e 20 43 6f 6d 70 6f 73 65 72 41 75 74 6f 6c 6f 61 al.php';..return.ComposerAutoloa
b1a0 64 65 72 49 6e 69 74 24 73 75 66 66 69 78 3a 3a 67 65 74 4c 6f 61 64 65 72 28 29 3b 0a 0a 41 55 derInit$suffix::getLoader();..AU
b1c0 54 4f 4c 4f 41 44 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 TOLOAD;.}..protected.function.ge
b1e0 74 41 75 74 6f 6c 6f 61 64 52 65 61 6c 46 69 6c 65 28 24 75 73 65 43 6c 61 73 73 4d 61 70 2c 20 tAutoloadRealFile($useClassMap,.
b200 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 2c 20 24 74 61 72 67 65 74 44 69 72 4c 6f 61 64 65 $useIncludePath,.$targetDirLoade
b220 72 2c 20 24 75 73 65 49 6e 63 6c 75 64 65 46 69 6c 65 73 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 r,.$useIncludeFiles,.$vendorPath
b240 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 20 Code,.$appBaseDirCode,.$suffix,.
b260 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 41 $useGlobalIncludePath,.$prependA
b280 75 74 6f 6c 6f 61 64 65 72 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 3c 3c 3c 48 45 41 44 45 52 0a 3c utoloader).{.$file.=.<<<HEADER.<
b2a0 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 5f 72 65 61 6c 2e 70 68 70 20 40 67 65 6e 65 ?php..//.autoload_real.php.@gene
b2c0 72 61 74 65 64 20 62 79 20 43 6f 6d 70 6f 73 65 72 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 6f 73 65 rated.by.Composer..class.Compose
b2e0 72 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 24 73 75 66 66 69 78 0a 7b 0a 20 20 20 20 70 72 69 rAutoloaderInit$suffix.{.....pri
b300 76 61 74 65 20 73 74 61 74 69 63 20 5c 24 6c 6f 61 64 65 72 3b 0a 0a 20 20 20 20 70 75 62 6c 69 vate.static.\$loader;......publi
b320 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 43 6c 61 73 73 4c 6f 61 64 65 c.static.function.loadClassLoade
b340 72 28 5c 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 28 27 43 6f r(\$class).....{.........if.('Co
b360 6d 70 6f 73 65 72 5c 5c 41 75 74 6f 6c 6f 61 64 5c 5c 43 6c 61 73 73 4c 6f 61 64 65 72 27 20 3d mposer\\Autoload\\ClassLoader'.=
b380 3d 3d 20 5c 24 63 6c 61 73 73 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 71 75 69 72 ==.\$class).{.............requir
b3a0 65 20 5f 5f 44 49 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 e.__DIR__...'/ClassLoader.php';.
b3c0 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 ........}.....}......public.stat
b3e0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 61 64 65 72 28 29 0a 20 20 20 20 7b 0a 20 20 ic.function.getLoader().....{...
b400 20 20 20 20 20 20 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 73 65 6c 66 3a 3a 5c 24 6c 6f 61 64 65 ......if.(null.!==.self::\$loade
b420 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 5c 24 r).{.............return.self::\$
b440 6c 6f 61 64 65 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 73 70 6c 5f 61 loader;.........}..........spl_a
b460 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
b480 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 24 73 75 66 66 69 78 27 2c 20 27 6c 6f 61 64 43 6c 61 AutoloaderInit$suffix',.'loadCla
b4a0 73 73 4c 6f 61 64 65 72 27 29 2c 20 74 72 75 65 2c 20 24 70 72 65 70 65 6e 64 41 75 74 6f 6c 6f ssLoader'),.true,.$prependAutolo
b4c0 61 64 65 72 29 3b 0a 20 20 20 20 20 20 20 20 73 65 6c 66 3a 3a 5c 24 6c 6f 61 64 65 72 20 3d 20 ader);.........self::\$loader.=.
b4e0 5c 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 5c 5c 43 6f 6d 70 6f 73 65 72 5c 5c 41 75 74 6f 6c \$loader.=.new.\\Composer\\Autol
b500 6f 61 64 5c 5c 43 6c 61 73 73 4c 6f 61 64 65 72 28 29 3b 0a 20 20 20 20 20 20 20 20 73 70 6c 5f oad\\ClassLoader();.........spl_
b520 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 27 43 6f 6d 70 6f autoload_unregister(array('Compo
b540 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 27 6c 6f 61 64 serAutoloaderInit$suffix',.'load
b560 43 6c 61 73 73 4c 6f 61 64 65 72 27 29 29 3b 0a 0a 0a 48 45 41 44 45 52 3b 0a 0a 69 66 20 28 24 ClassLoader'));...HEADER;..if.($
b580 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 29 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 27 49 useIncludePath).{.$file..=.<<<'I
b5a0 4e 43 4c 55 44 45 5f 50 41 54 48 27 0a 20 20 20 20 20 20 20 20 24 69 6e 63 6c 75 64 65 50 61 74 NCLUDE_PATH'.........$includePat
b5c0 68 73 20 3d 20 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 69 6e 63 6c 75 64 65 hs.=.require.__DIR__...'/include
b5e0 5f 70 61 74 68 73 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 61 72 72 61 79 5f 70 75 73 68 28 _paths.php';.........array_push(
b600 24 69 6e 63 6c 75 64 65 50 61 74 68 73 2c 20 67 65 74 5f 69 6e 63 6c 75 64 65 5f 70 61 74 68 28 $includePaths,.get_include_path(
b620 29 29 3b 0a 20 20 20 20 20 20 20 20 73 65 74 5f 69 6e 63 6c 75 64 65 5f 70 61 74 68 28 6a 6f 69 ));.........set_include_path(joi
b640 6e 28 50 41 54 48 5f 53 45 50 41 52 41 54 4f 52 2c 20 24 69 6e 63 6c 75 64 65 50 61 74 68 73 29 n(PATH_SEPARATOR,.$includePaths)
b660 29 3b 0a 0a 0a 49 4e 43 4c 55 44 45 5f 50 41 54 48 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 );...INCLUDE_PATH;.}..if.(!$this
b680 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 24 66 69 6c 65 ->classMapAuthoritative).{.$file
b6a0 20 2e 3d 20 3c 3c 3c 27 50 53 52 30 34 27 0a 20 20 20 20 20 20 20 20 24 6d 61 70 20 3d 20 72 65 ..=.<<<'PSR04'.........$map.=.re
b6c0 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 6e 61 6d 65 73 quire.__DIR__...'/autoload_names
b6e0 70 61 63 65 73 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 6d 61 paces.php';.........foreach.($ma
b700 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 20 7b 0a 20 20 20 20 p.as.$namespace.=>.$path).{.....
b720 20 20 20 20 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 73 65 74 28 24 6e 61 6d 65 73 70 61 63 65 2c ........$loader->set($namespace,
b740 20 24 70 61 74 68 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 24 6d 61 70 .$path);.........}..........$map
b760 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_
b780 70 73 72 34 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 6d 61 70 psr4.php';.........foreach.($map
b7a0 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a 20 20 20 20 20 .as.$namespace.=>.$path).{......
b7c0 20 20 20 20 20 20 20 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 .......$loader->setPsr4($namespa
b7e0 63 65 2c 20 24 70 61 74 68 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 0a 50 53 52 30 34 3b 0a 7d ce,.$path);.........}...PSR04;.}
b800 0a 0a 69 66 20 28 24 75 73 65 43 6c 61 73 73 4d 61 70 29 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c ..if.($useClassMap).{.$file..=.<
b820 3c 3c 27 43 4c 41 53 53 4d 41 50 27 0a 20 20 20 20 20 20 20 20 24 63 6c 61 73 73 4d 61 70 20 3d <<'CLASSMAP'.........$classMap.=
b840 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 63 6c .require.__DIR__...'/autoload_cl
b860 61 73 73 6d 61 70 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 63 6c 61 73 73 4d assmap.php';.........if.($classM
b880 61 70 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 61 64 64 43 6c ap).{.............$loader->addCl
b8a0 61 73 73 4d 61 70 28 24 63 6c 61 73 73 4d 61 70 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 0a 43 assMap($classMap);.........}...C
b8c0 4c 41 53 53 4d 41 50 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 41 LASSMAP;.}..if.($this->classMapA
b8e0 75 74 68 6f 72 69 74 61 74 69 76 65 29 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 27 43 4c 41 uthoritative).{.$file..=.<<<'CLA
b900 53 53 4d 41 50 41 55 54 48 4f 52 49 54 41 54 49 56 45 27 0a 20 20 20 20 20 20 20 20 24 6c 6f 61 SSMAPAUTHORITATIVE'.........$loa
b920 64 65 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 74 72 der->setClassMapAuthoritative(tr
b940 75 65 29 3b 0a 0a 43 4c 41 53 53 4d 41 50 41 55 54 48 4f 52 49 54 41 54 49 56 45 3b 0a 7d 0a 0a ue);..CLASSMAPAUTHORITATIVE;.}..
b960 69 66 20 28 24 75 73 65 47 6c 6f 62 61 6c 49 6e 63 6c 75 64 65 50 61 74 68 29 20 7b 0a 24 66 69 if.($useGlobalIncludePath).{.$fi
b980 6c 65 20 2e 3d 20 3c 3c 3c 27 49 4e 43 4c 55 44 45 50 41 54 48 27 0a 20 20 20 20 20 20 20 20 24 le..=.<<<'INCLUDEPATH'.........$
b9a0 6c 6f 61 64 65 72 2d 3e 73 65 74 55 73 65 49 6e 63 6c 75 64 65 50 61 74 68 28 74 72 75 65 29 3b loader->setUseIncludePath(true);
b9c0 0a 0a 49 4e 43 4c 55 44 45 50 41 54 48 3b 0a 7d 0a 0a 69 66 20 28 24 74 61 72 67 65 74 44 69 72 ..INCLUDEPATH;.}..if.($targetDir
b9e0 4c 6f 61 64 65 72 29 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 52 45 47 49 53 54 45 52 5f 54 Loader).{.$file..=.<<<REGISTER_T
ba00 41 52 47 45 54 5f 44 49 52 5f 41 55 54 4f 4c 4f 41 44 0a 20 20 20 20 20 20 20 20 73 70 6c 5f 61 ARGET_DIR_AUTOLOAD.........spl_a
ba20 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
ba40 41 75 74 6f 6c 6f 61 64 65 72 49 6e 69 74 24 73 75 66 66 69 78 27 2c 20 27 61 75 74 6f 6c 6f 61 AutoloaderInit$suffix',.'autoloa
ba60 64 27 29 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b 0a 0a 0a 52 45 47 49 53 54 45 52 5f 54 41 52 d'),.true,.true);...REGISTER_TAR
ba80 47 45 54 5f 44 49 52 5f 41 55 54 4f 4c 4f 41 44 3b 0a 7d 0a 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c GET_DIR_AUTOLOAD;.}..$file..=.<<
baa0 3c 52 45 47 49 53 54 45 52 5f 4c 4f 41 44 45 52 0a 20 20 20 20 20 20 20 20 5c 24 6c 6f 61 64 65 <REGISTER_LOADER.........\$loade
bac0 72 2d 3e 72 65 67 69 73 74 65 72 28 24 70 72 65 70 65 6e 64 41 75 74 6f 6c 6f 61 64 65 72 29 3b r->register($prependAutoloader);
bae0 0a 0a 0a 52 45 47 49 53 54 45 52 5f 4c 4f 41 44 45 52 3b 0a 0a 69 66 20 28 24 75 73 65 49 6e 63 ...REGISTER_LOADER;..if.($useInc
bb00 6c 75 64 65 46 69 6c 65 73 29 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 49 4e 43 4c 55 44 45 ludeFiles).{.$file..=.<<<INCLUDE
bb20 5f 46 49 4c 45 53 0a 20 20 20 20 20 20 20 20 5c 24 69 6e 63 6c 75 64 65 46 69 6c 65 73 20 3d 20 _FILES.........\$includeFiles.=.
bb40 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 66 69 6c require.__DIR__...'/autoload_fil
bb60 65 73 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 5c 24 69 6e 63 6c es.php';.........foreach.(\$incl
bb80 75 64 65 46 69 6c 65 73 20 61 73 20 5c 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 20 3d 3e 20 udeFiles.as.\$fileIdentifier.=>.
bba0 5c 24 66 69 6c 65 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6d 70 6f 73 65 72 52 65 \$file).{.............composerRe
bbc0 71 75 69 72 65 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 quire$suffix(\$fileIdentifier,.\
bbe0 24 66 69 6c 65 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 0a 49 4e 43 4c 55 44 45 5f 46 49 4c 45 $file);.........}...INCLUDE_FILE
bc00 53 3b 0a 7d 0a 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 4d 45 54 48 4f 44 5f 46 4f 4f 54 45 52 0a S;.}..$file..=.<<<METHOD_FOOTER.
bc20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 5c 24 6c 6f 61 64 65 72 3b 0a 20 20 20 20 7d 0a 0a ........return.\$loader;.....}..
bc40 4d 45 54 48 4f 44 5f 46 4f 4f 54 45 52 3b 0a 0a 24 66 69 6c 65 20 2e 3d 20 24 74 61 72 67 65 74 METHOD_FOOTER;..$file..=.$target
bc60 44 69 72 4c 6f 61 64 65 72 3b 0a 0a 69 66 20 28 24 75 73 65 49 6e 63 6c 75 64 65 46 69 6c 65 73 DirLoader;..if.($useIncludeFiles
bc80 29 20 7b 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 0a ).{.return.$file...<<<FOOTER.}..
bca0 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 70 6f 73 65 72 52 65 71 75 69 72 65 24 73 75 66 66 69 78 28 function.composerRequire$suffix(
bcc0 5c 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 2c 20 5c 24 66 69 6c 65 29 0a 7b 0a 20 20 20 20 \$fileIdentifier,.\$file).{.....
bce0 69 66 20 28 65 6d 70 74 79 28 5c 24 47 4c 4f 42 41 4c 53 5b 27 5f 5f 63 6f 6d 70 6f 73 65 72 5f if.(empty(\$GLOBALS['__composer_
bd00 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 6e 74 69 66 69 65 autoload_files'][\$fileIdentifie
bd20 72 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 72 65 71 75 69 72 65 20 5c 24 66 69 6c 65 3b 0a 0a r])).{.........require.\$file;..
bd40 20 20 20 20 20 20 20 20 5c 24 47 4c 4f 42 41 4c 53 5b 27 5f 5f 63 6f 6d 70 6f 73 65 72 5f 61 75 ........\$GLOBALS['__composer_au
bd60 74 6f 6c 6f 61 64 5f 66 69 6c 65 73 27 5d 5b 5c 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 5d toload_files'][\$fileIdentifier]
bd80 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 46 4f 4f 54 45 52 3b 0a 7d 0a 0a 72 65 74 .=.true;.....}.}..FOOTER;.}..ret
bda0 75 72 6e 20 24 66 69 6c 65 20 2e 20 3c 3c 3c 46 4f 4f 54 45 52 0a 7d 0a 0a 46 4f 4f 54 45 52 3b urn.$file...<<<FOOTER.}..FOOTER;
bdc0 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 41 75 74 6f .}..protected.function.parseAuto
bde0 6c 6f 61 64 73 54 79 70 65 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 24 74 79 loadsType(array.$packageMap,.$ty
be00 70 65 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 61 67 pe,.PackageInterface.$mainPackag
be20 65 29 0a 7b 0a 24 61 75 74 6f 6c 6f 61 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 e).{.$autoloads.=.array();..fore
be40 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 20 7b 0a 6c 69 73 ach.($packageMap.as.$item).{.lis
be60 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 3d 20 24 69 74 65 t($package,.$installPath).=.$ite
be80 6d 3b 0a 0a 24 61 75 74 6f 6c 6f 61 64 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 75 74 m;..$autoload.=.$package->getAut
bea0 6f 6c 6f 61 64 28 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 20 26 26 20 24 oload();.if.($this->devMode.&&.$
bec0 70 61 63 6b 61 67 65 20 3d 3d 3d 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 29 20 7b 0a 24 61 75 74 package.===.$mainPackage).{.$aut
bee0 6f 6c 6f 61 64 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 5f 72 65 63 75 72 73 69 76 65 28 24 61 oload.=.array_merge_recursive($a
bf00 75 74 6f 6c 6f 61 64 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 41 75 74 6f 6c 6f 61 utoload,.$package->getDevAutoloa
bf20 64 28 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 61 75 74 6f 6c 6f 61 64 5b d());.}....if.(!isset($autoload[
bf40 24 74 79 70 65 5d 29 20 7c 7c 20 21 69 73 5f 61 72 72 61 79 28 24 61 75 74 6f 6c 6f 61 64 5b 24 $type]).||.!is_array($autoload[$
bf60 74 79 70 65 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 type])).{.continue;.}.if.(null.!
bf80 3d 3d 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 26 26 20 24 ==.$package->getTargetDir().&&.$
bfa0 70 61 63 6b 61 67 65 20 21 3d 3d 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 29 20 7b 0a 24 69 6e 73 package.!==.$mainPackage).{.$ins
bfc0 74 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 tallPath.=.substr($installPath,.
bfe0 30 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 0,.-strlen('/'.$package->getTarg
c000 65 74 44 69 72 28 29 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 etDir()));.}..foreach.($autoload
c020 5b 24 74 79 70 65 5d 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 73 29 [$type].as.$namespace.=>.$paths)
c040 20 7b 0a 66 6f 72 65 61 63 68 20 28 28 61 72 72 61 79 29 20 24 70 61 74 68 73 20 61 73 20 24 70 .{.foreach.((array).$paths.as.$p
c060 61 74 68 29 20 7b 0a 69 66 20 28 28 24 74 79 70 65 20 3d 3d 3d 20 27 66 69 6c 65 73 27 20 7c 7c ath).{.if.(($type.===.'files'.||
c080 20 24 74 79 70 65 20 3d 3d 3d 20 27 63 6c 61 73 73 6d 61 70 27 20 7c 7c 20 24 74 79 70 65 20 3d .$type.===.'classmap'.||.$type.=
c0a0 3d 3d 20 27 65 78 63 6c 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 27 29 20 26 26 20 24 ==.'exclude-from-classmap').&&.$
c0c0 70 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 69 73 5f 72 package->getTargetDir().&&.!is_r
c0e0 65 61 64 61 62 6c 65 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2e 27 2f 27 2e 24 70 61 74 68 29 29 eadable($installPath.'/'.$path))
c100 20 7b 0a 0a 20 69 66 20 28 24 70 61 63 6b 61 67 65 20 3d 3d 3d 20 24 6d 61 69 6e 50 61 63 6b 61 .{...if.($package.===.$mainPacka
c120 67 65 29 20 7b 0a 24 74 61 72 67 65 74 44 69 72 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 ge).{.$targetDir.=.str_replace('
c140 5c 5c 3c 64 69 72 73 65 70 5c 5c 3e 27 2c 20 27 5b 5c 5c 5c 5c 2f 5d 27 2c 20 70 72 65 67 5f 71 \\<dirsep\\>',.'[\\\\/]',.preg_q
c160 75 6f 74 65 28 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 2f 27 2c 20 27 5c 5c 27 uote(str_replace(array('/',.'\\'
c180 29 2c 20 27 3c 64 69 72 73 65 70 3e 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 ),.'<dirsep>',.$package->getTarg
c1a0 65 74 44 69 72 28 29 29 29 29 3b 0a 24 70 61 74 68 20 3d 20 6c 74 72 69 6d 28 70 72 65 67 5f 72 etDir())));.$path.=.ltrim(preg_r
c1c0 65 70 6c 61 63 65 28 27 7b 5e 27 2e 24 74 61 72 67 65 74 44 69 72 2e 27 7d 27 2c 20 27 27 2c 20 eplace('{^'.$targetDir.'}',.'',.
c1e0 6c 74 72 69 6d 28 24 70 61 74 68 2c 20 27 5c 5c 2f 27 29 29 2c 20 27 5c 5c 2f 27 29 3b 0a 7d 20 ltrim($path,.'\\/')),.'\\/');.}.
c200 65 6c 73 65 20 7b 0a 0a 20 24 70 61 74 68 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 else.{...$path.=.$package->getTa
c220 72 67 65 74 44 69 72 28 29 20 2e 20 27 2f 27 20 2e 20 24 70 61 74 68 3b 0a 7d 0a 7d 0a 0a 69 66 rgetDir()...'/'...$path;.}.}..if
c240 20 28 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 .($type.===.'exclude-from-classm
c260 61 70 27 29 20 7b 0a 0a 20 24 70 61 74 68 20 3d 20 70 72 65 67 5f 71 75 6f 74 65 28 74 72 69 6d ap').{...$path.=.preg_quote(trim
c280 28 73 74 72 74 72 28 24 70 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 2c 20 27 2f 27 29 29 3b (strtr($path,.'\\',.'/'),.'/'));
c2a0 0a 0a 0a 20 24 70 61 74 68 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 2a 5c 5c 2a 27 ....$path.=.str_replace('\\*\\*'
c2c0 2c 20 27 2e 2b 3f 27 2c 20 24 70 61 74 68 29 3b 0a 24 70 61 74 68 20 3d 20 73 74 72 5f 72 65 70 ,.'.+?',.$path);.$path.=.str_rep
c2e0 6c 61 63 65 28 27 5c 5c 2a 27 2c 20 27 5b 5e 2f 5d 2b 3f 27 2c 20 24 70 61 74 68 29 3b 0a 0a 0a lace('\\*',.'[^/]+?',.$path);...
c300 20 24 75 70 64 69 72 20 3d 20 6e 75 6c 6c 3b 0a 24 70 61 74 68 20 3d 20 70 72 65 67 5f 72 65 70 .$updir.=.null;.$path.=.preg_rep
c320 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 0a 27 7b 5e 28 28 3f 3a 28 3f 3a 5c 5c 5c 5c 5c 5c 2e lace_callback(.'{^((?:(?:\\\\\\.
c340 29 7b 31 2c 32 7d 2b 2f 29 2b 29 7d 27 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 6d 61 74 63 68 65 ){1,2}+/)+)}',.function.($matche
c360 73 29 20 75 73 65 20 28 26 24 75 70 64 69 72 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 6d 61 s).use.(&$updir).{.if.(isset($ma
c380 74 63 68 65 73 5b 31 5d 29 29 20 7b 0a 0a 20 24 75 70 64 69 72 20 3d 20 73 74 72 5f 72 65 70 6c tches[1])).{...$updir.=.str_repl
c3a0 61 63 65 28 27 5c 5c 2e 27 2c 20 27 2e 27 2c 20 24 6d 61 74 63 68 65 73 5b 31 5d 29 3b 0a 7d 0a ace('\\.',.'.',.$matches[1]);.}.
c3c0 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 2c 0a 24 70 61 74 68 0a 29 3b 0a 69 66 20 28 65 6d 70 74 .return.'';.},.$path.);.if.(empt
c3e0 79 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 y($installPath)).{.$installPath.
c400 3d 20 73 74 72 74 72 28 67 65 74 63 77 64 28 29 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 3b 0a 7d 0a =.strtr(getcwd(),.'\\',.'/');.}.
c420 0a 24 72 65 73 6f 6c 76 65 64 50 61 74 68 20 3d 20 72 65 61 6c 70 61 74 68 28 24 69 6e 73 74 61 .$resolvedPath.=.realpath($insta
c440 6c 6c 50 61 74 68 20 2e 20 27 2f 27 20 2e 20 24 75 70 64 69 72 29 3b 0a 24 61 75 74 6f 6c 6f 61 llPath...'/'...$updir);.$autoloa
c460 64 73 5b 5d 20 3d 20 70 72 65 67 5f 71 75 6f 74 65 28 73 74 72 74 72 28 24 72 65 73 6f 6c 76 65 ds[].=.preg_quote(strtr($resolve
c480 64 50 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 29 20 2e 20 27 2f 27 20 2e 20 24 70 61 74 68 dPath,.'\\',.'/'))...'/'...$path
c4a0 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 72 65 6c 61 74 69 76 65 50 61 74 68 20 3d 20 65 ;.continue;.}..$relativePath.=.e
c4c0 6d 70 74 79 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 20 3f 20 28 65 6d 70 74 79 28 24 70 61 74 mpty($installPath).?.(empty($pat
c4e0 68 29 20 3f 20 27 2e 27 20 3a 20 24 70 61 74 68 29 20 3a 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 h).?.'.'.:.$path).:.$installPath
c500 2e 27 2f 27 2e 24 70 61 74 68 3b 0a 0a 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 27 66 69 6c 65 .'/'.$path;..if.($type.===.'file
c520 73 27 29 20 7b 0a 24 61 75 74 6f 6c 6f 61 64 73 5b 24 74 68 69 73 2d 3e 67 65 74 46 69 6c 65 49 s').{.$autoloads[$this->getFileI
c540 64 65 6e 74 69 66 69 65 72 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 5d 20 3d 20 24 72 dentifier($package,.$path)].=.$r
c560 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 65 6c 73 65 69 66 20 elativePath;.continue;.}.elseif.
c580 28 24 74 79 70 65 20 3d 3d 3d 20 27 63 6c 61 73 73 6d 61 70 27 29 20 7b 0a 24 61 75 74 6f 6c 6f ($type.===.'classmap').{.$autolo
c5a0 61 64 73 5b 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 ads[].=.$relativePath;.continue;
c5c0 0a 7d 0a 0a 24 61 75 74 6f 6c 6f 61 64 73 5b 24 6e 61 6d 65 73 70 61 63 65 5d 5b 5d 20 3d 20 24 .}..$autoloads[$namespace][].=.$
c5e0 72 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 75 74 relativePath;.}.}.}..return.$aut
c600 6f 6c 6f 61 64 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 67 65 oloads;.}..protected.function.ge
c620 74 46 69 6c 65 49 64 65 6e 74 69 66 69 65 72 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 tFileIdentifier(PackageInterface
c640 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 20 6d 64 35 28 24 .$package,.$path).{.return.md5($
c660 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 2e 20 27 3a 27 20 2e 20 24 70 61 74 68 package->getName()...':'...$path
c680 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
c6a0 20 73 6f 72 74 50 61 63 6b 61 67 65 4d 61 70 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 4d 61 .sortPackageMap(array.$packageMa
c6c0 70 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 24 70 61 74 68 73 p).{.$packages.=.array();.$paths
c6e0 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 75 73 61 67 65 4c 69 73 74 20 3d 20 61 72 72 61 79 28 29 .=.array();.$usageList.=.array()
c700 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 6d ;..foreach.($packageMap.as.$item
c720 29 20 7b 0a 6c 69 73 74 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 20 3d 20 24 69 74 65 ).{.list($package,.$path).=.$ite
c740 6d 3b 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 28 29 3b 0a m;.$name.=.$package->getName();.
c760 24 70 61 63 6b 61 67 65 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 24 70 61 $packages[$name].=.$package;.$pa
c780 74 68 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 70 61 74 68 3b 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 ths[$name].=.$path;..foreach.(ar
c7a0 72 61 79 5f 6d 65 72 67 65 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 ray_merge($package->getRequires(
c7c0 29 2c 20 24 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 61 ),.$package->getDevRequires()).a
c7e0 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 74 61 72 67 65 74 20 3d 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 s.$link).{.$target.=.$link->getT
c800 61 72 67 65 74 28 29 3b 0a 24 75 73 61 67 65 4c 69 73 74 5b 24 74 61 72 67 65 74 5d 5b 5d 20 3d arget();.$usageList[$target][].=
c820 20 24 6e 61 6d 65 3b 0a 7d 0a 7d 0a 0a 24 63 6f 6d 70 75 74 69 6e 67 20 3d 20 61 72 72 61 79 28 .$name;.}.}..$computing.=.array(
c840 29 3b 0a 24 63 6f 6d 70 75 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 63 6f 6d 70 75 74 65 );.$computed.=.array();.$compute
c860 49 6d 70 6f 72 74 61 6e 63 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 6e 61 6d 65 29 20 75 73 Importance.=.function.($name).us
c880 65 20 28 26 24 63 6f 6d 70 75 74 65 49 6d 70 6f 72 74 61 6e 63 65 2c 20 26 24 63 6f 6d 70 75 74 e.(&$computeImportance,.&$comput
c8a0 69 6e 67 2c 20 26 24 63 6f 6d 70 75 74 65 64 2c 20 24 75 73 61 67 65 4c 69 73 74 29 20 7b 0a 0a ing,.&$computed,.$usageList).{..
c8c0 20 69 66 20 28 69 73 73 65 74 28 24 63 6f 6d 70 75 74 65 64 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a .if.(isset($computed[$name])).{.
c8e0 72 65 74 75 72 6e 20 24 63 6f 6d 70 75 74 65 64 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 0a 20 69 66 return.$computed[$name];.}....if
c900 20 28 69 73 73 65 74 28 24 63 6f 6d 70 75 74 69 6e 67 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 72 65 .(isset($computing[$name])).{.re
c920 74 75 72 6e 20 30 3b 0a 7d 0a 0a 24 63 6f 6d 70 75 74 69 6e 67 5b 24 6e 61 6d 65 5d 20 3d 20 74 turn.0;.}..$computing[$name].=.t
c940 72 75 65 3b 0a 24 77 65 69 67 68 74 20 3d 20 30 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 75 73 rue;.$weight.=.0;..if.(isset($us
c960 61 67 65 4c 69 73 74 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 75 73 61 ageList[$name])).{.foreach.($usa
c980 67 65 4c 69 73 74 5b 24 6e 61 6d 65 5d 20 61 73 20 24 75 73 65 72 29 20 7b 0a 24 77 65 69 67 68 geList[$name].as.$user).{.$weigh
c9a0 74 20 2d 3d 20 31 20 2d 20 24 63 6f 6d 70 75 74 65 49 6d 70 6f 72 74 61 6e 63 65 28 24 75 73 65 t.-=.1.-.$computeImportance($use
c9c0 72 29 3b 0a 7d 0a 7d 0a 0a 75 6e 73 65 74 28 24 63 6f 6d 70 75 74 69 6e 67 5b 24 6e 61 6d 65 5d r);.}.}..unset($computing[$name]
c9e0 29 3b 0a 24 63 6f 6d 70 75 74 65 64 5b 24 6e 61 6d 65 5d 20 3d 20 24 77 65 69 67 68 74 3b 0a 0a );.$computed[$name].=.$weight;..
ca00 72 65 74 75 72 6e 20 24 77 65 69 67 68 74 3b 0a 7d 3b 0a 0a 24 77 65 69 67 68 74 4c 69 73 74 20 return.$weight;.};..$weightList.
ca20 3d 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 73 20 61 =.array();..foreach.($packages.a
ca40 73 20 24 6e 61 6d 65 20 3d 3e 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 77 65 69 67 68 74 20 3d s.$name.=>.$package).{.$weight.=
ca60 20 24 63 6f 6d 70 75 74 65 49 6d 70 6f 72 74 61 6e 63 65 28 24 6e 61 6d 65 29 3b 0a 24 77 65 69 .$computeImportance($name);.$wei
ca80 67 68 74 4c 69 73 74 5b 24 6e 61 6d 65 5d 20 3d 20 24 77 65 69 67 68 74 3b 0a 7d 0a 0a 24 73 74 ghtList[$name].=.$weight;.}..$st
caa0 61 62 6c 65 5f 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 61 72 72 61 79 29 20 7b able_sort.=.function.(&$array).{
cac0 0a 73 74 61 74 69 63 20 24 74 72 61 6e 73 66 6f 72 6d 2c 20 24 72 65 73 74 6f 72 65 3b 0a 0a 24 .static.$transform,.$restore;..$
cae0 69 20 3d 20 30 3b 0a 0a 69 66 20 28 21 24 74 72 61 6e 73 66 6f 72 6d 29 20 7b 0a 24 74 72 61 6e i.=.0;..if.(!$transform).{.$tran
cb00 73 66 6f 72 6d 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 76 2c 20 24 6b 29 20 75 73 65 20 28 sform.=.function.(&$v,.$k).use.(
cb20 26 24 69 29 20 7b 0a 24 76 20 3d 20 61 72 72 61 79 28 24 76 2c 20 2b 2b 24 69 2c 20 24 6b 2c 20 &$i).{.$v.=.array($v,.++$i,.$k,.
cb40 24 76 29 3b 0a 7d 3b 0a 0a 24 72 65 73 74 6f 72 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 $v);.};..$restore.=.function.(&$
cb60 76 2c 20 24 6b 29 20 7b 0a 24 76 20 3d 20 24 76 5b 33 5d 3b 0a 7d 3b 0a 7d 0a 0a 61 72 72 61 79 v,.$k).{.$v.=.$v[3];.};.}..array
cb80 5f 77 61 6c 6b 28 24 61 72 72 61 79 2c 20 24 74 72 61 6e 73 66 6f 72 6d 29 3b 0a 61 73 6f 72 74 _walk($array,.$transform);.asort
cba0 28 24 61 72 72 61 79 29 3b 0a 61 72 72 61 79 5f 77 61 6c 6b 28 24 61 72 72 61 79 2c 20 24 72 65 ($array);.array_walk($array,.$re
cbc0 73 74 6f 72 65 29 3b 0a 7d 3b 0a 0a 24 73 74 61 62 6c 65 5f 73 6f 72 74 28 24 77 65 69 67 68 74 store);.};..$stable_sort($weight
cbe0 4c 69 73 74 29 3b 0a 0a 24 73 6f 72 74 65 64 50 61 63 6b 61 67 65 4d 61 70 20 3d 20 61 72 72 61 List);..$sortedPackageMap.=.arra
cc00 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 6b 65 79 73 28 24 77 65 69 67 68 y();..foreach.(array_keys($weigh
cc20 74 4c 69 73 74 29 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 73 6f 72 74 65 64 50 61 63 6b 61 67 tList).as.$name).{.$sortedPackag
cc40 65 4d 61 70 5b 5d 20 3d 20 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 73 5b 24 6e 61 6d 65 5d 2c eMap[].=.array($packages[$name],
cc60 20 24 70 61 74 68 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 6f 72 74 .$paths[$name]);.}..return.$sort
cc80 65 64 50 61 63 6b 61 67 65 4d 61 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 edPackageMap;.}........protected
cca0 20 66 75 6e 63 74 69 6f 6e 20 73 61 66 65 43 6f 70 79 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 .function.safeCopy($source,.$tar
ccc0 67 65 74 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 get).{.$source.=.fopen($source,.
cce0 27 72 27 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 'r');.$target.=.fopen($target,.'
cd00 77 2b 27 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 w+');..stream_copy_to_stream($so
cd20 75 72 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 urce,.$target);.fclose($source);
cd40 0a 66 63 6c 6f 73 65 28 24 74 61 72 67 65 74 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a .fclose($target);.}.}.<?php.....
cd60 0a 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 .............namespace.Composer\
cd80 41 75 74 6f 6c 6f 61 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 Autoload;..use.Symfony\Component
cda0 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 49 4f 5c \Finder\Finder;.use.Composer\IO\
cdc0 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6c 61 73 73 4d IOInterface;........class.ClassM
cde0 61 70 47 65 6e 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 apGenerator.{.......public.stati
ce00 63 20 66 75 6e 63 74 69 6f 6e 20 64 75 6d 70 28 24 64 69 72 73 2c 20 24 66 69 6c 65 29 0a 7b 0a c.function.dump($dirs,.$file).{.
ce20 24 6d 61 70 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 69 72 73 $maps.=.array();..foreach.($dirs
ce40 20 61 73 20 24 64 69 72 29 20 7b 0a 24 6d 61 70 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 .as.$dir).{.$maps.=.array_merge(
ce60 24 6d 61 70 73 2c 20 73 74 61 74 69 63 3a 3a 63 72 65 61 74 65 4d 61 70 28 24 64 69 72 29 29 3b $maps,.static::createMap($dir));
ce80 0a 7d 0a 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 2c 20 73 70 72 .}..file_put_contents($file,.spr
cea0 69 6e 74 66 28 27 3c 3f 70 68 70 20 72 65 74 75 72 6e 20 25 73 3b 27 2c 20 76 61 72 5f 65 78 70 intf('<?php.return.%s;',.var_exp
cec0 6f 72 74 28 24 6d 61 70 73 2c 20 74 72 75 65 29 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ort($maps,.true)));.}...........
cee0 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 4d ..public.static.function.createM
cf00 61 70 28 24 70 61 74 68 2c 20 24 62 6c 61 63 6b 6c 69 73 74 20 3d 20 6e 75 6c 6c 2c 20 49 4f 49 ap($path,.$blacklist.=.null,.IOI
cf20 6e 74 65 72 66 61 63 65 20 24 69 6f 20 3d 20 6e 75 6c 6c 2c 20 24 6e 61 6d 65 73 70 61 63 65 20 nterface.$io.=.null,.$namespace.
cf40 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 70 61 74 68 29 29 20 =.null).{.if.(is_string($path)).
cf60 7b 0a 69 66 20 28 69 73 5f 66 69 6c 65 28 24 70 61 74 68 29 29 20 7b 0a 24 70 61 74 68 20 3d 20 {.if.(is_file($path)).{.$path.=.
cf80 61 72 72 61 79 28 6e 65 77 20 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 28 24 70 61 74 68 29 29 3b 0a array(new.\SplFileInfo($path));.
cfa0 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 64 69 72 28 24 70 61 74 68 29 29 20 7b 0a 24 70 61 74 68 }.elseif.(is_dir($path)).{.$path
cfc0 20 3d 20 46 69 6e 64 65 72 3a 3a 63 72 65 61 74 65 28 29 2d 3e 66 69 6c 65 73 28 29 2d 3e 66 6f .=.Finder::create()->files()->fo
cfe0 6c 6c 6f 77 4c 69 6e 6b 73 28 29 2d 3e 6e 61 6d 65 28 27 2f 5c 2e 28 70 68 70 7c 69 6e 63 7c 68 llowLinks()->name('/\.(php|inc|h
d000 68 29 24 2f 27 29 2d 3e 69 6e 28 24 70 61 74 68 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f h)$/')->in($path);.}.else.{.thro
d020 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 43 6f 75 6c 64 20 w.new.\RuntimeException(.'Could.
d040 6e 6f 74 20 73 63 61 6e 20 66 6f 72 20 63 6c 61 73 73 65 73 20 69 6e 73 69 64 65 20 22 27 2e 24 not.scan.for.classes.inside."'.$
d060 70 61 74 68 2e 0a 27 22 20 77 68 69 63 68 20 64 6f 65 73 20 6e 6f 74 20 61 70 70 65 61 72 20 74 path..'".which.does.not.appear.t
d080 6f 20 62 65 20 61 20 66 69 6c 65 20 6e 6f 72 20 61 20 66 6f 6c 64 65 72 27 0a 29 3b 0a 7d 0a 7d o.be.a.file.nor.a.folder'.);.}.}
d0a0 0a 0a 24 6d 61 70 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 74 ..$map.=.array();..foreach.($pat
d0c0 68 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 24 66 69 6c 65 50 61 74 68 20 3d 20 24 66 69 6c 65 2d h.as.$file).{.$filePath.=.$file-
d0e0 3e 67 65 74 52 65 61 6c 50 61 74 68 28 29 3b 0a 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 70 >getRealPath();..if.(!in_array(p
d100 61 74 68 69 6e 66 6f 28 24 66 69 6c 65 50 61 74 68 2c 20 50 41 54 48 49 4e 46 4f 5f 45 58 54 45 athinfo($filePath,.PATHINFO_EXTE
d120 4e 53 49 4f 4e 29 2c 20 61 72 72 61 79 28 27 70 68 70 27 2c 20 27 69 6e 63 27 2c 20 27 68 68 27 NSION),.array('php',.'inc',.'hh'
d140 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 62 6c 61 63 6b 6c 69 73 ))).{.continue;.}..if.($blacklis
d160 74 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 24 62 6c 61 63 6b 6c 69 73 74 2c 20 73 74 72 74 t.&&.preg_match($blacklist,.strt
d180 72 28 24 66 69 6c 65 50 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 29 29 20 7b 0a 63 6f 6e 74 r($filePath,.'\\',.'/'))).{.cont
d1a0 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6c 61 73 73 65 73 20 3d 20 73 65 6c 66 3a 3a 66 69 6e 64 43 6c inue;.}..$classes.=.self::findCl
d1c0 61 73 73 65 73 28 24 66 69 6c 65 50 61 74 68 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6c 61 asses($filePath);..foreach.($cla
d1e0 73 73 65 73 20 61 73 20 24 63 6c 61 73 73 29 20 7b 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 21 3d 3d sses.as.$class).{...if.(null.!==
d200 20 24 6e 61 6d 65 73 70 61 63 65 20 26 26 20 30 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 63 6c 61 .$namespace.&&.0.!==.strpos($cla
d220 73 73 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a ss,.$namespace)).{.continue;.}..
d240 69 66 20 28 21 69 73 73 65 74 28 24 6d 61 70 5b 24 63 6c 61 73 73 5d 29 29 20 7b 0a 24 6d 61 70 if.(!isset($map[$class])).{.$map
d260 5b 24 63 6c 61 73 73 5d 20 3d 20 24 66 69 6c 65 50 61 74 68 3b 0a 7d 20 65 6c 73 65 69 66 20 28 [$class].=.$filePath;.}.elseif.(
d280 24 69 6f 20 26 26 20 24 6d 61 70 5b 24 63 6c 61 73 73 5d 20 21 3d 3d 20 24 66 69 6c 65 50 61 74 $io.&&.$map[$class].!==.$filePat
d2a0 68 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 2f 28 74 65 73 74 7c 66 69 78 74 75 72 h.&&.!preg_match('{/(test|fixtur
d2c0 65 7c 65 78 61 6d 70 6c 65 7c 73 74 75 62 29 73 3f 2f 7d 69 27 2c 20 73 74 72 74 72 28 24 6d 61 e|example|stub)s?/}i',.strtr($ma
d2e0 70 5b 24 63 6c 61 73 73 5d 2e 27 20 27 2e 24 66 69 6c 65 50 61 74 68 2c 20 27 5c 5c 27 2c 20 27 p[$class].'.'.$filePath,.'\\',.'
d300 2f 27 29 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 0a 27 3c 77 61 72 6e 69 /'))).{.$io->writeError(.'<warni
d320 6e 67 3e 57 61 72 6e 69 6e 67 3a 20 41 6d 62 69 67 75 6f 75 73 20 63 6c 61 73 73 20 72 65 73 6f ng>Warning:.Ambiguous.class.reso
d340 6c 75 74 69 6f 6e 2c 20 22 27 2e 24 63 6c 61 73 73 2e 27 22 27 2e 0a 27 20 77 61 73 20 66 6f 75 lution,."'.$class.'"'..'.was.fou
d360 6e 64 20 69 6e 20 62 6f 74 68 20 22 27 2e 24 6d 61 70 5b 24 63 6c 61 73 73 5d 2e 27 22 20 61 6e nd.in.both."'.$map[$class].'".an
d380 64 20 22 27 2e 24 66 69 6c 65 50 61 74 68 2e 27 22 2c 20 74 68 65 20 66 69 72 73 74 20 77 69 6c d."'.$filePath.'",.the.first.wil
d3a0 6c 20 62 65 20 75 73 65 64 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 0a l.be.used.</warning>'.);.}.}.}..
d3c0 72 65 74 75 72 6e 20 24 6d 61 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 return.$map;.}.........private.s
d3e0 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 43 6c 61 73 73 65 73 28 24 70 61 74 68 tatic.function.findClasses($path
d400 29 0a 7b 0a 24 65 78 74 72 61 54 79 70 65 73 20 3d 20 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 ).{.$extraTypes.=.PHP_VERSION_ID
d420 20 3c 20 35 30 34 30 30 20 3f 20 27 27 20 3a 20 27 7c 74 72 61 69 74 27 3b 0a 69 66 20 28 64 65 .<.50400.?.''.:.'|trait';.if.(de
d440 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 76 65 72 73 69 6f 6e fined('HHVM_VERSION').&&.version
d460 5f 63 6f 6d 70 61 72 65 28 48 48 56 4d 5f 56 45 52 53 49 4f 4e 2c 20 27 33 2e 33 27 2c 20 27 3e _compare(HHVM_VERSION,.'3.3',.'>
d480 3d 27 29 29 20 7b 0a 24 65 78 74 72 61 54 79 70 65 73 20 2e 3d 20 27 7c 65 6e 75 6d 27 3b 0a 7d =')).{.$extraTypes..=.'|enum';.}
d4a0 0a 0a 74 72 79 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 40 70 68 70 5f 73 74 72 69 70 5f 77 ..try.{.$contents.=.@php_strip_w
d4c0 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 6e 74 65 6e 74 73 hitespace($path);.if.(!$contents
d4e0 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 29 29 20 7b 0a 74 ).{.if.(!file_exists($path)).{.t
d500 68 72 6f 77 20 6e 65 77 20 5c 45 78 63 65 70 74 69 6f 6e 28 27 46 69 6c 65 20 64 6f 65 73 20 6e hrow.new.\Exception('File.does.n
d520 6f 74 20 65 78 69 73 74 27 29 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 72 65 61 64 61 62 6c 65 28 24 ot.exist');.}.if.(!is_readable($
d540 70 61 74 68 29 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 27 46 path)).{.throw.new.\Exception('F
d560 69 6c 65 20 69 73 20 6e 6f 74 20 72 65 61 64 61 62 6c 65 27 29 3b 0a 7d 0a 7d 0a 7d 20 63 61 74 ile.is.not.readable');.}.}.}.cat
d580 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 77 20 6e 65 77 20 5c ch.(\Exception.$e).{.throw.new.\
d5a0 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 73 63 61 6e RuntimeException('Could.not.scan
d5c0 20 66 6f 72 20 63 6c 61 73 73 65 73 20 69 6e 73 69 64 65 20 27 2e 24 70 61 74 68 2e 22 3a 20 5c .for.classes.inside.'.$path.":.\
d5e0 6e 22 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 0a n".$e->getMessage(),.0,.$e);.}..
d600 0a 20 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5c 62 28 3f 3a 63 6c 61 73 73 7c 69 ..if.(!preg_match('{\b(?:class|i
d620 6e 74 65 72 66 61 63 65 27 2e 24 65 78 74 72 61 54 79 70 65 73 2e 27 29 5c 73 7d 69 27 2c 20 24 nterface'.$extraTypes.')\s}i',.$
d640 63 6f 6e 74 65 6e 74 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 contents)).{.return.array();.}..
d660 0a 20 24 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 3c 3c 3c ..$contents.=.preg_replace('{<<<
d680 5c 73 2a 28 5c 27 3f 29 28 5c 77 2b 29 5c 5c 31 28 3f 3a 5c 72 5c 6e 7c 5c 6e 7c 5c 72 29 28 3f \s*(\'?)(\w+)\\1(?:\r\n|\n|\r)(?
d6a0 3a 2e 2a 3f 29 28 3f 3a 5c 72 5c 6e 7c 5c 6e 7c 5c 72 29 5c 5c 32 28 3f 3d 5c 72 5c 6e 7c 5c 6e :.*?)(?:\r\n|\n|\r)\\2(?=\r\n|\n
d6c0 7c 5c 72 7c 3b 29 7d 73 27 2c 20 27 6e 75 6c 6c 27 2c 20 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a |\r|;)}s',.'null',.$contents);..
d6e0 20 24 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 22 5b 5e 22 .$contents.=.preg_replace('{"[^"
d700 5c 5c 5c 5c 5d 2a 2b 28 5c 5c 5c 5c 2e 5b 5e 22 5c 5c 5c 5c 5d 2a 2b 29 2a 2b 22 7c 5c 27 5b 5e \\\\]*+(\\\\.[^"\\\\]*+)*+"|\'[^
d720 5c 27 5c 5c 5c 5c 5d 2a 2b 28 5c 5c 5c 5c 2e 5b 5e 5c 27 5c 5c 5c 5c 5d 2a 2b 29 2a 2b 5c 27 7d \'\\\\]*+(\\\\.[^\'\\\\]*+)*+\'}
d740 73 27 2c 20 27 6e 75 6c 6c 27 2c 20 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 20 69 66 20 28 73 75 s',.'null',.$contents);...if.(su
d760 62 73 74 72 28 24 63 6f 6e 74 65 6e 74 73 2c 20 30 2c 20 32 29 20 21 3d 3d 20 27 3c 3f 27 29 20 bstr($contents,.0,.2).!==.'<?').
d780 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 2e 2b {.$contents.=.preg_replace('{^.+
d7a0 3f 3c 5c 3f 7d 73 27 2c 20 27 3c 3f 27 2c 20 24 63 6f 6e 74 65 6e 74 73 2c 20 31 2c 20 24 72 65 ?<\?}s',.'<?',.$contents,.1,.$re
d7c0 70 6c 61 63 65 6d 65 6e 74 73 29 3b 0a 69 66 20 28 24 72 65 70 6c 61 63 65 6d 65 6e 74 73 20 3d placements);.if.($replacements.=
d7e0 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 7d 0a 0a 20 24 63 ==.0).{.return.array();.}.}...$c
d800 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5c 3f 3e 2e 2b 3c 5c ontents.=.preg_replace('{\?>.+<\
d820 3f 7d 73 27 2c 20 27 3f 3e 3c 3f 27 2c 20 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 20 24 70 6f 73 ?}s',.'?><?',.$contents);...$pos
d840 20 3d 20 73 74 72 72 70 6f 73 28 24 63 6f 6e 74 65 6e 74 73 2c 20 27 3f 3e 27 29 3b 0a 69 66 20 .=.strrpos($contents,.'?>');.if.
d860 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 (false.!==.$pos.&&.false.===.str
d880 70 6f 73 28 73 75 62 73 74 72 28 24 63 6f 6e 74 65 6e 74 73 2c 20 24 70 6f 73 29 2c 20 27 3c 3f pos(substr($contents,.$pos),.'<?
d8a0 27 29 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 73 75 62 73 74 72 28 24 63 6f 6e 74 65 6e ')).{.$contents.=.substr($conten
d8c0 74 73 2c 20 30 2c 20 24 70 6f 73 29 3b 0a 7d 0a 0a 70 72 65 67 5f 6d 61 74 63 68 5f 61 6c 6c 28 ts,.0,.$pos);.}..preg_match_all(
d8e0 27 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 3f 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 '{.............(?:..............
d900 20 20 20 20 5c 62 28 3f 3c 21 5b 5c 24 3a 3e 5d 29 28 3f 50 3c 74 79 70 65 3e 63 6c 61 73 73 7c ....\b(?<![\$:>])(?P<type>class|
d920 69 6e 74 65 72 66 61 63 65 27 2e 24 65 78 74 72 61 54 79 70 65 73 2e 27 29 20 5c 73 2b 2b 20 28 interface'.$extraTypes.').\s++.(
d940 3f 50 3c 6e 61 6d 65 3e 5b 61 2d 7a 41 2d 5a 5f 5c 78 37 66 2d 5c 78 66 66 3a 5d 5b 61 2d 7a 41 ?P<name>[a-zA-Z_\x7f-\xff:][a-zA
d960 2d 5a 30 2d 39 5f 5c 78 37 66 2d 5c 78 66 66 3a 5c 2d 5d 2a 2b 29 0a 20 20 20 20 20 20 20 20 20 -Z0-9_\x7f-\xff:\-]*+)..........
d980 20 20 20 20 20 20 7c 20 5c 62 28 3f 3c 21 5b 5c 24 3a 3e 5d 29 28 3f 50 3c 6e 73 3e 6e 61 6d 65 ......|.\b(?<![\$:>])(?P<ns>name
d9a0 73 70 61 63 65 29 20 28 3f 50 3c 6e 73 6e 61 6d 65 3e 5c 73 2b 2b 5b 61 2d 7a 41 2d 5a 5f 5c 78 space).(?P<nsname>\s++[a-zA-Z_\x
d9c0 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 5d 2a 2b 28 7f-\xff][a-zA-Z0-9_\x7f-\xff]*+(
d9e0 3f 3a 5c 73 2a 2b 5c 5c 5c 5c 5c 73 2a 2b 5b 61 2d 7a 41 2d 5a 5f 5c 78 37 66 2d 5c 78 66 66 5d ?:\s*+\\\\\s*+[a-zA-Z_\x7f-\xff]
da00 5b 61 2d 7a 41 2d 5a 30 2d 39 5f 5c 78 37 66 2d 5c 78 66 66 5d 2a 2b 29 2a 2b 29 3f 20 5c 73 2a [a-zA-Z0-9_\x7f-\xff]*+)*+)?.\s*
da20 2b 20 5b 5c 7b 3b 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 29 0a 20 20 20 20 20 20 20 20 7d 69 +.[\{;].............).........}i
da40 78 27 2c 20 24 63 6f 6e 74 65 6e 74 73 2c 20 24 6d 61 74 63 68 65 73 29 3b 0a 0a 24 63 6c 61 73 x',.$contents,.$matches);..$clas
da60 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 27 27 3b 0a ses.=.array();.$namespace.=.'';.
da80 0a 66 6f 72 20 28 24 69 20 3d 20 30 2c 20 24 6c 65 6e 20 3d 20 63 6f 75 6e 74 28 24 6d 61 74 63 .for.($i.=.0,.$len.=.count($matc
daa0 68 65 73 5b 27 74 79 70 65 27 5d 29 3b 20 24 69 20 3c 20 24 6c 65 6e 3b 20 24 69 2b 2b 29 20 7b hes['type']);.$i.<.$len;.$i++).{
dac0 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 27 6e 73 27 5d 5b 24 69 5d 29 29 .if.(!empty($matches['ns'][$i]))
dae0 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 .{.$namespace.=.str_replace(arra
db00 79 28 27 20 27 2c 20 22 5c 74 22 2c 20 22 5c 72 22 2c 20 22 5c 6e 22 29 2c 20 27 27 2c 20 24 6d y('.',."\t",."\r",."\n"),.'',.$m
db20 61 74 63 68 65 73 5b 27 6e 73 6e 61 6d 65 27 5d 5b 24 69 5d 29 20 2e 20 27 5c 5c 27 3b 0a 7d 20 atches['nsname'][$i])...'\\';.}.
db40 65 6c 73 65 20 7b 0a 24 6e 61 6d 65 20 3d 20 24 6d 61 74 63 68 65 73 5b 27 6e 61 6d 65 27 5d 5b else.{.$name.=.$matches['name'][
db60 24 69 5d 3b 0a 69 66 20 28 24 6e 61 6d 65 5b 30 5d 20 3d 3d 3d 20 27 3a 27 29 20 7b 0a 0a 20 24 $i];.if.($name[0].===.':').{...$
db80 6e 61 6d 65 20 3d 20 27 78 68 70 27 2e 73 75 62 73 74 72 28 73 74 72 5f 72 65 70 6c 61 63 65 28 name.=.'xhp'.substr(str_replace(
dba0 61 72 72 61 79 28 27 2d 27 2c 20 27 3a 27 29 2c 20 61 72 72 61 79 28 27 5f 27 2c 20 27 5f 5f 27 array('-',.':'),.array('_',.'__'
dbc0 29 2c 20 24 6e 61 6d 65 29 2c 20 31 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 6d 61 74 63 68 65 ),.$name),.1);.}.elseif.($matche
dbe0 73 5b 27 74 79 70 65 27 5d 5b 24 69 5d 20 3d 3d 3d 20 27 65 6e 75 6d 27 29 20 7b 0a 0a 20 0a 20 s['type'][$i].===.'enum').{.....
dc00 0a 20 0a 20 24 6e 61 6d 65 20 3d 20 72 74 72 69 6d 28 24 6e 61 6d 65 2c 20 27 3a 27 29 3b 0a 7d ....$name.=.rtrim($name,.':');.}
dc20 0a 24 63 6c 61 73 73 65 73 5b 5d 20 3d 20 6c 74 72 69 6d 28 24 6e 61 6d 65 73 70 61 63 65 20 2e .$classes[].=.ltrim($namespace..
dc40 20 24 6e 61 6d 65 2c 20 27 5c 5c 27 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6c 61 73 .$name,.'\\');.}.}..return.$clas
dc60 73 65 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 ses;.}.}.<?php............namesp
dc80 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 49 4f 5c 49 ace.Composer;..use.Composer\IO\I
dca0 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 46 69 OInterface;.use.Composer\Util\Fi
dcc0 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 74 5c lesystem;.use.Symfony\Component\
dce0 46 69 6e 64 65 72 5c 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 61 63 68 65 Finder\Finder;.......class.Cache
dd00 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 63 61 63 68 65 43 6f 6c 6c 65 63 74 65 .{.private.static.$cacheCollecte
dd20 64 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 70 72 69 76 61 74 65 20 d.=.false;.private.$io;.private.
dd40 24 72 6f 6f 74 3b 0a 70 72 69 76 61 74 65 20 24 65 6e 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 0a $root;.private.$enabled.=.true;.
dd60 70 72 69 76 61 74 65 20 24 77 68 69 74 65 6c 69 73 74 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c private.$whitelist;.private.$fil
dd80 65 73 79 73 74 65 6d 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 esystem;........public.function.
dda0 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 24 63 61 __construct(IOInterface.$io,.$ca
ddc0 63 68 65 44 69 72 2c 20 24 77 68 69 74 65 6c 69 73 74 20 3d 20 27 61 2d 7a 30 2d 39 2e 27 2c 20 cheDir,.$whitelist.=.'a-z0-9.',.
dde0 46 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 Filesystem.$filesystem.=.null).{
de00 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 6f 6f 74 20 3d 20 .$this->io.=.$io;.$this->root.=.
de20 72 74 72 69 6d 28 24 63 61 63 68 65 44 69 72 2c 20 27 2f 5c 5c 27 29 20 2e 20 27 2f 27 3b 0a 24 rtrim($cacheDir,.'/\\')...'/';.$
de40 74 68 69 73 2d 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 this->whitelist.=.$whitelist;.$t
de60 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 3a his->filesystem.=.$filesystem.?:
de80 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 0a 69 66 20 28 0a 28 21 69 73 5f 64 69 .new.Filesystem();..if.(.(!is_di
dea0 72 28 24 74 68 69 73 2d 3e 72 6f 6f 74 29 20 26 26 20 21 40 6d 6b 64 69 72 28 24 74 68 69 73 2d r($this->root).&&.!@mkdir($this-
dec0 3e 72 6f 6f 74 2c 20 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 >root,.0777,.true)).||.!is_writa
dee0 62 6c 65 28 24 74 68 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 ble($this->root).).{.$this->io->
df00 77 72 69 74 65 45 72 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 writeError('<warning>Cannot.crea
df20 74 65 20 63 61 63 68 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 te.cache.directory.'...$this->ro
df40 6f 74 20 2e 20 27 2c 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 ot...',.or.directory.is.not.writ
df60 61 62 6c 65 2e 20 50 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 able..Proceeding.without.cache</
df80 77 61 72 6e 69 6e 67 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 warning>');.$this->enabled.=.fal
dfa0 73 65 3b 0a 7d 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 62 6c se;.}.}..public.function.isEnabl
dfc0 65 64 28 29 0a 7b 0a 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 ed().{.return.$this->enabled;.}.
dfe0 0a 70 75 62 6c 69 63 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 .public.function.getRoot().{.ret
e000 75 72 6e 20 24 74 68 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 urn.$this->root;.}..public.funct
e020 69 6f 6e 20 72 65 61 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 ion.read($file).{.$file.=.preg_r
e040 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 27 5d eplace('{[^'.$this->whitelist.']
e060 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 6e 61 }i',.'-',.$file);.if.($this->ena
e080 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 74 20 bled.&&.file_exists($this->root.
e0a0 2e 20 24 66 69 6c 65 29 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 44 65 62 ..$file)).{.if.($this->io->isDeb
e0c0 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 28 27 52 ug()).{.$this->io->writeError('R
e0e0 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 2e 27 20 66 eading.'.$this->root...$file.'.f
e100 72 6f 6d 20 63 61 63 68 65 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 69 6c 65 5f 67 65 74 5f rom.cache');.}..return.file_get_
e120 63 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 29 3b 0a 7d contents($this->root...$file);.}
e140 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 66 75 6e 63 74 69 ..return.false;.}..public.functi
e160 6f 6e 20 77 72 69 74 65 28 24 66 69 6c 65 2c 20 24 63 6f 6e 74 65 6e 74 73 29 0a 7b 0a 69 66 20 on.write($file,.$contents).{.if.
e180 28 24 74 68 69 73 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 ($this->enabled).{.$file.=.preg_
e1a0 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 27 replace('{[^'.$this->whitelist.'
e1c0 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 66 69 6c 65 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 ]}i',.'-',.$file);..if.($this->i
e1e0 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 69 74 65 o->isDebug()).{.$this->io->write
e200 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 2e 20 24 Error('Writing.'.$this->root...$
e220 66 69 6c 65 2e 27 20 69 6e 74 6f 20 63 61 63 68 65 27 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 72 65 file.'.into.cache');.}..try.{.re
e240 74 75 72 6e 20 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 72 6f turn.file_put_contents($this->ro
e260 6f 74 20 2e 20 24 66 69 6c 65 2c 20 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 7d 20 63 61 74 63 68 20 ot...$file,.$contents);.}.catch.
e280 28 5c 45 72 72 6f 72 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 (\ErrorException.$e).{.if.($this
e2a0 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
e2c0 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 46 61 69 6c 65 64 20 74 6f 20 77 72 69 iteError('<warning>Failed.to.wri
e2e0 74 65 20 69 6e 74 6f 20 63 61 63 68 65 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 te.into.cache:.'.$e->getMessage(
e300 29 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 ).'</warning>');.}.if.(preg_matc
e320 68 28 27 7b 5e 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 5c 28 5c 29 3a 20 4f 6e 6c 79 h('{^file_put_contents\(\):.Only
e340 20 28 5b 30 2d 39 5d 2b 29 20 6f 66 20 28 5b 30 2d 39 5d 2b 29 20 62 79 74 65 73 20 77 72 69 74 .([0-9]+).of.([0-9]+).bytes.writ
e360 74 65 6e 7d 27 2c 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 24 6d 29 29 20 7b 0a ten}',.$e->getMessage(),.$m)).{.
e380 0a 20 75 6e 6c 69 6e 6b 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 3b 0a 0a ..unlink($this->root...$file);..
e3a0 24 6d 65 73 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 0a 27 3c 77 61 72 6e 69 6e 67 3e 57 72 $message.=.sprintf(.'<warning>Wr
e3c0 69 74 69 6e 67 20 25 31 24 73 20 69 6e 74 6f 20 63 61 63 68 65 20 66 61 69 6c 65 64 20 61 66 74 iting.%1$s.into.cache.failed.aft
e3e0 65 72 20 25 32 24 75 20 6f 66 20 25 33 24 75 20 62 79 74 65 73 20 77 72 69 74 74 65 6e 2c 20 6f er.%2$u.of.%3$u.bytes.written,.o
e400 6e 6c 79 20 25 34 24 75 20 62 79 74 65 73 20 6f 66 20 66 72 65 65 20 73 70 61 63 65 20 61 76 61 nly.%4$u.bytes.of.free.space.ava
e420 69 6c 61 62 6c 65 3c 2f 77 61 72 6e 69 6e 67 3e 27 2c 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e ilable</warning>',.$this->root..
e440 20 24 66 69 6c 65 2c 0a 24 6d 5b 31 5d 2c 0a 24 6d 5b 32 5d 2c 0a 40 64 69 73 6b 5f 66 72 65 65 .$file,.$m[1],.$m[2],.@disk_free
e460 5f 73 70 61 63 65 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 64 69 72 6e 61 6d 65 28 24 66 69 _space($this->root...dirname($fi
e480 6c 65 29 29 0a 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 24 le)).);..$this->io->writeError($
e4a0 6d 65 73 73 61 67 65 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 74 68 72 6f message);..return.false;.}..thro
e4c0 77 20 24 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 70 w.$e;.}.}..return.false;.}.....p
e4e0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 46 72 6f 6d 28 24 66 69 6c 65 2c 20 24 ublic.function.copyFrom($file,.$
e500 73 6f 75 72 63 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 61 62 6c 65 64 29 20 7b 0a source).{.if.($this->enabled).{.
e520 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 68 69 73 $file.=.preg_replace('{[^'.$this
e540 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 29 3b 0a ->whitelist.']}i',.'-',.$file);.
e560 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 44 69 72 65 63 74 6f $this->filesystem->ensureDirecto
e580 72 79 45 78 69 73 74 73 28 64 69 72 6e 61 6d 65 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 ryExists(dirname($this->root...$
e5a0 66 69 6c 65 29 29 3b 0a 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 73 6f 75 72 63 file));..if.(!file_exists($sourc
e5c0 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 6f 72 28 27 3c 65 72 e)).{.$this->io->writeError('<er
e5e0 72 6f 72 3e 27 2e 24 73 6f 75 72 63 65 2e 27 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2c 20 ror>'.$source.'.does.not.exist,.
e600 63 61 6e 20 6e 6f 74 20 77 72 69 74 65 20 69 6e 74 6f 20 63 61 63 68 65 3c 2f 65 72 72 6f 72 3e can.not.write.into.cache</error>
e620 27 29 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 44 65 62 75 67 ');.}.elseif.($this->io->isDebug
e640 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 57 72 69 ()).{.$this->io->writeError('Wri
e660 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 69 6e 74 ting.'.$this->root...$file.'.int
e680 6f 20 63 61 63 68 65 20 66 72 6f 6d 20 27 2e 24 73 6f 75 72 63 65 29 3b 0a 7d 0a 0a 72 65 74 75 o.cache.from.'.$source);.}..retu
e6a0 72 6e 20 63 6f 70 79 28 24 73 6f 75 72 63 65 2c 20 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 rn.copy($source,.$this->root...$
e6c0 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 0a 0a 0a 0a 0a 70 75 file);.}..return.false;.}.....pu
e6e0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 54 6f 28 24 66 69 6c 65 2c 20 24 74 61 72 blic.function.copyTo($file,.$tar
e700 67 65 74 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 get).{.$file.=.preg_replace('{[^
e720 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 24 '.$this->whitelist.']}i',.'-',.$
e740 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 20 66 69 6c file);.if.($this->enabled.&&.fil
e760 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 29 29 20 7b e_exists($this->root...$file)).{
e780 0a 74 72 79 20 7b 0a 74 6f 75 63 68 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 .try.{.touch($this->root...$file
e7a0 2c 20 66 69 6c 65 6d 74 69 6d 65 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 ,.filemtime($this->root...$file)
e7c0 2c 20 74 69 6d 65 28 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 72 72 6f 72 45 78 63 65 70 74 ,.time());.}.catch.(\ErrorExcept
e7e0 69 6f 6e 20 24 65 29 20 7b 0a 0a 20 0a 20 74 6f 75 63 68 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 ion.$e).{.....touch($this->root.
e800 2e 20 24 66 69 6c 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 44 65 ..$file);.}..if.($this->io->isDe
e820 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 28 27 bug()).{.$this->io->writeError('
e840 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 2e 27 20 Reading.'.$this->root...$file.'.
e860 66 72 6f 6d 20 63 61 63 68 65 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 63 6f 70 79 28 24 74 68 from.cache');.}..return.copy($th
e880 69 73 2d 3e 72 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 is->root...$file,.$target);.}..r
e8a0 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.
e8c0 67 63 49 73 4e 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 gcIsNecessary().{.return.(!self:
e8e0 3a 24 63 61 63 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 :$cacheCollected.&&.!mt_rand(0,.
e900 35 30 29 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 28 50));.}..public.function.remove(
e920 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 27 7b $file).{.$file.=.preg_replace('{
e940 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 27 2c [^'.$this->whitelist.']}i',.'-',
e960 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 20 66 .$file);.if.($this->enabled.&&.f
e980 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 29 29 ile_exists($this->root...$file))
e9a0 20 7b 0a 72 65 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 .{.return.$this->filesystem->unl
e9c0 69 6e 6b 28 24 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 ink($this->root...$file);.}..ret
e9e0 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 63 urn.false;.}..public.function.gc
ea00 28 24 74 74 6c 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 ($ttl,.$maxSize).{.if.($this->en
ea20 61 62 6c 65 64 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 abled).{.$expire.=.new.\DateTime
ea40 28 29 3b 0a 24 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 ();.$expire->modify('-'.$ttl.'.s
ea60 65 63 6f 6e 64 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 econds');..$finder.=.$this->getF
ea80 69 6e 64 65 72 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 inder()->date('until.'.$expire->
eaa0 66 6f 72 6d 61 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 format('Y-m-d.H:i:s'));.foreach.
eac0 28 24 66 69 6e 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 ($finder.as.$file).{.$this->file
eae0 73 79 73 74 65 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 system->unlink($file->getPathnam
eb00 65 28 29 29 3b 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 e());.}..$totalSize.=.$this->fil
eb20 65 73 79 73 74 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 esystem->size($this->root);.if.(
eb40 24 74 6f 74 61 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 $totalSize.>.$maxSize).{.$iterat
eb60 6f 72 20 3d 20 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 or.=.$this->getFinder()->sortByA
eb80 63 63 65 73 73 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 ccessedTime()->getIterator();.wh
eba0 69 6c 65 20 28 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 ile.($totalSize.>.$maxSize.&&.$i
ebc0 74 65 72 61 74 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 terator->valid()).{.$filepath.=.
ebe0 24 69 74 65 72 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 $iterator->current()->getPathnam
ec00 65 28 29 3b 0a 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 e();.$totalSize.-=.$this->filesy
ec20 73 74 65 6d 2d 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 stem->size($filepath);.$this->fi
ec40 6c 65 73 79 73 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 lesystem->unlink($filepath);.$it
ec60 65 72 61 74 6f 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 erator->next();.}.}..self::$cach
ec80 65 43 6f 6c 6c 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 eCollected.=.true;..return.true;
eca0 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 66 75 6e 63 .}..return.false;.}..public.func
ecc0 74 69 6f 6e 20 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 tion.sha1($file).{.$file.=.preg_
ece0 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 27 replace('{[^'.$this->whitelist.'
ed00 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 6e ]}i',.'-',.$file);.if.($this->en
ed20 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 74 abled.&&.file_exists($this->root
ed40 20 2e 20 24 66 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 ...$file)).{.return.sha1_file($t
ed60 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
ed80 6c 73 65 3b 0a 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 lse;.}..public.function.sha256($
eda0 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 27 7b 5b file).{.$file.=.preg_replace('{[
edc0 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',.'-',.
ede0 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 20 66 69 $file);.if.($this->enabled.&&.fi
ee00 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 29 29 20 le_exists($this->root...$file)).
ee20 7b 0a 72 65 74 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 {.return.hash_file('sha256',.$th
ee40 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 6c is->root...$file);.}..return.fal
ee60 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 67 65 74 46 69 6e se;.}..protected.function.getFin
ee80 64 65 72 28 29 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 der().{.return.Finder::create()-
eea0 3e 69 6e 28 24 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 >in($this->root)->files();.}.}.<
eec0 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
eee0 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 6e 65 er\Command;..use.Symfony\Compone
ef00 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;
ef20 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
ef40 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 73 73 utput\OutputInterface;.....class
ef60 20 41 62 6f 75 74 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a .AboutCommand.extends.Command.{.
ef80 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().{
efa0 0a 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 .$this.->setName('about').->setD
efc0 65 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 escription('Short.information.ab
efe0 6f 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 out.Composer').->setHelp(<<<EOT.
f000 3c 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 <info>php.composer.phar.about</i
f020 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 6e 63 74 69 nfo>.EOT.).;.}..protected.functi
f040 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 75 74 on.execute(InputInterface.$input
f060 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 74 68 ,.OutputInterface.$output).{.$th
f080 69 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 is->getIO()->write(<<<EOT.<info>
f0a0 43 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 Composer.-.Package.Management.fo
f0c0 72 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 r.PHP</info>.<comment>Composer.i
f0e0 73 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 s.a.dependency.manager.tracking.
f100 6c 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 local.dependencies.of.your.proje
f120 63 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 cts.and.libraries..See.https://g
f140 65 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 etcomposer.org/.for.more.informa
f160 74 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 tion.</comment>.EOT.);.}.}.<?php
f180 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
f1a0 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
f1c0 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.
f1e0 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 52 65 Composer\Config;.use.Composer\Re
f200 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 0a 75 73 pository\CompositeRepository;.us
f220 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 74 73 3b 0a e.Composer\Script\ScriptEvents;.
f240 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
f260 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
f280 74 73 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 ts;.use.Composer\Util\Filesystem
f2a0 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\
f2c0 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
f2e0 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 6e \Component\Console\Input\InputIn
f300 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
f320 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 79 onsole\Input\InputOption;.use.Sy
f340 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
f360 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 41 72 63 68 utputInterface;.......class.Arch
f380 69 76 65 43 6f 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 6f iveCommand.extends.Command.{.pro
f3a0 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
f3c0 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 61 72 63 68 69 76 65 27 29 0a 2d 3e 73 65 74 44 65 his.->setName('archive').->setDe
f3e0 73 63 72 69 70 74 69 6f 6e 28 27 43 72 65 61 74 65 20 61 6e 20 61 72 63 68 69 76 65 20 6f 66 20 scription('Create.an.archive.of.
f400 74 68 69 73 20 63 6f 6d 70 6f 73 65 72 20 70 61 63 6b 61 67 65 27 29 0a 2d 3e 73 65 74 44 65 66 this.composer.package').->setDef
f420 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
f440 28 27 70 61 63 6b 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 ('package',.InputArgument::OPTIO
f460 4e 41 4c 2c 20 27 54 68 65 20 70 61 63 6b 61 67 65 20 74 6f 20 61 72 63 68 69 76 65 20 69 6e 73 NAL,.'The.package.to.archive.ins
f480 74 65 61 64 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 70 72 6f 6a 65 63 74 27 29 2c 0a 6e tead.of.the.current.project'),.n
f4a0 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 2c 20 49 6e 70 75 ew.InputArgument('version',.Inpu
f4c0 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 41 20 76 65 72 73 69 6f 6e 20 tArgument::OPTIONAL,.'A.version.
f4e0 63 6f 6e 73 74 72 61 69 6e 74 20 74 6f 20 66 69 6e 64 20 74 68 65 20 70 61 63 6b 61 67 65 20 74 constraint.to.find.the.package.t
f500 6f 20 61 72 63 68 69 76 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 66 6f o.archive'),.new.InputOption('fo
f520 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 4c 55 45 5f 52 rmat',.'f',.InputOption::VALUE_R
f540 45 51 55 49 52 45 44 2c 20 27 46 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 69 6e EQUIRED,.'Format.of.the.resultin
f560 67 20 61 72 63 68 69 76 65 3a 20 74 61 72 20 6f 72 20 7a 69 70 27 29 2c 0a 6e 65 77 20 49 6e 70 g.archive:.tar.or.zip'),.new.Inp
f580 75 74 4f 70 74 69 6f 6e 28 27 64 69 72 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f utOption('dir',.null,.InputOptio
f5a0 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 57 72 69 74 65 20 74 68 65 20 61 72 n::VALUE_REQUIRED,.'Write.the.ar
f5c0 63 68 69 76 65 20 74 6f 20 74 68 69 73 20 64 69 72 65 63 74 6f 72 79 27 29 2c 0a 6e 65 77 20 49 chive.to.this.directory'),.new.I
f5e0 6e 70 75 74 4f 70 74 69 6f 6e 28 27 66 69 6c 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 nputOption('file',.null,.InputOp
f600 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 57 72 69 74 65 20 74 68 65 tion::VALUE_REQUIRED,.'Write.the
f620 20 61 72 63 68 69 76 65 20 77 69 74 68 20 74 68 65 20 67 69 76 65 6e 20 66 69 6c 65 20 6e 61 6d .archive.with.the.given.file.nam
f640 65 2e 27 0a 2e 27 20 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 66 6f 72 6d 61 74 20 77 69 6c 6c e.'..'.Note.that.the.format.will
f660 20 62 65 20 61 70 70 65 6e 64 65 64 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c .be.appended.'),.)).->setHelp(<<
f680 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 61 72 63 68 69 76 65 3c 2f 69 6e 66 6f 3e 20 63 6f <EOT.The.<info>archive</info>.co
f6a0 6d 6d 61 6e 64 20 63 72 65 61 74 65 73 20 61 6e 20 61 72 63 68 69 76 65 20 6f 66 20 74 68 65 20 mmand.creates.an.archive.of.the.
f6c0 73 70 65 63 69 66 69 65 64 20 66 6f 72 6d 61 74 0a 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 specified.format.containing.the.
f6e0 66 69 6c 65 73 20 61 6e 64 20 64 69 72 65 63 74 6f 72 69 65 73 20 6f 66 20 74 68 65 20 43 6f 6d files.and.directories.of.the.Com
f700 70 6f 73 65 72 20 70 72 6f 6a 65 63 74 20 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 65 64 0a 70 poser.project.or.the.specified.p
f720 61 63 6b 61 67 65 20 69 6e 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 76 65 72 73 69 6f 6e 20 ackage.in.the.specified.version.
f740 61 6e 64 20 77 72 69 74 65 73 20 69 74 20 74 6f 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 64 and.writes.it.to.the.specified.d
f760 69 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 irectory...<info>php.composer.ph
f780 61 72 20 61 72 63 68 69 76 65 20 5b 2d 2d 66 6f 72 6d 61 74 3d 7a 69 70 5d 20 5b 2d 2d 64 69 72 ar.archive.[--format=zip].[--dir
f7a0 3d 2f 66 6f 6f 5d 20 5b 70 61 63 6b 61 67 65 20 5b 76 65 72 73 69 6f 6e 5d 5d 3c 2f 69 6e 66 6f =/foo].[package.[version]]</info
f7c0 3e 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 74 69 6f 6e >..EOT.).;.}..protected.function
f7e0 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 20 .execute(InputInterface.$input,.
f800 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 63 6f 6e 66 OutputInterface.$output).{.$conf
f820 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 29 3b 0a 24 63 ig.=.Factory::createConfig();.$c
f840 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
f860 73 65 29 3b 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 se);.if.($composer).{.$commandEv
f880 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
f8a0 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 27 61 72 63 68 69 76 65 27 2c 20 24 69 6e 70 75 74 2c nts::COMMAND,.'archive',.$input,
f8c0 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 69 .$output);.$composer->getEventDi
f8e0 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 65 spatcher()->dispatch($commandEve
f900 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 24 nt->getName(),.$commandEvent);.$
f920 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 3e composer->getEventDispatcher()->
f940 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 52 45 dispatchScript(ScriptEvents::PRE
f960 5f 41 52 43 48 49 56 45 5f 43 4d 44 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 _ARCHIVE_CMD);.}..if.(null.===.$
f980 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 29 20 7b 0a 24 69 input->getOption('format')).{.$i
f9a0 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 2c 20 24 63 6f 6e 66 69 nput->setOption('format',.$confi
f9c0 67 2d 3e 67 65 74 28 27 61 72 63 68 69 76 65 2d 66 6f 72 6d 61 74 27 29 29 3b 0a 7d 0a 69 66 20 g->get('archive-format'));.}.if.
f9e0 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 64 69 72 (null.===.$input->getOption('dir
fa00 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 64 69 72 27 2c 20 24 ')).{.$input->setOption('dir',.$
fa20 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 61 72 63 68 69 76 65 2d 64 69 72 27 29 29 3b 0a 7d 0a 0a config->get('archive-dir'));.}..
fa40 24 72 65 74 75 72 6e 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 61 72 63 68 69 76 65 28 0a 24 74 $returnCode.=.$this->archive(.$t
fa60 68 69 73 2d 3e 67 65 74 49 4f 28 29 2c 0a 24 63 6f 6e 66 69 67 2c 0a 24 69 6e 70 75 74 2d 3e 67 his->getIO(),.$config,.$input->g
fa80 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 74 2d 3e 67 etArgument('package'),.$input->g
faa0 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 70 75 74 2d 3e 67 etArgument('version'),.$input->g
fac0 65 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 4f etOption('format'),.$input->getO
fae0 70 74 69 6f 6e 28 27 64 69 72 27 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 ption('dir'),.$input->getOption(
fb00 27 66 69 6c 65 27 29 0a 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 72 65 74 75 72 6e 43 6f 64 'file').);..if.(0.===.$returnCod
fb20 65 20 26 26 20 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 e.&&.$composer).{.$composer->get
fb40 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 53 63 72 69 70 EventDispatcher()->dispatchScrip
fb60 74 28 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 41 52 43 48 49 56 45 5f 43 4d 44 t(ScriptEvents::POST_ARCHIVE_CMD
fb80 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 74 75 72 6e 43 6f 64 65 3b 0a 7d 0a 0a 70 72 6f );.}..return.$returnCode;.}..pro
fba0 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 72 63 68 69 76 65 28 49 4f 49 6e 74 65 72 66 tected.function.archive(IOInterf
fbc0 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 61 63 6b 61 67 ace.$io,.Config.$config,.$packag
fbe0 65 4e 61 6d 65 20 3d 20 6e 75 6c 6c 2c 20 24 76 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 eName.=.null,.$version.=.null,.$
fc00 66 6f 72 6d 61 74 20 3d 20 27 74 61 72 27 2c 20 24 64 65 73 74 20 3d 20 27 2e 27 2c 20 24 66 69 format.=.'tar',.$dest.=.'.',.$fi
fc20 6c 65 4e 61 6d 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 66 61 63 74 6f 72 79 20 3d 20 6e 65 77 20 leName.=.null).{.$factory.=.new.
fc40 46 61 63 74 6f 72 79 3b 0a 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 3d 20 24 66 61 63 Factory;.$downloadManager.=.$fac
fc60 74 6f 72 79 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 2c tory->createDownloadManager($io,
fc80 20 24 63 6f 6e 66 69 67 29 3b 0a 24 61 72 63 68 69 76 65 4d 61 6e 61 67 65 72 20 3d 20 24 66 61 .$config);.$archiveManager.=.$fa
fca0 63 74 6f 72 79 2d 3e 63 72 65 61 74 65 41 72 63 68 69 76 65 4d 61 6e 61 67 65 72 28 24 63 6f 6e ctory->createArchiveManager($con
fcc0 66 69 67 2c 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 29 3b 0a 0a 69 66 20 28 24 70 61 fig,.$downloadManager);..if.($pa
fce0 63 6b 61 67 65 4e 61 6d 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 73 ckageName).{.$package.=.$this->s
fd00 65 6c 65 63 74 50 61 63 6b 61 67 65 28 24 69 6f 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 electPackage($io,.$packageName,.
fd20 24 76 65 72 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 72 65 74 $version);..if.(!$package).{.ret
fd40 75 72 6e 20 31 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 urn.1;.}.}.else.{.$package.=.$th
fd60 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b is->getComposer()->getPackage();
fd80 0a 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 43 72 65 61 74 .}..$io->writeError('<info>Creat
fda0 69 6e 67 20 74 68 65 20 61 72 63 68 69 76 65 20 69 6e 74 6f 20 22 27 2e 24 64 65 73 74 2e 27 22 ing.the.archive.into."'.$dest.'"
fdc0 2e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 24 70 61 63 6b 61 67 65 50 61 74 68 20 3d 20 24 61 72 63 68 .</info>');.$packagePath.=.$arch
fde0 69 76 65 4d 61 6e 61 67 65 72 2d 3e 61 72 63 68 69 76 65 28 24 70 61 63 6b 61 67 65 2c 20 24 66 iveManager->archive($package,.$f
fe00 6f 72 6d 61 74 2c 20 24 64 65 73 74 2c 20 24 66 69 6c 65 4e 61 6d 65 29 3b 0a 24 66 73 20 3d 20 ormat,.$dest,.$fileName);.$fs.=.
fe20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 3b 0a 24 73 68 6f 72 74 50 61 74 68 20 3d 20 24 66 73 new.Filesystem;.$shortPath.=.$fs
fe40 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 67 65 74 63 77 64 28 29 2c 20 24 70 61 ->findShortestPath(getcwd(),.$pa
fe60 63 6b 61 67 65 50 61 74 68 2c 20 74 72 75 65 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 ckagePath,.true);..$io->writeErr
fe80 6f 72 28 27 43 72 65 61 74 65 64 3a 20 27 2c 20 66 61 6c 73 65 29 3b 0a 24 69 6f 2d 3e 77 72 69 or('Created:.',.false);.$io->wri
fea0 74 65 28 73 74 72 6c 65 6e 28 24 73 68 6f 72 74 50 61 74 68 29 20 3c 20 73 74 72 6c 65 6e 28 24 te(strlen($shortPath).<.strlen($
fec0 70 61 63 6b 61 67 65 50 61 74 68 29 20 3f 20 24 73 68 6f 72 74 50 61 74 68 20 3a 20 24 70 61 63 packagePath).?.$shortPath.:.$pac
fee0 6b 61 67 65 50 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 kagePath);..return.0;.}..protect
ff00 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 50 61 63 6b 61 67 65 28 49 4f 49 6e 74 65 ed.function.selectPackage(IOInte
ff20 72 66 61 63 65 20 24 69 6f 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 76 65 72 73 69 6f rface.$io,.$packageName,.$versio
ff40 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e n.=.null).{.$io->writeError('<in
ff60 66 6f 3e 53 65 61 72 63 68 69 6e 67 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 70 fo>Searching.for.the.specified.p
ff80 61 63 6b 61 67 65 2e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 ackage.</info>');..if.($composer
ffa0 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 73 65 29 29 20 7b 0a .=.$this->getComposer(false)).{.
ffc0 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
ffe0 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
10000 72 79 28 29 3b 0a 24 72 65 70 6f 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 ry();.$repo.=.new.CompositeRepos
10020 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 6c 6f 63 61 6c 52 65 itory(array_merge(array($localRe
10040 70 6f 29 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 po),.$composer->getRepositoryMan
10060 61 67 65 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 ager()->getRepositories()));.}.e
10080 6c 73 65 20 7b 0a 24 64 65 66 61 75 6c 74 52 65 70 6f 73 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 lse.{.$defaultRepos.=.Factory::c
100a0 72 65 61 74 65 44 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 74 68 69 73 2d 3e reateDefaultRepositories($this->
100c0 67 65 74 49 4f 28 29 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 getIO());.$io->writeError('No.co
100e0 6d 70 6f 73 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 mposer.json.found.in.the.current
10100 20 64 69 72 65 63 74 6f 72 79 2c 20 73 65 61 72 63 68 69 6e 67 20 70 61 63 6b 61 67 65 73 20 66 .directory,.searching.packages.f
10120 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 6b 65 79 73 rom.'...implode(',.',.array_keys
10140 28 24 64 65 66 61 75 6c 74 52 65 70 6f 73 29 29 29 3b 0a 24 72 65 70 6f 20 3d 20 6e 65 77 20 43 ($defaultRepos)));.$repo.=.new.C
10160 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 70 6f 73 ompositeRepository($defaultRepos
10180 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 72 65 70 6f 2d 3e 66 69 6e 64 50 61 63 );.}..$packages.=.$repo->findPac
101a0 6b 61 67 65 73 28 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 kages($packageName,.$version);..
101c0 69 66 20 28 63 6f 75 6e 74 28 24 70 61 63 6b 61 67 65 73 29 20 3e 20 31 29 20 7b 0a 24 70 61 63 if.(count($packages).>.1).{.$pac
101e0 6b 61 67 65 20 3d 20 72 65 73 65 74 28 24 70 61 63 6b 61 67 65 73 29 3b 0a 24 69 6f 2d 3e 77 72 kage.=.reset($packages);.$io->wr
10200 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 46 6f 75 6e 64 20 6d 75 6c 74 69 70 6c 65 20 6d iteError('<info>Found.multiple.m
10220 61 74 63 68 65 73 2c 20 73 65 6c 65 63 74 65 64 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 atches,.selected.'.$package->get
10240 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 24 69 6f 2d PrettyString().'.</info>');.$io-
10260 3e 77 72 69 74 65 45 72 72 6f 72 28 27 41 6c 74 65 72 6e 61 74 69 76 65 73 20 77 65 72 65 20 27 >writeError('Alternatives.were.'
10280 2e 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 6f .implode(',.',.array_map(functio
102a0 6e 20 28 24 70 29 20 7b 20 72 65 74 75 72 6e 20 24 70 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 n.($p).{.return.$p->getPrettyStr
102c0 69 6e 67 28 29 3b 20 7d 2c 20 24 70 61 63 6b 61 67 65 73 29 29 2e 27 2e 27 29 3b 0a 24 69 6f 2d ing();.},.$packages)).'.');.$io-
102e0 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 63 6f 6d 6d 65 6e 74 3e 50 6c 65 61 73 65 20 75 73 65 >writeError('<comment>Please.use
10300 20 61 20 6d 6f 72 65 20 73 70 65 63 69 66 69 63 20 63 6f 6e 73 74 72 61 69 6e 74 20 74 6f 20 70 .a.more.specific.constraint.to.p
10320 69 63 6b 20 61 20 64 69 66 66 65 72 65 6e 74 20 70 61 63 6b 61 67 65 2e 3c 2f 63 6f 6d 6d 65 6e ick.a.different.package.</commen
10340 74 3e 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 63 6b 61 67 65 73 29 20 7b 0a 24 70 61 t>');.}.elseif.($packages).{.$pa
10360 63 6b 61 67 65 20 3d 20 72 65 73 65 74 28 24 70 61 63 6b 61 67 65 73 29 3b 0a 24 69 6f 2d 3e 77 ckage.=.reset($packages);.$io->w
10380 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 46 6f 75 6e 64 20 61 6e 20 65 78 61 63 74 20 riteError('<info>Found.an.exact.
103a0 6d 61 74 63 68 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e match.'.$package->getPrettyStrin
103c0 67 28 29 2e 27 2e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6f 2d 3e 77 g().'.</info>');.}.else.{.$io->w
103e0 72 69 74 65 45 72 72 6f 72 28 27 3c 65 72 72 6f 72 3e 43 6f 75 6c 64 20 6e 6f 74 20 66 69 6e 64 riteError('<error>Could.not.find
10400 20 61 20 70 61 63 6b 61 67 65 20 6d 61 74 63 68 69 6e 67 20 27 2e 24 70 61 63 6b 61 67 65 4e 61 .a.package.matching.'.$packageNa
10420 6d 65 2e 27 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a me.'.</error>');..return.false;.
10440 7d 0a 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 }..return.$package;.}.}.<?php...
10460 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 6d 6d .........namespace.Composer\Comm
10480 61 6e 64 3b 0a 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 and;..use.Composer\Cache;.use.Co
104a0 6d 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 mposer\Factory;.use.Symfony\Comp
104c0 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
104e0 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
10500 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 6c e\Output\OutputInterface;.....cl
10520 61 73 73 20 43 6c 65 61 72 43 61 63 68 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f ass.ClearCacheCommand.extends.Co
10540 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 69 mmand.{.protected.function.confi
10560 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 6c 65 61 72 2d gure().{.$this.->setName('clear-
10580 63 61 63 68 65 27 29 0a 2d 3e 73 65 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 28 27 63 6c 65 61 cache').->setAliases(array('clea
105a0 72 63 61 63 68 65 27 29 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 43 6c 65 61 rcache')).->setDescription('Clea
105c0 72 73 20 63 6f 6d 70 6f 73 65 72 5c 27 73 20 69 6e 74 65 72 6e 61 6c 20 70 61 63 6b 61 67 65 20 rs.composer\'s.internal.package.
105e0 63 61 63 68 65 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 cache.').->setHelp(<<<EOT.The.<i
10600 6e 66 6f 3e 63 6c 65 61 72 2d 63 61 63 68 65 3c 2f 69 6e 66 6f 3e 20 64 65 6c 65 74 65 73 20 61 nfo>clear-cache</info>.deletes.a
10620 6c 6c 20 63 61 63 68 65 64 20 70 61 63 6b 61 67 65 73 20 66 72 6f 6d 20 63 6f 6d 70 6f 73 65 72 ll.cached.packages.from.composer
10640 27 73 0a 63 61 63 68 65 20 64 69 72 65 63 74 6f 72 79 2e 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 's.cache.directory..EOT.).;.}..p
10660 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
10680 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
106a0 20 24 6f 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 .$output).{.$config.=.Factory::c
106c0 72 65 61 74 65 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 74 49 reateConfig();.$io.=.$this->getI
106e0 4f 28 29 3b 0a 0a 24 63 61 63 68 65 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 0a 27 63 61 63 68 O();..$cachePaths.=.array(.'cach
10700 65 2d 64 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 64 69 e-dir'.=>.$config->get('cache-di
10720 72 27 29 2c 0a 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 64 69 72 27 20 3d 3e 20 24 63 6f 6e 66 69 r'),.'cache-files-dir'.=>.$confi
10740 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 0a 27 63 61 63 68 g->get('cache-files-dir'),.'cach
10760 65 2d 72 65 70 6f 2d 64 69 72 27 20 3d 3e 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 e-repo-dir'.=>.$config->get('cac
10780 68 65 2d 72 65 70 6f 2d 64 69 72 27 29 2c 0a 27 63 61 63 68 65 2d 76 63 73 2d 64 69 72 27 20 3d he-repo-dir'),.'cache-vcs-dir'.=
107a0 3e 20 24 63 6f 6e 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 2c >.$config->get('cache-vcs-dir'),
107c0 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 61 63 68 65 50 61 74 68 73 20 61 73 20 24 6b 65 .);..foreach.($cachePaths.as.$ke
107e0 79 20 3d 3e 20 24 63 61 63 68 65 50 61 74 68 29 20 7b 0a 24 63 61 63 68 65 50 61 74 68 20 3d 20 y.=>.$cachePath).{.$cachePath.=.
10800 72 65 61 6c 70 61 74 68 28 24 63 61 63 68 65 50 61 74 68 29 3b 0a 69 66 20 28 21 24 63 61 63 68 realpath($cachePath);.if.(!$cach
10820 65 50 61 74 68 29 20 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 ePath).{.$io->writeError("<info>
10840 43 61 63 68 65 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 20 28 Cache.directory.does.not.exist.(
10860 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 0a 63 6f 6e $key):.$cachePath</info>");..con
10880 74 69 6e 75 65 3b 0a 7d 0a 24 63 61 63 68 65 20 3d 20 6e 65 77 20 43 61 63 68 65 28 24 69 6f 2c tinue;.}.$cache.=.new.Cache($io,
108a0 20 24 63 61 63 68 65 50 61 74 68 29 3b 0a 69 66 20 28 21 24 63 61 63 68 65 2d 3e 69 73 45 6e 61 .$cachePath);.if.(!$cache->isEna
108c0 62 6c 65 64 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 3c 69 6e 66 6f bled()).{.$io->writeError("<info
108e0 3e 43 61 63 68 65 20 69 73 20 6e 6f 74 20 65 6e 61 62 6c 65 64 20 28 24 6b 65 79 29 3a 20 24 63 >Cache.is.not.enabled.($key):.$c
10900 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 0a achePath</info>");..continue;.}.
10920 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 6c 65 61 72 69 6e 67 .$io->writeError("<info>Clearing
10940 20 63 61 63 68 65 20 28 24 6b 65 79 29 3a 20 24 63 61 63 68 65 50 61 74 68 3c 2f 69 6e 66 6f 3e .cache.($key):.$cachePath</info>
10960 22 29 3b 0a 24 63 61 63 68 65 2d 3e 67 63 28 30 2c 20 30 29 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 ");.$cache->gc(0,.0);.}..$io->wr
10980 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 41 6c 6c 20 63 61 63 68 65 73 20 63 6c 65 61 72 iteError('<info>All.caches.clear
109a0 65 64 2e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a ed.</info>');.}.}.<?php.........
109c0 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;..
109e0 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 43 6f 6d 70 6f use.Composer\Composer;.use.Compo
10a00 73 65 72 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 43 6f 6d ser\Console\Application;.use.Com
10a20 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
10a40 65 72 5c 49 4f 5c 4e 75 6c 6c 49 4f 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e er\IO\NullIO;.use.Symfony\Compon
10a60 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 65 ent\Console\Input\InputInterface
10a80 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\
10aa0 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 66 Output\OutputInterface;.use.Symf
10ac0 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 43 6f ony\Component\Console\Command\Co
10ae0 6d 6d 61 6e 64 20 61 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 mmand.as.BaseCommand;........abs
10b00 74 72 61 63 74 20 63 6c 61 73 73 20 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 65 tract.class.Command.extends.Base
10b20 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 3b 0a Command.{....private.$composer;.
10b40 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 20 66 ....private.$io;........public.f
10b60 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 3d 20 unction.getComposer($required.=.
10b80 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 0a 7b true,.$disablePlugins.=.false).{
10ba0 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 20 7b .if.(null.===.$this->composer).{
10bc0 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 69 63 .$application.=.$this->getApplic
10be0 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 61 6e ation();.if.($application.instan
10c00 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 6d 70 ceof.Application).{..$this->comp
10c20 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 65 72 oser.=.$application->getComposer
10c40 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 7d 20 ($required,.$disablePlugins);.}.
10c60 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 20 5c elseif.($required).{.throw.new.\
10c80 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 72 65 RuntimeException(.'Could.not.cre
10ca0 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 63 65 ate.a.Composer\Composer.instance
10cc0 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 68 69 ,.you.must.inject.'..'one.if.thi
10ce0 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 6f 6d s.command.is.not.used.with.a.Com
10d00 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 61 6e poser\Console\Application.instan
10d20 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 6f 73 ce'.);.}.}..return.$this->compos
10d40 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 6f 6d er;.}.....public.function.setCom
10d60 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 68 69 poser(Composer.$composer).{.$thi
10d80 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 0a 70 s->composer.=.$composer;.}.....p
10da0 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 0a 7b ublic.function.resetComposer().{
10dc0 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 2d 3e .$this->composer.=.null;.$this->
10de0 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 72 28 getApplication()->resetComposer(
10e00 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 28 29 );.}.....public.function.getIO()
10e20 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 61 70 .{.if.(null.===.$this->io).{.$ap
10e40 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 69 6f plication.=.$this->getApplicatio
10e60 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 6f 66 n();.if.($application.instanceof
10e80 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 61 70 .Application).{..$this->io.=.$ap
10ea0 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 74 68 plication->getIO();.}.else.{.$th
10ec0 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 74 75 is->io.=.new.NullIO();.}.}..retu
10ee0 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 63 74 rn.$this->io;.}.....public.funct
10f00 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 74 68 ion.setIO(IOInterface.$io).{.$th
10f20 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 66 75 is->io.=.$io;.}.....protected.fu
10f40 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 63 65 nction.initialize(InputInterface
10f60 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
10f80 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 72 61 ).{.if.(true.===.$input->hasPara
10fa0 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 29 20 meterOption(array('--no-ansi')).
10fc0 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 65 73 &&.$input->hasOption('no-progres
10fe0 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 72 6f s')).{.$input->setOption('no-pro
11000 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 69 61 gress',.true);.}..parent::initia
11020 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 68 70 lize($input,.$output);.}.}.<?php
11040 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
11060 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
11080 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
110a0 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
110c0 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
110e0 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;
11100 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
11120 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
11140 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 6f 6e 66 69 67 5c ser\Config;.use.Composer\Config\
11160 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 72 5c 46 JsonConfigSource;.use.Composer\F
11180 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 5c 4a 73 6f 6e 46 69 actory;.use.Composer\Json\JsonFi
111a0 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 61 6e 64 20 65 78 74 le;......class.ConfigCommand.ext
111c0 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e ends.Command.{....protected.$con
111e0 66 69 67 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 46 69 6c 65 3b 0a fig;.....protected.$configFile;.
11200 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 53 6f 75 72 63 65 3b 0a 0a 0a 0a ....protected.$configSource;....
11220 0a 70 72 6f 74 65 63 74 65 64 20 24 61 75 74 68 43 6f 6e 66 69 67 46 69 6c 65 3b 0a 0a 0a 0a 0a .protected.$authConfigFile;.....
11240 70 72 6f 74 65 63 74 65 64 20 24 61 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 3b 0a 0a 0a 0a protected.$authConfigSource;....
11260 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().
11280 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 63 6f 6e 66 69 67 27 29 0a 2d 3e 73 65 {.$this.->setName('config').->se
112a0 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 65 74 20 63 6f 6e 66 69 67 20 6f 70 74 69 6f 6e 73 tDescription('Set.config.options
112c0 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 20 49 6e ').->setDefinition(array(.new.In
112e0 70 75 74 4f 70 74 69 6f 6e 28 27 67 6c 6f 62 61 6c 27 2c 20 27 67 27 2c 20 49 6e 70 75 74 4f 70 putOption('global',.'g',.InputOp
11300 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 70 70 6c 79 20 63 6f 6d 6d 61 6e 64 tion::VALUE_NONE,.'Apply.command
11320 20 74 6f 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6e 66 69 67 20 66 69 6c 65 27 29 2c 0a 6e 65 .to.the.global.config.file'),.ne
11340 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 65 64 69 74 6f 72 27 2c 20 27 65 27 2c 20 49 6e 70 w.InputOption('editor',.'e',.Inp
11360 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 65 64 69 74 utOption::VALUE_NONE,.'Open.edit
11380 6f 72 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 27 2c 20 27 61 or'),.new.InputOption('auth',.'a
113a0 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 66 66 ',.InputOption::VALUE_NONE,.'Aff
113c0 65 63 74 20 61 75 74 68 20 63 6f 6e 66 69 67 20 66 69 6c 65 20 28 6f 6e 6c 79 20 75 73 65 64 20 ect.auth.config.file.(only.used.
113e0 66 6f 72 20 2d 2d 65 64 69 74 6f 72 29 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e for.--editor)'),.new.InputOption
11400 28 27 75 6e 73 65 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 ('unset',.null,.InputOption::VAL
11420 55 45 5f 4e 4f 4e 45 2c 20 27 55 6e 73 65 74 20 74 68 65 20 67 69 76 65 6e 20 73 65 74 74 69 6e UE_NONE,.'Unset.the.given.settin
11440 67 2d 6b 65 79 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 g-key'),.new.InputOption('list',
11460 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 4e 45 2c 20 27 .'l',.InputOption::VALUE_NONE,.'
11480 4c 69 73 74 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 73 65 74 74 69 6e 67 73 27 29 2c 0a 6e List.configuration.settings'),.n
114a0 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 66 69 6c 65 27 2c 20 27 66 27 2c 20 49 6e 70 75 ew.InputOption('file',.'f',.Inpu
114c0 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 20 79 6f 75 tOption::VALUE_REQUIRED,.'If.you
114e0 20 77 61 6e 74 20 74 6f 20 63 68 6f 6f 73 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 63 6f 6d 70 .want.to.choose.a.different.comp
11500 6f 73 65 72 2e 6a 73 6f 6e 20 6f 72 20 63 6f 6e 66 69 67 2e 6a 73 6f 6e 27 29 2c 0a 6e 65 77 20 oser.json.or.config.json'),.new.
11520 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 61 62 73 6f 6c 75 74 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e InputOption('absolute',.null,.In
11540 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 74 75 72 6e 73 20 putOption::VALUE_NONE,.'Returns.
11560 61 62 73 6f 6c 75 74 65 20 70 61 74 68 73 20 77 68 65 6e 20 66 65 74 63 68 69 6e 67 20 2a 2d 64 absolute.paths.when.fetching.*-d
11580 69 72 20 63 6f 6e 66 69 67 20 76 61 6c 75 65 73 20 69 6e 73 74 65 61 64 20 6f 66 20 72 65 6c 61 ir.config.values.instead.of.rela
115a0 74 69 76 65 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 74 69 tive'),.new.InputArgument('setti
115c0 6e 67 2d 6b 65 79 27 2c 20 6e 75 6c 6c 2c 20 27 53 65 74 74 69 6e 67 20 6b 65 79 27 29 2c 0a 6e ng-key',.null,.'Setting.key'),.n
115e0 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 73 65 74 74 69 6e 67 2d 76 61 6c 75 65 27 ew.InputArgument('setting-value'
11600 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 53 65 74 74 ,.InputArgument::IS_ARRAY,.'Sett
11620 69 6e 67 20 76 61 6c 75 65 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 ing.value'),.)).->setHelp(<<<EOT
11640 0a 54 68 69 73 20 63 6f 6d 6d 61 6e 64 20 61 6c 6c 6f 77 73 20 79 6f 75 20 74 6f 20 65 64 69 74 .This.command.allows.you.to.edit
11660 20 73 6f 6d 65 20 62 61 73 69 63 20 63 6f 6d 70 6f 73 65 72 20 73 65 74 74 69 6e 67 73 20 69 6e .some.basic.composer.settings.in
11680 20 65 69 74 68 65 72 20 74 68 65 0a 6c 6f 63 61 6c 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 .either.the.local.composer.json.
116a0 66 69 6c 65 20 6f 72 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 file.or.the.global.config.json.f
116c0 69 6c 65 2e 0a 0a 54 6f 20 73 65 74 20 61 20 63 6f 6e 66 69 67 20 73 65 74 74 69 6e 67 3a 0a 0a ile...To.set.a.config.setting:..
116e0 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 65 25 ....<comment>%command.full_name%
11700 20 62 69 6e 2d 64 69 72 20 62 69 6e 2f 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 0a 54 6f 20 72 65 61 64 .bin-dir.bin/</comment>..To.read
11720 20 61 20 63 6f 6e 66 69 67 20 73 65 74 74 69 6e 67 3a 0a 0a 20 20 20 20 3c 63 6f 6d 6d 65 6e 74 .a.config.setting:......<comment
11740 3e 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 62 69 6e 2d 64 69 72 3c 2f 63 6f >%command.full_name%.bin-dir</co
11760 6d 6d 65 6e 74 3e 0a 20 20 20 20 4f 75 74 70 75 74 73 3a 20 3c 69 6e 66 6f 3e 62 69 6e 3c 2f 69 mment>.....Outputs:.<info>bin</i
11780 6e 66 6f 3e 0a 0a 54 6f 20 65 64 69 74 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6e 66 69 67 2e nfo>..To.edit.the.global.config.
117a0 6a 73 6f 6e 20 66 69 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 json.file:......<comment>%comman
117c0 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 67 6c 6f 62 61 6c 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a d.full_name%.--global</comment>.
117e0 0a 54 6f 20 61 64 64 20 61 20 72 65 70 6f 73 69 74 6f 72 79 3a 0a 0a 20 20 20 20 3c 63 6f 6d 6d .To.add.a.repository:......<comm
11800 65 6e 74 3e 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 72 65 70 6f 73 69 74 6f ent>%command.full_name%.reposito
11820 72 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 3c 2f 63 6f ries.foo.vcs.https://bar.com</co
11840 6d 6d 65 6e 74 3e 0a 0a 54 6f 20 72 65 6d 6f 76 65 20 61 20 72 65 70 6f 73 69 74 6f 72 79 20 28 mment>..To.remove.a.repository.(
11860 72 65 70 6f 20 69 73 20 61 20 73 68 6f 72 74 20 61 6c 69 61 73 20 66 6f 72 20 72 65 70 6f 73 69 repo.is.a.short.alias.for.reposi
11880 74 6f 72 69 65 73 29 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 tories):......<comment>%command.
118a0 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 75 6e 73 65 74 20 72 65 70 6f 2e 66 6f 6f 3c 2f 63 6f 6d full_name%.--unset.repo.foo</com
118c0 6d 65 6e 74 3e 0a 0a 54 6f 20 64 69 73 61 62 6c 65 20 70 61 63 6b 61 67 69 73 74 3a 0a 0a 20 20 ment>..To.disable.packagist:....
118e0 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 72 ..<comment>%command.full_name%.r
11900 65 70 6f 2e 70 61 63 6b 61 67 69 73 74 20 66 61 6c 73 65 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 0a 59 epo.packagist.false</comment>..Y
11920 6f 75 20 63 61 6e 20 61 6c 74 65 72 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 69 6e 20 74 68 65 ou.can.alter.repositories.in.the
11940 20 67 6c 6f 62 61 6c 20 63 6f 6e 66 69 67 2e 6a 73 6f 6e 20 66 69 6c 65 20 62 79 20 70 61 73 73 .global.config.json.file.by.pass
11960 69 6e 67 20 69 6e 20 74 68 65 0a 3c 69 6e 66 6f 3e 2d 2d 67 6c 6f 62 61 6c 3c 2f 69 6e 66 6f 3e ing.in.the.<info>--global</info>
11980 20 6f 70 74 69 6f 6e 2e 0a 0a 54 6f 20 65 64 69 74 20 74 68 65 20 66 69 6c 65 20 69 6e 20 61 6e .option...To.edit.the.file.in.an
119a0 20 65 78 74 65 72 6e 61 6c 20 65 64 69 74 6f 72 3a 0a 0a 20 20 20 20 3c 63 6f 6d 6d 65 6e 74 3e .external.editor:......<comment>
119c0 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 65 64 69 74 6f 72 3c 2f 63 6f %command.full_name%.--editor</co
119e0 6d 6d 65 6e 74 3e 0a 0a 54 6f 20 63 68 6f 6f 73 65 20 79 6f 75 72 20 65 64 69 74 6f 72 20 79 6f mment>..To.choose.your.editor.yo
11a00 75 20 63 61 6e 20 73 65 74 20 74 68 65 20 22 45 44 49 54 4f 52 22 20 65 6e 76 20 76 61 72 69 61 u.can.set.the."EDITOR".env.varia
11a20 62 6c 65 2e 0a 0a 54 6f 20 67 65 74 20 61 20 6c 69 73 74 20 6f 66 20 63 6f 6e 66 69 67 75 72 61 ble...To.get.a.list.of.configura
11a40 74 69 6f 6e 20 76 61 6c 75 65 73 20 69 6e 20 74 68 65 20 66 69 6c 65 3a 0a 0a 20 20 20 20 3c 63 tion.values.in.the.file:......<c
11a60 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 2d 6c 69 73 omment>%command.full_name%.--lis
11a80 74 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 0a 59 6f 75 20 63 61 6e 20 61 6c 77 61 79 73 20 70 61 73 73 t</comment>..You.can.always.pass
11aa0 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 65 20 6f 70 74 69 6f 6e 2e 20 41 73 20 61 6e 20 65 78 61 .more.than.one.option..As.an.exa
11ac0 6d 70 6c 65 2c 20 69 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 65 64 69 74 20 74 68 65 0a 67 6c mple,.if.you.want.to.edit.the.gl
11ae0 6f 62 61 6c 20 63 6f 6e 66 69 67 2e 6a 73 6f 6e 20 66 69 6c 65 2e 0a 0a 20 20 20 20 3c 63 6f 6d obal.config.json.file.......<com
11b00 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 2d 65 64 69 74 6f ment>%command.full_name%.--edito
11b20 72 20 2d 2d 67 6c 6f 62 61 6c 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a r.--global</comment>.EOT.).;.}..
11b40 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 7a 65 ...protected.function.initialize
11b60 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
11b80 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 terface.$output).{.parent::initi
11ba0 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 24 69 6e alize($input,.$output);..if.($in
11bc0 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 6e 75 6c 6c put->getOption('global').&&.null
11be0 20 21 3d 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 66 69 6c 65 27 29 29 20 .!==.$input->getOption('file')).
11c00 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 2d {.throw.new.\RuntimeException('-
11c20 2d 66 69 6c 65 20 61 6e 64 20 2d 2d 67 6c 6f 62 61 6c 20 63 61 6e 20 6e 6f 74 20 62 65 20 63 6f -file.and.--global.can.not.be.co
11c40 6d 62 69 6e 65 64 27 29 3b 0a 7d 0a 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 mbined');.}..$io.=.$this->getIO(
11c60 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 );.$this->config.=.Factory::crea
11c80 74 65 43 6f 6e 66 69 67 28 24 69 6f 29 3b 0a 0a 0a 20 0a 20 24 63 6f 6e 66 69 67 46 69 6c 65 20 teConfig($io);......$configFile.
11ca0 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 29 0a 3f 20 =.$input->getOption('global').?.
11cc0 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 2e 20 27 2f ($this->config->get('home')...'/
11ce0 63 6f 6e 66 69 67 2e 6a 73 6f 6e 27 29 0a 3a 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 config.json').:.($input->getOpti
11d00 6f 6e 28 27 66 69 6c 65 27 29 20 3f 3a 20 74 72 69 6d 28 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f on('file').?:.trim(getenv('COMPO
11d20 53 45 52 27 29 29 20 3f 3a 20 27 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 29 3b 0a 0a 0a 20 69 SER')).?:.'composer.json');....i
11d40 66 20 28 24 63 6f 6e 66 69 67 46 69 6c 65 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f f.($configFile.===.'composer.jso
11d60 6e 27 20 26 26 20 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 63 6f 6e 66 69 67 46 69 6c 65 29 20 n'.&&.!file_exists($configFile).
11d80 26 26 20 72 65 61 6c 70 61 74 68 28 67 65 74 63 77 64 28 29 29 20 3d 3d 3d 20 72 65 61 6c 70 61 &&.realpath(getcwd()).===.realpa
11da0 74 68 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 29 29 20 th($this->config->get('home'))).
11dc0 7b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 63 6f 6e 66 69 67 46 69 6c 65 2c {.file_put_contents($configFile,
11de0 20 22 7b 5c 6e 7d 5c 6e 22 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 46 69 6c 65 ."{\n}\n");.}..$this->configFile
11e00 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 63 6f 6e 66 69 67 46 69 6c 65 2c 20 6e 75 6c .=.new.JsonFile($configFile,.nul
11e20 6c 2c 20 24 69 6f 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 72 63 65 20 3d 20 6e l,.$io);.$this->configSource.=.n
11e40 65 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 63 6f 6e 66 69 ew.JsonConfigSource($this->confi
11e60 67 46 69 6c 65 29 3b 0a 0a 24 61 75 74 68 43 6f 6e 66 69 67 46 69 6c 65 20 3d 20 24 69 6e 70 75 gFile);..$authConfigFile.=.$inpu
11e80 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 67 6c 6f 62 61 6c 27 29 0a 3f 20 28 24 74 68 69 73 2d t->getOption('global').?.($this-
11ea0 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 20 2e 20 27 2f 61 75 74 68 2e 6a 73 >config->get('home')...'/auth.js
11ec0 6f 6e 27 29 0a 3a 20 64 69 72 6e 61 6d 65 28 72 65 61 6c 70 61 74 68 28 24 63 6f 6e 66 69 67 46 on').:.dirname(realpath($configF
11ee0 69 6c 65 29 29 20 2e 20 27 2f 61 75 74 68 2e 6a 73 6f 6e 27 3b 0a 0a 24 74 68 69 73 2d 3e 61 75 ile))...'/auth.json';..$this->au
11f00 74 68 43 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 61 75 74 thConfigFile.=.new.JsonFile($aut
11f20 68 43 6f 6e 66 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 hConfigFile,.null,.$io);.$this->
11f40 61 75 74 68 43 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 authConfigSource.=.new.JsonConfi
11f60 67 53 6f 75 72 63 65 28 24 74 68 69 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 46 69 6c 65 2c 20 74 gSource($this->authConfigFile,.t
11f80 72 75 65 29 3b 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 rue);....if.($input->getOption('
11fa0 67 6c 6f 62 61 6c 27 29 20 26 26 20 21 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 46 69 6c 65 2d 3e global').&&.!$this->configFile->
11fc0 65 78 69 73 74 73 28 29 29 20 7b 0a 74 6f 75 63 68 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 46 exists()).{.touch($this->configF
11fe0 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 46 69 ile->getPath());.$this->configFi
12000 6c 65 2d 3e 77 72 69 74 65 28 61 72 72 61 79 28 27 63 6f 6e 66 69 67 27 20 3d 3e 20 6e 65 77 20 le->write(array('config'.=>.new.
12020 5c 41 72 72 61 79 4f 62 6a 65 63 74 29 29 3b 0a 40 63 68 6d 6f 64 28 24 74 68 69 73 2d 3e 63 6f \ArrayObject));.@chmod($this->co
12040 6e 66 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 69 66 nfigFile->getPath(),.0600);.}.if
12060 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 6c 27 29 20 26 26 .($input->getOption('global').&&
12080 20 21 24 74 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 .!$this->authConfigFile->exists(
120a0 29 29 20 7b 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 )).{.touch($this->authConfigFile
120c0 2d 3e 67 65 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 ->getPath());.$this->authConfigF
120e0 69 6c 65 2d 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 ile->write(array('http-basic'.=>
12100 20 6e 65 77 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 .new.\ArrayObject,.'github-oauth
12120 27 20 3d 3e 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 '.=>.new.\ArrayObject,.'gitlab-o
12140 61 75 74 68 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 40 63 68 auth'.=>.new.\ArrayObject));.@ch
12160 6d 6f 64 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 74 50 61 mod($this->authConfigFile->getPa
12180 74 68 28 29 2c 20 30 36 30 30 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 63 6f 6e 66 th(),.0600);.}..if.(!$this->conf
121a0 69 67 46 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 igFile->exists()).{.throw.new.\R
121c0 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 69 6c 65 20 22 25 untimeException(sprintf('File."%
121e0 73 22 20 63 61 6e 6e 6f 74 20 62 65 20 66 6f 75 6e 64 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e s".cannot.be.found.in.the.curren
12200 74 20 64 69 72 65 63 74 6f 72 79 27 2c 20 24 63 6f 6e 66 69 67 46 69 6c 65 29 29 3b 0a 7d 0a 7d t.directory',.$configFile));.}.}
12220 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 28 .....protected.function.execute(
12240 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
12260 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 0a 20 69 66 20 28 24 69 6e 70 75 74 2d 3e erface.$output).{...if.($input->
12280 67 65 74 4f 70 74 69 6f 6e 28 27 65 64 69 74 6f 72 27 29 29 20 7b 0a 24 65 64 69 74 6f 72 20 3d getOption('editor')).{.$editor.=
122a0 20 65 73 63 61 70 65 73 68 65 6c 6c 63 6d 64 28 67 65 74 65 6e 76 28 27 45 44 49 54 4f 52 27 29 .escapeshellcmd(getenv('EDITOR')
122c0 29 3b 0a 69 66 20 28 21 24 65 64 69 74 6f 72 29 20 7b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 );.if.(!$editor).{.if.(defined('
122e0 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 24 PHP_WINDOWS_VERSION_BUILD')).{.$
12300 65 64 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 editor.=.'notepad';.}.else.{.for
12320 65 61 63 68 20 28 61 72 72 61 79 28 27 76 69 6d 27 2c 20 27 76 69 27 2c 20 27 6e 61 6e 6f 27 2c each.(array('vim',.'vi',.'nano',
12340 20 27 70 69 63 6f 27 2c 20 27 65 64 27 29 20 61 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a .'pico',.'ed').as.$candidate).{.
12360 69 66 20 28 65 78 65 63 28 27 77 68 69 63 68 20 27 2e 24 63 61 6e 64 69 64 61 74 65 29 29 20 7b if.(exec('which.'.$candidate)).{
12380 0a 24 65 64 69 74 6f 72 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a .$editor.=.$candidate;.break;.}.
123a0 7d 0a 7d 0a 7d 0a 0a 24 66 69 6c 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e }.}.}..$file.=.$input->getOption
123c0 28 27 61 75 74 68 27 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 ('auth').?.$this->authConfigFile
123e0 2d 3e 67 65 74 50 61 74 68 28 29 20 3a 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 46 69 6c 65 2d ->getPath().:.$this->configFile-
12400 3e 67 65 74 50 61 74 68 28 29 3b 0a 73 79 73 74 65 6d 28 24 65 64 69 74 6f 72 20 2e 20 27 20 27 >getPath();.system($editor...'.'
12420 20 2e 20 24 66 69 6c 65 20 2e 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 ...$file...(defined('PHP_WINDOWS
12440 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 20 3f 20 27 27 20 3a 20 27 20 3e 20 60 74 74 79 _VERSION_BUILD').?.''.:.'.>.`tty
12460 60 27 29 29 3b 0a 0a 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 `'));..return.0;.}..if.(!$input-
12480 3e 67 65 74 4f 70 74 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 >getOption('global')).{.$this->c
124a0 6f 6e 66 69 67 2d 3e 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 onfig->merge($this->configFile->
124c0 72 65 61 64 28 29 29 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 read());.$this->config->merge(ar
124e0 72 61 79 28 27 63 6f 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 ray('config'.=>.$this->authConfi
12500 67 46 69 6c 65 2d 3e 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 gFile->exists().?.$this->authCon
12520 66 69 67 46 69 6c 65 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 figFile->read().:.array()));.}..
12540 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 6c 69 73 74 27 29 29 ..if.($input->getOption('list'))
12560 20 7b 0a 24 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 74 68 69 .{.$this->listConfiguration($thi
12580 73 2d 3e 63 6f 6e 66 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 s->config->all(),.$this->config-
125a0 3e 72 61 77 28 29 2c 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 >raw(),.$output);..return.0;.}..
125c0 24 73 65 74 74 69 6e 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 $settingKey.=.$input->getArgumen
125e0 74 28 27 73 65 74 74 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 t('setting-key');.if.(!$settingK
12600 65 79 29 20 7b 0a 72 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 ey).{.return.0;.}....if.(array()
12620 20 21 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 65 74 74 69 6e .!==.$input->getArgument('settin
12640 67 2d 76 61 6c 75 65 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 g-value').&&.$input->getOption('
12660 75 6e 73 65 74 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 unset')).{.throw.new.\RuntimeExc
12680 65 70 74 69 6f 6e 28 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 eption('You.can.not.combine.a.se
126a0 74 74 69 6e 67 20 76 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 tting.value.with.--unset');.}...
126c0 20 69 66 20 28 61 72 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 .if.(array().===.$input->getArgu
126e0 6d 65 6e 74 28 27 73 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 ment('setting-value').&&.!$input
12700 2d 3e 67 65 74 4f 70 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 ->getOption('unset')).{.$data.=.
12720 24 74 68 69 73 2d 3e 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 $this->config->all();.if.(preg_m
12740 61 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 28 3f 3a 5c 2e 28 atch('/^repos?(?:itories)?(?:\.(
12760 2e 2b 29 29 3f 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 .+))?/',.$settingKey,.$matches))
12780 20 7b 0a 69 66 20 28 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 .{.if.(empty($matches[1])).{.$va
127a0 6c 75 65 20 3d 20 69 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 lue.=.isset($data['repositories'
127c0 5d 29 20 3f 20 24 64 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 ]).?.$data['repositories'].:.arr
127e0 61 79 28 29 3b 0a 7d 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 ay();.}.else.{.if.(!isset($data[
12800 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 29 29 20 7b 'repositories'][$matches[1]])).{
12820 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
12840 74 69 6f 6e 28 27 54 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 tion('There.is.no.'.$matches[1].
12860 27 20 72 65 70 6f 73 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 '.repository.defined');.}..$valu
12880 65 20 3d 20 24 64 61 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 e.=.$data['repositories'][$match
128a0 65 73 5b 31 5d 5d 3b 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 es[1]];.}.}.elseif.(strpos($sett
128c0 69 6e 67 4b 65 79 2c 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 ingKey,.'.')).{.$bits.=.explode(
128e0 27 2e 27 2c 20 24 73 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 '.',.$settingKey);.$data.=.$data
12900 5b 27 63 6f 6e 66 69 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 ['config'];.$match.=.false;.fore
12920 61 63 68 20 28 24 62 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 ach.($bits.as.$bit).{.$key.=.iss
12940 65 74 28 24 6b 65 79 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 et($key).?.$key.'.'.$bit.:.$bit;
12960 0a 24 6d 61 74 63 68 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 .$match.=.false;.if.(isset($data
12980 5b 24 6b 65 79 5d 29 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 [$key])).{.$match.=.true;.$data.
129a0 3d 20 24 64 61 74 61 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 =.$data[$key];.unset($key);.}.}.
129c0 0a 69 66 20 28 21 24 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 .if.(!$match).{.throw.new.\Runti
129e0 6d 65 45 78 63 65 70 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 meException($settingKey.'.is.not
12a00 20 64 65 66 69 6e 65 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 .defined.');.}..$value.=.$data;.
12a20 7d 20 65 6c 73 65 69 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 }.elseif.(isset($data['config'][
12a40 24 73 65 74 74 69 6e 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 $settingKey])).{.$value.=.$this-
12a60 3e 63 6f 6e 66 69 67 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 >config->get($settingKey,.$input
12a80 2d 3e 67 65 74 4f 70 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 ->getOption('absolute').?.0.:.Co
12aa0 6e 66 69 67 3a 3a 52 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 nfig::RELATIVE_PATHS);.}.else.{.
12ac0 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 73 65 74 throw.new.\RuntimeException($set
12ae0 74 69 6e 67 4b 65 79 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 tingKey.'.is.not.defined');.}..i
12b00 66 20 28 69 73 5f 61 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 f.(is_array($value)).{.$value.=.
12b20 6a 73 6f 6e 5f 65 6e 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 json_encode($value);.}..$this->g
12b40 65 74 49 4f 28 29 2d 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 etIO()->write($value);..return.0
12b60 3b 0a 7d 0a 0a 24 76 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 ;.}..$values.=.$input->getArgume
12b80 6e 74 28 27 73 65 74 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 nt('setting-value');...$booleanV
12ba0 61 6c 69 64 61 74 6f 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 alidator.=.function.($val).{.ret
12bc0 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 72 75 65 27 2c urn.in_array($val,.array('true',
12be0 20 27 66 61 6c 73 65 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 .'false',.'1',.'0'),.true);.};.$
12c00 62 6f 6f 6c 65 61 6e 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 booleanNormalizer.=.function.($v
12c20 61 6c 29 20 7b 20 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 al).{.return.$val.!==.'false'.&&
12c40 20 28 62 6f 6f 6c 29 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 .(bool).$val;.};....$uniqueConfi
12c60 67 56 61 6c 75 65 73 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 gValues.=.array(.'process-timeou
12c80 74 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 t'.=>.array('is_numeric',.'intva
12ca0 6c 27 29 2c 0a 27 75 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 l'),.'use-include-path'.=>.array
12cc0 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
12ce0 61 6c 69 7a 65 72 29 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 alizer),.'preferred-install'.=>.
12d00 61 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 array(.function.($val).{.return.
12d20 69 6e 5f 61 72 72 61 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 in_array($val,.array('auto',.'so
12d40 75 72 63 65 27 2c 20 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 urce',.'dist'),.true);.},.functi
12d60 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;.},.),.'
12d80 73 74 6f 72 65 2d 61 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 store-auths'.=>.array(.function.
12da0 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 2c 20 61 ($val).{.return.in_array($val,.a
12dc0 72 72 61 79 28 27 74 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 rray('true',.'false',.'prompt'),
12de0 20 74 72 75 65 29 3b 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 .true);.},.function.($val).{.if.
12e00 28 27 70 72 6f 6d 70 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 ('prompt'.===.$val).{.return.'pr
12e20 6f 6d 70 74 27 3b 0a 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 ompt';.}..return.$val.!==.'false
12e40 27 20 26 26 20 28 62 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 '.&&.(bool).$val;.},.),.'notify-
12e60 6f 6e 2d 69 6e 73 74 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 on-install'.=>.array($booleanVal
12e80 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 76 65 idator,.$booleanNormalizer),.'ve
12ea0 6e 64 6f 72 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 ndor-dir'.=>.array('is_string',.
12ec0 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 7d function.($val).{.return.$val;.}
12ee0 29 2c 0a 27 62 69 6e 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 ),.'bin-dir'.=>.array('is_string
12f00 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
12f20 3b 20 7d 29 2c 0a 27 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 ;.}),.'archive-dir'.=>.array('is
12f40 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 75 _string',.function.($val).{.retu
12f60 72 6e 20 24 76 61 6c 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 rn.$val;.}),.'archive-format'.=>
12f80 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
12fa0 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 64 69 al).{.return.$val;.}),.'cache-di
12fc0 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
12fe0 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 63 61 63 n.($val).{.return.$val;.}),.'cac
13000 68 65 2d 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 he-files-dir'.=>.array('is_strin
13020 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 75 72 6e 20 24 76 61 g',.function.($val).{.return.$va
13040 6c 3b 20 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 l;.}),.'cache-repo-dir'.=>.array
13060 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 20 7b 20 ('is_string',.function.($val).{.
13080 72 65 74 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 return.$val;.}),.'cache-vcs-dir'
130a0 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 6e 20 .=>.array('is_string',.function.
130c0 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 63 61 63 68 65 ($val).{.return.$val;.}),.'cache
130e0 2d 74 74 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 -ttl'.=>.array('is_numeric',.'in
13100 74 76 61 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 tval'),.'cache-files-ttl'.=>.arr
13120 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 63 61 63 ay('is_numeric',.'intval'),.'cac
13140 68 65 2d 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 he-files-maxsize'.=>.array(.func
13160 74 69 6f 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 tion.($val).{.return.preg_match(
13180 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 3a 69 '/^\s*([0-9.]+)\s*(?:([kmg])(?:i
131a0 3f 62 29 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 ?b)?)?\s*$/i',.$val).>.0;.},.fun
131c0 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 7d 2c 0a 29 ction.($val).{.return.$val;.},.)
131e0 2c 0a 27 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 ,.'bin-compat'.=>.array(.functio
13200 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 2c n.($val).{.return.in_array($val,
13220 20 61 72 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 .array('auto',.'full'));.},.func
13240 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 2c 0a 29 2c tion.($val).{.return.$val;.},.),
13260 0a 27 64 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 .'discard-changes'.=>.array(.fun
13280 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 79 28 24 ction.($val).{.return.in_array($
132a0 76 61 6c 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 val,.array('stash',.'true',.'fal
132c0 73 65 27 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 se',.'1',.'0'),.true);.},.functi
132e0 6f 6e 20 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 on.($val).{.if.('stash'.===.$val
13300 29 20 7b 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 ).{.return.'stash';.}..return.$v
13320 61 6c 20 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 al.!==.'false'.&&.(bool).$val;.}
13340 2c 0a 29 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 ,.),.'autoloader-suffix'.=>.arra
13360 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 20 7b y('is_string',.function.($val).{
13380 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 6e 75 6c 6c 20 3a .return.$val.===.'null'.?.null.:
133a0 20 24 76 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 .$val;.}),.'sort-packages'.=>.ar
133c0 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 4e ray($booleanValidator,.$booleanN
133e0 6f 72 6d 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 ormalizer),.'optimize-autoloader
13400 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 20 24 62 '.=>.array($booleanValidator,.$b
13420 6f 6f 6c 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 ooleanNormalizer),.'classmap-aut
13440 68 6f 72 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 horitative'.=>.array($booleanVal
13460 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 70 72 idator,.$booleanNormalizer),.'pr
13480 65 70 65 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 epend-autoloader'.=>.array($bool
134a0 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 61 6c 69 7a 65 72 eanValidator,.$booleanNormalizer
134c0 29 2c 0a 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 ),.'disable-tls'.=>.array($boole
134e0 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)
13500 2c 0a 27 63 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 ,.'cafile'.=>.array(.function.($
13520 76 61 6c 29 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 val).{.return.file_exists($val).
13540 26 26 20 69 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 &&.is_readable($val);.},.functio
13560 6e 20 28 24 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 n.($val).{.return.$val.===.'null
13580 27 20 3f 20 6e 75 6c 6c 20 3a 20 24 76 61 6c 3b 20 7d 0a 29 2c 0a 27 67 69 74 68 75 62 2d 65 78 '.?.null.:.$val;.}.),.'github-ex
135a0 70 6f 73 65 2d 68 6f 73 74 6e 61 6d 65 27 20 3d 3e 20 61 72 72 61 79 28 24 62 6f 6f 6c 65 61 6e pose-hostname'.=>.array($boolean
135c0 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),.
135e0 29 3b 0a 24 6d 75 6c 74 69 43 6f 6e 66 69 67 56 61 6c 75 65 73 20 3d 20 61 72 72 61 79 28 0a 27 );.$multiConfigValues.=.array(.'
13600 67 69 74 68 75 62 2d 70 72 6f 74 6f 63 6f 6c 73 27 20 3d 3e 20 61 72 72 61 79 28 0a 66 75 6e 63 github-protocols'.=>.array(.func
13620 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 61 79 28 24 76 61 tion.($vals).{.if.(!is_array($va
13640 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 74 65 64 27 3b 0a ls)).{.return.'array.expected';.
13660 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 76 61 6c 73 20 61 73 20 24 76 61 6c 29 20 7b 0a 69 66 20 }..foreach.($vals.as.$val).{.if.
13680 28 21 69 6e 5f 61 72 72 61 79 28 24 76 61 6c 2c 20 61 72 72 61 79 28 27 67 69 74 27 2c 20 27 68 (!in_array($val,.array('git',.'h
136a0 74 74 70 73 27 2c 20 27 73 73 68 27 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 76 61 6c 69 64 20 ttps',.'ssh'))).{.return.'valid.
136c0 70 72 6f 74 6f 63 6f 6c 73 20 69 6e 63 6c 75 64 65 3a 20 67 69 74 2c 20 68 74 74 70 73 2c 20 73 protocols.include:.git,.https,.s
136e0 73 68 27 3b 0a 7d 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 sh';.}.}..return.true;.},.functi
13700 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 0a 7d 2c 0a 29 2c on.($vals).{.return.$vals;.},.),
13720 0a 27 67 69 74 68 75 62 2d 64 6f 6d 61 69 6e 73 27 20 3d 3e 20 61 72 72 61 79 28 0a 66 75 6e 63 .'github-domains'.=>.array(.func
13740 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 61 79 28 24 76 61 tion.($vals).{.if.(!is_array($va
13760 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 74 65 64 27 3b 0a ls)).{.return.'array.expected';.
13780 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 6e 20 28 24 76 61 }..return.true;.},.function.($va
137a0 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 27 67 69 74 6c 61 ls).{.return.$vals;.},.),.'gitla
137c0 62 2d 64 6f 6d 61 69 6e 73 27 20 3d 3e 20 61 72 72 61 79 28 0a 66 75 6e 63 74 69 6f 6e 20 28 24 b-domains'.=>.array(.function.($
137e0 76 61 6c 73 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 76 61 6c 73 29 29 20 7b 0a vals).{.if.(!is_array($vals)).{.
13800 72 65 74 75 72 6e 20 27 61 72 72 61 79 20 65 78 70 65 63 74 65 64 27 3b 0a 7d 0a 0a 72 65 74 75 return.'array.expected';.}..retu
13820 72 6e 20 74 72 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 rn.true;.},.function.($vals).{.r
13840 65 74 75 72 6e 20 24 76 61 6c 73 3b 0a 7d 2c 0a 29 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 eturn.$vals;.},.),.);..foreach.(
13860 24 75 6e 69 71 75 65 43 6f 6e 66 69 67 56 61 6c 75 65 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 $uniqueConfigValues.as.$name.=>.
13880 24 63 61 6c 6c 62 61 63 6b 73 29 20 7b 0a 69 66 20 28 24 73 65 74 74 69 6e 67 4b 65 79 20 3d 3d $callbacks).{.if.($settingKey.==
138a0 3d 20 24 6e 61 6d 65 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 =.$name).{.if.($input->getOption
138c0 28 27 75 6e 73 65 74 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 ('unset')).{.return.$this->confi
138e0 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 6e 67 28 24 73 65 gSource->removeConfigSetting($se
13900 74 74 69 6e 67 4b 65 79 29 3b 0a 7d 0a 0a 6c 69 73 74 28 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 ttingKey);.}..list($validator,.$
13920 6e 6f 72 6d 61 6c 69 7a 65 72 29 20 3d 20 24 63 61 6c 6c 62 61 63 6b 73 3b 0a 69 66 20 28 31 20 normalizer).=.$callbacks;.if.(1.
13940 21 3d 3d 20 63 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 !==.count($values)).{.throw.new.
13960 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 63 61 6e 20 6f 6e 6c 79 20 \RuntimeException('You.can.only.
13980 70 61 73 73 20 6f 6e 65 20 76 61 6c 75 65 2e 20 45 78 61 6d 70 6c 65 3a 20 70 68 70 20 63 6f 6d pass.one.value..Example:.php.com
139a0 70 6f 73 65 72 2e 70 68 61 72 20 63 6f 6e 66 69 67 20 70 72 6f 63 65 73 73 2d 74 69 6d 65 6f 75 poser.phar.config.process-timeou
139c0 74 20 33 30 30 27 29 3b 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 24 76 61 6c 69 64 61 t.300');.}..if.(true.!==.$valida
139e0 74 69 6f 6e 20 3d 20 24 76 61 6c 69 64 61 74 6f 72 28 24 76 61 6c 75 65 73 5b 30 5d 29 29 20 7b tion.=.$validator($values[0])).{
13a00 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
13a20 69 6e 74 66 28 0a 27 22 25 73 22 20 69 73 20 61 6e 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 27 intf(.'"%s".is.an.invalid.value'
13a40 2e 28 24 76 61 6c 69 64 61 74 69 6f 6e 20 3f 20 27 20 28 27 2e 24 76 61 6c 69 64 61 74 69 6f 6e .($validation.?.'.('.$validation
13a60 2e 27 29 27 20 3a 20 27 27 29 2c 0a 24 76 61 6c 75 65 73 5b 30 5d 0a 29 29 3b 0a 7d 0a 0a 72 65 .')'.:.''),.$values[0].));.}..re
13a80 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 61 64 64 43 6f 6e turn.$this->configSource->addCon
13aa0 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 6e 6f 72 6d 61 6c 69 figSetting($settingKey,.$normali
13ac0 7a 65 72 28 24 76 61 6c 75 65 73 5b 30 5d 29 29 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 zer($values[0]));.}.}..foreach.(
13ae0 24 6d 75 6c 74 69 43 6f 6e 66 69 67 56 61 6c 75 65 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 $multiConfigValues.as.$name.=>.$
13b00 63 61 6c 6c 62 61 63 6b 73 29 20 7b 0a 69 66 20 28 24 73 65 74 74 69 6e 67 4b 65 79 20 3d 3d 3d callbacks).{.if.($settingKey.===
13b20 20 24 6e 61 6d 65 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 .$name).{.if.($input->getOption(
13b40 27 75 6e 73 65 74 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 'unset')).{.return.$this->config
13b60 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 73 65 74 Source->removeConfigSetting($set
13b80 74 69 6e 67 4b 65 79 29 3b 0a 7d 0a 0a 6c 69 73 74 28 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 6e tingKey);.}..list($validator,.$n
13ba0 6f 72 6d 61 6c 69 7a 65 72 29 20 3d 20 24 63 61 6c 6c 62 61 63 6b 73 3b 0a 69 66 20 28 74 72 75 ormalizer).=.$callbacks;.if.(tru
13bc0 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($
13be0 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 69 6d 65 45 78 63 values)).{.throw.new.\RuntimeExc
13c00 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 25 73 20 69 73 20 61 6e 20 69 6e 76 61 6c 69 eption(sprintf(.'%s.is.an.invali
13c20 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 27 2e 24 76 61 d.value'.($validation.?.'.('.$va
13c40 6c 69 64 61 74 69 6f 6e 2e 27 29 27 20 3a 20 27 27 29 2c 0a 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 lidation.')'.:.''),.json_encode(
13c60 24 76 61 6c 75 65 73 29 0a 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f $values).));.}..return.$this->co
13c80 6e 66 69 67 53 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 nfigSource->addConfigSetting($se
13ca0 74 74 69 6e 67 4b 65 79 2c 20 24 6e 6f 72 6d 61 6c 69 7a 65 72 28 24 76 61 6c 75 65 73 29 29 3b ttingKey,.$normalizer($values));
13cc0 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 72 65 70 6f 73 3f .}.}....if.(preg_match('/^repos?
13ce0 28 3f 3a 69 74 6f 72 69 65 73 29 3f 5c 2e 28 2e 2b 29 2f 27 2c 20 24 73 65 74 74 69 6e 67 4b 65 (?:itories)?\.(.+)/',.$settingKe
13d00 79 2c 20 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 y,.$matches)).{.if.($input->getO
13d20 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 24 74 68 69 73 2d 3e ption('unset')).{.return.$this->
13d40 63 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 72 65 6d 6f 76 65 52 65 70 6f 73 69 74 6f 72 79 28 24 configSource->removeRepository($
13d60 6d 61 74 63 68 65 73 5b 31 5d 29 3b 0a 7d 0a 0a 69 66 20 28 32 20 3d 3d 3d 20 63 6f 75 6e 74 28 matches[1]);.}..if.(2.===.count(
13d80 24 76 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 $values)).{.return.$this->config
13da0 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 68 65 73 5b 31 Source->addRepository($matches[1
13dc0 5d 2c 20 61 72 72 61 79 28 0a 27 74 79 70 65 27 20 3d 3e 20 24 76 61 6c 75 65 73 5b 30 5d 2c 0a ],.array(.'type'.=>.$values[0],.
13de0 27 75 72 6c 27 20 3d 3e 20 24 76 61 6c 75 65 73 5b 31 5d 2c 0a 29 29 3b 0a 7d 0a 0a 69 66 20 28 'url'.=>.$values[1],.));.}..if.(
13e00 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 73 29 29 20 7b 0a 24 62 6f 6f 6c 20 3d 20 1.===.count($values)).{.$bool.=.
13e20 73 74 72 74 6f 6c 6f 77 65 72 28 24 76 61 6c 75 65 73 5b 30 5d 29 3b 0a 69 66 20 28 74 72 75 65 strtolower($values[0]);.if.(true
13e40 20 3d 3d 3d 20 24 62 6f 6f 6c 65 61 6e 56 61 6c 69 64 61 74 6f 72 28 24 62 6f 6f 6c 29 20 26 26 .===.$booleanValidator($bool).&&
13e60 20 66 61 6c 73 65 20 3d 3d 3d 20 24 62 6f 6f 6c 65 61 6e 4e 6f 72 6d 61 6c 69 7a 65 72 28 24 62 .false.===.$booleanNormalizer($b
13e80 6f 6f 6c 29 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 ool)).{.return.$this->configSour
13ea0 63 65 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 6d 61 74 63 68 65 73 5b 31 5d 2c 20 66 ce->addRepository($matches[1],.f
13ec0 61 6c 73 65 29 3b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 alse);.}.}..throw.new.\RuntimeEx
13ee0 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 70 61 73 73 20 74 68 65 20 74 79 70 65 20 ception('You.must.pass.the.type.
13f00 61 6e 64 20 61 20 75 72 6c 2e 20 45 78 61 6d 70 6c 65 3a 20 70 68 70 20 63 6f 6d 70 6f 73 65 72 and.a.url..Example:.php.composer
13f20 2e 70 68 61 72 20 63 6f 6e 66 69 67 20 72 65 70 6f 73 69 74 6f 72 69 65 73 2e 66 6f 6f 20 76 63 .phar.config.repositories.foo.vc
13f40 73 20 68 74 74 70 73 3a 2f 2f 62 61 72 2e 63 6f 6d 27 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 s.https://bar.com');.}....if.(pr
13f60 65 67 5f 6d 61 74 63 68 28 27 2f 5e 70 6c 61 74 66 6f 72 6d 5c 2e 28 2e 2b 29 2f 27 2c 20 24 73 eg_match('/^platform\.(.+)/',.$s
13f80 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 24 69 6e 70 ettingKey,.$matches)).{.if.($inp
13fa0 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
13fc0 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
13fe0 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 72 65 74 75 72 igSetting($settingKey);.}..retur
14000 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 69 67 n.$this->configSource->addConfig
14020 53 65 74 74 69 6e 67 28 24 73 65 74 74 69 6e 67 4b 65 79 2c 20 24 76 61 6c 75 65 73 5b 30 5d 29 Setting($settingKey,.$values[0])
14040 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 28 67 69 74 68 75 62 ;.}....if.(preg_match('/^(github
14060 2d 6f 61 75 74 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 29 5c -oauth|gitlab-oauth|http-basic)\
14080 2e 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 .(.+)/',.$settingKey,.$matches))
140a0 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 75 6e 73 65 74 27 .{.if.($input->getOption('unset'
140c0 29 29 20 7b 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 72 65 )).{.$this->authConfigSource->re
140e0 6d 6f 76 65 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 moveConfigSetting($matches[1].'.
14100 27 2e 24 6d 61 74 63 68 65 73 5b 32 5d 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 53 6f 75 '.$matches[2]);.$this->configSou
14120 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 63 68 65 rce->removeConfigSetting($matche
14140 73 5b 31 5d 2e 27 2e 27 2e 24 6d 61 74 63 68 65 73 5b 32 5d 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a s[1].'.'.$matches[2]);..return;.
14160 7d 0a 0a 69 66 20 28 24 6d 61 74 63 68 65 73 5b 31 5d 20 3d 3d 3d 20 27 67 69 74 68 75 62 2d 6f }..if.($matches[1].===.'github-o
14180 61 75 74 68 27 20 7c 7c 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 3d 3d 3d 20 27 67 69 74 6c 61 62 auth'.||.$matches[1].===.'gitlab
141a0 2d 6f 61 75 74 68 27 29 20 7b 0a 69 66 20 28 31 20 21 3d 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 -oauth').{.if.(1.!==.count($valu
141c0 65 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 63 65 70 74 69 es)).{.throw.new.\RuntimeExcepti
141e0 6f 6e 28 27 54 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 2c 20 65 78 70 65 63 74 65 64 on('Too.many.arguments,.expected
14200 20 6f 6e 6c 79 20 6f 6e 65 20 74 6f 6b 65 6e 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 .only.one.token');.}.$this->conf
14220 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 6e 67 28 24 6d igSource->removeConfigSetting($m
14240 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 0a 24 74 68 69 atches[1].'.'.$matches[2]);.$thi
14260 73 2d 3e 61 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 2d 3e 61 64 64 43 6f 6e 66 69 67 53 65 s->authConfigSource->addConfigSe
14280 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 5b 32 tting($matches[1].'.'.$matches[2
142a0 5d 2c 20 24 76 61 6c 75 65 73 5b 30 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 6d 61 74 63 68 ],.$values[0]);.}.elseif.($match
142c0 65 73 5b 31 5d 20 3d 3d 3d 20 27 68 74 74 70 2d 62 61 73 69 63 27 29 20 7b 0a 69 66 20 28 32 20 es[1].===.'http-basic').{.if.(2.
142e0 21 3d 3d 20 63 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 !==.count($values)).{.throw.new.
14300 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 45 78 70 65 63 74 65 64 20 74 77 6f 20 \RuntimeException('Expected.two.
14320 61 72 67 75 6d 65 6e 74 73 20 28 75 73 65 72 6e 61 6d 65 2c 20 70 61 73 73 77 6f 72 64 29 2c 20 arguments.(username,.password),.
14340 67 6f 74 20 27 2e 63 6f 75 6e 74 28 24 76 61 6c 75 65 73 29 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e got.'.count($values));.}.$this->
14360 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 6e configSource->removeConfigSettin
14380 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 0a g($matches[1].'.'.$matches[2]);.
143a0 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 64 64 43 6f 6e 66 $this->authConfigSource->addConf
143c0 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 63 68 igSetting($matches[1].'.'.$match
143e0 65 73 5b 32 5d 2c 20 61 72 72 61 79 28 27 75 73 65 72 6e 61 6d 65 27 20 3d 3e 20 24 76 61 6c 75 es[2],.array('username'.=>.$valu
14400 65 73 5b 30 5d 2c 20 27 70 61 73 73 77 6f 72 64 27 20 3d 3e 20 24 76 61 6c 75 65 73 5b 31 5d 29 es[0],.'password'.=>.$values[1])
14420 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 );.}..return;.}..throw.new.\Inva
14440 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 53 65 74 74 69 6e 67 20 27 2e lidArgumentException('Setting.'.
14460 24 73 65 74 74 69 6e 67 4b 65 79 2e 27 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 20 6f 72 20 $settingKey.'.does.not.exist.or.
14480 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68 69 73 20 63 6f 6d 6d 61 6e 64 is.not.supported.by.this.command
144a0 27 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 ');.}..........protected.functio
144c0 6e 20 6c 69 73 74 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 28 61 72 72 61 79 20 24 63 6f 6e 74 65 n.listConfiguration(array.$conte
144e0 6e 74 73 2c 20 61 72 72 61 79 20 24 72 61 77 43 6f 6e 74 65 6e 74 73 2c 20 4f 75 74 70 75 74 49 nts,.array.$rawContents,.OutputI
14500 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 nterface.$output,.$k.=.null).{.$
14520 6f 72 69 67 4b 20 3d 20 24 6b 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 origK.=.$k;.$io.=.$this->getIO()
14540 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 74 65 6e 74 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 ;.foreach.($contents.as.$key.=>.
14560 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 24 6b 20 3d 3d 3d 20 6e 75 6c 6c 20 26 26 20 21 69 6e $value).{.if.($k.===.null.&&.!in
14580 5f 61 72 72 61 79 28 24 6b 65 79 2c 20 61 72 72 61 79 28 27 63 6f 6e 66 69 67 27 2c 20 27 72 65 _array($key,.array('config',.'re
145a0 70 6f 73 69 74 6f 72 69 65 73 27 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 72 positories'))).{.continue;.}..$r
145c0 61 77 56 61 6c 20 3d 20 69 73 73 65 74 28 24 72 61 77 43 6f 6e 74 65 6e 74 73 5b 24 6b 65 79 5d awVal.=.isset($rawContents[$key]
145e0 29 20 3f 20 24 72 61 77 43 6f 6e 74 65 6e 74 73 5b 24 6b 65 79 5d 20 3a 20 6e 75 6c 6c 3b 0a 0a ).?.$rawContents[$key].:.null;..
14600 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 20 26 26 20 28 21 69 73 5f 6e 75 6d if.(is_array($value).&&.(!is_num
14620 65 72 69 63 28 6b 65 79 28 24 76 61 6c 75 65 29 29 20 7c 7c 20 28 24 6b 65 79 20 3d 3d 3d 20 27 eric(key($value)).||.($key.===.'
14640 72 65 70 6f 73 69 74 6f 72 69 65 73 27 20 26 26 20 6e 75 6c 6c 20 3d 3d 3d 20 24 6b 29 29 29 20 repositories'.&&.null.===.$k))).
14660 7b 0a 24 6b 20 2e 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 63 6f 6e 66 69 67 5c 2e {.$k..=.preg_replace('{^config\.
14680 7d 27 2c 20 27 27 2c 20 24 6b 65 79 20 2e 20 27 2e 27 29 3b 0a 24 74 68 69 73 2d 3e 6c 69 73 74 }',.'',.$key...'.');.$this->list
146a0 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 28 24 76 61 6c 75 65 2c 20 24 72 61 77 56 61 6c 2c 20 24 Configuration($value,.$rawVal,.$
146c0 6f 75 74 70 75 74 2c 20 24 6b 29 3b 0a 24 6b 20 3d 20 24 6f 72 69 67 4b 3b 0a 0a 63 6f 6e 74 69 output,.$k);.$k.=.$origK;..conti
146e0 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 29 20 7b 0a nue;.}..if.(is_array($value)).{.
14700 24 76 61 6c 75 65 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 $value.=.array_map(function.($va
14720 6c 29 20 7b 0a 72 65 74 75 72 6e 20 69 73 5f 61 72 72 61 79 28 24 76 61 6c 29 20 3f 20 6a 73 6f l).{.return.is_array($val).?.jso
14740 6e 5f 65 6e 63 6f 64 65 28 24 76 61 6c 29 20 3a 20 24 76 61 6c 3b 0a 7d 2c 20 24 76 61 6c 75 65 n_encode($val).:.$val;.},.$value
14760 29 3b 0a 0a 24 76 61 6c 75 65 20 3d 20 27 5b 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 );..$value.=.'['.implode(',.',.$
14780 76 61 6c 75 65 29 2e 27 5d 27 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 62 6f 6f 6c 28 24 76 61 6c 75 value).']';.}..if.(is_bool($valu
147a0 65 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 76 61 72 5f 65 78 70 6f 72 74 28 24 76 61 6c 75 65 e)).{.$value.=.var_export($value
147c0 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 72 61 77 56 61 ,.true);.}..if.(is_string($rawVa
147e0 6c 29 20 26 26 20 24 72 61 77 56 61 6c 20 21 3d 20 24 76 61 6c 75 65 29 20 7b 0a 24 69 6f 2d 3e l).&&.$rawVal.!=.$value).{.$io->
14800 77 72 69 74 65 28 27 5b 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 6b 20 2e 20 24 6b 65 79 20 2e write('[<comment>'...$k...$key..
14820 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 20 3c 69 6e 66 6f 3e 27 20 2e 20 24 72 61 77 56 61 6c 20 .'</comment>].<info>'...$rawVal.
14840 2e 20 27 20 28 27 20 2e 20 24 76 61 6c 75 65 20 2e 20 27 29 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d ..'.('...$value...')</info>');.}
14860 20 65 6c 73 65 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 .else.{.$io->write('[<comment>'.
14880 2e 20 24 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 ..$k...$key...'</comment>].<info
148a0 3e 27 20 2e 20 24 76 61 6c 75 65 20 2e 20 27 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 0a 7d 0a 7d 0a >'...$value...'</info>');.}.}.}.
148c0 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
148e0 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 6e poser\Command;..use.Composer\Con
14900 66 69 67 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 fig;.use.Composer\Factory;.use.C
14920 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 73 65 72 5c omposer\Installer;.use.Composer\
14940 49 6e 73 74 61 6c 6c 65 72 5c 50 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 20 Installer\ProjectInstaller;.use.
14960 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 61 74 69 6f 6e 4d Composer\Installer\InstallationM
14980 61 6e 61 67 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 anager;.use.Composer\IO\IOInterf
149a0 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 42 61 73 65 50 61 ace;.use.Composer\Package\BasePa
149c0 63 6b 61 67 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 ckage;.use.Composer\DependencyRe
149e0 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 44 65 70 65 6e 64 solver\Pool;.use.Composer\Depend
14a00 65 6e 63 79 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 encyResolver\Operation\InstallOp
14a20 65 72 61 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 56 65 eration;.use.Composer\Package\Ve
14a40 72 73 69 6f 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 rsion\VersionSelector;.use.Compo
14a60 73 65 72 5c 52 65 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 ser\Repository\ComposerRepositor
14a80 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 43 6f 6d 70 6f y;.use.Composer\Repository\Compo
14aa0 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 70 siteRepository;.use.Composer\Rep
14ac0 6f 73 69 74 6f 72 79 5c 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 ository\FilesystemRepository;.us
14ae0 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 65 64 46 e.Composer\Repository\InstalledF
14b00 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 ilesystemRepository;.use.Compose
14b20 72 5c 53 63 72 69 70 74 5c 53 63 72 69 70 74 45 76 65 6e 74 73 3b 0a 75 73 65 20 53 79 6d 66 6f r\Script\ScriptEvents;.use.Symfo
14b40 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
14b60 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 74 5c Argument;.use.Symfony\Component\
14b80 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
14ba0 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
14bc0 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 6d 70 6f t\InputOption;.use.Symfony\Compo
14be0 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
14c00 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 46 69 6e 64 65 ace;.use.Symfony\Component\Finde
14c20 72 5c 46 69 6e 64 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 r\Finder;.use.Composer\Json\Json
14c40 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 5c 4a 73 6f 6e 43 6f File;.use.Composer\Config\JsonCo
14c60 6e 66 69 67 53 6f 75 72 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 nfigSource;.use.Composer\Util\Fi
14c80 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 52 65 6d 6f lesystem;.use.Composer\Util\Remo
14ca0 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 50 61 63 6b 61 teFilesystem;.use.Composer\Packa
14cc0 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 0a 0a 0a 0a 0a ge\Version\VersionParser;.......
14ce0 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 6e 64 20 65 78 ...class.CreateProjectCommand.ex
14d00 74 65 6e 64 73 20 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 tends.Command.{.protected.functi
14d20 6f 6e 20 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 on.configure().{.$this.->setName
14d40 28 27 63 72 65 61 74 65 2d 70 72 6f 6a 65 63 74 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 ('create-project').->setDescript
14d60 69 6f 6e 28 27 43 72 65 61 74 65 20 6e 65 77 20 70 72 6f 6a 65 63 74 20 66 72 6f 6d 20 61 20 70 ion('Create.new.project.from.a.p
14d80 61 63 6b 61 67 65 20 69 6e 74 6f 20 67 69 76 65 6e 20 64 69 72 65 63 74 6f 72 79 2e 27 29 0a 2d ackage.into.given.directory.').-
14da0 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 74 41 >setDefinition(array(.new.InputA
14dc0 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 6e 74 rgument('package',.InputArgument
14de0 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 50 61 63 6b 61 67 65 20 6e 61 6d 65 20 74 6f 20 62 65 20 ::OPTIONAL,.'Package.name.to.be.
14e00 69 6e 73 74 61 6c 6c 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 installed'),.new.InputArgument('
14e20 64 69 72 65 63 74 6f 72 79 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f directory',.InputArgument::OPTIO
14e40 4e 41 4c 2c 20 27 44 69 72 65 63 74 6f 72 79 20 77 68 65 72 65 20 74 68 65 20 66 69 6c 65 73 20 NAL,.'Directory.where.the.files.
14e60 73 68 6f 75 6c 64 20 62 65 20 63 72 65 61 74 65 64 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 should.be.created'),.new.InputAr
14e80 67 75 6d 65 6e 74 28 27 76 65 72 73 69 6f 6e 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a gument('version',.InputArgument:
14ea0 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 56 65 72 73 69 6f 6e 2c 20 77 69 6c 6c 20 64 65 66 61 75 6c :OPTIONAL,.'Version,.will.defaul
14ec0 74 20 74 6f 20 6c 61 74 65 73 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 t.to.latest'),.new.InputOption('
14ee0 73 74 61 62 69 6c 69 74 79 27 2c 20 27 73 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 stability',.'s',.InputOption::VA
14f00 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 4d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 LUE_REQUIRED,.'Minimum-stability
14f20 20 61 6c 6c 6f 77 65 64 20 28 75 6e 6c 65 73 73 20 61 20 76 65 72 73 69 6f 6e 20 69 73 20 73 70 .allowed.(unless.a.version.is.sp
14f40 65 63 69 66 69 65 64 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 72 ecified).'),.new.InputOption('pr
14f60 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 6f 6e 3a efer-source',.null,.InputOption:
14f80 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 74 69 6f :VALUE_NONE,.'Forces.installatio
14fa0 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 6f 73 73 n.from.package.sources.when.poss
14fc0 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 6f 6e 2e ible,.including.VCS.information.
14fe0 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 69 73 74 '),.new.InputOption('prefer-dist
15000 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
15020 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 61 63 6b ,.'Forces.installation.from.pack
15040 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 73 2e 27 age.dist.even.for.dev.versions.'
15060 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 6f 72 79 2d 75 ),.new.InputOption('repository-u
15080 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 55 45 5f 52 45 rl',.null,.InputOption::VALUE_RE
150a0 51 55 49 52 45 44 2c 20 27 50 69 63 6b 20 61 20 64 69 66 66 65 72 65 6e 74 20 72 65 70 6f 73 69 QUIRED,.'Pick.a.different.reposi
150c0 74 6f 72 79 20 75 72 6c 20 74 6f 20 6c 6f 6f 6b 20 66 6f 72 20 74 68 65 20 70 61 63 6b 61 67 65 tory.url.to.look.for.the.package
150e0 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 6c .'),.new.InputOption('dev',.null
15100 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 45 6e 61 62 ,.InputOption::VALUE_NONE,.'Enab
15120 6c 65 73 20 69 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 les.installation.of.require-dev.
15140 70 61 63 6b 61 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 packages.(enabled.by.default,.on
15160 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 6e 70 75 74 ly.present.for.BC).'),.new.Input
15180 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
151a0 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 69 6e 73 74 61 6c on::VALUE_NONE,.'Disables.instal
151c0 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 67 65 73 2e 27 lation.of.require-dev.packages.'
151e0 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 75 67 69 6e 73 27 2c ),.new.InputOption('no-plugins',
15200 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,.
15220 27 57 68 65 74 68 65 72 20 74 6f 20 64 69 73 61 62 6c 65 20 70 6c 75 67 69 6e 73 2e 27 29 2c 0a 'Whether.to.disable.plugins.'),.
15240 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 63 75 73 74 6f 6d 2d 69 6e 73 74 61 new.InputOption('no-custom-insta
15260 6c 6c 65 72 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 llers',.null,.InputOption::VALUE
15280 5f 4e 4f 4e 45 2c 20 27 44 45 50 52 45 43 41 54 45 44 3a 20 55 73 65 20 6e 6f 2d 70 6c 75 67 69 _NONE,.'DEPRECATED:.Use.no-plugi
152a0 6e 73 20 69 6e 73 74 65 61 64 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 ns.instead.'),.new.InputOption('
152c0 6e 6f 2d 73 63 72 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 no-scripts',.null,.InputOption::
152e0 56 41 4c 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 VALUE_NONE,.'Whether.to.prevent.
15300 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 6c 6c 20 64 65 66 69 6e 65 64 20 73 63 72 69 70 74 73 execution.of.all.defined.scripts
15320 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 70 61 63 6b 61 67 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 .in.the.root.package.'),.new.Inp
15340 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 49 6e utOption('no-progress',.null,.In
15360 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 20 6f putOption::VALUE_NONE,.'Do.not.o
15380 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 77 20 utput.download.progress.'),.new.
153a0 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6b 65 65 70 2d 76 63 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e InputOption('keep-vcs',.null,.In
153c0 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 68 65 74 68 65 72 20 putOption::VALUE_NONE,.'Whether.
153e0 74 6f 20 70 72 65 76 65 6e 74 20 64 65 6c 65 74 69 6f 6e 20 76 63 73 20 66 6f 6c 64 65 72 2e 27 to.prevent.deletion.vcs.folder.'
15400 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 69 6e 73 74 61 6c 6c 27 2c ),.new.InputOption('no-install',
15420 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,.
15440 27 57 68 65 74 68 65 72 20 74 6f 20 73 6b 69 70 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 'Whether.to.skip.installation.of
15460 20 74 68 65 20 70 61 63 6b 61 67 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 27 29 2c 0a 6e 65 .the.package.dependencies.'),.ne
15480 77 20 49 6e 70 75 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 w.InputOption('ignore-platform-r
154a0 65 71 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 eqs',.null,.InputOption::VALUE_N
154c0 4f 4e 45 2c 20 27 49 67 6e 6f 72 65 20 70 6c 61 74 66 6f 72 6d 20 72 65 71 75 69 72 65 6d 65 6e ONE,.'Ignore.platform.requiremen
154e0 74 73 20 28 70 68 70 20 26 20 65 78 74 2d 20 70 61 63 6b 61 67 65 73 29 2e 27 29 2c 0a 29 29 0a ts.(php.&.ext-.packages).'),.)).
15500 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 72 65 61 74 ->setHelp(<<<EOT.The.<info>creat
15520 65 2d 70 72 6f 6a 65 63 74 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 63 72 65 61 74 65 73 e-project</info>.command.creates
15540 20 61 20 6e 65 77 20 70 72 6f 6a 65 63 74 20 66 72 6f 6d 20 61 20 67 69 76 65 6e 0a 70 61 63 6b .a.new.project.from.a.given.pack
15560 61 67 65 20 69 6e 74 6f 20 61 20 6e 65 77 20 64 69 72 65 63 74 6f 72 79 2e 20 49 66 20 65 78 65 age.into.a.new.directory..If.exe
15580 63 75 74 65 64 20 77 69 74 68 6f 75 74 20 70 61 72 61 6d 73 20 61 6e 64 20 69 6e 20 61 20 64 69 cuted.without.params.and.in.a.di
155a0 72 65 63 74 6f 72 79 0a 77 69 74 68 20 61 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c rectory.with.a.composer.json.fil
155c0 65 20 69 74 20 69 6e 73 74 61 6c 6c 73 20 74 68 65 20 70 61 63 6b 61 67 65 73 20 66 6f 72 20 74 e.it.installs.the.packages.for.t
155e0 68 65 20 63 75 72 72 65 6e 74 20 70 72 6f 6a 65 63 74 2e 0a 0a 59 6f 75 20 63 61 6e 20 75 73 65 he.current.project...You.can.use
15600 20 74 68 69 73 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 62 6f 6f 74 73 74 72 61 70 20 6e 65 77 20 70 .this.command.to.bootstrap.new.p
15620 72 6f 6a 65 63 74 73 20 6f 72 20 73 65 74 75 70 20 61 20 63 6c 65 61 6e 0a 76 65 72 73 69 6f 6e rojects.or.setup.a.clean.version
15640 2d 63 6f 6e 74 72 6f 6c 6c 65 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 6f 72 20 64 65 76 -controlled.installation.for.dev
15660 65 6c 6f 70 65 72 73 20 6f 66 20 79 6f 75 72 20 70 72 6f 6a 65 63 74 2e 0a 0a 3c 69 6e 66 6f 3e elopers.of.your.project...<info>
15680 70 68 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 php.composer.phar.create-project
156a0 20 76 65 6e 64 6f 72 2f 70 72 6f 6a 65 63 74 20 74 61 72 67 65 74 2d 64 69 72 65 63 74 6f 72 79 .vendor/project.target-directory
156c0 20 5b 76 65 72 73 69 6f 6e 5d 3c 2f 69 6e 66 6f 3e 0a 0a 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 .[version]</info>..You.can.also.
156e0 73 70 65 63 69 66 79 20 74 68 65 20 76 65 72 73 69 6f 6e 20 77 69 74 68 20 74 68 65 20 70 61 63 specify.the.version.with.the.pac
15700 6b 61 67 65 20 6e 61 6d 65 20 75 73 69 6e 67 20 3d 20 6f 72 20 3a 20 61 73 20 73 65 70 61 72 61 kage.name.using.=.or.:.as.separa
15720 74 6f 72 2e 0a 0a 54 6f 20 69 6e 73 74 61 6c 6c 20 75 6e 73 74 61 62 6c 65 20 70 61 63 6b 61 67 tor...To.install.unstable.packag
15740 65 73 2c 20 65 69 74 68 65 72 20 73 70 65 63 69 66 79 20 74 68 65 20 76 65 72 73 69 6f 6e 20 79 es,.either.specify.the.version.y
15760 6f 75 20 77 61 6e 74 2c 20 6f 72 20 75 73 65 20 74 68 65 0a 2d 2d 73 74 61 62 69 6c 69 74 79 3d ou.want,.or.use.the.--stability=
15780 64 65 76 20 28 77 68 65 72 65 20 64 65 76 20 63 61 6e 20 62 65 20 6f 6e 65 20 6f 66 20 52 43 2c dev.(where.dev.can.be.one.of.RC,
157a0 20 62 65 74 61 2c 20 61 6c 70 68 61 20 6f 72 20 64 65 76 29 2e 0a 0a 54 6f 20 73 65 74 75 70 20 .beta,.alpha.or.dev)...To.setup.
157c0 61 20 64 65 76 65 6c 6f 70 65 72 20 77 6f 72 6b 61 62 6c 65 20 76 65 72 73 69 6f 6e 20 79 6f 75 a.developer.workable.version.you
157e0 20 73 68 6f 75 6c 64 20 63 72 65 61 74 65 20 74 68 65 20 70 72 6f 6a 65 63 74 20 75 73 69 6e 67 .should.create.the.project.using
15800 20 74 68 65 20 73 6f 75 72 63 65 0a 63 6f 6e 74 72 6f 6c 6c 65 64 20 63 6f 64 65 20 62 79 20 61 .the.source.controlled.code.by.a
15820 70 70 65 6e 64 69 6e 67 20 74 68 65 20 3c 69 6e 66 6f 3e 27 2d 2d 70 72 65 66 65 72 2d 73 6f 75 ppending.the.<info>'--prefer-sou
15840 72 63 65 27 3c 2f 69 6e 66 6f 3e 20 66 6c 61 67 2e 0a 0a 54 6f 20 69 6e 73 74 61 6c 6c 20 61 20 rce'</info>.flag...To.install.a.
15860 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 61 6e 6f 74 68 65 72 20 72 65 70 6f 73 69 74 6f 72 79 20 package.from.another.repository.
15880 74 68 61 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 6f 6e 65 20 79 6f 75 0a 63 61 6e 20 70 61 73 than.the.default.one.you.can.pas
158a0 73 20 74 68 65 20 3c 69 6e 66 6f 3e 27 2d 2d 72 65 70 6f 73 69 74 6f 72 79 2d 75 72 6c 3d 68 74 s.the.<info>'--repository-url=ht
158c0 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 66 6f 3e 20 66 tps://myrepository.org'</info>.f
158e0 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 66 75 6e 63 74 lag...EOT.).;.}..protected.funct
15900 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 75 ion.execute(InputInterface.$inpu
15920 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 63 t,.OutputInterface.$output).{.$c
15940 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 29 3b onfig.=.Factory::createConfig();
15960 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 69 73 2d 3e 75 .$io.=.$this->getIO();..$this->u
15980 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 69 67 2c 20 24 pdatePreferredOptions($config,.$
159a0 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 44 69 73 input,.$preferSource,.$preferDis
159c0 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 70 74 69 6f 6e t,.true);..if.($input->getOption
159e0 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 6f 2d ('no-custom-installers')).{.$io-
15a00 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 75 73 >writeError('<warning>You.are.us
15a20 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 63 75 ing.the.deprecated.option."no-cu
15a40 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 69 6e stom-installers"..Use."no-plugin
15a60 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 74 2d s".instead.</warning>');.$input-
15a80 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 3b 0a >setOption('no-plugins',.true);.
15aa0 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 65 63 74 28 }..return.$this->installProject(
15ac0 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 74 2d 3e 67 .$io,.$config,.$input,.$input->g
15ae0 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 74 2d 3e 67 etArgument('package'),.$input->g
15b00 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 70 75 74 2d etArgument('directory'),.$input-
15b20 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 70 75 74 2d >getArgument('version'),.$input-
15b40 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 65 66 65 72 >getOption('stability'),.$prefer
15b60 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 2d 3e 67 65 Source,.$preferDist,.!$input->ge
15b80 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 65 74 4f 70 tOption('no-dev'),.$input->getOp
15ba0 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 69 6e 70 75 74 2d 3e tion('repository-url'),.$input->
15bc0 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 24 69 6e 70 75 74 2d getOption('no-plugins'),.$input-
15be0 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 0a 24 69 6e 70 75 74 >getOption('no-scripts'),.$input
15c00 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 24 69 6e 70 75 74 2d ->getOption('keep-vcs'),.$input-
15c20 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 2c 0a 24 69 6e 70 75 >getOption('no-progress'),.$inpu
15c40 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 29 2c 0a 24 69 6e 70 t->getOption('no-install'),.$inp
15c60 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 74 66 6f 72 6d 2d 72 ut->getOption('ignore-platform-r
15c80 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 6f 6e 20 69 6e 73 74 eqs').);.}..public.function.inst
15ca0 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 6f 2c 20 43 6f 6e 66 allProject(IOInterface.$io,.Conf
15cc0 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 65 20 24 69 6e 70 75 ig.$config,.InputInterface.$inpu
15ce0 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 72 79 20 3d 20 6e 75 t,.$packageName,.$directory.=.nu
15d00 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 6c 2c 20 24 73 74 61 ll,.$packageVersion.=.null,.$sta
15d20 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 72 53 6f 75 72 63 65 bility.=.'stable',.$preferSource
15d40 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 61 6c 73 65 2c 20 24 .=.false,.$preferDist.=.false,.$
15d60 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 65 2c 20 24 72 65 70 installDevPackages.=.false,.$rep
15d80 6f 73 69 74 6f 72 79 55 72 6c 20 3d 20 6e 75 6c 6c 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 ositoryUrl.=.null,.$disablePlugi
15da0 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 73 65 2c 20 ns.=.false,.$noScripts.=.false,.
15dc0 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 73 20 3d 20 $keepVcs.=.false,.$noProgress.=.
15de0 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 69 67 6e 6f false,.$noInstall.=.false,.$igno
15e00 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 6c 64 43 77 rePlatformReqs.=.false).{.$oldCw
15e20 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 6e 66 69 67 d.=.getcwd();....$io->loadConfig
15e40 75 72 61 74 69 6f 6e 28 24 63 6f 6e 66 69 67 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 4e uration($config);..if.($packageN
15e60 61 6d 65 20 21 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 64 46 72 6f 6d 56 63 ame.!==.null).{.$installedFromVc
15e80 73 20 3d 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 52 6f 6f 74 50 61 63 6b 61 67 65 28 24 69 s.=.$this->installRootPackage($i
15ea0 6f 2c 20 24 63 6f 6e 66 69 67 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 64 69 72 65 63 o,.$config,.$packageName,.$direc
15ec0 74 6f 72 79 2c 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 2c 20 24 73 74 61 62 69 6c 69 74 tory,.$packageVersion,.$stabilit
15ee0 79 2c 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 2c 20 24 70 72 65 66 65 72 44 69 73 74 2c 20 24 y,.$preferSource,.$preferDist,.$
15f00 69 6e 73 74 61 6c 6c 44 65 76 50 61 63 6b 61 67 65 73 2c 20 24 72 65 70 6f 73 69 74 6f 72 79 55 installDevPackages,.$repositoryU
15f20 72 6c 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 2c 20 24 6e 6f 53 63 72 69 70 74 73 2c rl,.$disablePlugins,.$noScripts,
15f40 20 24 6b 65 65 70 56 63 73 2c 20 24 6e 6f 50 72 6f 67 72 65 73 73 29 3b 0a 7d 20 65 6c 73 65 20 .$keepVcs,.$noProgress);.}.else.
15f60 7b 0a 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 {.$installedFromVcs.=.false;.}..
15f80 24 63 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 $composer.=.Factory::create($io,
15fa0 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 24 63 6f 6d 70 6f 73 .null,.$disablePlugins);.$compos
15fc0 65 72 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 er->getDownloadManager()->setOut
15fe0 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 66 73 20 putProgress(!$noProgress);..$fs.
16000 3d 20 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 =.new.Filesystem();..if.($noScri
16020 70 74 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 pts.===.false).{...$composer->ge
16040 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 53 63 72 69 tEventDispatcher()->dispatchScri
16060 70 74 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 pt(ScriptEvents::POST_ROOT_PACKA
16080 47 45 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 GE_INSTALL,.$installDevPackages)
160a0 3b 0a 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 ;.}..$rootPackageConfig.=.$compo
160c0 73 65 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 ser->getConfig();.$this->updateP
160e0 72 65 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 referredOptions($rootPackageConf
16100 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
16120 65 72 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 erDist);....if.($noInstall.===.f
16140 61 6c 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 alse).{.$installer.=.Installer::
16160 63 72 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 create($io,.$composer);.$install
16180 65 72 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 er->setPreferSource($preferSourc
161a0 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 72 44 69 73 74 29 0a e).->setPreferDist($preferDist).
161c0 2d 3e 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 ->setDevMode($installDevPackages
161e0 29 0a 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 ).->setRunScripts(!$noScripts).-
16200 3e 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 24 >setIgnorePlatformRequirements($
16220 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 3b 0a 0a 69 66 20 28 24 64 69 73 61 62 ignorePlatformReqs);..if.($disab
16240 6c 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 lePlugins).{.$installer->disable
16260 50 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 Plugins();.}..$status.=.$install
16280 65 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 er->run();.if.(0.!==.$status).{.
162a0 72 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 return.$status;.}.}..$hasVcs.=.$
162c0 69 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 installedFromVcs;.if.(!$keepVcs.
162e0 26 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 &&.$installedFromVcs.&&.(.!$io->
16300 69 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 isInteractive().||.$io->askConfi
16320 72 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 rmation('<info>Do.you.want.to.re
16340 6d 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 move.the.existing.VCS.(.git,..sv
16360 6e 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 n..).history?</info>.[<comment>Y
16380 2c 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 ,n</comment>]?.',.true).).).{.$f
163a0 69 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 inder.=.new.Finder();.$finder->d
163c0 65 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 epth(0)->directories()->in(getcw
163e0 64 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 d())->ignoreVCS(false)->ignoreDo
16400 74 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 tFiles(false);.foreach.(array('.
16420 73 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 svn',.'_svn',.'CVS',.'_darcs',.'
16440 2e 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 .arch-params',.'.monotone',.'.bz
16460 72 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 r',.'.git',.'.hg').as.$vcsName).
16480 7b 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 {.$finder->name($vcsName);.}..tr
164a0 79 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 y.{.$dirs.=.iterator_to_array($f
164c0 69 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 inder);.unset($finder);.foreach.
164e0 28 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 ($dirs.as.$dir).{.if.(!$fs->remo
16500 76 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 veDirectory($dir)).{.throw.new.\
16520 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 72 65 6d 6f RuntimeException('Could.not.remo
16540 76 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 ve.'.$dir);.}.}.}.catch.(\Except
16560 69 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 ion.$e).{.$io->writeError('<erro
16580 72 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 r>An.error.occurred.while.removi
165a0 6e 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 ng.the.VCS.metadata:.'.$e->getMe
165c0 73 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 ssage().'</error>');.}..$hasVcs.
165e0 3d 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 =.false;.}....if.(!$hasVcs).{.$p
16600 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 29 ackage.=.$composer->getPackage()
16620 3b 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 ;.$configSource.=.new.JsonConfig
16640 53 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 Source(new.JsonFile('composer.js
16660 6f 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 on'));.foreach.(BasePackage::$su
16680 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 20 3d 3e 20 24 6d 65 pportedLinkTypes.as.$type.=>.$me
166a0 74 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 ta).{.foreach.($package->{'get'.
166c0 24 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 $meta['method']}().as.$link).{.i
166e0 66 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 f.($link->getPrettyConstraint().
16700 3d 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 ===.'self.version').{.$configSou
16720 72 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 rce->addLink($type,.$link->getTa
16740 72 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 rget(),.$package->getPrettyVersi
16760 6f 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 on());.}.}.}.}..if.($noScripts.=
16780 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 76 65 6e ==.false).{...$composer->getEven
167a0 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 28 53 63 tDispatcher()->dispatchScript(Sc
167c0 72 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 riptEvents::POST_CREATE_PROJECT_
167e0 43 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 CMD,.$installDevPackages);.}..ch
16800 64 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 dir($oldCwd);.$vendorComposerDir
16820 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 74 28 27 .=.$composer->getConfig()->get('
16840 76 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 vendor-dir').'/composer';.if.(is
16860 5f 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 _dir($vendorComposerDir).&&.$fs-
16880 3e 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 >isDirEmpty($vendorComposerDir))
168a0 20 7b 0a 40 72 6d 64 69 72 28 24 76 65 6e 64 6f 72 43 6f 6d 70 6f 73 65 72 44 69 72 29 3b 0a 24 .{.@rmdir($vendorComposerDir);.$
168c0 76 65 6e 64 6f 72 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 vendorDir.=.$composer->getConfig
168e0 28 29 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 64 69 ()->get('vendor-dir');.if.(is_di
16900 72 28 24 76 65 6e 64 6f 72 44 69 72 29 20 26 26 20 24 66 73 2d 3e 69 73 44 69 72 45 6d 70 74 79 r($vendorDir).&&.$fs->isDirEmpty
16920 28 24 76 65 6e 64 6f 72 44 69 72 29 29 20 7b 0a 40 72 6d 64 69 72 28 24 76 65 6e 64 6f 72 44 69 ($vendorDir)).{.@rmdir($vendorDi
16940 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 20 r);.}.}..return.0;.}..protected.
16960 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 6e function.installRootPackage(IOIn
16980 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 61 terface.$io,.Config.$config,.$pa
169a0 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 70 ckageName,.$directory.=.null,.$p
169c0 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 79 ackageVersion.=.null,.$stability
169e0 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 6c .=.'stable',.$preferSource.=.fal
16a00 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 6c se,.$preferDist.=.false,.$instal
16a20 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 72 lDevPackages.=.false,.$repositor
16a40 79 55 72 6c 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 yUrl.=.null,.$disablePlugins.=.f
16a60 61 6c 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 alse,.$noScripts.=.false,.$keepV
16a80 63 73 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 29 cs.=.false,.$noProgress.=.false)
16aa0 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 55 72 6c 29 20 .{.if.(null.===.$repositoryUrl).
16ac0 7b 0a 24 73 6f 75 72 63 65 52 65 70 6f 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 {.$sourceRepo.=.new.CompositeRep
16ae0 6f 73 69 74 6f 72 79 28 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 44 65 66 61 75 6c 74 52 65 ository(Factory::createDefaultRe
16b00 70 6f 73 69 74 6f 72 69 65 73 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 29 3b 0a 7d 20 65 6c 73 positories($io,.$config));.}.els
16b20 65 69 66 20 28 22 6a 73 6f 6e 22 20 3d 3d 3d 20 70 61 74 68 69 6e 66 6f 28 24 72 65 70 6f 73 69 eif.("json".===.pathinfo($reposi
16b40 74 6f 72 79 55 72 6c 2c 20 50 41 54 48 49 4e 46 4f 5f 45 58 54 45 4e 53 49 4f 4e 29 20 26 26 20 toryUrl,.PATHINFO_EXTENSION).&&.
16b60 66 69 6c 65 5f 65 78 69 73 74 73 28 24 72 65 70 6f 73 69 74 6f 72 79 55 72 6c 29 29 20 7b 0a 24 file_exists($repositoryUrl)).{.$
16b80 6a 73 6f 6e 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 72 65 70 6f 73 69 74 6f 72 79 55 json.=.new.JsonFile($repositoryU
16ba0 72 6c 2c 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 rl,.Factory::createRemoteFilesys
16bc0 74 65 6d 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 29 3b 0a 24 64 61 74 61 20 3d 20 24 6a 73 6f tem($io,.$config));.$data.=.$jso
16be0 6e 2d 3e 72 65 61 64 28 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 64 61 74 61 5b 27 70 61 63 n->read();.if.(!empty($data['pac
16c00 6b 61 67 65 73 27 5d 29 20 7c 7c 20 21 65 6d 70 74 79 28 24 64 61 74 61 5b 27 69 6e 63 6c 75 64 kages']).||.!empty($data['includ
16c20 65 73 27 5d 29 20 7c 7c 20 21 65 6d 70 74 79 28 24 64 61 74 61 5b 27 70 72 6f 76 69 64 65 72 2d es']).||.!empty($data['provider-
16c40 69 6e 63 6c 75 64 65 73 27 5d 29 29 20 7b 0a 24 73 6f 75 72 63 65 52 65 70 6f 20 3d 20 6e 65 77 includes'])).{.$sourceRepo.=.new
16c60 20 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 27 75 72 6c 27 20 .ComposerRepository(array('url'.
16c80 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 70 61 74 68 28 24 72 =>.'file://'...strtr(realpath($r
16ca0 65 70 6f 73 69 74 6f 72 79 55 72 6c 29 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 29 2c 20 24 69 6f 2c epositoryUrl),.'\\',.'/')),.$io,
16cc0 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 6f 75 72 63 65 52 65 70 6f 20 .$config);.}.else.{.$sourceRepo.
16ce0 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 79 28 24 6a 73 6f 6e =.new.FilesystemRepository($json
16d00 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 72 65 70 );.}.}.elseif.(0.===.strpos($rep
16d20 6f 73 69 74 6f 72 79 55 72 6c 2c 20 27 68 74 74 70 27 29 29 20 7b 0a 24 73 6f 75 72 63 65 52 65 ositoryUrl,.'http')).{.$sourceRe
16d40 70 6f 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 po.=.new.ComposerRepository(arra
16d60 79 28 27 75 72 6c 27 20 3d 3e 20 24 72 65 70 6f 73 69 74 6f 72 79 55 72 6c 29 2c 20 24 69 6f 2c y('url'.=>.$repositoryUrl),.$io,
16d80 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 .$config);.}.else.{.throw.new.\I
16da0 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 49 6e 76 61 6c 69 64 nvalidArgumentException("Invalid
16dc0 20 72 65 70 6f 73 69 74 6f 72 79 20 75 72 6c 20 67 69 76 65 6e 2e 20 48 61 73 20 74 6f 20 62 65 .repository.url.given..Has.to.be
16de0 20 61 20 2e 6a 73 6f 6e 20 66 69 6c 65 20 6f 72 20 61 6e 20 68 74 74 70 20 75 72 6c 2e 22 29 3b .a..json.file.or.an.http.url.");
16e00 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 61 72 73 65 72 28 .}..$parser.=.new.VersionParser(
16e20 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 2d 3e 70 61 72 73 );.$requirements.=.$parser->pars
16e40 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 61 63 6b 61 67 65 eNameVersionPairs(array($package
16e60 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 28 24 72 65 71 75 Name));.$name.=.strtolower($requ
16e80 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 21 24 70 61 63 6b irements[0]['name']);.if.(!$pack
16ea0 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 72 65 6d 65 6e 74 ageVersion.&&.isset($requirement
16ec0 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 67 65 56 65 72 73 s[0]['version'])).{.$packageVers
16ee0 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 72 73 69 6f 6e 27 ion.=.$requirements[0]['version'
16f00 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 69 74 79 29 20 7b ];.}..if.(null.===.$stability).{
16f20 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 3f 40 28 27 2e 69 .if.(preg_match('{^[^,\s]*?@('.i
16f40 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 65 50 61 63 6b 61 mplode('|',.array_keys(BasePacka
16f60 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 20 24 70 61 63 6b ge::$stabilities)).')$}i',.$pack
16f80 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 61 62 69 6c 69 74 ageVersion,.$match)).{.$stabilit
16fa0 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 74 61 62 69 6c 69 y.=.$match[1];.}.else.{.$stabili
16fc0 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
16fe0 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 24 73 74 61 62 69 ty($packageVersion);.}.}..$stabi
17000 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 61 6c 69 7a 65 53 lity.=.VersionParser::normalizeS
17020 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 28 21 69 73 73 65 tability($stability);..if.(!isse
17040 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 73 5b 24 73 74 61 t(BasePackage::$stabilities[$sta
17060 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 61 6c 69 64 41 72 bility])).{.throw.new.\InvalidAr
17080 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 74 61 62 69 6c 69 gumentException('Invalid.stabili
170a0 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 27 29 2c 20 6d 75 ty.provided.('.$stability.'),.mu
170c0 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 20 27 2c 20 61 72 st.be.one.of:.'.implode(',.',.ar
170e0 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 62 69 6c 69 74 69 ray_keys(BasePackage::$stabiliti
17100 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 28 24 73 74 61 62 es)));.}..$pool.=.new.Pool($stab
17120 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 72 79 28 24 73 6f ility);.$pool->addRepository($so
17140 75 72 63 65 52 65 70 6f 29 3b 0a 0a 0a 20 24 70 68 70 56 65 72 73 69 6f 6e 20 3d 20 50 48 50 5f urceRepo);....$phpVersion.=.PHP_
17160 4d 41 4a 4f 52 5f 56 45 52 53 49 4f 4e 2e 27 2e 27 2e 50 48 50 5f 4d 49 4e 4f 52 5f 56 45 52 53 MAJOR_VERSION.'.'.PHP_MINOR_VERS
17180 49 4f 4e 2e 27 2e 27 2e 50 48 50 5f 52 45 4c 45 41 53 45 5f 56 45 52 53 49 4f 4e 3b 0a 0a 0a 20 ION.'.'.PHP_RELEASE_VERSION;....
171a0 24 76 65 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 $versionSelector.=.new.VersionSe
171c0 6c 65 63 74 6f 72 28 24 70 6f 6f 6c 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 76 65 72 73 69 lector($pool);.$package.=.$versi
171e0 6f 6e 53 65 6c 65 63 74 6f 72 2d 3e 66 69 6e 64 42 65 73 74 43 61 6e 64 69 64 61 74 65 28 24 6e onSelector->findBestCandidate($n
17200 61 6d 65 2c 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 2c 20 24 70 68 70 56 65 72 73 69 6f ame,.$packageVersion,.$phpVersio
17220 6e 2c 20 24 73 74 61 62 69 6c 69 74 79 29 3b 0a 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 29 20 n,.$stability);..if.(!$package).
17240 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
17260 70 74 69 6f 6e 28 22 43 6f 75 6c 64 20 6e 6f 74 20 66 69 6e 64 20 70 61 63 6b 61 67 65 20 24 6e ption("Could.not.find.package.$n
17280 61 6d 65 22 20 2e 20 28 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 3f 20 22 20 77 69 74 68 ame"...($packageVersion.?.".with
172a0 20 76 65 72 73 69 6f 6e 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 2e 22 20 3a 20 22 20 77 .version.$packageVersion.".:.".w
172c0 69 74 68 20 73 74 61 62 69 6c 69 74 79 20 24 73 74 61 62 69 6c 69 74 79 2e 22 29 29 3b 0a 7d 0a ith.stability.$stability."));.}.
172e0 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 69 72 65 63 74 6f 72 79 29 20 7b 0a 24 70 61 72 .if.(null.===.$directory).{.$par
17300 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 22 2f 22 2c 20 24 6e 61 6d 65 2c 20 32 29 3b 0a 24 64 69 ts.=.explode("/",.$name,.2);.$di
17320 72 65 63 74 6f 72 79 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 rectory.=.getcwd()...DIRECTORY_S
17340 45 50 41 52 41 54 4f 52 20 2e 20 61 72 72 61 79 5f 70 6f 70 28 24 70 61 72 74 73 29 3b 0a 7d 0a EPARATOR...array_pop($parts);.}.
17360 0a 0a 20 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 63 6e 74 6c 5f 73 69 ...if.(function_exists('pcntl_si
17380 67 6e 61 6c 27 29 29 20 7b 0a 64 65 63 6c 61 72 65 20 28 74 69 63 6b 73 20 3d 20 31 30 30 29 3b gnal')).{.declare.(ticks.=.100);
173a0 0a 70 63 6e 74 6c 5f 73 69 67 6e 61 6c 28 53 49 47 49 4e 54 2c 20 66 75 6e 63 74 69 6f 6e 20 28 .pcntl_signal(SIGINT,.function.(
173c0 29 20 75 73 65 20 28 24 64 69 72 65 63 74 6f 72 79 29 20 7b 0a 24 66 73 20 3d 20 6e 65 77 20 46 ).use.($directory).{.$fs.=.new.F
173e0 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 66 73 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 ilesystem();.$fs->removeDirector
17400 79 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 65 78 69 74 28 31 33 30 29 3b 0a 7d 29 3b 0a 7d 0a y($directory);.exit(130);.});.}.
17420 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 49 6e 73 74 61 6c 6c 69 .$io->writeError('<info>Installi
17440 6e 67 20 27 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 27 20 28 ng.'...$package->getName()...'.(
17460 27 20 2e 20 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 '...$package->getFullPrettyVersi
17480 6f 6e 28 66 61 6c 73 65 29 20 2e 20 27 29 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 69 66 20 28 24 64 on(false)...')</info>');..if.($d
174a0 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 isablePlugins).{.$io->writeError
174c0 28 27 3c 69 6e 66 6f 3e 50 6c 75 67 69 6e 73 20 68 61 76 65 20 62 65 65 6e 20 64 69 73 61 62 6c ('<info>Plugins.have.been.disabl
174e0 65 64 2e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f ed.</info>');.}..if.(0.===.strpo
17500 73 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 28 29 2c 20 s($package->getPrettyVersion(),.
17520 27 64 65 76 2d 27 29 20 26 26 20 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 'dev-').&&.in_array($package->ge
17540 74 53 6f 75 72 63 65 54 79 70 65 28 29 2c 20 61 72 72 61 79 28 27 67 69 74 27 2c 20 27 68 67 27 tSourceType(),.array('git',.'hg'
17560 29 29 29 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 ))).{.$package->setSourceReferen
17580 63 65 28 73 75 62 73 74 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 ce(substr($package->getPrettyVer
175a0 73 69 6f 6e 28 29 2c 20 34 29 29 3b 0a 7d 0a 0a 24 64 6d 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 sion(),.4));.}..$dm.=.$this->cre
175c0 61 74 65 44 6f 77 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 ateDownloadManager($io,.$config)
175e0 3b 0a 24 64 6d 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 ;.$dm->setPreferSource($preferSo
17600 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 72 44 69 73 urce).->setPreferDist($preferDis
17620 74 29 0a 2d 3e 73 65 74 4f 75 74 70 75 74 50 72 6f 67 72 65 73 73 28 21 24 6e 6f 50 72 6f 67 72 t).->setOutputProgress(!$noProgr
17640 65 73 73 29 3b 0a 0a 24 70 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 20 3d 20 6e 65 77 20 50 ess);..$projectInstaller.=.new.P
17660 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 28 24 64 69 72 65 63 74 6f 72 79 2c 20 24 64 6d 29 rojectInstaller($directory,.$dm)
17680 3b 0a 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 ;.$im.=.$this->createInstallatio
176a0 6e 4d 61 6e 61 67 65 72 28 29 3b 0a 24 69 6d 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 24 70 nManager();.$im->addInstaller($p
176c0 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 29 3b 0a 24 69 6d 2d 3e 69 6e 73 74 61 6c 6c 28 6e rojectInstaller);.$im->install(n
176e0 65 77 20 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 ew.InstalledFilesystemRepository
17700 28 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 27 70 68 70 3a 2f 2f 6d 65 6d 6f 72 79 27 29 29 2c 20 (new.JsonFile('php://memory')),.
17720 6e 65 77 20 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 29 29 3b new.InstallOperation($package));
17740 0a 24 69 6d 2d 3e 6e 6f 74 69 66 79 49 6e 73 74 61 6c 6c 73 28 24 69 6f 29 3b 0a 0a 24 69 6e 73 .$im->notifyInstalls($io);..$ins
17760 74 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 talledFromVcs.=.'source'.===.$pa
17780 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 3b 0a ckage->getInstallationSource();.
177a0 0a 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 .$io->writeError('<info>Created.
177c0 70 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 project.in.'...$directory...'</i
177e0 6e 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 nfo>');.chdir($directory);..$_SE
17800 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 20 3d 20 RVER['COMPOSER_ROOT_VERSION'].=.
17820 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 3b 0a 70 75 $package->getPrettyVersion();.pu
17840 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 3d 27 2e 24 5f tenv('COMPOSER_ROOT_VERSION='.$_
17860 53 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 SERVER['COMPOSER_ROOT_VERSION'])
17880 3b 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 ;..return.$installedFromVcs;.}..
178a0 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 44 6f 77 6e 6c 6f 61 protected.function.createDownloa
178c0 64 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 dManager(IOInterface.$io,.Config
178e0 20 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 .$config).{.$factory.=.new.Facto
17900 72 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 ry();..return.$factory->createDo
17920 77 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 wnloadManager($io,.$config);.}..
17940 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 49 6e 73 74 61 6c 6c protected.function.createInstall
17960 61 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 ationManager().{.return.new.Inst
17980 61 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 allationManager();.}.........pro
179a0 74 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 tected.function.updatePreferredO
179c0 70 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 ptions(Config.$config,.InputInte
179e0 72 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 rface.$input,.&$preferSource,.&$
17a00 70 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 preferDist,.$keepVcsRequiresPref
17a20 65 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 erSource.=.false).{.$preferSourc
17a40 65 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 e.=.false;.$preferDist.=.false;.
17a60 0a 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 .switch.($config->get('preferred
17a80 2d 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 -install')).{.case.'source':.$pr
17aa0 65 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 eferSource.=.true;.break;.case.'
17ac0 64 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 dist':.$preferDist.=.true;.break
17ae0 3b 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 ;.case.'auto':.default:...break;
17b00 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 70 72 65 66 65 .}..if.($input->getOption('prefe
17b20 72 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 r-source').||.$input->getOption(
17b40 27 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 'prefer-dist').||.($keepVcsRequi
17b60 72 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 resPreferSource.&&.$input->getOp
17b80 74 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 tion('keep-vcs'))).{.$preferSour
17ba0 63 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 ce.=.$input->getOption('prefer-s
17bc0 6f 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 ource').||.($keepVcsRequiresPref
17be0 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 69 6f 6e 28 27 6b erSource.&&.$input->getOption('k
17c00 65 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 eep-vcs'));.$preferDist.=.$input
17c20 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 3b 0a 7d 0a 7d 0a ->getOption('prefer-dist');.}.}.
17c40 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
17c60 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 44 65 70 poser\Command;..use.Composer\Dep
17c80 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 70 6f 73 endencyResolver\Pool;.use.Compos
17ca0 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 73 65 72 5c 50 61 er\Package\Link;.use.Composer\Pa
17cc0 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
17ce0 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 6f 72 79 3b oser\Repository\ArrayRepository;
17d00 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 69 .use.Composer\Repository\Composi
17d20 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 73 teRepository;.use.Composer\Repos
17d40 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 6f itory\PlatformRepository;.use.Co
17d60 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 3b 0a 75 73 65 20 mposer\Plugin\CommandEvent;.use.
17d80 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 74 73 3b 0a 75 73 Composer\Plugin\PluginEvents;.us
17da0 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 72 3b e.Composer\Semver\VersionParser;
17dc0 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
17de0 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
17e00 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
17e20 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
17e40 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
17e60 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
17e80 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 70 65 6e 64 tputInterface;......class.Depend
17ea0 73 43 6f 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 6f 74 65 sCommand.extends.Command.{.prote
17ec0 63 74 65 64 20 24 6c 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 cted.$linkTypes.=.array(.'requir
17ee0 65 27 20 3d 3e 20 61 72 72 61 79 28 27 72 65 71 75 69 72 65 73 27 2c 20 27 72 65 71 75 69 72 65 e'.=>.array('requires',.'require
17f00 73 27 29 2c 0a 27 72 65 71 75 69 72 65 2d 64 65 76 27 20 3d 3e 20 61 72 72 61 79 28 27 64 65 76 s'),.'require-dev'.=>.array('dev
17f20 52 65 71 75 69 72 65 73 27 2c 20 27 72 65 71 75 69 72 65 73 20 28 64 65 76 29 27 29 2c 0a 29 3b Requires',.'requires.(dev)'),.);
17f40 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 29 ..protected.function.configure()
17f60 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 64 65 70 65 6e 64 73 27 29 0a 2d 3e .{.$this.->setName('depends').->
17f80 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 70 61 63 6b setDescription('Shows.which.pack
17fa0 61 67 65 73 20 64 65 70 65 6e 64 20 6f 6e 20 74 68 65 20 67 69 76 65 6e 20 70 61 63 6b 61 67 65 ages.depend.on.the.given.package
17fc0 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 20 49 6e ').->setDefinition(array(.new.In
17fe0 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 72 67 75 putArgument('package',.InputArgu
18000 6d 65 6e 74 3a 3a 52 45 51 55 49 52 45 44 2c 20 27 50 61 63 6b 61 67 65 20 74 6f 20 69 6e 73 70 ment::REQUIRED,.'Package.to.insp
18020 65 63 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6c 69 6e 6b 2d 74 79 70 ect'),.new.InputOption('link-typ
18040 65 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 52 45 51 55 49 e',.'',.InputOption::VALUE_REQUI
18060 52 45 44 20 7c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 RED.|.InputOption::VALUE_IS_ARRA
18080 59 2c 20 27 4c 69 6e 6b 20 74 79 70 65 73 20 74 6f 20 73 68 6f 77 20 28 72 65 71 75 69 72 65 2c Y,.'Link.types.to.show.(require,
180a0 20 72 65 71 75 69 72 65 2d 64 65 76 29 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 .require-dev)',.array_keys($this
180c0 2d 3e 6c 69 6e 6b 54 79 70 65 73 29 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 ->linkTypes)),.new.InputOption('
180e0 6d 61 74 63 68 2d 63 6f 6e 73 74 72 61 69 6e 74 27 2c 20 27 6d 27 2c 20 49 6e 70 75 74 4f 70 74 match-constraint',.'m',.InputOpt
18100 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 46 69 6c 74 65 72 73 20 74 68 ion::VALUE_REQUIRED,.'Filters.th
18120 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 73 68 6f 77 6e 20 75 73 69 6e 67 20 74 68 69 73 20 e.dependencies.shown.using.this.
18140 63 6f 6e 73 74 72 61 69 6e 74 27 2c 20 27 2a 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 constraint',.'*'),.new.InputOpti
18160 6f 6e 28 27 69 6e 76 65 72 74 2d 6d 61 74 63 68 2d 63 6f 6e 73 74 72 61 69 6e 74 27 2c 20 27 69 on('invert-match-constraint',.'i
18180 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 54 75 72 ',.InputOption::VALUE_NONE,.'Tur
181a0 6e 73 20 2d 2d 6d 61 74 63 68 2d 63 6f 6e 73 74 72 61 69 6e 74 20 61 72 6f 75 6e 64 20 69 6e 74 ns.--match-constraint.around.int
181c0 6f 20 61 20 62 6c 61 63 6b 6c 69 73 74 20 69 6e 73 74 65 61 64 20 6f 66 20 77 68 69 74 65 6c 69 o.a.blacklist.instead.of.whiteli
181e0 73 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 77 69 74 68 2d 72 65 70 6c st'),.new.InputOption('with-repl
18200 61 63 65 73 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 aces',.'',.InputOption::VALUE_NO
18220 4e 45 2c 20 27 53 65 61 72 63 68 20 66 6f 72 20 72 65 70 6c 61 63 65 64 20 70 61 63 6b 61 67 65 NE,.'Search.for.replaced.package
18240 73 20 61 73 20 77 65 6c 6c 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 s.as.well'),.)).->setHelp(<<<EOT
18260 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 6e 20 61 .Displays.detailed.information.a
18280 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 65 6e 63 bout.where.a.package.is.referenc
182a0 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 64 65 70 ed...<info>php.composer.phar.dep
182c0 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 0a 0a 45 ends.composer/composer</info>..E
182e0 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
18300 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
18320 75 74 49 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 utInterface.$output).{.$composer
18340 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 6d 6d 61 .=.$this->getComposer();..$comma
18360 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 75 67 69 ndEvent.=.new.CommandEvent(Plugi
18380 6e 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 27 64 65 70 65 6e 64 73 27 2c 20 24 69 6e nEvents::COMMAND,.'depends',.$in
183a0 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 76 65 put,.$output);.$composer->getEve
183c0 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 61 6e ntDispatcher()->dispatch($comman
183e0 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 6e 74 dEvent->getName(),.$commandEvent
18400 29 3b 0a 0a 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 20 3d 20 24 63 6f 6d 70 6f 73 );..$platformOverrides.=.$compos
18420 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 70 6c 61 74 66 6f 72 6d 27 29 er->getConfig()->get('platform')
18440 20 3f 3a 20 61 72 72 61 79 28 29 3b 0a 24 72 65 70 6f 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 .?:.array();.$repo.=.new.Composi
18460 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 0a 6e 65 77 20 41 72 72 61 79 52 65 70 teRepository(array(.new.ArrayRep
18480 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b ository(array($composer->getPack
184a0 61 67 65 28 29 29 29 2c 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 age())),.$composer->getRepositor
184c0 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()
184e0 2c 0a 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 79 28 29 ,.new.PlatformRepository(array()
18500 2c 20 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 29 2c 0a 29 29 3b 0a 24 6e 65 65 64 ,.$platformOverrides),.));.$need
18520 6c 65 20 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 le.=.$input->getArgument('packag
18540 65 27 29 3b 0a 0a 24 70 6f 6f 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c 28 29 3b 0a 24 70 6f 6f 6c 2d e');..$pool.=.new.Pool();.$pool-
18560 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 29 3b 0a 0a 24 70 61 63 6b 61 67 65 >addRepository($repo);..$package
18580 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 6e 65 65 64 6c 65 29 s.=.$pool->whatProvides($needle)
185a0 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 ;.if.(empty($packages)).{.throw.
185c0 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 43 new.\InvalidArgumentException('C
185e0 6f 75 6c 64 20 6e 6f 74 20 66 69 6e 64 20 70 61 63 6b 61 67 65 20 22 27 2e 24 6e 65 65 64 6c 65 ould.not.find.package."'.$needle
18600 2e 27 22 20 69 6e 20 79 6f 75 72 20 70 72 6f 6a 65 63 74 2e 27 29 3b 0a 7d 0a 0a 24 6c 69 6e 6b .'".in.your.project.');.}..$link
18620 54 79 70 65 73 20 3d 20 24 74 68 69 73 2d 3e 6c 69 6e 6b 54 79 70 65 73 3b 0a 0a 24 74 79 70 65 Types.=.$this->linkTypes;..$type
18640 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 74 79 70 65 29 20 75 s.=.array_map(function.($type).u
18660 73 65 20 28 24 6c 69 6e 6b 54 79 70 65 73 29 20 7b 0a 24 74 79 70 65 20 3d 20 72 74 72 69 6d 28 se.($linkTypes).{.$type.=.rtrim(
18680 24 74 79 70 65 2c 20 27 73 27 29 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 6c 69 6e 6b 54 79 70 $type,.'s');.if.(!isset($linkTyp
186a0 65 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 6c 69 64 es[$type])).{.throw.new.\Invalid
186c0 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 65 78 70 65 63 74 65 64 20 6c 69 ArgumentException('Unexpected.li
186e0 6e 6b 20 74 79 70 65 3a 20 27 2e 24 74 79 70 65 2e 27 2c 20 76 61 6c 69 64 20 74 79 70 65 73 3a nk.type:.'.$type.',.valid.types:
18700 20 27 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 24 6c 69 6e .'.implode(',.',.array_keys($lin
18720 6b 54 79 70 65 73 29 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 79 70 65 3b 0a 7d 2c 20 24 kTypes)));.}..return.$type;.},.$
18740 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6c 69 6e 6b 2d 74 79 70 65 27 29 29 3b 0a input->getOption('link-type'));.
18760 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 61 72 .$versionParser.=.new.VersionPar
18780 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 61 72 ser();.$constraint.=.$versionPar
187a0 73 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 69 6e 70 75 74 2d 3e 67 65 ser->parseConstraints($input->ge
187c0 74 4f 70 74 69 6f 6e 28 27 6d 61 74 63 68 2d 63 6f 6e 73 74 72 61 69 6e 74 27 29 29 3b 0a 24 6d tOption('match-constraint'));.$m
187e0 61 74 63 68 49 6e 76 65 72 74 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 atchInvert.=.$input->getOption('
18800 69 6e 76 65 72 74 2d 6d 61 74 63 68 2d 63 6f 6e 73 74 72 61 69 6e 74 27 29 3b 0a 0a 24 6e 65 65 invert-match-constraint');..$nee
18820 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 74 72 75 65 20 dles.=.array($needle);.if.(true.
18840 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 77 69 74 68 2d 72 65 70 6c ===.$input->getOption('with-repl
18860 61 63 65 73 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 aces')).{.foreach.($packages.as.
18880 24 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 $package).{.$needles.=.array_mer
188a0 67 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 ge($needles,.array_map(function.
188c0 28 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 (Link.$link).{.return.$link->get
188e0 54 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 Target();.},.$package->getReplac
18900 65 73 28 29 29 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 28 29 es()));.}.}..$messages.=.array()
18920 3b 0a 24 6f 75 74 70 75 74 50 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 69 6f ;.$outputPackages.=.array();.$io
18940 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 28 24 72 65 .=.$this->getIO();..foreach.($re
18960 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 20 7b po->getPackages().as.$package).{
18980 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 20 7b 0a 0a 66 6f .foreach.($types.as.$type).{..fo
189a0 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 6c 69 6e 6b 54 79 70 reach.($package->{'get'.$linkTyp
189c0 65 73 5b 24 74 79 70 65 5d 5b 30 5d 7d 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 66 6f 72 65 es[$type][0]}().as.$link).{.fore
189e0 61 63 68 20 28 24 6e 65 65 64 6c 65 73 20 61 73 20 24 6e 65 65 64 6c 65 29 20 7b 0a 69 66 20 28 ach.($needles.as.$needle).{.if.(
18a00 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 3d 3d 3d 20 24 6e 65 65 64 6c 65 20 26 $link->getTarget().===.$needle.&
18a20 26 20 28 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 2d 3e 6d 61 74 63 68 &.($link->getConstraint()->match
18a40 65 73 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 3f 20 21 24 6d 61 74 63 68 49 6e 76 65 72 74 20 es($constraint).?.!$matchInvert.
18a60 3a 20 24 6d 61 74 63 68 49 6e 76 65 72 74 29 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 6f :.$matchInvert)).{.if.(!isset($o
18a80 75 74 70 75 74 50 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 utputPackages[$package->getName(
18aa0 29 5d 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 27 3c 69 6e 66 6f 3e 27 2e 24 70 )])).{.$messages[].=.'<info>'.$p
18ac0 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 27 3c 2f 69 6e 66 ackage->getPrettyName()...'</inf
18ae0 6f 3e 20 27 20 2e 20 24 6c 69 6e 6b 54 79 70 65 73 5b 24 74 79 70 65 5d 5b 31 5d 20 2e 20 27 20 o>.'...$linkTypes[$type][1]...'.
18b00 27 20 2e 20 24 6e 65 65 64 6c 65 20 2e 27 20 28 3c 69 6e 66 6f 3e 27 20 2e 20 24 6c 69 6e 6b 2d '...$needle..'.(<info>'...$link-
18b20 3e 67 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 69 6e 66 6f >getPrettyConstraint()...'</info
18b40 3e 29 27 3b 0a 24 6f 75 74 70 75 74 50 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 >)';.$outputPackages[$package->g
18b60 65 74 4e 61 6d 65 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 etName()].=.true;.}.}.}.}.}.}..i
18b80 66 20 28 24 6d 65 73 73 61 67 65 73 29 20 7b 0a 73 6f 72 74 28 24 6d 65 73 73 61 67 65 73 29 3b f.($messages).{.sort($messages);
18ba0 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 29 3b 0a 7d 20 65 6c 73 65 20 7b .$io->write($messages);.}.else.{
18bc0 0a 24 6d 61 74 63 68 54 65 78 74 20 3d 20 27 27 3b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 .$matchText.=.'';.if.($input->ge
18be0 74 4f 70 74 69 6f 6e 28 27 6d 61 74 63 68 2d 63 6f 6e 73 74 72 61 69 6e 74 27 29 20 21 3d 3d 20 tOption('match-constraint').!==.
18c00 27 2a 27 29 20 7b 0a 24 6d 61 74 63 68 54 65 78 74 20 3d 20 27 20 69 6e 20 76 65 72 73 69 6f 6e '*').{.$matchText.=.'.in.version
18c20 73 20 27 2e 28 24 6d 61 74 63 68 49 6e 76 65 72 74 20 3f 20 27 6e 6f 74 20 27 3a 27 27 29 2e 27 s.'.($matchInvert.?.'not.':'').'
18c40 6d 61 74 63 68 69 6e 67 20 27 20 2e 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 matching.'...$input->getOption('
18c60 6d 61 74 63 68 2d 63 6f 6e 73 74 72 61 69 6e 74 27 29 3b 0a 7d 0a 24 69 6f 2d 3e 77 72 69 74 65 match-constraint');.}.$io->write
18c80 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 54 68 65 72 65 20 69 73 20 6e 6f 20 69 6e 73 74 61 6c 6c Error('<info>There.is.no.install
18ca0 65 64 20 70 61 63 6b 61 67 65 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 22 27 2e 24 6e 65 65 64 ed.package.depending.on."'.$need
18cc0 6c 65 2e 27 22 27 2e 24 6d 61 74 63 68 54 65 78 74 2e 27 2e 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d le.'"'.$matchText.'.</info>');.}
18ce0 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.
18d00 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 6f 73 65 72 5c Composer\Command;..use.Composer\
18d20 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a Composer;.use.Composer\Factory;.
18d40 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 65 use.Composer\Config;.use.Compose
18d60 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 3b r\Downloader\TransportException;
18d80 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 6e 64 45 76 65 6e .use.Composer\Plugin\CommandEven
18da0 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 67 69 6e 45 76 65 t;.use.Composer\Plugin\PluginEve
18dc0 6e 74 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 43 6f 6e 66 69 67 56 61 6c nts;.use.Composer\Util\ConfigVal
18de0 69 64 61 74 6f 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 idator;.use.Composer\Util\Proces
18e00 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
18e20 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 55 74 69 6c oteFilesystem;.use.Composer\Util
18e40 5c 53 74 72 65 61 6d 43 6f 6e 74 65 78 74 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 53 79 6d 66 6f \StreamContextFactory;.use.Symfo
18e60 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
18e80 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
18ea0 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 3b \Console\Output\OutputInterface;
18ec0 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 69 61 67 6e 6f 73 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e .....class.DiagnoseCommand.exten
18ee0 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 66 73 3b 0a 0a 0a ds.Command.{..protected.$rfs;...
18f00 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 protected.$process;...protected.
18f20 24 66 61 69 6c 75 72 65 73 20 3d 20 30 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 $failures.=.0;..protected.functi
18f40 6f 6e 20 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 on.configure().{.$this.->setName
18f60 28 27 64 69 61 67 6e 6f 73 65 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 44 ('diagnose').->setDescription('D
18f80 69 61 67 6e 6f 73 65 73 20 74 68 65 20 73 79 73 74 65 6d 20 74 6f 20 69 64 65 6e 74 69 66 79 20 iagnoses.the.system.to.identify.
18fa0 63 6f 6d 6d 6f 6e 20 65 72 72 6f 72 73 2e 27 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f common.errors.').->setHelp(<<<EO
18fc0 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 64 69 61 67 6e 6f 73 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d T.The.<info>diagnose</info>.comm
18fe0 61 6e 64 20 63 68 65 63 6b 73 20 63 6f 6d 6d 6f 6e 20 65 72 72 6f 72 73 20 74 6f 20 68 65 6c 70 and.checks.common.errors.to.help
19000 20 64 65 62 75 67 67 69 6e 67 20 70 72 6f 62 6c 65 6d 73 2e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a .debugging.problems...EOT.).;.}.
19020 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 28 49 ....protected.function.execute(I
19040 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 65 nputInterface.$input,.OutputInte
19060 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 24 74 68 rface.$output).{.$composer.=.$th
19080 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 66 61 6c 73 65 29 3b 0a 24 69 6f 20 3d 20 24 74 is->getComposer(false);.$io.=.$t
190a0 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a his->getIO();..if.($composer).{.
190c0 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
190e0 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 64 69 61 67 6e 6f 73 (PluginEvents::COMMAND,.'diagnos
19100 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 72 2d e',.$input,.$output);.$composer-
19120 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 28 >getEventDispatcher()->dispatch(
19140 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 6d 61 $commandEvent->getName(),.$comma
19160 6e 64 45 76 65 6e 74 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 ndEvent);..$io->write('Checking.
19180 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 3a 20 27 2c 20 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d composer.json:.',.false);.$this-
191a0 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 43 6f 6d 70 6f 73 >outputResult($this->checkCompos
191c0 65 72 53 63 68 65 6d 61 28 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 29 20 7b erSchema());.}..if.($composer).{
191e0 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 67 28 .$config.=.$composer->getConfig(
19200 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 );.}.else.{.$config.=.Factory::c
19220 72 65 61 74 65 43 6f 6e 66 69 67 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 46 reateConfig();.}..$this->rfs.=.F
19240 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 24 actory::createRemoteFilesystem($
19260 69 6f 2c 20 24 63 6f 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 io,.$config);.$this->process.=.n
19280 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 0a 24 69 6f 2d 3e 77 ew.ProcessExecutor($io);..$io->w
192a0 72 69 74 65 28 27 43 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 rite('Checking.platform.settings
192c0 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
192e0 28 24 74 68 69 73 2d 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 ($this->checkPlatform());..$io->
19300 77 72 69 74 65 28 27 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 write('Checking.git.settings:.',
19320 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 74 68 .false);.$this->outputResult($th
19340 69 73 2d 3e 63 68 65 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 is->checkGit());..$io->write('Ch
19360 65 63 6b 69 6e 67 20 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 ecking.http.connectivity.to.pack
19380 61 67 69 73 74 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 agist:.',.false);.$this->outputR
193a0 65 73 75 6c 74 28 24 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 esult($this->checkHttp('http',.$
193c0 63 6f 6e 66 69 67 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 config));..$io->write('Checking.
193e0 68 74 74 70 73 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 https.connectivity.to.packagist:
19400 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 28 .',.false);.$this->outputResult(
19420 24 74 68 69 73 2d 3e 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 $this->checkHttp('https',.$confi
19440 67 29 29 3b 0a 0a 24 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 g));..$opts.=.stream_context_get
19460 5f 6f 70 74 69 6f 6e 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 _options(StreamContextFactory::g
19480 65 74 43 6f 6e 74 65 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 etContext('http://example.org'))
194a0 3b 0a 69 66 20 28 21 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 ;.if.(!empty($opts['http']['prox
194c0 79 27 5d 29 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 48 54 54 y'])).{.$io->write('Checking.HTT
194e0 50 20 70 72 6f 78 79 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 P.proxy:.',.false);.$this->outpu
19500 74 52 65 73 75 6c 74 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 tResult($this->checkHttpProxy())
19520 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 20 70 72 6f 78 ;.$io->write('Checking.HTTP.prox
19540 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 3a 20 27 y.support.for.request_fulluri:.'
19560 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 74 ,.false);.$this->outputResult($t
19580 68 69 73 2d 3e 63 68 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 his->checkHttpProxyFullUriReques
195a0 74 50 61 72 61 6d 28 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 tParam());.$io->write('Checking.
195c0 48 54 54 50 53 20 70 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 HTTPS.proxy.support.for.request_
195e0 66 75 6c 6c 75 72 69 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 fulluri:.',.false);.$this->outpu
19600 74 52 65 73 75 6c 74 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 tResult($this->checkHttpsProxyFu
19620 6c 6c 55 72 69 52 65 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 llUriRequestParam());.}..if.($oa
19640 75 74 68 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 uth.=.$config->get('github-oauth
19660 27 29 29 20 7b 0a 66 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 ')).{.foreach.($oauth.as.$domain
19680 20 3d 3e 20 24 74 6f 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 .=>.$token).{.$io->write('Checki
196a0 6e 67 20 27 2e 24 64 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 ng.'.$domain.'.oauth.access:.',.
196c0 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 74 68 69 false);.$this->outputResult($thi
196e0 73 2d 3e 63 68 65 63 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 s->checkGithubOauth($domain,.$to
19700 6b 65 6e 29 29 3b 0a 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 ken));.}.}.else.{.$io->write('Ch
19720 65 63 6b 69 6e 67 20 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 ecking.github.com.rate.limit:.',
19740 20 66 61 6c 73 65 29 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 .false);.try.{.$rate.=.$this->ge
19760 74 47 69 74 68 75 62 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 tGithubRateLimit('github.com');.
19780 24 74 68 69 73 2d 3e 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 $this->outputResult(true);.if.(1
197a0 30 20 3e 20 24 72 61 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 0.>.$rate['remaining']).{.$io->w
197c0 72 69 74 65 28 27 3c 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 rite('<warning>WARNING</warning>
197e0 27 29 3b 0a 24 69 6f 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 ');.$io->write(sprintf(.'<commen
19800 74 3e 47 69 74 68 75 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 t>Github.has.a.rate.limit.on.the
19820 69 72 20 41 50 49 2e 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 ir.API..'...'You.currently.have.
19840 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 6f 6c 64 3e 20 <options=bold>%u</options=bold>.
19860 27 0a 2e 20 27 6f 75 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 '...'out.of.<options=bold>%u</op
19880 74 69 6f 6e 73 3d 62 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 tions=bold>.requests.left.'...PH
198a0 50 5f 45 4f 4c 0a 2e 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 P_EOL...'See.https://developer.g
198c0 69 74 68 75 62 2e 63 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 ithub.com/v3/#rate-limiting.and.
198e0 61 6c 73 6f 27 20 2e 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 also'...PHP_EOL...'....https://g
19900 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
19920 62 6c 65 73 68 6f 6f 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 bleshooting.md#api-rate-limit-an
19940 64 2d 6f 61 75 74 68 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 d-oauth-tokens</comment>',.$rate
19960 5b 27 72 65 6d 61 69 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 ['remaining'],.$rate['limit'].))
19980 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 69 66 ;.}.}.catch.(\Exception.$e).{.if
199a0 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 74 69 .($e.instanceof.TransportExcepti
199c0 6f 6e 20 26 26 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 24 on.&&.$e->getCode().===.401).{.$
199e0 74 68 69 73 2d 3e 6f 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 this->outputResult('<comment>The
19a00 20 6f 61 75 74 68 20 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 .oauth.token.for.github.com.seem
19a20 73 20 69 6e 76 61 6c 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 s.invalid,.run."composer.config.
19a40 2d 2d 67 6c 6f 62 61 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 --global.--unset.github-oauth.gi
19a60 74 68 75 62 2e 63 6f 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 thub.com".to.remove.it</comment>
19a80 27 29 3b 0a 7d 20 65 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 ');.}.else.{.$this->outputResult
19aa0 28 24 65 29 3b 0a 7d 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 ($e);.}.}.}..$io->write('Checkin
19ac0 67 20 64 69 73 6b 20 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 g.disk.free.space:.',.false);.$t
19ae0 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 44 69 his->outputResult($this->checkDi
19b00 73 6b 53 70 61 63 65 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 skSpace($config));..$io->write('
19b20 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
19b40 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-
19b60 3e 63 68 65 63 6b 56 65 72 73 69 6f 6e 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d >checkVersion());..return.$this-
19b80 3e 66 61 69 6c 75 72 65 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 >failures;.}..private.function.c
19ba0 68 65 63 6b 43 6f 6d 70 6f 73 65 72 53 63 68 65 6d 61 28 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f heckComposerSchema().{.$validato
19bc0 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 74 68 69 73 2d 3e 67 r.=.new.ConfigValidator($this->g
19be0 65 74 49 4f 28 29 29 3b 0a 6c 69 73 74 28 24 65 72 72 6f 72 73 2c 20 2c 20 24 77 61 72 6e 69 6e etIO());.list($errors,.,.$warnin
19c00 67 73 29 20 3d 20 24 76 61 6c 69 64 61 74 6f 72 2d 3e 76 61 6c 69 64 61 74 65 28 46 61 63 74 6f gs).=.$validator->validate(Facto
19c20 72 79 3a 3a 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 29 29 3b 0a 0a 69 66 20 28 24 65 72 ry::getComposerFile());..if.($er
19c40 72 6f 72 73 20 7c 7c 20 24 77 61 72 6e 69 6e 67 73 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 20 3d rors.||.$warnings).{.$messages.=
19c60 20 61 72 72 61 79 28 0a 27 65 72 72 6f 72 27 20 3d 3e 20 24 65 72 72 6f 72 73 2c 0a 27 77 61 72 .array(.'error'.=>.$errors,.'war
19c80 6e 69 6e 67 27 20 3d 3e 20 24 77 61 72 6e 69 6e 67 73 2c 0a 29 3b 0a 0a 24 6f 75 74 70 75 74 20 ning'.=>.$warnings,.);..$output.
19ca0 3d 20 27 27 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 73 74 79 =.'';.foreach.($messages.as.$sty
19cc0 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 20 61 73 le.=>.$msgs).{.foreach.($msgs.as
19ce0 20 24 6d 73 67 29 20 7b 0a 24 6f 75 74 70 75 74 20 2e 3d 20 27 3c 27 20 2e 20 24 73 74 79 6c 65 .$msg).{.$output..=.'<'...$style
19d00 20 2e 20 27 3e 27 20 2e 20 24 6d 73 67 20 2e 20 27 3c 2f 27 20 2e 20 24 73 74 79 6c 65 20 2e 20 ...'>'...$msg...'</'...$style...
19d20 27 3e 27 20 2e 20 50 48 50 5f 45 4f 4c 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 72 74 72 69 6d '>'...PHP_EOL;.}.}..return.rtrim
19d40 28 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 ($output);.}..return.true;.}..pr
19d60 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 47 69 74 28 29 0a 7b 0a 24 74 68 69 ivate.function.checkGit().{.$thi
19d80 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 63 6f 6e 66 69 67 20 s->process->execute('git.config.
19da0 63 6f 6c 6f 72 2e 75 69 27 2c 20 24 6f 75 74 70 75 74 29 3b 0a 69 66 20 28 73 74 72 74 6f 6c 6f color.ui',.$output);.if.(strtolo
19dc0 77 65 72 28 74 72 69 6d 28 24 6f 75 74 70 75 74 29 29 20 3d 3d 3d 20 27 61 6c 77 61 79 73 27 29 wer(trim($output)).===.'always')
19de0 20 7b 0a 72 65 74 75 72 6e 20 27 3c 63 6f 6d 6d 65 6e 74 3e 59 6f 75 72 20 67 69 74 20 63 6f 6c .{.return.'<comment>Your.git.col
19e00 6f 72 2e 75 69 20 73 65 74 74 69 6e 67 20 69 73 20 73 65 74 20 74 6f 20 61 6c 77 61 79 73 2c 20 or.ui.setting.is.set.to.always,.
19e20 74 68 69 73 20 69 73 20 6b 6e 6f 77 6e 20 74 6f 20 63 72 65 61 74 65 20 69 73 73 75 65 73 2e 20 this.is.known.to.create.issues..
19e40 55 73 65 20 22 67 69 74 20 63 6f 6e 66 69 67 20 2d 2d 67 6c 6f 62 61 6c 20 63 6f 6c 6f 72 2e 75 Use."git.config.--global.color.u
19e60 69 20 74 72 75 65 22 20 74 6f 20 73 65 74 20 69 74 20 63 6f 72 72 65 63 74 6c 79 2e 3c 2f 63 6f i.true".to.set.it.correctly.</co
19e80 6d 6d 65 6e 74 3e 27 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 mment>';.}..return.true;.}..priv
19ea0 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 48 74 74 70 28 24 70 72 6f 74 6f 2c 20 43 ate.function.checkHttp($proto,.C
19ec0 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 64 69 73 61 62 6c 65 54 6c 73 20 3d 20 66 onfig.$config).{.$disableTls.=.f
19ee0 61 6c 73 65 3b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 24 70 72 alse;.$result.=.array();.if.($pr
19f00 6f 74 6f 20 3d 3d 3d 20 27 68 74 74 70 73 27 20 26 26 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 oto.===.'https'.&&.$config->get(
19f20 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 7b 0a 24 64 69 73 61 'disable-tls').===.true).{.$disa
19f40 62 6c 65 54 6c 73 20 3d 20 74 72 75 65 3b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 27 3c 77 61 72 bleTls.=.true;.$result[].=.'<war
19f60 6e 69 6e 67 3e 43 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 64 ning>Composer.is.configured.to.d
19f80 69 73 61 62 6c 65 20 53 53 4c 2f 54 4c 53 20 70 72 6f 74 65 63 74 69 6f 6e 2e 20 54 68 69 73 20 isable.SSL/TLS.protection..This.
19fa0 77 69 6c 6c 20 6c 65 61 76 65 20 72 65 6d 6f 74 65 20 48 54 54 50 53 20 72 65 71 75 65 73 74 73 will.leave.remote.HTTPS.requests
19fc0 20 76 75 6c 6e 65 72 61 62 6c 65 20 74 6f 20 4d 61 6e 2d 49 6e 2d 54 68 65 2d 4d 69 64 64 6c 65 .vulnerable.to.Man-In-The-Middle
19fe0 20 61 74 74 61 63 6b 73 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 3b 0a 7d 0a 69 66 20 28 24 70 72 6f .attacks.</warning>';.}.if.($pro
1a000 74 6f 20 3d 3d 3d 20 27 68 74 74 70 73 27 20 26 26 20 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 to.===.'https'.&&.!extension_loa
1a020 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 20 26 26 20 21 24 64 69 73 61 62 6c 65 54 6c 73 29 20 ded('openssl').&&.!$disableTls).
1a040 7b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 27 3c 65 72 72 6f 72 3e 43 6f 6d 70 6f 73 65 72 20 69 {.$result[].=.'<error>Composer.i
1a060 73 20 63 6f 6e 66 69 67 75 72 65 64 20 74 6f 20 75 73 65 20 53 53 4c 2f 54 4c 53 20 70 72 6f 74 s.configured.to.use.SSL/TLS.prot
1a080 65 63 74 69 6f 6e 20 62 75 74 20 74 68 65 20 6f 70 65 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e ection.but.the.openssl.extension
1a0a0 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 2e 3c 2f 65 72 72 6f 72 3e 27 3b 0a 7d 0a 0a .is.not.available.</error>';.}..
1a0c0 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
1a0e0 61 63 6b 61 67 69 73 74 2e 6f 72 67 27 2c 20 24 70 72 6f 74 6f 20 2e 20 27 3a 2f 2f 70 61 63 6b ackagist.org',.$proto...'://pack
1a100 61 67 69 73 74 2e 6f 72 67 2f 70 61 63 6b 61 67 65 73 2e 6a 73 6f 6e 27 2c 20 66 61 6c 73 65 29 agist.org/packages.json',.false)
1a120 3b 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
1a140 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 65 2d 3e 67 65 74 ).{.if.(false.!==.strpos($e->get
1a160 4d 65 73 73 61 67 65 28 29 2c 20 27 63 61 66 69 6c 65 27 29 29 20 7b 0a 24 72 65 73 75 6c 74 5b Message(),.'cafile')).{.$result[
1a180 5d 20 3d 20 27 3c 65 72 72 6f 72 3e 5b 27 20 2e 20 67 65 74 5f 63 6c 61 73 73 28 24 65 29 20 2e ].=.'<error>['...get_class($e)..
1a1a0 20 27 5d 20 27 20 2e 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 20 2e 20 27 3c 2f 65 72 .'].'...$e->getMessage()...'</er
1a1c0 72 6f 72 3e 27 3b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 27 3c 65 72 72 6f 72 3e 55 6e 61 62 6c ror>';.$result[].=.'<error>Unabl
1a1e0 65 20 74 6f 20 6c 6f 63 61 74 65 20 61 20 76 61 6c 69 64 20 43 41 20 63 65 72 74 69 66 69 63 61 e.to.locate.a.valid.CA.certifica
1a200 74 65 20 66 69 6c 65 2e 20 59 6f 75 20 6d 75 73 74 20 73 65 74 20 61 20 76 61 6c 69 64 20 5c 27 te.file..You.must.set.a.valid.\'
1a220 63 61 66 69 6c 65 5c 27 20 6f 70 74 69 6f 6e 2e 3c 2f 65 72 72 6f 72 3e 27 3b 0a 24 72 65 73 75 cafile\'.option.</error>';.$resu
1a240 6c 74 5b 5d 20 3d 20 27 3c 65 72 72 6f 72 3e 59 6f 75 20 63 61 6e 20 61 6c 74 65 72 6e 61 74 69 lt[].=.'<error>You.can.alternati
1a260 76 65 6c 79 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 vely.disable.this.error,.at.your
1a280 20 6f 77 6e 20 72 69 73 6b 2c 20 62 79 20 65 6e 61 62 6c 69 6e 67 20 74 68 65 20 5c 27 64 69 73 .own.risk,.by.enabling.the.\'dis
1a2a0 61 62 6c 65 2d 74 6c 73 5c 27 20 6f 70 74 69 6f 6e 2e 3c 2f 65 72 72 6f 72 3e 27 3b 0a 7d 20 65 able-tls\'.option.</error>';.}.e
1a2c0 6c 73 65 20 7b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 72 65 73 75 6c 74 2c 20 27 5b 27 lse.{.array_unshift($result,.'['
1a2e0 20 2e 20 67 65 74 5f 63 6c 61 73 73 28 24 65 29 20 2e 20 27 5d 20 27 20 2e 20 24 65 2d 3e 67 65 ...get_class($e)...'].'...$e->ge
1a300 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 72 65 73 tMessage());.}.}..if.(count($res
1a320 75 6c 74 29 20 3e 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 72 ult).>.0).{.return.$result;.}..r
1a340 65 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 eturn.true;.}..private.function.
1a360 63 68 65 63 6b 48 74 74 70 50 72 6f 78 79 28 29 0a 7b 0a 24 70 72 6f 74 6f 63 6f 6c 20 3d 20 65 checkHttpProxy().{.$protocol.=.e
1a380 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 3f 20 27 68 74 xtension_loaded('openssl').?.'ht
1a3a0 74 70 73 27 20 3a 20 27 68 74 74 70 27 3b 0a 74 72 79 20 7b 0a 24 6a 73 6f 6e 20 3d 20 6a 73 6f tps'.:.'http';.try.{.$json.=.jso
1a3c0 6e 5f 64 65 63 6f 64 65 28 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 n_decode($this->rfs->getContents
1a3e0 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 6c 20 2e 20 27 3a ('packagist.org',.$protocol...':
1a400 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 2c 20 //packagist.org/packages.json',.
1a420 66 61 6c 73 65 29 2c 20 74 72 75 65 29 3b 0a 24 68 61 73 68 20 3d 20 72 65 73 65 74 28 24 6a 73 false),.true);.$hash.=.reset($js
1a440 6f 6e 5b 27 70 72 6f 76 69 64 65 72 2d 69 6e 63 6c 75 64 65 73 27 5d 29 3b 0a 24 68 61 73 68 20 on['provider-includes']);.$hash.
1a460 3d 20 24 68 61 73 68 5b 27 73 68 61 32 35 36 27 5d 3b 0a 24 70 61 74 68 20 3d 20 73 74 72 5f 72 =.$hash['sha256'];.$path.=.str_r
1a480 65 70 6c 61 63 65 28 27 25 68 61 73 68 25 27 2c 20 24 68 61 73 68 2c 20 6b 65 79 28 24 6a 73 6f eplace('%hash%',.$hash,.key($jso
1a4a0 6e 5b 27 70 72 6f 76 69 64 65 72 2d 69 6e 63 6c 75 64 65 73 27 5d 29 29 3b 0a 24 70 72 6f 76 69 n['provider-includes']));.$provi
1a4c0 64 65 72 20 3d 20 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 der.=.$this->rfs->getContents('p
1a4e0 61 63 6b 61 67 69 73 74 2e 6f 72 67 27 2c 20 24 70 72 6f 74 6f 63 6f 6c 20 2e 20 27 3a 2f 2f 70 ackagist.org',.$protocol...'://p
1a500 61 63 6b 61 67 69 73 74 2e 6f 72 67 2f 27 2e 24 70 61 74 68 2c 20 66 61 6c 73 65 29 3b 0a 0a 69 ackagist.org/'.$path,.false);..i
1a520 66 20 28 68 61 73 68 28 27 73 68 61 32 35 36 27 2c 20 24 70 72 6f 76 69 64 65 72 29 20 21 3d 3d f.(hash('sha256',.$provider).!==
1a540 20 24 68 61 73 68 29 20 7b 0a 72 65 74 75 72 6e 20 27 49 74 20 73 65 65 6d 73 20 74 68 61 74 20 .$hash).{.return.'It.seems.that.
1a560 79 6f 75 72 20 70 72 6f 78 79 20 69 73 20 6d 6f 64 69 66 79 69 6e 67 20 68 74 74 70 20 74 72 61 your.proxy.is.modifying.http.tra
1a580 66 66 69 63 20 6f 6e 20 74 68 65 20 66 6c 79 27 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 ffic.on.the.fly';.}.}.catch.(\Ex
1a5a0 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 65 3b 0a 7d 0a 0a 72 65 74 75 ception.$e).{.return.$e;.}..retu
1a5c0 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 65 20 66 75 6e 63 74 rn.true;.}.........private.funct
1a5e0 69 6f 6e 20 63 68 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 ion.checkHttpProxyFullUriRequest
1a600 50 61 72 61 6d 28 29 0a 7b 0a 24 75 72 6c 20 3d 20 27 68 74 74 70 3a 2f 2f 70 61 63 6b 61 67 69 Param().{.$url.=.'http://packagi
1a620 73 74 2e 6f 72 67 2f 70 61 63 6b 61 67 65 73 2e 6a 73 6f 6e 27 3b 0a 74 72 79 20 7b 0a 24 74 68 st.org/packages.json';.try.{.$th
1a640 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 27 70 61 63 6b 61 67 69 73 74 2e is->rfs->getContents('packagist.
1a660 6f 72 67 27 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 org',.$url,.false);.}.catch.(Tra
1a680 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 20 7b 0a 24 74 68 69 nsportException.$e).{.try.{.$thi
1a6a0 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 27 70 61 63 6b 61 67 69 73 74 2e 6f s->rfs->getContents('packagist.o
1a6c0 72 67 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 70 27 20 3d rg',.$url,.false,.array('http'.=
1a6e0 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 20 66 61 6c >.array('request_fulluri'.=>.fal
1a700 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 65 70 74 69 se)));.}.catch.(TransportExcepti
1a720 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 73 73 65 73 on.$e).{.return.'Unable.to.asses
1a740 73 20 74 68 65 20 73 69 74 75 61 74 69 6f 6e 2c 20 6d 61 79 62 65 20 70 61 63 6b 61 67 69 73 74 s.the.situation,.maybe.packagist
1a760 2e 6f 72 67 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 .org.is.down.('.$e->getMessage()
1a780 2e 27 29 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 .')';.}..return.'It.seems.there.
1a7a0 69 73 20 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 is.a.problem.with.your.proxy.ser
1a7c0 76 65 72 2c 20 74 72 79 20 73 65 74 74 69 6e 67 20 74 68 65 20 22 48 54 54 50 5f 50 52 4f 58 59 ver,.try.setting.the."HTTP_PROXY
1a7e0 5f 52 45 51 55 45 53 54 5f 46 55 4c 4c 55 52 49 22 20 61 6e 64 20 22 48 54 54 50 53 5f 50 52 4f _REQUEST_FULLURI".and."HTTPS_PRO
1a800 58 59 5f 52 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 XY_REQUEST_FULLURI".environment.
1a820 76 61 72 69 61 62 6c 65 73 20 74 6f 20 22 66 61 6c 73 65 22 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e variables.to."false"';.}..return
1a840 20 74 72 75 65 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 .true;.}.........private.functio
1a860 6e 20 63 68 65 63 6b 48 74 74 70 73 50 72 6f 78 79 46 75 6c 6c 55 72 69 52 65 71 75 65 73 74 50 n.checkHttpsProxyFullUriRequestP
1a880 61 72 61 6d 28 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 aram().{.if.(!extension_loaded('
1a8a0 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 59 6f 75 20 6e 65 65 64 20 74 68 openssl')).{.return.'You.need.th
1a8c0 65 20 6f 70 65 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e 20 69 6e 73 74 61 6c 6c 65 64 20 66 6f e.openssl.extension.installed.fo
1a8e0 72 20 74 68 69 73 20 63 68 65 63 6b 27 3b 0a 7d 0a 0a 24 75 72 6c 20 3d 20 27 68 74 74 70 73 3a r.this.check';.}..$url.=.'https:
1a900 2f 2f 61 70 69 2e 67 69 74 68 75 62 2e 63 6f 6d 2f 72 65 70 6f 73 2f 53 65 6c 64 61 65 6b 2f 6a //api.github.com/repos/Seldaek/j
1a920 73 6f 6e 6c 69 6e 74 2f 7a 69 70 62 61 6c 6c 2f 31 2e 30 2e 30 27 3b 0a 74 72 79 20 7b 0a 24 74 sonlint/zipball/1.0.0';.try.{.$t
1a940 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 75 62 2e 63 6f his->rfs->getContents('github.co
1a960 6d 27 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 m',.$url,.false);.}.catch.(Trans
1a980 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d portException.$e).{.try.{.$this-
1a9a0 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 27 67 69 74 68 75 62 2e 63 6f 6d 27 2c 20 >rfs->getContents('github.com',.
1a9c0 24 75 72 6c 2c 20 66 61 6c 73 65 2c 20 61 72 72 61 79 28 27 68 74 74 70 27 20 3d 3e 20 61 72 72 $url,.false,.array('http'.=>.arr
1a9e0 61 79 28 27 72 65 71 75 65 73 74 5f 66 75 6c 6c 75 72 69 27 20 3d 3e 20 66 61 6c 73 65 29 29 29 ay('request_fulluri'.=>.false)))
1aa00 3b 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
1aa20 29 20 7b 0a 72 65 74 75 72 6e 20 27 55 6e 61 62 6c 65 20 74 6f 20 61 73 73 65 73 73 20 74 68 65 ).{.return.'Unable.to.assess.the
1aa40 20 73 69 74 75 61 74 69 6f 6e 2c 20 6d 61 79 62 65 20 67 69 74 68 75 62 20 69 73 20 64 6f 77 6e .situation,.maybe.github.is.down
1aa60 20 28 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 27 3b 0a 7d 0a 0a 72 65 74 .('.$e->getMessage().')';.}..ret
1aa80 75 72 6e 20 27 49 74 20 73 65 65 6d 73 20 74 68 65 72 65 20 69 73 20 61 20 70 72 6f 62 6c 65 6d urn.'It.seems.there.is.a.problem
1aaa0 20 77 69 74 68 20 79 6f 75 72 20 70 72 6f 78 79 20 73 65 72 76 65 72 2c 20 74 72 79 20 73 65 74 .with.your.proxy.server,.try.set
1aac0 74 69 6e 67 20 74 68 65 20 22 48 54 54 50 53 5f 50 52 4f 58 59 5f 52 45 51 55 45 53 54 5f 46 55 ting.the."HTTPS_PROXY_REQUEST_FU
1aae0 4c 4c 55 52 49 22 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 20 74 6f 20 22 LLURI".environment.variable.to."
1ab00 66 61 6c 73 65 22 27 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 false"';.}..return.true;.}..priv
1ab20 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 47 69 74 68 75 62 4f 61 75 74 68 28 24 64 ate.function.checkGithubOauth($d
1ab40 6f 6d 61 69 6e 2c 20 24 74 6f 6b 65 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d omain,.$token).{.$this->getIO()-
1ab60 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 6e 2c 20 24 74 6f 6b >setAuthentication($domain,.$tok
1ab80 65 6e 2c 20 27 78 2d 6f 61 75 74 68 2d 62 61 73 69 63 27 29 3b 0a 74 72 79 20 7b 0a 24 75 72 6c en,.'x-oauth-basic');.try.{.$url
1aba0 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 3f 20 27 68 .=.$domain.===.'github.com'.?.'h
1abc0 74 74 70 73 3a 2f 2f 61 70 69 2e 27 2e 24 64 6f 6d 61 69 6e 2e 27 2f 75 73 65 72 2f 72 65 70 6f ttps://api.'.$domain.'/user/repo
1abe0 73 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 s'.:.'https://'.$domain.'/api/v3
1ac00 2f 75 73 65 72 2f 72 65 70 6f 73 27 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 66 73 /user/repos';..return.$this->rfs
1ac20 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 6c ->getContents($domain,.$url,.fal
1ac40 73 65 2c 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 se,.array(.'retry-auth-failure'.
1ac60 3d 3e 20 66 61 6c 73 65 2c 0a 29 29 20 3f 20 74 72 75 65 20 3a 20 27 55 6e 65 78 70 65 63 74 65 =>.false,.)).?.true.:.'Unexpecte
1ac80 64 20 65 72 72 6f 72 27 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 d.error';.}.catch.(\Exception.$e
1aca0 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 73 70 6f 72 74 45 ).{.if.($e.instanceof.TransportE
1acc0 78 63 65 70 74 69 6f 6e 20 26 26 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 20 3d 3d 3d 20 34 30 xception.&&.$e->getCode().===.40
1ace0 31 29 20 7b 0a 72 65 74 75 72 6e 20 27 3c 63 6f 6d 6d 65 6e 74 3e 54 68 65 20 6f 61 75 74 68 20 1).{.return.'<comment>The.oauth.
1ad00 74 6f 6b 65 6e 20 66 6f 72 20 27 2e 24 64 6f 6d 61 69 6e 2e 27 20 73 65 65 6d 73 20 69 6e 76 61 token.for.'.$domain.'.seems.inva
1ad20 6c 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 lid,.run."composer.config.--glob
1ad40 61 6c 20 2d 2d 75 6e 73 65 74 20 67 69 74 68 75 62 2d 6f 61 75 74 68 2e 27 2e 24 64 6f 6d 61 69 al.--unset.github-oauth.'.$domai
1ad60 6e 2e 27 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 3b 0a 7d 0a n.'".to.remove.it</comment>';.}.
1ad80 0a 72 65 74 75 72 6e 20 24 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 .return.$e;.}.}........private.f
1ada0 75 6e 63 74 69 6f 6e 20 67 65 74 47 69 74 68 75 62 52 61 74 65 4c 69 6d 69 74 28 24 64 6f 6d 61 unction.getGithubRateLimit($doma
1adc0 69 6e 2c 20 24 74 6f 6b 65 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 74 6f 6b 65 6e 29 in,.$token.=.null).{.if.($token)
1ade0 20 7b 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 73 65 74 41 75 74 68 65 6e 74 69 63 61 .{.$this->getIO()->setAuthentica
1ae00 74 69 6f 6e 28 24 64 6f 6d 61 69 6e 2c 20 24 74 6f 6b 65 6e 2c 20 27 78 2d 6f 61 75 74 68 2d 62 tion($domain,.$token,.'x-oauth-b
1ae20 61 73 69 63 27 29 3b 0a 7d 0a 0a 24 75 72 6c 20 3d 20 24 64 6f 6d 61 69 6e 20 3d 3d 3d 20 27 67 asic');.}..$url.=.$domain.===.'g
1ae40 69 74 68 75 62 2e 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 ithub.com'.?.'https://api.'.$dom
1ae60 61 69 6e 2e 27 2f 72 61 74 65 5f 6c 69 6d 69 74 27 20 3a 20 27 68 74 74 70 73 3a 2f 2f 27 2e 24 ain.'/rate_limit'.:.'https://'.$
1ae80 64 6f 6d 61 69 6e 2e 27 2f 61 70 69 2f 72 61 74 65 5f 6c 69 6d 69 74 27 3b 0a 24 6a 73 6f 6e 20 domain.'/api/rate_limit';.$json.
1aea0 3d 20 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 64 6f 6d 61 69 =.$this->rfs->getContents($domai
1aec0 6e 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 2c 20 61 72 72 61 79 28 27 72 65 74 72 79 2d 61 75 74 n,.$url,.false,.array('retry-aut
1aee0 68 2d 66 61 69 6c 75 72 65 27 20 3d 3e 20 66 61 6c 73 65 29 29 3b 0a 24 64 61 74 61 20 3d 20 6a h-failure'.=>.false));.$data.=.j
1af00 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 0a 72 65 74 75 72 6e son_decode($json,.true);..return
1af20 20 24 64 61 74 61 5b 27 72 65 73 6f 75 72 63 65 73 27 5d 5b 27 63 6f 72 65 27 5d 3b 0a 7d 0a 0a .$data['resources']['core'];.}..
1af40 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 44 69 73 6b 53 70 61 63 65 28 private.function.checkDiskSpace(
1af60 24 63 6f 6e 66 69 67 29 0a 7b 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.
1af80 2a 20 31 30 32 34 3b 0a 69 66 20 28 28 28 24 64 66 20 3d 20 40 64 69 73 6b 5f 66 72 65 65 5f 73 *.1024;.if.((($df.=.@disk_free_s
1afa0 70 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 pace($dir.=.$config->get('home')
1afc0 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
1afe0 72 65 65 29 0a 7c 7c 20 28 28 24 64 66 20 3d 20 40 64 69 73 6b 5f 66 72 65 65 5f 73 70 61 63 65 ree).||.(($df.=.@disk_free_space
1b000 28 24 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 ($dir.=.$config->get('vendor-dir
1b020 27 29 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 '))).!==.false.&&.$df.<.$minSpac
1b040 65 46 72 65 65 29 0a 29 20 7b 0a 72 65 74 75 72 6e 20 27 3c 65 72 72 6f 72 3e 54 68 65 20 64 69 eFree).).{.return.'<error>The.di
1b060 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 3c 2f 65 72 72 sk.hosting.'.$dir.'.is.full</err
1b080 6f 72 3e 27 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 or>';.}..return.true;.}..private
1b0a0 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 24 70 72 6f 74 .function.checkVersion().{.$prot
1b0c0 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 6c ocol.=.extension_loaded('openssl
1b0e0 27 29 20 3f 20 27 68 74 74 70 73 27 20 3a 20 27 68 74 74 70 27 3b 0a 24 6c 61 74 65 73 74 20 3d ').?.'https'.:.'http';.$latest.=
1b100 20 74 72 69 6d 28 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 .trim($this->rfs->getContents('g
1b120 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 27 2c 20 24 70 72 6f 74 6f 63 6f 6c 20 2e 20 27 3a 2f etcomposer.org',.$protocol...':/
1b140 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 76 65 72 73 69 6f 6e 27 2c 20 66 61 6c 73 65 /getcomposer.org/version',.false
1b160 29 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 3d 3d 20 24 ));..if.(Composer::VERSION.!==.$
1b180 6c 61 74 65 73 74 20 26 26 20 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 52 53 49 4f 4e 20 21 3d 3d 20 latest.&&.Composer::VERSION.!==.
1b1a0 27 40 70 61 63 6b 61 67 65 5f 76 65 72 73 69 6f 6e 40 27 29 20 7b 0a 72 65 74 75 72 6e 20 27 3c '@package_version@').{.return.'<
1b1c0 63 6f 6d 6d 65 6e 74 3e 59 6f 75 20 61 72 65 20 6e 6f 74 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 comment>You.are.not.running.the.
1b1e0 6c 61 74 65 73 74 20 76 65 72 73 69 6f 6e 2c 20 72 75 6e 20 60 63 6f 6d 70 6f 73 65 72 20 73 65 latest.version,.run.`composer.se
1b200 6c 66 2d 75 70 64 61 74 65 60 20 74 6f 20 75 70 64 61 74 65 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 3b lf-update`.to.update</comment>';
1b220 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 66 .}..return.true;.}.....private.f
1b240 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 0a unction.outputResult($result).{.
1b260 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 3d $io.=.$this->getIO();.if.(true.=
1b280 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 3e ==.$result).{.$io->write('<info>
1b2a0 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 69 OK</info>');.}.else.{.$this->fai
1b2c0 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 4c lures++;.$io->write('<error>FAIL
1b2e0 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 65 </error>');.if.($result.instance
1b300 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 2e of.\Exception).{.$io->write('['.
1b320 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 2d get_class($result).'].'.$result-
1b340 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 6c >getMessage());.}.elseif.($resul
1b360 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 6f t).{.if.(is_array($result)).{.fo
1b380 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 69 reach.($result.as.$message).{.$i
1b3a0 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 24 o->write($message);.}.}.else.{.$
1b3c0 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 69 io->write($result);.}.}.}.}..pri
1b3e0 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 0a vate.function.checkPlatform().{.
1b400 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 24 $output.=.'';.$out.=.function.($
1b420 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 6f msg,.$style).use.(&$output).{.$o
1b440 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 2f utput..=.'<'.$style.'>'.$msg.'</
1b460 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 72 '.$style.'>'.PHP_EOL;.};....$err
1b480 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 79 ors.=.array();.$warnings.=.array
1b4a0 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 66 ();..$iniPath.=.php_ini_loaded_f
1b4c0 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 73 ile();.$displayIniMessage.=.fals
1b4e0 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 3d e;.if.($iniPath).{.$iniMessage.=
1b500 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 73 .PHP_EOL.PHP_EOL.'The.php.ini.us
1b520 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 20 ed.by.your.command-line.PHP.is:.
1b540 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 61 '...$iniPath;.}.else.{.$iniMessa
1b560 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 20 ge.=.PHP_EOL.PHP_EOL.'A.php.ini.
1b580 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 61 file.does.not.exist..You.will.ha
1b5a0 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 67 ve.to.create.one.';.}.$iniMessag
1b5c0 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 64 e..=.PHP_EOL.'If.you.can.not.mod
1b5e0 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 72 ify.the.ini.file,.you.can.also.r
1b600 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 69 un.`php.-d.option=value`.to.modi
1b620 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 61 fy.ini.values.on.the.fly..You.ca
1b640 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 28 n.use.-d.multiple.times.';..if.(
1b660 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 29 !function_exists('json_decode'))
1b680 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 66 .{.$errors['json'].=.true;.}..if
1b6a0 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 24 .(!extension_loaded('Phar')).{.$
1b6c0 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 65 errors['phar'].=.true;.}..if.(!e
1b6e0 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 72 xtension_loaded('filter')).{.$er
1b700 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 65 rors['filter'].=.true;.}..if.(!e
1b720 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 6f xtension_loaded('hash')).{.$erro
1b740 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 69 6e 69 5f 67 rs['hash'].=.true;.}..if.(!ini_g
1b760 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 24 65 72 72 6f 72 73 et('allow_url_fopen')).{.$errors
1b780 5b 27 61 6c 6c 6f 77 5f 75 72 6c 5f 66 6f 70 65 6e 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 ['allow_url_fopen'].=.true;.}..i
1b7a0 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 69 6f 6e 43 75 62 65 20 4c 6f 61 f.(extension_loaded('ionCube.Loa
1b7c0 64 65 72 27 29 20 26 26 20 69 6f 6e 63 75 62 65 5f 6c 6f 61 64 65 72 5f 69 76 65 72 73 69 6f 6e der').&&.ioncube_loader_iversion
1b7e0 28 29 20 3c 20 34 30 30 30 39 29 20 7b 0a 24 65 72 72 6f 72 73 5b 27 69 6f 6e 63 75 62 65 27 5d ().<.40009).{.$errors['ioncube']
1b800 20 3d 20 69 6f 6e 63 75 62 65 5f 6c 6f 61 64 65 72 5f 76 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a .=.ioncube_loader_version();.}..
1b820 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 0a 24 65 if.(PHP_VERSION_ID.<.50302).{.$e
1b840 72 72 6f 72 73 5b 27 70 68 70 27 5d 20 3d 20 50 48 50 5f 56 45 52 53 49 4f 4e 3b 0a 7d 0a 0a 69 rrors['php'].=.PHP_VERSION;.}..i
1b860 66 20 28 21 69 73 73 65 74 28 24 65 72 72 6f 72 73 5b 27 70 68 70 27 5d 29 20 26 26 20 50 48 50 f.(!isset($errors['php']).&&.PHP
1b880 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 33 30 34 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 _VERSION_ID.<.50304).{.$warnings
1b8a0 5b 27 70 68 70 27 5d 20 3d 20 50 48 50 5f 56 45 52 53 49 4f 4e 3b 0a 7d 0a 0a 69 66 20 28 21 65 ['php'].=.PHP_VERSION;.}..if.(!e
1b8c0 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 65 xtension_loaded('openssl')).{.$e
1b8e0 72 72 6f 72 73 5b 27 6f 70 65 6e 73 73 6c 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 rrors['openssl'].=.true;.}..if.(
1b900 21 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 65 78 74 !defined('HHVM_VERSION').&&.!ext
1b920 65 6e 73 69 6f 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 ension_loaded('apcu').&&.ini_get
1b940 28 27 61 70 63 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 ('apc.enable_cli')).{.$warnings[
1b960 27 61 70 63 5f 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 'apc_cli'].=.true;.}..ob_start()
1b980 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 24 70 68 70 69 6e 66 ;.phpinfo(INFO_GENERAL);.$phpinf
1b9a0 6f 20 3d 20 6f 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 o.=.ob_get_clean();.if.(preg_mat
1b9c0 63 68 28 27 7b 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 ch('{Configure.Command(?:.*</td>
1b9e0 3c 74 64 20 63 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 <td.class="v">|.*=>.*)(.*?)(?:</
1ba00 74 64 3e 7c 24 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 td>|$)}m',.$phpinfo,.$match)).{.
1ba20 24 63 6f 6e 66 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 $configure.=.$match[1];..if.(fal
1ba40 73 65 20 21 3d 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 se.!==.strpos($configure,.'--ena
1ba60 62 6c 65 2d 73 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 ble-sigchild')).{.$warnings['sig
1ba80 63 68 69 6c 64 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 child'].=.true;.}..if.(false.!==
1baa0 20 73 74 72 70 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 .strpos($configure,.'--with-curl
1bac0 77 72 61 70 70 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 wrappers')).{.$warnings['curlwra
1bae0 70 70 65 72 73 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 ppers'].=.true;.}.}..if.(ini_get
1bb00 28 27 78 64 65 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 ('xdebug.profiler_enabled')).{.$
1bb20 77 61 72 6e 69 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 warnings['xdebug_profile'].=.tru
1bb40 65 3b 0a 7d 20 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 e;.}.elseif.(extension_loaded('x
1bb60 64 65 62 75 67 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 debug')).{.$warnings['xdebug_loa
1bb80 64 65 64 27 5d 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 ded'].=.true;.}..if.(!empty($err
1bba0 6f 72 73 29 29 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 ors)).{.foreach.($errors.as.$err
1bbc0 6f 72 20 3d 3e 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 or.=>.$current).{.switch.($error
1bbe0 29 20 7b 0a 63 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 ).{.case.'json':.$text.=.PHP_EOL
1bc00 2e 22 54 68 65 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 ."The.json.extension.is.missing.
1bc20 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 6c 6c 20 69 74 20 ".PHP_EOL;.$text..=."Install.it.
1bc40 6f 72 20 72 65 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 or.recompile.php.without.--disab
1bc60 6c 65 2d 6a 73 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 le-json";.break;..case.'phar':.$
1bc80 74 65 78 74 20 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 text.=.PHP_EOL."The.phar.extensi
1bca0 6f 6e 20 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 on.is.missing.".PHP_EOL;.$text..
1bcc0 3d 20 22 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 =."Install.it.or.recompile.php.w
1bce0 69 74 68 6f 75 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 ithout.--disable-phar";.break;..
1bd00 63 61 73 65 20 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 case.'filter':.$text.=.PHP_EOL."
1bd20 54 68 65 20 66 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 The.filter.extension.is.missing.
1bd40 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 6c 6c 20 69 74 20 ".PHP_EOL;.$text..=."Install.it.
1bd60 6f 72 20 72 65 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 or.recompile.php.without.--disab
1bd80 6c 65 2d 66 69 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 le-filter";.break;..case.'hash':
1bda0 0a 24 74 65 78 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 .$text.=.PHP_EOL."The.hash.exten
1bdc0 73 69 6f 6e 20 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 sion.is.missing.".PHP_EOL;.$text
1bde0 20 2e 3d 20 22 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 ..=."Install.it.or.recompile.php
1be00 20 77 69 74 68 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 .without.--disable-hash";.break;
1be20 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 5f 45 4f ..case.'unicode':.$text.=.PHP_EO
1be40 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 20 6d 75 L."The.detect_unicode.setting.mu
1be60 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 78 74 20 st.be.disabled.".PHP_EOL;.$text.
1be80 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 65 6e 64 .=."Add.the.following.to.the.end
1bea0 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 0a 24 74 .of.your.`php.ini`:".PHP_EOL;.$t
1bec0 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 4f 66 66 ext..=."....detect_unicode.=.Off
1bee0 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 0a 62 72 ";.$displayIniMessage.=.true;.br
1bf00 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 20 50 48 eak;..case.'suhosin':.$text.=.PH
1bf20 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 6e 63 6c P_EOL."The.suhosin.executor.incl
1bf40 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 72 72 65 ude.whitelist.setting.is.incorre
1bf60 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 20 ct.".PHP_EOL;.$text..=."Add.the.
1bf80 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 68 following.to.the.end.of.your.`ph
1bfa0 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 65 20 70 p.ini`.or.suhosin.ini.(Example.p
1bfc0 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 6c 69 2f ath.[for.Debian]:./etc/php5/cli/
1bfe0 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 3b 0a 24 conf.d/suhosin.ini):".PHP_EOL;.$
1c000 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 2e 69 6e text..=."....suhosin.executor.in
1c020 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 72 65 6e clude.whitelist.=.phar.".$curren
1c040 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 0a 62 72 t;.$displayIniMessage.=.true;.br
1c060 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 5f 45 4f eak;..case.'php':.$text.=.PHP_EO
1c080 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 6f 6f 20 L."Your.PHP.({$current}).is.too.
1c0a0 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 35 2e 33 old,.you.must.upgrade.to.PHP.5.3
1c0c0 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 27 61 6c .2.or.higher.";.break;..case.'al
1c0e0 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 4f 4c 2e low_url_fopen':.$text.=.PHP_EOL.
1c100 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 69 73 20 "The.allow_url_fopen.setting.is.
1c120 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 20 22 41 incorrect.".PHP_EOL;.$text..=."A
1c140 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 79 dd.the.following.to.the.end.of.y
1c160 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 74 20 2e our.`php.ini`:".PHP_EOL;.$text..
1c180 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 0a 24 64 =."....allow_url_fopen.=.On";.$d
1c1a0 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 6b 3b 0a isplayIniMessage.=.true;.break;.
1c1c0 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 45 4f 4c .case.'ioncube':.$text.=.PHP_EOL
1c1e0 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 6f 6e 20 ."Your.ionCube.Loader.extension.
1c200 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 74 68 20 ($current).is.incompatible.with.
1c220 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 3d 20 22 Phar.files.".PHP_EOL;.$text..=."
1c240 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 69 67 68 Upgrade.to.ionCube.4.0.9.or.high
1c260 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 6d 61 79 er.or.remove.this.line.(path.may
1c280 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 2e 69 6e .be.different).from.your.`php.in
1c2a0 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 74 65 78 i`.to.disable.it:".PHP_EOL;.$tex
1c2c0 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 73 72 2f t..=."....zend_extension.=./usr/
1c2e0 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 5f 6c 6f lib/php5/20090626+lfs/ioncube_lo
1c300 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 4d 65 73 ader_lin_5.3.so";.$displayIniMes
1c320 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 65 6e 73 sage.=.true;.break;..case.'opens
1c340 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 6e 73 73 sl':.$text.=.PHP_EOL."The.openss
1c360 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 20 6d 65 l.extension.is.missing,.which.me
1c380 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 72 73 20 ans.that.secure.HTTPS.transfers.
1c3a0 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 78 74 20 are.impossible.".PHP_EOL;.$text.
1c3c0 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 61 62 6c .=."If.possible.you.should.enabl
1c3e0 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 77 69 74 e.it.or.recompile.php.with.--wit
1c400 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 78 74 2c h-openssl";.break;.}.$out($text,
1c420 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 45 4f 4c .'error');.}..$output..=.PHP_EOL
1c440 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 0a 66 6f ;.}..if.(!empty($warnings)).{.fo
1c460 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 3d 3e 20 reach.($warnings.as.$warning.=>.
1c480 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 20 7b 0a $current).{.switch.($warning).{.
1c4a0 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 61 70 63 case.'apc_cli':.$text.=."The.apc
1c4c0 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 65 63 74 .enable_cli.setting.is.incorrect
1c4e0 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 20 66 6f .".PHP_EOL;.$text..=."Add.the.fo
1c500 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 68 70 2e llowing.to.the.end.of.your.`php.
1c520 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 70 63 2e ini`:".PHP_EOL;.$text..=."..apc.
1c540 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 69 4d 65 enable_cli.=.Off";.$displayIniMe
1c560 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 69 67 63 ssage.=.true;.break;..case.'sigc
1c580 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 6c 65 64 hild':.$text.=."PHP.was.compiled
1c5a0 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 20 63 61 .with.--enable-sigchild.which.ca
1c5c0 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 72 6d 73 n.cause.issues.on.some.platforms
1c5e0 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 6c 65 20 .".PHP_EOL;.$text..=."Recompile.
1c600 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 62 6c 65 it.without.this.flag.if.possible
1c620 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 3d 20 22 ,.see.also:".PHP_EOL;.$text..=."
1c640 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 70 3f 69 ..https://bugs.php.net/bug.php?i
1c660 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 72 61 70 d=22999";.break;..case.'curlwrap
1c680 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 6c 65 64 pers':.$text.=."PHP.was.compiled
1c6a0 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 63 68 20 .with.--with-curlwrappers.which.
1c6c0 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 75 74 68 will.cause.issues.with.HTTP.auth
1c6e0 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 4f 4c 3b entication.and.GitHub.".PHP_EOL;
1c700 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 6f 75 74 .$text..=.".Recompile.it.without
1c720 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 6b 3b 0a .this.flag.if.possible";.break;.
1c740 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 50 20 28 .case.'php':.$text.=."Your.PHP.(
1c760 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 72 61 64 {$current}).is.quite.old,.upgrad
1c780 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 20 72 65 ing.to.PHP.5.3.4.or.higher.is.re
1c7a0 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 20 22 20 commended.".PHP_EOL;.$text..=.".
1c7c0 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 72 20 6d Composer.works.with.5.3.2+.for.m
1c7e0 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 65 20 65 ost.people,.but.there.might.be.e
1c800 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 73 65 20 dge.case.issues.";.break;..case.
1c820 27 78 64 65 62 75 67 5f 6c 6f 61 64 65 64 27 3a 0a 24 74 65 78 74 20 3d 20 22 54 68 65 20 78 64 'xdebug_loaded':.$text.=."The.xd
1c840 65 62 75 67 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6c 6f 61 64 65 64 2c 20 74 68 69 73 20 63 ebug.extension.is.loaded,.this.c
1c860 61 6e 20 73 6c 6f 77 20 64 6f 77 6e 20 43 6f 6d 70 6f 73 65 72 20 61 20 6c 69 74 74 6c 65 2e 22 an.slow.down.Composer.a.little."
1c880 2e 50 48 50 5f 45 4f 4c 3b 0a 24 74 65 78 74 20 2e 3d 20 22 20 44 69 73 61 62 6c 69 6e 67 20 69 .PHP_EOL;.$text..=.".Disabling.i
1c8a0 74 20 77 68 65 6e 20 75 73 69 6e 67 20 43 6f 6d 70 6f 73 65 72 20 69 73 20 72 65 63 6f 6d 6d 65 t.when.using.Composer.is.recomme
1c8c0 6e 64 65 64 2e 22 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 78 64 65 62 75 67 5f 70 72 6f nded.";.break;..case.'xdebug_pro
1c8e0 66 69 6c 65 27 3a 0a 24 74 65 78 74 20 3d 20 22 54 68 65 20 78 64 65 62 75 67 2e 70 72 6f 66 69 file':.$text.=."The.xdebug.profi
1c900 6c 65 72 5f 65 6e 61 62 6c 65 64 20 73 65 74 74 69 6e 67 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 ler_enabled.setting.is.enabled,.
1c920 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 20 6c 6f this.can.slow.down.Composer.a.lo
1c940 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 20 66 t.".PHP_EOL;.$text..=."Add.the.f
1c960 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 68 70 ollowing.to.the.end.of.your.`php
1c980 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;.$
1c9a0 74 65 78 74 20 2e 3d 20 22 20 20 78 64 65 62 75 67 2e 70 72 6f 66 69 6c 65 72 5f 65 6e 61 62 6c text..=."..xdebug.profiler_enabl
1c9c0 65 64 20 3d 20 30 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 ed.=.0";.$displayIniMessage.=.tr
1c9e0 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 24 6f 75 74 28 24 74 65 78 74 2c 20 27 63 6f 6d 6d 65 6e ue;.break;.}.$out($text,.'commen
1ca00 74 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 64 69 73 70 6c 61 79 49 6e 69 4d 65 73 73 61 67 65 t');.}.}..if.($displayIniMessage
1ca20 29 20 7b 0a 24 6f 75 74 28 24 69 6e 69 4d 65 73 73 61 67 65 2c 20 27 63 6f 6d 6d 65 6e 74 27 29 ).{.$out($iniMessage,.'comment')
1ca40 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 21 24 77 61 72 6e 69 6e 67 73 20 26 26 20 21 24 65 72 72 6f ;.}..return.!$warnings.&&.!$erro
1ca60 72 73 20 3f 20 74 72 75 65 20 3a 20 24 6f 75 74 70 75 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a rs.?.true.:.$output;.}.}.<?php..
1ca80 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 6d ..........namespace.Composer\Com
1caa0 6d 61 6e 64 3b 0a 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 mand;..use.Composer\Plugin\Comma
1cac0 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
1cae0 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 6e 65 6e 74 ginEvents;.use.Symfony\Component
1cb00 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 0a 75 \Console\Input\InputInterface;.u
1cb20 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
1cb40 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 6d 70 ut\InputOption;.use.Symfony\Comp
1cb60 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
1cb80 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 75 6d 70 41 75 74 6f 6c 6f 61 64 43 6f 6d 6d face;.....class.DumpAutoloadComm
1cba0 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 and.extends.Command.{.protected.
1cbc0 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 3e 73 function.configure().{.$this.->s
1cbe0 65 74 4e 61 6d 65 28 27 64 75 6d 70 2d 61 75 74 6f 6c 6f 61 64 27 29 0a 2d 3e 73 65 74 41 6c 69 etName('dump-autoload').->setAli
1cc00 61 73 65 73 28 61 72 72 61 79 28 27 64 75 6d 70 61 75 74 6f 6c 6f 61 64 27 29 29 0a 2d 3e 73 65 ases(array('dumpautoload')).->se
1cc20 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 44 75 6d 70 73 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 tDescription('Dumps.the.autoload
1cc40 65 72 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 20 er').->setDefinition(array(.new.
1cc60 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 20 InputOption('no-scripts',.null,.
1cc80 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 20 InputOption::VALUE_NONE,.'Skips.
1cca0 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 66 the.execution.of.all.scripts.def
1ccc0 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 6e ined.in.composer.json.file.'),.n
1cce0 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6f 70 74 69 6d 69 7a 65 27 2c 20 27 6f 27 2c 20 ew.InputOption('optimize',.'o',.
1cd00 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 4f 70 74 69 6d 69 InputOption::VALUE_NONE,.'Optimi
1cd20 7a 65 73 20 50 53 52 30 20 61 6e 64 20 50 53 52 34 20 70 61 63 6b 61 67 65 73 20 74 6f 20 62 65 zes.PSR0.and.PSR4.packages.to.be
1cd40 20 6c 6f 61 64 65 64 20 77 69 74 68 20 63 6c 61 73 73 6d 61 70 73 20 74 6f 6f 2c 20 67 6f 6f 64 .loaded.with.classmaps.too,.good
1cd60 20 66 6f 72 20 70 72 6f 64 75 63 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 .for.production.'),.new.InputOpt
1cd80 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 2c 20 27 61 ion('classmap-authoritative',.'a
1cda0 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 75 74 ',.InputOption::VALUE_NONE,.'Aut
1cdc0 6f 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 oload.classes.from.the.classmap.
1cde0 6f 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 only..Implicitly.enables.`--opti
1ce00 6d 69 7a 65 60 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 mize`.'),.new.InputOption('no-de
1ce20 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 4e v',.null,.InputOption::VALUE_NON
1ce40 45 2c 20 27 44 69 73 61 62 6c 65 73 20 61 75 74 6f 6c 6f 61 64 2d 64 65 76 20 72 75 6c 65 73 2e E,.'Disables.autoload-dev.rules.
1ce60 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 3c 69 6e 66 6f 3e 70 68 '),.)).->setHelp(<<<EOT.<info>ph
1ce80 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 64 75 6d 70 2d 61 75 74 6f 6c 6f 61 64 3c 2f 69 p.composer.phar.dump-autoload</i
1cea0 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 6e 63 74 69 nfo>.EOT.).;.}..protected.functi
1cec0 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 75 74 on.execute(InputInterface.$input
1cee0 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 63 6f ,.OutputInterface.$output).{.$co
1cf00 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 0a 0a mposer.=.$this->getComposer();..
1cf20 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
1cf40 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 64 75 6d 70 2d 61 75 (PluginEvents::COMMAND,.'dump-au
1cf60 74 6f 6c 6f 61 64 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 toload',.$input,.$output);.$comp
1cf80 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 69 73 70 oser->getEventDispatcher()->disp
1cfa0 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 2c 20 24 atch($commandEvent->getName(),.$
1cfc0 63 6f 6d 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e commandEvent);..$installationMan
1cfe0 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
1d000 6e 4d 61 6e 61 67 65 72 28 29 3b 0a 24 6c 6f 63 61 6c 52 65 70 6f 20 3d 20 24 63 6f 6d 70 6f 73 nManager();.$localRepo.=.$compos
1d020 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
1d040 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 63 6f ocalRepository();.$package.=.$co
1d060 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 63 6f 6e 66 69 67 20 3d 20 mposer->getPackage();.$config.=.
1d080 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 3b 0a 0a 24 6f 70 74 69 6d 69 $composer->getConfig();..$optimi
1d0a0 7a 65 20 3d 20 24 69 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 ze.=.$input->getOption('optimize
1d0c0 27 29 20 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 ').||.$config->get('optimize-aut
1d0e0 6f 6c 6f 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 oloader');.$authoritative.=.$inp
1d100 75 74 2d 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 ut->getOption('classmap-authorit
1d120 61 74 69 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 ative').||.$config->get('classma
1d140 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 29 3b 0a 0a 69 66 20 28 24 6f 70 74 69 6d 69 7a p-authoritative');..if.($optimiz
1d160 65 20 7c 7c 20 24 61 75 74 68 6f 72 69 74 61 74 69 76 65 29 20 7b 0a 24 74 68 69 73 2d 3e 67 65 e.||.$authoritative).{.$this->ge
1d180 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 65 6e 65 72 61 74 tIO()->writeError('<info>Generat
1d1a0 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 69 6e ing.optimized.autoload.files</in
1d1c0 66 6f 3e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e fo>');.}.else.{.$this->getIO()->
1d1e0 77 72 69 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 writeError('<info>Generating.aut
1d200 6f 6c 6f 61 64 20 66 69 6c 65 73 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 0a 0a 24 67 65 6e 65 72 61 oload.files</info>');.}..$genera
1d220 74 6f 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 47 65 6e 65 tor.=.$composer->getAutoloadGene
1d240 72 61 74 6f 72 28 29 3b 0a 24 67 65 6e 65 72 61 74 6f 72 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 rator();.$generator->setDevMode(
1d260 21 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 29 3b 0a 24 !$input->getOption('no-dev'));.$
1d280 67 65 6e 65 72 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 generator->setClassMapAuthoritat
1d2a0 69 76 65 28 24 61 75 74 68 6f 72 69 74 61 74 69 76 65 29 3b 0a 24 67 65 6e 65 72 61 74 6f 72 2d ive($authoritative);.$generator-
1d2c0 3e 73 65 74 52 75 6e 53 63 72 69 70 74 73 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f >setRunScripts(!$input->getOptio
1d2e0 6e 28 27 6e 6f 2d 73 63 72 69 70 74 73 27 29 29 3b 0a 24 67 65 6e 65 72 61 74 6f 72 2d 3e 64 75 n('no-scripts'));.$generator->du
1d300 6d 70 28 24 63 6f 6e 66 69 67 2c 20 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 mp($config,.$localRepo,.$package
1d320 2c 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 27 63 6f 6d 70 6f 73 65 ,.$installationManager,.'compose
1d340 72 27 2c 20 24 6f 70 74 69 6d 69 7a 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a r',.$optimize);.}.}.<?php.......
1d360 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 3b .....namespace.Composer\Command;
1d380 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 53 79 6d 66 ..use.Composer\Factory;.use.Symf
1d3a0 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
1d3c0 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
1d3e0 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
1d400 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
1d420 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 6e 79 5c 43 6f 6d 70 ut\StringInput;.use.Symfony\Comp
1d440 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
1d460 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 6d 61 6e 64 20 65 78 face;.....class.GlobalCommand.ex
1d480 74 65 6e 64 73 20 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 tends.Command.{.protected.functi
1d4a0 6f 6e 20 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 on.configure().{.$this.->setName
1d4c0 28 27 67 6c 6f 62 61 6c 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 41 6c 6c ('global').->setDescription('All
1d4e0 6f 77 73 20 72 75 6e 6e 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 20 74 68 65 20 67 6c 6f 62 ows.running.commands.in.the.glob
1d500 61 6c 20 63 6f 6d 70 6f 73 65 72 20 64 69 72 20 28 24 43 4f 4d 50 4f 53 45 52 5f 48 4f 4d 45 29 al.composer.dir.($COMPOSER_HOME)
1d520 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 65 77 20 49 .').->setDefinition(array(.new.I
1d540 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 2d 6e 61 6d 65 27 2c 20 49 6e 70 nputArgument('command-name',.Inp
1d560 75 74 41 72 67 75 6d 65 6e 74 3a 3a 52 45 51 55 49 52 45 44 2c 20 27 27 29 2c 0a 6e 65 77 20 49 utArgument::REQUIRED,.''),.new.I
1d580 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 74 41 72 67 75 6d 65 nputArgument('args',.InputArgume
1d5a0 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
1d5c0 54 49 4f 4e 41 4c 2c 20 27 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 TIONAL,.''),.)).->setHelp(<<<EOT
1d5e0 0a 55 73 65 20 74 68 69 73 20 63 6f 6d 6d 61 6e 64 20 61 73 20 61 20 77 72 61 70 70 65 72 20 74 .Use.this.command.as.a.wrapper.t
1d600 6f 20 72 75 6e 20 6f 74 68 65 72 20 43 6f 6d 70 6f 73 65 72 20 63 6f 6d 6d 61 6e 64 73 0a 77 69 o.run.other.Composer.commands.wi
1d620 74 68 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6e 74 65 78 74 20 6f 66 20 43 4f 4d 50 4f thin.the.global.context.of.COMPO
1d640 53 45 52 5f 48 4f 4d 45 2e 0a 0a 59 6f 75 20 63 61 6e 20 75 73 65 20 74 68 69 73 20 74 6f 20 69 SER_HOME...You.can.use.this.to.i
1d660 6e 73 74 61 6c 6c 20 43 4c 49 20 75 74 69 6c 69 74 69 65 73 20 67 6c 6f 62 61 6c 6c 79 2c 20 61 nstall.CLI.utilities.globally,.a
1d680 6c 6c 20 79 6f 75 20 6e 65 65 64 0a 69 73 20 74 6f 20 61 64 64 20 74 68 65 20 43 4f 4d 50 4f 53 ll.you.need.is.to.add.the.COMPOS
1d6a0 45 52 5f 48 4f 4d 45 2f 76 65 6e 64 6f 72 2f 62 69 6e 20 64 69 72 20 74 6f 20 79 6f 75 72 20 50 ER_HOME/vendor/bin.dir.to.your.P
1d6c0 41 54 48 20 65 6e 76 20 76 61 72 2e 0a 0a 43 4f 4d 50 4f 53 45 52 5f 48 4f 4d 45 20 69 73 20 63 ATH.env.var...COMPOSER_HOME.is.c
1d6e0 3a 5c 55 73 65 72 73 5c 3c 75 73 65 72 3e 5c 41 70 70 44 61 74 61 5c 52 6f 61 6d 69 6e 67 5c 43 :\Users\<user>\AppData\Roaming\C
1d700 6f 6d 70 6f 73 65 72 20 6f 6e 20 57 69 6e 64 6f 77 73 0a 61 6e 64 20 2f 68 6f 6d 65 2f 3c 75 73 omposer.on.Windows.and./home/<us
1d720 65 72 3e 2f 2e 63 6f 6d 70 6f 73 65 72 20 6f 6e 20 75 6e 69 78 20 73 79 73 74 65 6d 73 2e 0a 0a er>/.composer.on.unix.systems...
1d740 4e 6f 74 65 3a 20 54 68 69 73 20 70 61 74 68 20 6d 61 79 20 76 61 72 79 20 64 65 70 65 6e 64 69 Note:.This.path.may.vary.dependi
1d760 6e 67 20 6f 6e 20 63 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 73 20 74 6f 20 62 69 6e 2d 64 69 72 20 ng.on.customizations.to.bin-dir.
1d780 69 6e 0a 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 6f 72 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d in.composer.json.or.the.environm
1d7a0 65 6e 74 61 6c 20 76 61 72 69 61 62 6c 65 20 43 4f 4d 50 4f 53 45 52 5f 42 49 4e 5f 44 49 52 2e ental.variable.COMPOSER_BIN_DIR.
1d7c0 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e ..EOT.).;.}..public.function.run
1d7e0 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
1d800 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 0a 20 24 74 6f 6b 65 6e 73 20 3d 20 70 terface.$output).{...$tokens.=.p
1d820 72 65 67 5f 73 70 6c 69 74 28 27 7b 5c 73 2b 7d 27 2c 20 24 69 6e 70 75 74 2d 3e 5f 5f 74 6f 53 reg_split('{\s+}',.$input->__toS
1d840 74 72 69 6e 67 28 29 29 3b 0a 24 61 72 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 tring());.$args.=.array();.forea
1d860 63 68 20 28 24 74 6f 6b 65 6e 73 20 61 73 20 24 74 6f 6b 65 6e 29 20 7b 0a 69 66 20 28 24 74 6f ch.($tokens.as.$token).{.if.($to
1d880 6b 65 6e 20 26 26 20 24 74 6f 6b 65 6e 5b 30 5d 20 21 3d 3d 20 27 2d 27 29 20 7b 0a 24 61 72 67 ken.&&.$token[0].!==.'-').{.$arg
1d8a0 73 5b 5d 20 3d 20 24 74 6f 6b 65 6e 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 61 72 67 73 29 20 3e s[].=.$token;.if.(count($args).>
1d8c0 3d 20 32 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 =.2).{.break;.}.}.}....if.(count
1d8e0 28 24 61 72 67 73 29 20 3c 20 32 29 20 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 72 75 ($args).<.2).{.return.parent::ru
1d900 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 24 63 6f 6e 66 69 67 n($input,.$output);.}....$config
1d920 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 29 3b 0a 63 68 64 69 .=.Factory::createConfig();.chdi
1d940 72 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 29 3b 0a 24 74 68 69 73 2d 3e r($config->get('home'));.$this->
1d960 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 43 68 61 6e 67 getIO()->writeError('<info>Chang
1d980 65 64 20 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20 27 2e 24 63 6f 6e 66 69 ed.current.directory.to.'.$confi
1d9a0 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 2e 27 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 0a 20 24 69 g->get('home').'</info>');....$i
1d9c0 6e 70 75 74 20 3d 20 6e 65 77 20 53 74 72 69 6e 67 49 6e 70 75 74 28 70 72 65 67 5f 72 65 70 6c nput.=.new.StringInput(preg_repl
1d9e0 61 63 65 28 27 7b 5c 62 67 28 3f 3a 6c 28 3f 3a 6f 28 3f 3a 62 28 3f 3a 61 28 3f 3a 6c 29 3f 29 ace('{\bg(?:l(?:o(?:b(?:a(?:l)?)
1da00 3f 29 3f 29 3f 29 3f 5c 62 7d 27 2c 20 27 27 2c 20 24 69 6e 70 75 74 2d 3e 5f 5f 74 6f 53 74 72 ?)?)?)?\b}',.'',.$input->__toStr
1da20 69 6e 67 28 29 2c 20 31 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 41 70 ing(),.1));..return.$this->getAp
1da40 70 6c 69 63 61 74 69 6f 6e 28 29 2d 3e 72 75 6e 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 plication()->run($input,.$output
1da60 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
1da80 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 6f 73 65 e.Composer\Command;..use.Compose
1daa0 72 5c 46 61 63 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 r\Factory;.use.Composer\Package\
1dac0 43 6f 6d 70 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 CompletePackageInterface;.use.Co
1dae0 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
1db00 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 41 rface;.use.Composer\Repository\A
1db20 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 55 74 69 rrayRepository;.use.Composer\Uti
1db40 6c 5c 50 72 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 l\ProcessExecutor;.use.Symfony\C
1db60 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
1db80 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
1dba0 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 6f ole\Input\InputOption;.use.Symfo
1dbc0 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
1dbe0 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
1dc00 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 3b \Console\Output\OutputInterface;
1dc20 0a 0a 0a 0a 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 43 .....class.HomeCommand.extends.C
1dc40 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
1dc60 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
1dc80 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'
1dca0 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
1dcc0 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
1dce0 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
1dd00 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
1dd20 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
1dd40 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,.
1dd60 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
1dd80 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
1dda0 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
1ddc0 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
1dde0 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
1de00 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
1de20 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
1de40 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(<<<
1de60 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
1de80 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
1dea0 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
1dec0 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
1dee0 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
1df00 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
1df20 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.--
1df40 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
1df60 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
1df80 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).{.
1dfa0 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(
1dfc0 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
1dfe0 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
1e000 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)
1e020 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
1e040 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.
1e060 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
1e080 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)
1e0a0 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
1e0c0 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
1e0e0 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
1e100 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
1e120 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.(!
1e140 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;.$
1e160 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
1e180 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
1e1a0 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
1e1c0 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
1e1e0 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
1e200 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
1e220 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
1e240 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
1e260 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
1e280 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
1e2a0 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.
1e2c0 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
1e2e0 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
1e300 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['
1e320 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'].:
1e340 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.(!
1e360 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.=.
1e380 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.(
1e3a0 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
1e3c0 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;
1e3e0 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
1e400 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
1e420 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
1e440 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;
1e460 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
1e480 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
1e4a0 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 64 65 66 69 6e 65 64 utor::escape($url);..if.(defined
1e4c0 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 4d 41 4a 4f 52 27 29 29 20 7b ('PHP_WINDOWS_VERSION_MAJOR')).{
1e4e0 0a 72 65 74 75 72 6e 20 70 61 73 73 74 68 72 75 28 27 73 74 61 72 74 20 22 77 65 62 22 20 65 78 .return.passthru('start."web".ex
1e500 70 6c 6f 72 65 72 20 22 27 20 2e 20 24 75 72 6c 20 2e 20 27 22 27 29 3b 0a 7d 0a 0a 70 61 73 73 plorer."'...$url...'"');.}..pass
1e520 74 68 72 75 28 27 77 68 69 63 68 20 78 64 67 2d 6f 70 65 6e 27 2c 20 24 6c 69 6e 75 78 29 3b 0a thru('which.xdg-open',.$linux);.
1e540 70 61 73 73 74 68 72 75 28 27 77 68 69 63 68 20 6f 70 65 6e 27 2c 20 24 6f 73 78 29 3b 0a 0a 69 passthru('which.open',.$osx);..i
1e560 66 20 28 30 20 3d 3d 3d 20 24 6c 69 6e 75 78 29 20 7b 0a 70 61 73 73 74 68 72 75 28 27 78 64 67 f.(0.===.$linux).{.passthru('xdg
1e580 2d 6f 70 65 6e 20 27 20 2e 20 24 75 72 6c 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 30 20 3d 3d 3d -open.'...$url);.}.elseif.(0.===
1e5a0 20 24 6f 73 78 29 20 7b 0a 70 61 73 73 74 68 72 75 28 27 6f 70 65 6e 20 27 20 2e 20 24 75 72 6c .$osx).{.passthru('open.'...$url
1e5c0 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 69 74 );.}.else.{.$this->getIO()->writ
1e5e0 65 45 72 72 6f 72 28 27 6e 6f 20 73 75 69 74 61 62 6c 65 20 62 72 6f 77 73 65 72 20 6f 70 65 6e eError('no.suitable.browser.open
1e600 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 66 6f 75 6e 64 2c 20 6f 70 65 6e 20 79 6f 75 72 73 65 6c 66 ing.command.found,.open.yourself
1e620 3a 20 27 20 2e 20 24 75 72 6c 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 :.'...$url);.}.}.........private
1e640 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 52 65 70 6f 73 28 29 0a 7b 0a 24 63 .function.initializeRepos().{.$c
1e660 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
1e680 73 65 29 3b 0a 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 se);..if.($composer).{.return.ar
1e6a0 72 61 79 5f 6d 65 72 67 65 28 0a 61 72 72 61 79 28 6e 65 77 20 41 72 72 61 79 52 65 70 6f 73 69 ray_merge(.array(new.ArrayReposi
1e6c0 74 6f 72 79 28 61 72 72 61 79 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 tory(array($composer->getPackage
1e6e0 28 29 29 29 29 2c 20 0a 20 61 72 72 61 79 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 ()))),...array($composer->getRep
1e700 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 73 69 ositoryManager()->getLocalReposi
1e720 74 6f 72 79 28 29 29 2c 20 0a 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 tory()),...$composer->getReposit
1e740 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 20 oryManager()->getRepositories().
1e760 0a 20 29 3b 0a 7d 0a 0a 24 64 65 66 61 75 6c 74 52 65 70 6f 73 20 3d 20 46 61 63 74 6f 72 79 3a ..);.}..$defaultRepos.=.Factory:
1e780 3a 63 72 65 61 74 65 44 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 74 68 69 73 :createDefaultRepositories($this
1e7a0 2d 3e 67 65 74 49 4f 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 52 65 70 6f ->getIO());..return.$defaultRepo
1e7c0 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
1e7e0 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 6f 73 65 e.Composer\Command;..use.Compose
1e800 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
1e820 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
1e840 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 50 61 63 6b 61 67 ser\Factory;.use.Composer\Packag
1e860 65 5c 42 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 e\BasePackage;.use.Composer\Pack
1e880 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 75 73 65 20 43 age\Version\VersionParser;.use.C
1e8a0 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 53 omposer\Package\Version\VersionS
1e8c0 65 6c 65 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 79 elector;.use.Composer\Repository
1e8e0 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 20 43 6f 6d 70 6f 73 \CompositeRepository;.use.Compos
1e900 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
1e920 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
1e940 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 6f 6e 73 6f tor;.use.Symfony\Component\Conso
1e960 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 6d le\Input\InputInterface;.use.Sym
1e980 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
1e9a0 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 6e 74 5c utOption;.use.Symfony\Component\
1e9c0 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 3b 0a Console\Output\OutputInterface;.
1e9e0 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
1ea00 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
1ea20 63 65 73 73 5c 45 78 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 cess\ExecutableFinder;......clas
1ea40 73 20 49 6e 69 74 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a s.InitCommand.extends.Command.{.
1ea60 0a 70 72 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 .protected.$repos;...private.$gi
1ea80 74 43 6f 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 tConfig;...private.$pool;.....pr
1eaa0 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().{.$
1eac0 74 68 69 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 this.->setName('init').->setDesc
1eae0 72 69 70 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 ription('Creates.a.basic.compose
1eb00 72 2e 6a 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 r.json.file.in.current.directory
1eb20 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 65 77 20 49 .').->setDefinition(array(.new.I
1eb40 6e 70 75 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 nputOption('name',.null,.InputOp
1eb60 74 69 6f 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 tion::VALUE_REQUIRED,.'Name.of.t
1eb80 68 65 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 64 he.package'),.new.InputOption('d
1eba0 65 73 63 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 escription',.null,.InputOption::
1ebc0 56 41 4c 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 VALUE_REQUIRED,.'Description.of.
1ebe0 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 61 75 74 68 package'),.new.InputOption('auth
1ec00 6f 72 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 52 45 or',.null,.InputOption::VALUE_RE
1ec20 51 55 49 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 QUIRED,.'Author.name.of.package'
1ec40 29 2c 0a 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 ),...new.InputOption('type',.nul
1ec60 6c 2c 20 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 l,.InputOption::VALUE_OPTIONAL,.
1ec80 27 54 79 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 'Type.of.package'),.new.InputOpt
1eca0 69 6f 6e 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 ion('homepage',.null,.InputOptio
1ecc0 6e 3a 3a 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 n::VALUE_REQUIRED,.'Homepage.of.
1ece0 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 72 65 71 75 package'),.new.InputOption('requ
1ed00 69 72 65 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 ire',.null,.InputOption::VALUE_I
1ed20 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 55 45 5f 52 45 51 S_ARRAY.|.InputOption::VALUE_REQ
1ed40 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 20 77 69 74 68 20 UIRED,.'Package.to.require.with.
1ed60 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
1ed80 61 72 3a 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 ar:1.0.0.or.foo/bar=1.0.0.or."fo
1eda0 6f 2f 62 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 o/bar.1.0.0"'),.new.InputOption(
1edc0 27 72 65 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 'require-dev',.null,.InputOption
1ede0 3a 3a 56 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 ::VALUE_IS_ARRAY.|.InputOption::
1ee00 56 41 4c 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 VALUE_REQUIRED,.'Package.to.requ
1ee20 69 72 65 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 ire.for.development.with.a.versi
1ee40 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 31 2e 30 2e on.constraint,.e.g..foo/bar:1.0.
1ee60 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 61 72 20 31 0.or.foo/bar=1.0.0.or."foo/bar.1
1ee80 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 73 74 61 62 69 6c .0.0"'),.new.InputOption('stabil
1eea0 69 74 79 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 ity',.'s',.InputOption::VALUE_RE
1eec0 51 55 49 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 QUIRED,.'Minimum.stability.(empt
1eee0 79 20 6f 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 y.or.one.of:.'.implode(',.',.arr
1ef00 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 62 69 6c 69 74 69 65 ay_keys(BasePackage::$stabilitie
1ef20 73 29 29 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 s)).')'),.new.InputOption('licen
1ef40 73 65 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 52 45 51 se',.'l',.InputOption::VALUE_REQ
1ef60 55 49 52 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 29 29 UIRED,.'License.of.package'),.))
1ef80 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 69 6e 69 74 .->setHelp(<<<EOT.The.<info>init
1efa0 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 20 62 61 73 69 63 20 </info>.command.creates.a.basic.
1efc0 63 6f 6d 70 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 composer.json.file.in.the.curren
1efe0 74 20 64 69 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 t.directory...<info>php.composer
1f000 2e 70 68 61 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 .phar.init</info>..EOT.).;.}....
1f020 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 70 75 .protected.function.execute(Inpu
1f040 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
1f060 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 77 68 69 74 65 6c 69 73 74 20 3d 20 61 72 72 61 79 ce.$output).{.$whitelist.=.array
1f080 28 27 6e 61 6d 65 27 2c 20 27 64 65 73 63 72 69 70 74 69 6f 6e 27 2c 20 27 61 75 74 68 6f 72 27 ('name',.'description',.'author'
1f0a0 2c 20 27 74 79 70 65 27 2c 20 27 68 6f 6d 65 70 61 67 65 27 2c 20 27 72 65 71 75 69 72 65 27 2c ,.'type',.'homepage',.'require',
1f0c0 20 27 72 65 71 75 69 72 65 2d 64 65 76 27 2c 20 27 73 74 61 62 69 6c 69 74 79 27 2c 20 27 6c 69 .'require-dev',.'stability',.'li
1f0e0 63 65 6e 73 65 27 29 3b 0a 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 cense');..$options.=.array_filte
1f100 72 28 61 72 72 61 79 5f 69 6e 74 65 72 73 65 63 74 5f 6b 65 79 28 24 69 6e 70 75 74 2d 3e 67 65 r(array_intersect_key($input->ge
1f120 74 4f 70 74 69 6f 6e 73 28 29 2c 20 61 72 72 61 79 5f 66 6c 69 70 28 24 77 68 69 74 65 6c 69 73 tOptions(),.array_flip($whitelis
1f140 74 29 29 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 61 75 74 68 6f t)));..if.(isset($options['autho
1f160 72 27 5d 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 61 75 74 68 6f 72 73 27 5d 20 3d 20 24 74 r'])).{.$options['authors'].=.$t
1f180 68 69 73 2d 3e 66 6f 72 6d 61 74 41 75 74 68 6f 72 73 28 24 6f 70 74 69 6f 6e 73 5b 27 61 75 74 his->formatAuthors($options['aut
1f1a0 68 6f 72 27 5d 29 3b 0a 75 6e 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 61 75 74 68 6f 72 27 5d hor']);.unset($options['author']
1f1c0 29 3b 0a 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 );.}..if.(isset($options['stabil
1f1e0 69 74 79 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 ity'])).{.$options['minimum-stab
1f200 69 6c 69 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 ility'].=.$options['stability'];
1f220 0a 75 6e 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 .unset($options['stability']);.}
1f240 0a 0a 24 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 ..$options['require'].=.isset($o
1f260 70 74 69 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 ptions['require']).?.$this->form
1f280 61 74 52 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 atRequirements($options['require
1f2a0 27 5d 29 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 ']).:.new.\stdClass;.if.(array()
1f2c0 20 3d 3d 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 .===.$options['require']).{.$opt
1f2e0 69 6f 6e 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 ions['require'].=.new.\stdClass;
1f300 0a 7d 0a 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 .}..if.(isset($options['require-
1f320 64 65 76 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 dev'])).{.$options['require-dev'
1f340 5d 20 3d 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 ].=.$this->formatRequirements($o
1f360 70 74 69 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 ptions['require-dev']);.if.(arra
1f380 79 28 29 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 y().===.$options['require-dev'])
1f3a0 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 20 6e 65 77 .{.$options['require-dev'].=.new
1f3c0 20 5c 73 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 .\stdClass;.}.}..$file.=.new.Jso
1f3e0 6e 46 69 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 nFile('composer.json');.$json.=.
1f400 24 66 69 6c 65 2d 3e 65 6e 63 6f 64 65 28 24 6f 70 74 69 6f 6e 73 29 3b 0a 24 69 6f 20 3d 20 24 $file->encode($options);.$io.=.$
1f420 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 69 73 49 6e this->getIO();..if.($input->isIn
1f440 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 45 72 72 6f 72 28 61 teractive()).{.$io->writeError(a
1f460 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 28 21 24 69 6f 2d 3e rray('',.$json,.''));.if.(!$io->
1f480 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 6f 6e 66 69 72 6d 20 askConfirmation('Do.you.confirm.
1f4a0 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 2f 63 6f 6d 6d 65 6e generation.[<comment>yes</commen
1f4c0 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 74 65 45 72 72 6f 72 t>]?.',.true)).{.$io->writeError
1f4e0 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 2f 65 72 72 6f 72 3e ('<error>Command.aborted</error>
1f500 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 2d 3e 77 72 69 74 65 ');..return.1;.}.}..$file->write
1f520 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 69 73 49 6e 74 65 72 ($options);..if.($input->isInter
1f540 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 29 29 20 7b 0a 24 69 active().&&.is_dir('.git')).{.$i
1f560 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 74 69 67 6e 6f 72 65 gnoreFile.=.realpath('.gitignore
1f580 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 65 46 69 6c 65 29 20 ');..if.(false.===.$ignoreFile).
1f5a0 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 27 29 20 2e 20 {.$ignoreFile.=.realpath('.')...
1f5c0 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 68 69 73 2d 3e 68 61 '/.gitignore';.}..if.(!$this->ha
1f5e0 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 29 29 20 7b 0a 24 71 sVendorIgnore($ignoreFile)).{.$q
1f600 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 20 74 68 65 20 3c 69 uestion.=.'Would.you.like.the.<i
1f620 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 72 79 20 61 64 64 65 nfo>vendor</info>.directory.adde
1f640 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 65 3c 2f 69 6e 66 6f d.to.your.<info>.gitignore</info
1f660 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 5d 3f 20 27 3b 0a 0a >.[<comment>yes</comment>]?.';..
1f680 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 73 74 69 if.($io->askConfirmation($questi
1f6a0 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 6e 64 6f 72 49 67 6e on,.true)).{.$this->addVendorIgn
1f6c0 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 0a 0a 0a 0a 0a 70 72 ore($ignoreFile);.}.}.}.}.....pr
1f6e0 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 74 49 otected.function.interact(InputI
1f700 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
1f720 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 3e 67 65 74 47 69 74 .$output).{.$git.=.$this->getGit
1f740 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 74 49 4f 28 29 3b 0a Config();.$io.=.$this->getIO();.
1f760 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 6c 70 65 72 53 65 74 $formatter.=.$this->getHelperSet
1f780 28 29 2d 3e 67 65 74 28 27 66 6f 72 6d 61 74 74 65 72 27 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 ()->get('formatter');..$io->writ
1f7a0 65 45 72 72 6f 72 28 61 72 72 61 79 28 0a 27 27 2c 0a 24 66 6f 72 6d 61 74 74 65 72 2d 3e 66 6f eError(array(.'',.$formatter->fo
1f7c0 72 6d 61 74 42 6c 6f 63 6b 28 27 57 65 6c 63 6f 6d 65 20 74 6f 20 74 68 65 20 43 6f 6d 70 6f 73 rmatBlock('Welcome.to.the.Compos
1f7e0 65 72 20 63 6f 6e 66 69 67 20 67 65 6e 65 72 61 74 6f 72 27 2c 20 27 62 67 3d 62 6c 75 65 3b 66 er.config.generator',.'bg=blue;f
1f800 67 3d 77 68 69 74 65 27 2c 20 74 72 75 65 29 2c 0a 27 27 2c 0a 29 29 3b 0a 0a 0a 20 24 69 6f 2d g=white',.true),.'',.));....$io-
1f820 3e 77 72 69 74 65 45 72 72 6f 72 28 61 72 72 61 79 28 0a 27 27 2c 0a 27 54 68 69 73 20 63 6f 6d >writeError(array(.'',.'This.com
1f840 6d 61 6e 64 20 77 69 6c 6c 20 67 75 69 64 65 20 79 6f 75 20 74 68 72 6f 75 67 68 20 63 72 65 61 mand.will.guide.you.through.crea
1f860 74 69 6e 67 20 79 6f 75 72 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 63 6f 6e 66 69 67 2e 27 ting.your.composer.json.config.'
1f880 2c 0a 27 27 2c 0a 29 29 3b 0a 0a 24 63 77 64 20 3d 20 72 65 61 6c 70 61 74 68 28 22 2e 22 29 3b ,.'',.));..$cwd.=.realpath(".");
1f8a0 0a 0a 69 66 20 28 21 24 6e 61 6d 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e ..if.(!$name.=.$input->getOption
1f8c0 28 27 6e 61 6d 65 27 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 62 61 73 65 6e 61 6d 65 28 24 63 77 ('name')).{.$name.=.basename($cw
1f8e0 64 29 3b 0a 24 6e 61 6d 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 3f 3a 28 5b d);.$name.=.preg_replace('{(?:([
1f900 61 2d 7a 5d 29 28 5b 41 2d 5a 5d 29 7c 28 5b 41 2d 5a 5d 29 28 5b 41 2d 5a 5d 5b 61 2d 7a 5d 29 a-z])([A-Z])|([A-Z])([A-Z][a-z])
1f920 29 7d 27 2c 20 27 5c 5c 31 5c 5c 33 2d 5c 5c 32 5c 5c 34 27 2c 20 24 6e 61 6d 65 29 3b 0a 24 6e )}',.'\\1\\3-\\2\\4',.$name);.$n
1f940 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 69 66 20 28 69 73 73 ame.=.strtolower($name);.if.(iss
1f960 65 74 28 24 67 69 74 5b 27 67 69 74 68 75 62 2e 75 73 65 72 27 5d 29 29 20 7b 0a 24 6e 61 6d 65 et($git['github.user'])).{.$name
1f980 20 3d 20 24 67 69 74 5b 27 67 69 74 68 75 62 2e 75 73 65 72 27 5d 20 2e 20 27 2f 27 20 2e 20 24 .=.$git['github.user']...'/'...$
1f9a0 6e 61 6d 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 5b name;.}.elseif.(!empty($_SERVER[
1f9c0 27 55 53 45 52 4e 41 4d 45 27 5d 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 24 5f 53 45 52 56 45 52 'USERNAME'])).{.$name.=.$_SERVER
1f9e0 5b 27 55 53 45 52 4e 41 4d 45 27 5d 20 2e 20 27 2f 27 20 2e 20 24 6e 61 6d 65 3b 0a 7d 20 65 6c ['USERNAME']...'/'...$name;.}.el
1fa00 73 65 69 66 20 28 67 65 74 5f 63 75 72 72 65 6e 74 5f 75 73 65 72 28 29 29 20 7b 0a 24 6e 61 6d seif.(get_current_user()).{.$nam
1fa20 65 20 3d 20 67 65 74 5f 63 75 72 72 65 6e 74 5f 75 73 65 72 28 29 20 2e 20 27 2f 27 20 2e 20 24 e.=.get_current_user()...'/'...$
1fa40 6e 61 6d 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 20 2e name;.}.else.{...$name.=.$name..
1fa60 20 27 2f 27 20 2e 20 24 6e 61 6d 65 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 21 70 72 .'/'...$name;.}.}.else.{.if.(!pr
1fa80 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 2d 39 eg_match('{^[a-z0-9_.-]+/[a-z0-9
1faa0 5f 2e 2d 5d 2b 24 7d 27 2c 20 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 _.-]+$}',.$name)).{.throw.new.\I
1fac0 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 20 70 61 nvalidArgumentException(.'The.pa
1fae0 63 6b 61 67 65 20 6e 61 6d 65 20 27 2e 24 6e 61 6d 65 2e 27 20 69 73 20 69 6e 76 61 6c 69 64 2c ckage.name.'.$name.'.is.invalid,
1fb00 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 68 61 76 65 .it.should.be.lowercase.and.have
1fb20 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 61 73 68 2c .a.vendor.name,.a.forward.slash,
1fb40 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 67 3a 20 5b .and.a.package.name,.matching:.[
1fb60 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 0a 7d 0a 7d a-z0-9_.-]+/[a-z0-9_.-]+'.);.}.}
1fb80 0a 0a 24 6e 61 6d 65 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 ..$name.=.$io->askAndValidate(.'
1fba0 50 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 3c 76 65 6e 64 6f 72 3e 2f 3c 6e 61 6d 65 3e 29 20 5b Package.name.(<vendor>/<name>).[
1fbc0 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 6e 61 6d 65 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 20 27 <comment>'.$name.'</comment>]:.'
1fbe0 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 75 73 65 20 28 24 6e 61 6d 65 29 20 ,.function.($value).use.($name).
1fc00 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 72 65 74 75 72 6e 20 {.if.(null.===.$value).{.return.
1fc20 24 6e 61 6d 65 3b 0a 7d 0a 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d $name;.}..if.(!preg_match('{^[a-
1fc40 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 76 61 6c 75 z0-9_.-]+/[a-z0-9_.-]+$}',.$valu
1fc60 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 72 67 75 6d 65 6e 74 e)).{.throw.new.\InvalidArgument
1fc80 45 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 Exception(.'The.package.name.'.$
1fca0 76 61 6c 75 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 value.'.is.invalid,.it.should.be
1fcc0 20 6c 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 .lowercase.and.have.a.vendor.nam
1fce0 65 2c 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 e,.a.forward.slash,.and.a.packag
1fd00 65 20 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 e.name,.matching:.[a-z0-9_.-]+/[
1fd20 61 2d 7a 30 2d 39 5f 2e 2d 5d 2b 27 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 a-z0-9_.-]+'.);.}..return.$value
1fd40 3b 0a 7d 2c 0a 6e 75 6c 6c 2c 0a 24 6e 61 6d 65 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f ;.},.null,.$name.);.$input->setO
1fd60 70 74 69 6f 6e 28 27 6e 61 6d 65 27 2c 20 24 6e 61 6d 65 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 ption('name',.$name);..$descript
1fd80 69 6f 6e 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 73 63 72 69 70 ion.=.$input->getOption('descrip
1fda0 74 69 6f 6e 27 29 20 3f 3a 20 66 61 6c 73 65 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 tion').?:.false;.$description.=.
1fdc0 24 69 6f 2d 3e 61 73 6b 28 0a 27 44 65 73 63 72 69 70 74 69 6f 6e 20 5b 3c 63 6f 6d 6d 65 6e 74 $io->ask(.'Description.[<comment
1fde0 3e 27 2e 24 64 65 73 63 72 69 70 74 69 6f 6e 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 20 27 2c >'.$description.'</comment>]:.',
1fe00 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 .$description.);.$input->setOpti
1fe20 6f 6e 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 29 3b on('description',.$description);
1fe40 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 61 75 74 68 6f 72 20 3d 20 24 69 6e 70 75 74 2d ..if.(null.===.$author.=.$input-
1fe60 3e 67 65 74 4f 70 74 69 6f 6e 28 27 61 75 74 68 6f 72 27 29 29 20 7b 0a 69 66 20 28 69 73 73 65 >getOption('author')).{.if.(isse
1fe80 74 28 24 67 69 74 5b 27 75 73 65 72 2e 6e 61 6d 65 27 5d 29 20 26 26 20 69 73 73 65 74 28 24 67 t($git['user.name']).&&.isset($g
1fea0 69 74 5b 27 75 73 65 72 2e 65 6d 61 69 6c 27 5d 29 29 20 7b 0a 24 61 75 74 68 6f 72 20 3d 20 73 it['user.email'])).{.$author.=.s
1fec0 70 72 69 6e 74 66 28 27 25 73 20 3c 25 73 3e 27 2c 20 24 67 69 74 5b 27 75 73 65 72 2e 6e 61 6d printf('%s.<%s>',.$git['user.nam
1fee0 65 27 5d 2c 20 24 67 69 74 5b 27 75 73 65 72 2e 65 6d 61 69 6c 27 5d 29 3b 0a 7d 0a 7d 0a 0a 24 e'],.$git['user.email']);.}.}..$
1ff00 73 65 6c 66 20 3d 20 24 74 68 69 73 3b 0a 24 61 75 74 68 6f 72 20 3d 20 24 69 6f 2d 3e 61 73 6b self.=.$this;.$author.=.$io->ask
1ff20 41 6e 64 56 61 6c 69 64 61 74 65 28 0a 27 41 75 74 68 6f 72 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 27 AndValidate(.'Author.[<comment>'
1ff40 2e 24 61 75 74 68 6f 72 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 20 27 2c 0a 66 75 6e 63 74 69 .$author.'</comment>]:.',.functi
1ff60 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 61 75 74 68 6f 72 29 on.($value).use.($self,.$author)
1ff80 20 7b 0a 24 76 61 6c 75 65 20 3d 20 24 76 61 6c 75 65 20 3f 3a 20 24 61 75 74 68 6f 72 3b 0a 24 .{.$value.=.$value.?:.$author;.$
1ffa0 61 75 74 68 6f 72 20 3d 20 24 73 65 6c 66 2d 3e 70 61 72 73 65 41 75 74 68 6f 72 53 74 72 69 6e author.=.$self->parseAuthorStrin
1ffc0 67 28 24 76 61 6c 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 25 73 20 3c g($value);..return.sprintf('%s.<
1ffe0 25 73 3e 27 2c 20 24 61 75 74 68 6f 72 5b 27 6e 61 6d 65 27 5d 2c 20 24 61 75 74 68 6f 72 5b 27 %s>',.$author['name'],.$author['
20000 65 6d 61 69 6c 27 5d 29 3b 0a 7d 2c 0a 6e 75 6c 6c 2c 0a 24 61 75 74 68 6f 72 0a 29 3b 0a 24 69 email']);.},.null,.$author.);.$i
20020 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 61 75 74 68 6f 72 27 2c 20 24 61 75 74 68 6f nput->setOption('author',.$autho
20040 72 29 3b 0a 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 20 3d 20 24 69 6e 70 75 74 2d r);..$minimumStability.=.$input-
20060 3e 67 65 74 4f 70 74 69 6f 6e 28 27 73 74 61 62 69 6c 69 74 79 27 29 20 3f 3a 20 6e 75 6c 6c 3b >getOption('stability').?:.null;
20080 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 20 3d 20 24 69 6f 2d 3e 61 73 6b 41 6e 64 .$minimumStability.=.$io->askAnd
200a0 56 61 6c 69 64 61 74 65 28 0a 27 4d 69 6e 69 6d 75 6d 20 53 74 61 62 69 6c 69 74 79 20 5b 3c 63 Validate(.'Minimum.Stability.[<c
200c0 6f 6d 6d 65 6e 74 3e 27 2e 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 2e 27 3c 2f 63 6f omment>'.$minimumStability.'</co
200e0 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 6c 75 65 29 20 75 73 mment>]:.',.function.($value).us
20100 65 20 28 24 73 65 6c 66 2c 20 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 29 20 7b 0a 69 e.($self,.$minimumStability).{.i
20120 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 69 f.(null.===.$value).{.return.$mi
20140 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 42 61 nimumStability;.}..if.(!isset(Ba
20160 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 76 61 6c 75 65 5d 29 sePackage::$stabilities[$value])
20180 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
201a0 63 65 70 74 69 6f 6e 28 0a 27 49 6e 76 61 6c 69 64 20 6d 69 6e 69 6d 75 6d 20 73 74 61 62 69 6c ception(.'Invalid.minimum.stabil
201c0 69 74 79 20 22 27 2e 24 76 61 6c 75 65 2e 27 22 2e 20 4d 75 73 74 20 62 65 20 65 6d 70 74 79 20 ity."'.$value.'"..Must.be.empty.
201e0 6f 72 20 6f 6e 65 20 6f 66 3a 20 27 2e 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 or.one.of:.'..implode(',.',.arra
20200 79 5f 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 y_keys(BasePackage::$stabilities
20220 29 29 0a 29 3b 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 )).);.}..return.$value;.},.null,
20240 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 .$minimumStability.);.$input->se
20260 74 4f 70 74 69 6f 6e 28 27 73 74 61 62 69 6c 69 74 79 27 2c 20 24 6d 69 6e 69 6d 75 6d 53 74 61 tOption('stability',.$minimumSta
20280 62 69 6c 69 74 79 29 3b 0a 0a 24 74 79 70 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 bility);..$type.=.$input->getOpt
202a0 69 6f 6e 28 27 74 79 70 65 27 29 20 3f 3a 20 66 61 6c 73 65 3b 0a 24 74 79 70 65 20 3d 20 24 69 ion('type').?:.false;.$type.=.$i
202c0 6f 2d 3e 61 73 6b 28 0a 27 50 61 63 6b 61 67 65 20 54 79 70 65 20 5b 3c 63 6f 6d 6d 65 6e 74 3e o->ask(.'Package.Type.[<comment>
202e0 27 2e 24 74 79 70 65 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 20 27 2c 0a 24 74 79 70 65 0a 29 '.$type.'</comment>]:.',.$type.)
20300 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 74 79 70 65 27 2c 20 24 74 79 70 ;.$input->setOption('type',.$typ
20320 65 29 3b 0a 0a 24 6c 69 63 65 6e 73 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f e);..$license.=.$input->getOptio
20340 6e 28 27 6c 69 63 65 6e 73 65 27 29 20 3f 3a 20 66 61 6c 73 65 3b 0a 24 6c 69 63 65 6e 73 65 20 n('license').?:.false;.$license.
20360 3d 20 24 69 6f 2d 3e 61 73 6b 28 0a 27 4c 69 63 65 6e 73 65 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 27 =.$io->ask(.'License.[<comment>'
20380 2e 24 6c 69 63 65 6e 73 65 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 20 27 2c 0a 24 6c 69 63 65 .$license.'</comment>]:.',.$lice
203a0 6e 73 65 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 6c 69 63 65 6e 73 nse.);.$input->setOption('licens
203c0 65 27 2c 20 24 6c 69 63 65 6e 73 65 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 e',.$license);..$io->writeError(
203e0 61 72 72 61 79 28 27 27 2c 20 27 44 65 66 69 6e 65 20 79 6f 75 72 20 64 65 70 65 6e 64 65 6e 63 array('',.'Define.your.dependenc
20400 69 65 73 2e 27 2c 20 27 27 29 29 3b 0a 0a 24 71 75 65 73 74 69 6f 6e 20 3d 20 27 57 6f 75 6c 64 ies.',.''));..$question.=.'Would
20420 20 79 6f 75 20 6c 69 6b 65 20 74 6f 20 64 65 66 69 6e 65 20 79 6f 75 72 20 64 65 70 65 6e 64 65 .you.like.to.define.your.depende
20440 6e 63 69 65 73 20 28 72 65 71 75 69 72 65 29 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 20 5b 3c ncies.(require).interactively.[<
20460 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 3b 0a 24 72 65 71 75 comment>yes</comment>]?.';.$requ
20480 69 72 65 6d 65 6e 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 irements.=.array();.if.($io->ask
204a0 43 6f 6e 66 69 72 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 Confirmation($question,.true)).{
204c0 0a 24 72 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 .$requirements.=.$this->determin
204e0 65 52 65 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 eRequirements($input,.$output,.$
20500 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 72 65 71 75 69 72 65 27 29 29 3b 0a 7d 0a input->getOption('require'));.}.
20520 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 27 2c 20 24 72 65 $input->setOption('require',.$re
20540 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 0a 24 71 75 65 73 74 69 6f 6e 20 3d 20 27 57 6f 75 6c 64 quirements);..$question.=.'Would
20560 20 79 6f 75 20 6c 69 6b 65 20 74 6f 20 64 65 66 69 6e 65 20 79 6f 75 72 20 64 65 76 20 64 65 70 .you.like.to.define.your.dev.dep
20580 65 6e 64 65 6e 63 69 65 73 20 28 72 65 71 75 69 72 65 2d 64 65 76 29 20 69 6e 74 65 72 61 63 74 endencies.(require-dev).interact
205a0 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 65 6e 74 3e 5d 3f 20 ively.[<comment>yes</comment>]?.
205c0 27 3b 0a 24 64 65 76 52 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 ';.$devRequirements.=.array();.i
205e0 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 73 74 69 6f f.($io->askConfirmation($questio
20600 6e 2c 20 74 72 75 65 29 29 20 7b 0a 24 64 65 76 52 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 24 n,.true)).{.$devRequirements.=.$
20620 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 70 this->determineRequirements($inp
20640 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 27 ut,.$output,.$input->getOption('
20660 72 65 71 75 69 72 65 2d 64 65 76 27 29 29 3b 0a 7d 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 require-dev'));.}.$input->setOpt
20680 69 6f 6e 28 27 72 65 71 75 69 72 65 2d 64 65 76 27 2c 20 24 64 65 76 52 65 71 75 69 72 65 6d 65 ion('require-dev',.$devRequireme
206a0 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 74 69 6f 6e 20 70 61 nts);.}.......public.function.pa
206c0 72 73 65 41 75 74 68 6f 72 53 74 72 69 6e 67 28 24 61 75 74 68 6f 72 29 0a 7b 0a 69 66 20 28 70 rseAuthorString($author).{.if.(p
206e0 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 28 3f 50 3c 6e 61 6d 65 3e 5b 2d 20 5c 2e 2c 5c 70 7b 4c reg_match('/^(?P<name>[-.\.,\p{L
20700 7d 5c 70 7b 4e 7d 5c 27 e2 80 99 5d 2b 29 20 3c 28 3f 50 3c 65 6d 61 69 6c 3e 2e 2b 3f 29 3e 24 }\p{N}\'...]+).<(?P<email>.+?)>$
20720 2f 75 27 2c 20 24 61 75 74 68 6f 72 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 69 66 20 28 24 74 68 /u',.$author,.$match)).{.if.($th
20740 69 73 2d 3e 69 73 56 61 6c 69 64 45 6d 61 69 6c 28 24 6d 61 74 63 68 5b 27 65 6d 61 69 6c 27 5d is->isValidEmail($match['email']
20760 29 29 20 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 20 74 72 69 )).{.return.array(.'name'.=>.tri
20780 6d 28 24 6d 61 74 63 68 5b 27 6e 61 6d 65 27 5d 29 2c 0a 27 65 6d 61 69 6c 27 20 3d 3e 20 24 6d m($match['name']),.'email'.=>.$m
207a0 61 74 63 68 5b 27 65 6d 61 69 6c 27 5d 2c 0a 29 3b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 atch['email'],.);.}.}..throw.new
207c0 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 49 6e 76 .\InvalidArgumentException(.'Inv
207e0 61 6c 69 64 20 61 75 74 68 6f 72 20 73 74 72 69 6e 67 2e 20 20 4d 75 73 74 20 62 65 20 69 6e 20 alid.author.string...Must.be.in.
20800 74 68 65 20 66 6f 72 6d 61 74 3a 20 27 2e 0a 27 4a 6f 68 6e 20 53 6d 69 74 68 20 3c 6a 6f 68 6e the.format:.'..'John.Smith.<john
20820 40 65 78 61 6d 70 6c 65 2e 63 6f 6d 3e 27 0a 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 @example.com>'.);.}..protected.f
20840 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 29 0a 7b 0a 72 65 unction.findPackages($name).{.re
20860 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 52 65 70 6f 73 28 29 2d 3e 73 65 61 72 63 68 28 24 turn.$this->getRepos()->search($
20880 6e 61 6d 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 20 67 65 74 name);.}..protected.function.get
208a0 52 65 70 6f 73 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 72 65 70 6f 73 29 20 7b 0a 24 Repos().{.if.(!$this->repos).{.$
208c0 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
208e0 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
20900 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 29 2c 0a 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 tformRepository),.Factory::creat
20920 65 44 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 74 68 69 73 2d 3e 67 65 74 49 eDefaultRepositories($this->getI
20940 4f 28 29 29 0a 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 3b O()).));.}..return.$this->repos;
20960 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 74 65 72 6d 69 6e 65 .}..protected.function.determine
20980 52 65 71 75 69 72 65 6d 65 6e 74 73 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 Requirements(InputInterface.$inp
209a0 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 24 72 65 ut,.OutputInterface.$output,.$re
209c0 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 2c 20 24 70 68 70 56 65 72 73 69 6f 6e 20 3d 20 quires.=.array(),.$phpVersion.=.
209e0 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 72 65 71 75 69 72 65 73 29 20 7b 0a 24 72 65 71 75 69 72 null).{.if.($requires).{.$requir
20a00 65 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 74 es.=.$this->normalizeRequirement
20a20 73 28 24 72 65 71 75 69 72 65 73 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b s($requires);.$result.=.array();
20a40 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.
20a60 28 24 72 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 6d 65 6e 74 29 20 7b 0a 69 66 ($requires.as.$requirement).{.if
20a80 20 28 21 69 73 73 65 74 28 24 72 65 71 75 69 72 65 6d 65 6e 74 5b 27 76 65 72 73 69 6f 6e 27 5d .(!isset($requirement['version']
20aa0 29 29 20 7b 0a 0a 20 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 42 65 73 )).{...$version.=.$this->findBes
20ac0 74 56 65 72 73 69 6f 6e 46 6f 72 50 61 63 6b 61 67 65 28 24 69 6e 70 75 74 2c 20 24 72 65 71 75 tVersionForPackage($input,.$requ
20ae0 69 72 65 6d 65 6e 74 5b 27 6e 61 6d 65 27 5d 2c 20 24 70 68 70 56 65 72 73 69 6f 6e 29 3b 0a 24 irement['name'],.$phpVersion);.$
20b00 72 65 71 75 69 72 65 6d 65 6e 74 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 24 76 65 72 73 69 6f requirement['version'].=.$versio
20b20 6e 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 0a 27 55 73 n;..$io->writeError(sprintf(.'Us
20b40 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 6f 3e 20 66 6f 72 20 ing.version.<info>%s</info>.for.
20b60 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 5b 27 <info>%s</info>',.$requirement['
20b80 76 65 72 73 69 6f 6e 27 5d 2c 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 5b 27 6e 61 6d 65 27 5d 0a version'],.$requirement['name'].
20ba0 29 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 24 72 65 71 75 69 72 65 6d 65 6e 74 5b ));.}..$result[].=.$requirement[
20bc0 27 6e 61 6d 65 27 5d 20 2e 20 27 20 27 20 2e 20 24 72 65 71 75 69 72 65 6d 65 6e 74 5b 27 76 65 'name']...'.'...$requirement['ve
20be0 72 73 69 6f 6e 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 24 rsion'];.}..return.$result;.}..$
20c00 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
20c20 72 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 77 68 69 6c 65 r();.$io.=.$this->getIO();.while
20c40 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 20 3d 20 24 69 6f 2d 3e 61 73 6b 28 27 .(null.!==.$package.=.$io->ask('
20c60 53 65 61 72 63 68 20 66 6f 72 20 61 20 70 61 63 6b 61 67 65 3a 20 27 29 29 20 7b 0a 24 6d 61 74 Search.for.a.package:.')).{.$mat
20c80 63 68 65 73 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 70 61 63 6b ches.=.$this->findPackages($pack
20ca0 61 67 65 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 24 65 age);..if.(count($matches)).{.$e
20cc0 78 61 63 74 4d 61 74 63 68 20 3d 20 6e 75 6c 6c 3b 0a 24 63 68 6f 69 63 65 73 20 3d 20 61 72 72 xactMatch.=.null;.$choices.=.arr
20ce0 61 79 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 24 70 6f 73 69 ay();.foreach.($matches.as.$posi
20d00 74 69 6f 6e 20 3d 3e 20 24 66 6f 75 6e 64 50 61 63 6b 61 67 65 29 20 7b 0a 24 63 68 6f 69 63 65 tion.=>.$foundPackage).{.$choice
20d20 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 20 3c 69 6e 66 6f 3e 25 35 73 3c 2f 69 6e 66 6f 3e s[].=.sprintf('.<info>%5s</info>
20d40 20 25 73 27 2c 20 22 5b 24 70 6f 73 69 74 69 6f 6e 5d 22 2c 20 24 66 6f 75 6e 64 50 61 63 6b 61 .%s',."[$position]",.$foundPacka
20d60 67 65 5b 27 6e 61 6d 65 27 5d 29 3b 0a 69 66 20 28 24 66 6f 75 6e 64 50 61 63 6b 61 67 65 5b 27 ge['name']);.if.($foundPackage['
20d80 6e 61 6d 65 27 5d 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 65 78 61 63 74 4d 61 74 name'].===.$package).{.$exactMat
20da0 63 68 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 65 ch.=.true;.break;.}.}....if.(!$e
20dc0 78 61 63 74 4d 61 74 63 68 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 61 72 72 xactMatch).{.$io->writeError(arr
20de0 61 79 28 0a 27 27 2c 0a 73 70 72 69 6e 74 66 28 27 46 6f 75 6e 64 20 3c 69 6e 66 6f 3e 25 73 3c ay(.'',.sprintf('Found.<info>%s<
20e00 2f 69 6e 66 6f 3e 20 70 61 63 6b 61 67 65 73 20 6d 61 74 63 68 69 6e 67 20 3c 69 6e 66 6f 3e 25 /info>.packages.matching.<info>%
20e20 73 3c 2f 69 6e 66 6f 3e 27 2c 20 63 6f 75 6e 74 28 24 6d 61 74 63 68 65 73 29 2c 20 24 70 61 63 s</info>',.count($matches),.$pac
20e40 6b 61 67 65 29 2c 0a 27 27 2c 0a 29 29 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 kage),.'',.));..$io->writeError(
20e60 24 63 68 6f 69 63 65 73 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 27 29 3b 0a $choices);.$io->writeError('');.
20e80 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 73 65 6c 65 63 74 69 .$validator.=.function.($selecti
20ea0 6f 6e 29 20 75 73 65 20 28 24 6d 61 74 63 68 65 73 2c 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 on).use.($matches,.$versionParse
20ec0 72 29 20 7b 0a 69 66 20 28 27 27 20 3d 3d 3d 20 24 73 65 6c 65 63 74 69 6f 6e 29 20 7b 0a 72 65 r).{.if.(''.===.$selection).{.re
20ee0 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 6e 75 6d 65 72 69 63 28 24 73 turn.false;.}..if.(is_numeric($s
20f00 65 6c 65 63 74 69 6f 6e 29 20 26 26 20 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 28 69 6e 74 election).&&.isset($matches[(int
20f20 29 20 24 73 65 6c 65 63 74 69 6f 6e 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6d 61 ).$selection])).{.$package.=.$ma
20f40 74 63 68 65 73 5b 28 69 6e 74 29 20 24 73 65 6c 65 63 74 69 6f 6e 5d 3b 0a 0a 72 65 74 75 72 6e tches[(int).$selection];..return
20f60 20 24 70 61 63 6b 61 67 65 5b 27 6e 61 6d 65 27 5d 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d .$package['name'];.}..if.(preg_m
20f80 61 74 63 68 28 27 7b 5e 5c 73 2a 28 3f 50 3c 6e 61 6d 65 3e 5b 5c 53 2f 5d 2b 29 28 3f 3a 5c 73 atch('{^\s*(?P<name>[\S/]+)(?:\s
20fa0 2b 28 3f 50 3c 76 65 72 73 69 6f 6e 3e 5c 53 2b 29 29 3f 5c 73 2a 24 7d 27 2c 20 24 73 65 6c 65 +(?P<version>\S+))?\s*$}',.$sele
20fc0 63 74 69 6f 6e 2c 20 24 70 61 63 6b 61 67 65 4d 61 74 63 68 65 73 29 29 20 7b 0a 69 66 20 28 69 ction,.$packageMatches)).{.if.(i
20fe0 73 73 65 74 28 24 70 61 63 6b 61 67 65 4d 61 74 63 68 65 73 5b 27 76 65 72 73 69 6f 6e 27 5d 29 sset($packageMatches['version'])
21000 29 20 7b 0a 0a 0a 0a 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 ).{.....$versionParser->parseCon
21020 73 74 72 61 69 6e 74 73 28 24 70 61 63 6b 61 67 65 4d 61 74 63 68 65 73 5b 27 76 65 72 73 69 6f straints($packageMatches['versio
21040 6e 27 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 4d 61 74 63 68 65 73 5b 27 6e n']);..return.$packageMatches['n
21060 61 6d 65 27 5d 2e 27 20 27 2e 24 70 61 63 6b 61 67 65 4d 61 74 63 68 65 73 5b 27 76 65 72 73 69 ame'].'.'.$packageMatches['versi
21080 6f 6e 27 5d 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 4d 61 74 63 68 65 on'];.}....return.$packageMatche
210a0 73 5b 27 6e 61 6d 65 27 5d 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 45 78 63 65 70 74 69 s['name'];.}..throw.new.\Excepti
210c0 6f 6e 28 27 4e 6f 74 20 61 20 76 61 6c 69 64 20 73 65 6c 65 63 74 69 6f 6e 27 29 3b 0a 7d 3b 0a on('Not.a.valid.selection');.};.
210e0 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 69 6f 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 .$package.=.$io->askAndValidate(
21100 0a 27 45 6e 74 65 72 20 70 61 63 6b 61 67 65 20 23 20 74 6f 20 61 64 64 2c 20 6f 72 20 74 68 65 .'Enter.package.#.to.add,.or.the
21120 20 63 6f 6d 70 6c 65 74 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 69 66 20 69 74 20 69 73 20 .complete.package.name.if.it.is.
21140 6e 6f 74 20 6c 69 73 74 65 64 3a 20 27 2c 0a 24 76 61 6c 69 64 61 74 6f 72 2c 0a 33 2c 0a 66 61 not.listed:.',.$validator,.3,.fa
21160 6c 73 65 0a 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 61 63 6b 61 lse.);.}....if.(false.!==.$packa
21180 67 65 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 70 61 63 6b 61 67 65 2c ge.&&.false.===.strpos($package,
211a0 20 27 20 27 29 29 20 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 .'.')).{.$validator.=.function.(
211c0 24 69 6e 70 75 74 29 20 7b 0a 24 69 6e 70 75 74 20 3d 20 74 72 69 6d 28 24 69 6e 70 75 74 29 3b $input).{.$input.=.trim($input);
211e0 0a 0a 72 65 74 75 72 6e 20 24 69 6e 70 75 74 20 3f 3a 20 66 61 6c 73 65 3b 0a 7d 3b 0a 0a 24 63 ..return.$input.?:.false;.};..$c
21200 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 69 6f 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 onstraint.=.$io->askAndValidate(
21220 0a 27 45 6e 74 65 72 20 74 68 65 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 20 74 .'Enter.the.version.constraint.t
21240 6f 20 72 65 71 75 69 72 65 20 28 6f 72 20 6c 65 61 76 65 20 62 6c 61 6e 6b 20 74 6f 20 75 73 65 o.require.(or.leave.blank.to.use
21260 20 74 68 65 20 6c 61 74 65 73 74 20 76 65 72 73 69 6f 6e 29 3a 20 27 2c 0a 24 76 61 6c 69 64 61 .the.latest.version):.',.$valida
21280 74 6f 72 2c 0a 33 2c 0a 66 61 6c 73 65 0a 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 tor,.3,.false.);..if.(false.===.
212a0 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 74 68 $constraint).{.$constraint.=.$th
212c0 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 69 is->findBestVersionForPackage($i
212e0 6e 70 75 74 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 70 68 70 56 65 72 73 69 6f 6e 29 3b 0a 0a 24 nput,.$package,.$phpVersion);..$
21300 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 0a 27 55 73 69 6e 67 20 76 io->writeError(sprintf(.'Using.v
21320 65 72 73 69 6f 6e 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 20 66 6f 72 20 3c 69 6e 66 6f ersion.<info>%s</info>.for.<info
21340 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 0a 24 63 6f 6e 73 74 72 61 69 6e 74 2c 0a 24 70 61 63 6b 61 >%s</info>',.$constraint,.$packa
21360 67 65 0a 29 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 2e 3d 20 27 20 27 2e 24 63 6f 6e 73 74 ge.));.}..$package..=.'.'.$const
21380 72 61 69 6e 74 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 raint;.}..if.(false.!==.$package
213a0 29 20 7b 0a 24 72 65 71 75 69 72 65 73 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a ).{.$requires[].=.$package;.}.}.
213c0 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 }..return.$requires;.}..protecte
213e0 64 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 41 75 74 68 6f 72 73 28 24 61 75 74 68 6f 72 d.function.formatAuthors($author
21400 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 74 68 69 73 2d 3e 70 61 72 73 65 41 75 74 ).{.return.array($this->parseAut
21420 68 6f 72 53 74 72 69 6e 67 28 24 61 75 74 68 6f 72 29 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 horString($author));.}..protecte
21440 64 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 52 65 71 75 69 72 65 6d 65 6e 74 73 28 61 72 d.function.formatRequirements(ar
21460 72 61 79 20 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 0a 7b 0a 24 72 65 71 75 69 72 65 73 20 3d ray.$requirements).{.$requires.=
21480 20 61 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 .array();.$requirements.=.$this-
214a0 3e 6e 6f 72 6d 61 6c 69 7a 65 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 72 65 71 75 69 72 65 6d >normalizeRequirements($requirem
214c0 65 6e 74 73 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 73 ents);.foreach.($requirements.as
214e0 20 24 72 65 71 75 69 72 65 6d 65 6e 74 29 20 7b 0a 24 72 65 71 75 69 72 65 73 5b 24 72 65 71 75 .$requirement).{.$requires[$requ
21500 69 72 65 6d 65 6e 74 5b 27 6e 61 6d 65 27 5d 5d 20 3d 20 24 72 65 71 75 69 72 65 6d 65 6e 74 5b irement['name']].=.$requirement[
21520 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 73 3b 'version'];.}..return.$requires;
21540 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 47 69 74 43 6f 6e .}..protected.function.getGitCon
21560 66 69 67 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 69 74 43 fig().{.if.(null.!==.$this->gitC
21580 6f 6e 66 69 67 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 43 6f 6e 66 69 67 onfig).{.return.$this->gitConfig
215a0 3b 0a 7d 0a 0a 24 66 69 6e 64 65 72 20 3d 20 6e 65 77 20 45 78 65 63 75 74 61 62 6c 65 46 69 6e ;.}..$finder.=.new.ExecutableFin
215c0 64 65 72 28 29 3b 0a 24 67 69 74 42 69 6e 20 3d 20 24 66 69 6e 64 65 72 2d 3e 66 69 6e 64 28 27 der();.$gitBin.=.$finder->find('
215e0 67 69 74 27 29 3b 0a 0a 24 63 6d 64 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 28 73 70 72 69 6e git');..$cmd.=.new.Process(sprin
21600 74 66 28 27 25 73 20 63 6f 6e 66 69 67 20 2d 6c 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 tf('%s.config.-l',.ProcessExecut
21620 6f 72 3a 3a 65 73 63 61 70 65 28 24 67 69 74 42 69 6e 29 29 29 3b 0a 24 63 6d 64 2d 3e 72 75 6e or::escape($gitBin)));.$cmd->run
21640 28 29 3b 0a 0a 69 66 20 28 24 63 6d 64 2d 3e 69 73 53 75 63 63 65 73 73 66 75 6c 28 29 29 20 7b ();..if.($cmd->isSuccessful()).{
21660 0a 24 74 68 69 73 2d 3e 67 69 74 43 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 65 .$this->gitConfig.=.array();.pre
21680 67 5f 6d 61 74 63 68 5f 61 6c 6c 28 27 7b 5e 28 5b 5e 3d 5d 2b 29 3d 28 2e 2a 29 24 7d 6d 27 2c g_match_all('{^([^=]+)=(.*)$}m',
216a0 20 24 63 6d 64 2d 3e 67 65 74 4f 75 74 70 75 74 28 29 2c 20 24 6d 61 74 63 68 65 73 2c 20 50 52 .$cmd->getOutput(),.$matches,.PR
216c0 45 47 5f 53 45 54 5f 4f 52 44 45 52 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 74 63 68 65 73 EG_SET_ORDER);.foreach.($matches
216e0 20 61 73 20 24 6d 61 74 63 68 29 20 7b 0a 24 74 68 69 73 2d 3e 67 69 74 43 6f 6e 66 69 67 5b 24 .as.$match).{.$this->gitConfig[$
21700 6d 61 74 63 68 5b 31 5d 5d 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e match[1]].=.$match[2];.}..return
21720 20 24 74 68 69 73 2d 3e 67 69 74 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 .$this->gitConfig;.}..return.$th
21740 69 73 2d 3e 67 69 74 43 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a is->gitConfig.=.array();.}......
21760 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 20 68 ............protected.function.h
21780 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 2c 20 24 76 65 6e asVendorIgnore($ignoreFile,.$ven
217a0 64 6f 72 20 3d 20 27 76 65 6e 64 6f 72 27 29 0a 7b 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 dor.=.'vendor').{.if.(!file_exis
217c0 74 73 28 24 69 67 6e 6f 72 65 46 69 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b ts($ignoreFile)).{.return.false;
217e0 0a 7d 0a 0a 24 70 61 74 74 65 72 6e 20 3d 20 73 70 72 69 6e 74 66 28 27 7b 5e 2f 3f 25 73 28 2f .}..$pattern.=.sprintf('{^/?%s(/
21800 5c 2a 3f 29 3f 24 7d 27 2c 20 70 72 65 67 5f 71 75 6f 74 65 28 24 76 65 6e 64 6f 72 29 29 3b 0a \*?)?$}',.preg_quote($vendor));.
21820 0a 24 6c 69 6e 65 73 20 3d 20 66 69 6c 65 28 24 69 67 6e 6f 72 65 46 69 6c 65 2c 20 46 49 4c 45 .$lines.=.file($ignoreFile,.FILE
21840 5f 49 47 4e 4f 52 45 5f 4e 45 57 5f 4c 49 4e 45 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 _IGNORE_NEW_LINES);.foreach.($li
21860 6e 65 73 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 nes.as.$line).{.if.(preg_match($
21880 70 61 74 74 65 72 6e 2c 20 24 6c 69 6e 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a pattern,.$line)).{.return.true;.
218a0 7d 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 20 }.}..return.false;.}..protected.
218c0 66 75 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 52 65 71 75 69 72 65 6d 65 6e 74 73 28 61 function.normalizeRequirements(a
218e0 72 72 61 79 20 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 0a 7b 0a 24 70 61 72 73 65 72 20 3d 20 rray.$requirements).{.$parser.=.
21900 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 new.VersionParser();..return.$pa
21920 72 73 65 72 2d 3e 70 61 72 73 65 4e 61 6d 65 56 65 72 73 69 6f 6e 50 61 69 72 73 28 24 72 65 71 rser->parseNameVersionPairs($req
21940 75 69 72 65 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f uirements);.}..protected.functio
21960 6e 20 61 64 64 56 65 6e 64 6f 72 49 67 6e 6f 72 65 28 24 69 67 6e 6f 72 65 46 69 6c 65 2c 20 24 n.addVendorIgnore($ignoreFile,.$
21980 76 65 6e 64 6f 72 20 3d 20 27 2f 76 65 6e 64 6f 72 2f 27 29 0a 7b 0a 24 63 6f 6e 74 65 6e 74 73 vendor.=.'/vendor/').{.$contents
219a0 20 3d 20 22 22 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 69 67 6e 6f 72 65 46 69 .=."";.if.(file_exists($ignoreFi
219c0 6c 65 29 29 20 7b 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 le)).{.$contents.=.file_get_cont
219e0 65 6e 74 73 28 24 69 67 6e 6f 72 65 46 69 6c 65 29 3b 0a 0a 69 66 20 28 22 5c 6e 22 20 21 3d 3d ents($ignoreFile);..if.("\n".!==
21a00 20 73 75 62 73 74 72 28 24 63 6f 6e 74 65 6e 74 73 2c 20 30 2c 20 2d 31 29 29 20 7b 0a 24 63 6f .substr($contents,.0,.-1)).{.$co
21a20 6e 74 65 6e 74 73 20 2e 3d 20 22 5c 6e 22 3b 0a 7d 0a 7d 0a 0a 66 69 6c 65 5f 70 75 74 5f 63 6f ntents..=."\n";.}.}..file_put_co
21a40 6e 74 65 6e 74 73 28 24 69 67 6e 6f 72 65 46 69 6c 65 2c 20 24 63 6f 6e 74 65 6e 74 73 20 2e 20 ntents($ignoreFile,.$contents...
21a60 24 76 65 6e 64 6f 72 2e 20 22 5c 6e 22 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e $vendor.."\n");.}..protected.fun
21a80 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 45 6d 61 69 6c 28 24 65 6d 61 69 6c 29 0a 7b 0a 0a 20 69 ction.isValidEmail($email).{...i
21aa0 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 66 69 6c 74 65 72 5f 76 61 72 27 f.(!function_exists('filter_var'
21ac0 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 50 48 50 5f 56 )).{.return.true;.}....if.(PHP_V
21ae0 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 33 30 33 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 ERSION_ID.<.50303).{.return.true
21b00 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d 20 66 69 6c 74 65 72 5f 76 61 72 ;.}..return.false.!==.filter_var
21b20 28 24 65 6d 61 69 6c 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 45 4d 41 49 4c 29 3b ($email,.FILTER_VALIDATE_EMAIL);
21b40 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 6f 6f 6c 28 49 6e 70 .}..private.function.getPool(Inp
21b60 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 21 24 74 68 69 73 utInterface.$input).{.if.(!$this
21b80 2d 3e 70 6f 6f 6c 29 20 7b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c ->pool).{.$this->pool.=.new.Pool
21ba0 28 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
21bc0 75 74 29 29 3b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 ut));.$this->pool->addRepository
21be0 28 24 74 68 69 73 2d 3e 67 65 74 52 65 70 6f 73 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 ($this->getRepos());.}..return.$
21c00 74 68 69 73 2d 3e 70 6f 6f 6c 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 this->pool;.}..private.function.
21c20 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 49 6e 70 75 74 49 6e 74 65 72 66 61 getMinimumStability(InputInterfa
21c40 63 65 20 24 69 6e 70 75 74 29 0a 7b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 68 61 73 4f 70 74 69 ce.$input).{.if.($input->hasOpti
21c60 6f 6e 28 27 73 74 61 62 69 6c 69 74 79 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 69 6e 70 75 74 on('stability')).{.return.$input
21c80 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 73 74 61 62 69 6c 69 74 79 27 29 20 3f 3a 20 27 73 74 61 ->getOption('stability').?:.'sta
21ca0 62 6c 65 27 3b 0a 7d 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 ble';.}..$file.=.Factory::getCom
21cc0 70 6f 73 65 72 46 69 6c 65 28 29 3b 0a 69 66 20 28 69 73 5f 66 69 6c 65 28 24 66 69 6c 65 29 20 poserFile();.if.(is_file($file).
21ce0 26 26 20 69 73 5f 72 65 61 64 61 62 6c 65 28 24 66 69 6c 65 29 20 26 26 20 69 73 5f 61 72 72 61 &&.is_readable($file).&&.is_arra
21d00 79 28 24 63 6f 6d 70 6f 73 65 72 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 66 69 6c 65 5f 67 y($composer.=.json_decode(file_g
21d20 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 29 2c 20 74 72 75 65 29 29 29 20 7b 0a 69 66 et_contents($file),.true))).{.if
21d40 20 28 21 65 6d 70 74 79 28 24 63 6f 6d 70 6f 73 65 72 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 .(!empty($composer['minimum-stab
21d60 69 6c 69 74 79 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f 73 65 72 5b 27 6d 69 ility'])).{.return.$composer['mi
21d80 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 nimum-stability'];.}.}..return.'
21da0 73 74 61 62 6c 65 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 stable';.}.............private.f
21dc0 75 6e 63 74 69 6f 6e 20 66 69 6e 64 42 65 73 74 56 65 72 73 69 6f 6e 46 6f 72 50 61 63 6b 61 67 unction.findBestVersionForPackag
21de0 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 24 6e 61 6d 65 2c 20 e(InputInterface.$input,.$name,.
21e00 24 70 68 70 56 65 72 73 69 6f 6e 29 0a 7b 0a 0a 20 24 76 65 72 73 69 6f 6e 53 65 6c 65 63 74 6f $phpVersion).{...$versionSelecto
21e20 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 74 68 69 73 2d 3e 67 r.=.new.VersionSelector($this->g
21e40 65 74 50 6f 6f 6c 28 24 69 6e 70 75 74 29 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 76 65 72 etPool($input));.$package.=.$ver
21e60 73 69 6f 6e 53 65 6c 65 63 74 6f 72 2d 3e 66 69 6e 64 42 65 73 74 43 61 6e 64 69 64 61 74 65 28 sionSelector->findBestCandidate(
21e80 24 6e 61 6d 65 2c 20 6e 75 6c 6c 2c 20 24 70 68 70 56 65 72 73 69 6f 6e 29 3b 0a 0a 69 66 20 28 $name,.null,.$phpVersion);..if.(
21ea0 21 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 !$package).{.throw.new.\InvalidA
21ec0 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
21ee0 20 6e 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 .not.find.package.%s.at.any.vers
21f00 69 6f 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 ion.for.your.minimum-stability.(
21f20 25 73 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 %s)..Check.the.package.spelling.
21f40 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 27 2c 0a 24 6e 61 6d or.your.minimum-stability',.$nam
21f60 65 2c 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 e,.$this->getMinimumStability($i
21f80 6e 70 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 nput).));.}..return.$versionSele
21fa0 63 74 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 ctor->findRecommendedRequireVers
21fc0 69 6f 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 ion($package);.}.}.<?php........
21fe0 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 3b 0a ....namespace.Composer\Command;.
22000 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
22020 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
22040 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
22060 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
22080 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 6d \InputInterface;.use.Symfony\Com
220a0 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
220c0 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\
220e0 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
22100 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
22120 49 6e 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 Interface;........class.InstallC
22140 6f 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 6f 74 65 63 74 ommand.extends.Command.{.protect
22160 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 0a ed.function.configure().{.$this.
22180 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 72 69 ->setName('install').->setDescri
221a0 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 70 65 ption('Installs.the.project.depe
221c0 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 6b 20 ndencies.from.the.composer.lock.
221e0 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 20 6f file.if.present,.or.falls.back.o
22200 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 66 69 n.the.composer.json.').->setDefi
22220 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 70 nition(array(.new.InputOption('p
22240 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 6f 6e refer-source',.null,.InputOption
22260 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 74 69 ::VALUE_NONE,.'Forces.installati
22280 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 6f 73 on.from.package.sources.when.pos
222a0 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 6f 6e sible,.including.VCS.information
222c0 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 69 73 .'),.new.InputOption('prefer-dis
222e0 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 4f 4e t',.null,.InputOption::VALUE_NON
22300 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 61 63 E,.'Forces.installation.from.pac
22320 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 73 2e kage.dist.even.for.dev.versions.
22340 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 20 6e '),.new.InputOption('dry-run',.n
22360 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 4f ull,.InputOption::VALUE_NONE,.'O
22380 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 20 6e utputs.the.operations.but.will.n
223a0 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 79 20 ot.execute.anything.(implicitly.
223c0 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 75 74 enables.--verbose).'),.new.Input
223e0 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:
22400 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
22420 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
22440 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
22460 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
22480 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
224a0 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
224c0 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
224e0 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
22500 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 6c 20 tion::VALUE_NONE,.'Disables.all.
22520 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 6f 2d plugins.'),.new.InputOption('no-
22540 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 74 4f custom-installers',.null,.InputO
22560 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 3a 20 ption::VALUE_NONE,.'DEPRECATED:.
22580 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 20 49 Use.no-plugins.instead.'),.new.I
225a0 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 6c 6c nputOption('no-autoloader',.null
225c0 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 69 70 ,.InputOption::VALUE_NONE,.'Skip
225e0 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 20 49 s.autoloader.generation'),.new.I
22600 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 20 49 nputOption('no-scripts',.null,.I
22620 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 20 74 nputOption::VALUE_NONE,.'Skips.t
22640 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 66 69 he.execution.of.all.scripts.defi
22660 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 6e 65 ned.in.composer.json.file.'),.ne
22680 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 75 6c w.InputOption('no-progress',.nul
226a0 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 6f 20 l,.InputOption::VALUE_NONE,.'Do.
226c0 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 29 2c not.output.download.progress.'),
226e0 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 7c 76 .new.InputOption('verbose',.'v|v
22700 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,
22720 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 20 6e .'Shows.more.details.including.n
22740 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 74 69 ew.commits.pulled.in.when.updati
22760 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 6e 28 ng.packages.'),.new.InputOption(
22780 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 70 75 'optimize-autoloader',.'o',.Inpu
227a0 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 20 61 tOption::VALUE_NONE,.'Optimize.a
227c0 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 6d 70 utoloader.during.autoloader.dump
227e0 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 61 75 '),.new.InputOption('classmap-au
22800 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 3a 3a thoritative',.'a',.InputOption::
22820 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 66 72 VALUE_NONE,.'Autoload.classes.fr
22840 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 6c 79 om.the.classmap.only..Implicitly
22860 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 72 60 .enables.`--optimize-autoloader`
22880 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 6c 61 .'),.new.InputOption('ignore-pla
228a0 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 3a 3a tform-reqs',.null,.InputOption::
228c0 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 65 71 VALUE_NONE,.'Ignore.platform.req
228e0 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 29 2e uirements.(php.&.ext-.packages).
22900 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 73 27 '),.new.InputArgument('packages'
22920 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
22940 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 6f 74 tArgument::OPTIONAL,.'Should.not
22960 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 75 69 .be.provided,.use.composer.requi
22980 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 61 67 re.instead.to.add.a.given.packag
229a0 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 74 48 e.to.composer.json.'),.)).->setH
229c0 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 69 6e elp(<<<EOT.The.<info>install</in
229e0 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 2e 6c fo>.command.reads.the.composer.l
22a00 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 63 74 ock.file.from.the.current.direct
22a20 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 64 73 ory,.processes.it,.and.downloads
22a40 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 73 20 .and.installs.all.the.libraries.
22a60 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 68 61 and.dependencies.outlined.in.tha
22a80 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 78 69 t.file..If.the.file.does.not.exi
22aa0 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 73 6f st.it.will.look.for.composer.jso
22ac0 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 63 6f n.and.do.the.same...<info>php.co
22ae0 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 54 0a mposer.phar.install</info>..EOT.
22b00 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
22b20 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
22b40 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 73 2d nterface.$output).{.$io.=.$this-
22b60 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 67 65 >getIO();.if.($args.=.$input->ge
22b80 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 77 72 tArgument('packages')).{.$io->wr
22ba0 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 65 6e iteError('<error>Invalid.argumen
22bc0 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 20 22 t.'.implode('.',.$args).'..Use."
22be0 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 2c 20 composer.require.'.implode('.',.
22c00 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 67 65 $args).'".instead.to.add.package
22c20 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 72 3e s.to.your.composer.json.</error>
22c40 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 67 65 ');..return.1;.}..if.($input->ge
22c60 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 29 29 tOption('no-custom-installers'))
22c80 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 6f 75 .{.$io->writeError('<warning>You
22ca0 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 6f 6e .are.using.the.deprecated.option
22cc0 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 6e 6f ."no-custom-installers"..Use."no
22ce0 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 3b 0a -plugins".instead.</warning>');.
22d00 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 2c 20 $input->setOption('no-plugins',.
22d20 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 6e 28 true);.}..if.($input->getOption(
22d40 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 72 6e 'dev')).{.$io->writeError('<warn
22d60 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 65 64 ing>You.are.using.the.deprecated
22d80 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 65 20 .option."dev"..Dev.packages.are.
22da0 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 6e 69 installed.by.default.now.</warni
22dc0 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 65 74 ng>');.}..$composer.=.$this->get
22de0 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
22e00 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
22e20 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
22e40 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
22e60 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
22e80 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,
22ea0 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 24 63 .'install',.$input,.$output);.$c
22ec0 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
22ee0 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()
22f00 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
22f20 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);
22f40 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 65 72 ..$preferSource.=.false;.$prefer
22f60 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 6f 73 Dist.=.false;..$config.=.$compos
22f80 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 66 69 er->getConfig();..switch.($confi
22fa0 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 0a 63 g->get('preferred-install')).{.c
22fc0 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 74 72 ase.'source':.$preferSource.=.tr
22fe0 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 72 44 ue;.break;.case.'dist':.$preferD
23000 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 3a 0a ist.=.true;.break;.case.'auto':.
23020 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 2d 3e default:...break;.}.if.($input->
23040 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 24 69 getOption('prefer-source').||.$i
23060 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 29 20 nput->getOption('prefer-dist')).
23080 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 70 74 {.$preferSource.=.$input->getOpt
230a0 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 69 73 ion('prefer-source');.$preferDis
230c0 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 64 69 t.=.$input->getOption('prefer-di
230e0 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 65 74 st');.}..$optimize.=.$input->get
23100 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 7c 7c Option('optimize-autoloader').||
23120 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 61 64 .$config->get('optimize-autoload
23140 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 3e 67 er');.$authoritative.=.$input->g
23160 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 76 65 etOption('classmap-authoritative
23180 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 75 74 ').||.$config->get('classmap-aut
231a0 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 72 79 horitative');..$install.->setDry
231c0 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 27 29 Run($input->getOption('dry-run')
231e0 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 6f 6e ).->setVerbose($input->getOption
23200 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 28 24 ('verbose')).->setPreferSource($
23220 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 24 70 preferSource).->setPreferDist($p
23240 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 74 2d referDist).->setDevMode(!$input-
23260 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 70 41 >getOption('no-dev')).->setDumpA
23280 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 6e 6f utoloader(!$input->getOption('no
232a0 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 28 21 -autoloader')).->setRunScripts(!
232c0 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 29 $input->getOption('no-scripts'))
232e0 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 6d 69 .->setOptimizeAutoloader($optimi
23300 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 28 24 ze).->setClassMapAuthoritative($
23320 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 66 6f authoritative).->setIgnorePlatfo
23340 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 6f 6e rmRequirements($input->getOption
23360 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 66 20 ('ignore-platform-reqs')).;..if.
23380 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 27 29 ($input->getOption('no-plugins')
233a0 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 3b 0a ).{.$install->disablePlugins();.
233c0 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 0a 3c }..return.$install->run();.}.}.<
233e0 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
23400 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 5c 4a er\Command;..use.Composer\Json\J
23420 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 6f 6d sonFile;.use.Composer\Plugin\Com
23440 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 50 mandEvent;.use.Composer\Plugin\P
23460 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 61 67 luginEvents;.use.Composer\Packag
23480 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
234a0 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 65 3b \Repository\RepositoryInterface;
234c0 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 48 .use.Symfony\Component\Console\H
234e0 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 6e 65 elper\Table;.use.Symfony\Compone
23500 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;
23520 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
23540 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
23560 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
23580 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 61 6e erface;.....class.LicensesComman
235a0 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 d.extends.Command.{.protected.fu
235c0 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 3e 73 65 74 nction.configure().{.$this.->set
235e0 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 72 69 70 74 69 6f Name('licenses').->setDescriptio
23600 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 6c 69 63 65 6e 73 n('Show.information.about.licens
23620 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 44 65 66 69 6e 69 es.of.dependencies').->setDefini
23640 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 66 6f 72 tion(array(.new.InputOption('for
23660 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 4c 55 45 5f 52 45 mat',.'f',.InputOption::VALUE_RE
23680 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 70 75 74 3a 20 74 QUIRED,.'Format.of.the.output:.t
236a0 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 20 49 6e 70 75 74 ext.or.json',.'text'),.new.Input
236c0 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
236e0 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 73 65 61 72 63 68 on::VALUE_NONE,.'Disables.search
23700 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 29 2c 0a 29 29 0a .in.require-dev.packages.'),.)).
23720 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 73 65 20 63 6f 6d ->setHelp(<<<EOT.The.license.com
23740 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 6f 72 6d 61 74 69 mand.displays.detailed.informati
23760 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 68 65 20 69 6e 73 on.about.the.licenses.of.the.ins
23780 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 29 0a 3b 0a 7d 0a talled.dependencies...EOT.).;.}.
237a0 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 70 75 .protected.function.execute(Inpu
237c0 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
237e0 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 24 74 68 69 73 2d ce.$output).{.$composer.=.$this-
23800 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 76 65 6e 74 20 3d >getComposer();..$commandEvent.=
23820 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 6e 74 73 3a 3a .new.CommandEvent(PluginEvents::
23840 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 74 2c 20 24 6f 75 COMMAND,.'licenses',.$input,.$ou
23860 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 74 tput);.$composer->getEventDispat
23880 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 3e cher()->dispatch($commandEvent->
238a0 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 72 6f 6f getName(),.$commandEvent);..$roo
238c0 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 29 3b 0a 24 72 65 t.=.$composer->getPackage();.$re
238e0 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 6e po.=.$composer->getRepositoryMan
23900 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 0a 69 ager()->getLocalRepository();..i
23920 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 65 76 27 29 29 20 f.($input->getOption('no-dev')).
23940 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 72 52 65 71 75 69 {.$packages.=.$this->filterRequi
23960 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 0a 7d 20 65 6c 73 redPackages($repo,.$root);.}.els
23980 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 65 6e 64 50 61 63 e.{.$packages.=.$this->appendPac
239a0 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 2c 20 61 72 72 61 kages($repo->getPackages(),.arra
239c0 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 0a 24 69 6f 20 3d y());.}..ksort($packages);.$io.=
239e0 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 24 66 6f 72 6d 61 .$this->getIO();..switch.($forma
23a00 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 6d 61 74 27 29 29 t.=.$input->getOption('format'))
23a20 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 28 27 4e 61 6d 65 .{.case.'text':.$io->write('Name
23a40 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 74 74 79 4e 61 6d :.<comment>'.$root->getPrettyNam
23a60 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 69 74 65 28 27 56 e().'</comment>');.$io->write('V
23a80 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 67 65 74 46 75 6c ersion:.<comment>'.$root->getFul
23aa0 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 74 3e 27 29 3b 0a lPrettyVersion().'</comment>');.
23ac0 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 6d 65 6e 74 3e 27 $io->write('Licenses:.<comment>'
23ae0 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 4c 69 63 65 6e 73 .(implode(',.',.$root->getLicens
23b00 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 3e 27 29 3b 0a 24 e()).?:.'none').'</comment>');.$
23b20 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 3b 0a 24 69 6f 2d io->write('Dependencies:');.$io-
23b40 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 54 61 62 6c 65 28 >write('');..$table.=.new.Table(
23b60 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 28 27 63 6f 6d 70 $output);.$table->setStyle('comp
23b80 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 3e 73 65 74 56 65 act');.$table->getStyle()->setVe
23ba0 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 6c 65 2d 3e 67 65 rticalBorderChar('');.$table->ge
23bc0 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 46 6f 72 6d 61 tStyle()->setCellRowContentForma
23be0 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 65 72 73 28 61 72 t('%s..');.$table->setHeaders(ar
23c00 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 63 65 6e 73 65 27 ray('Name',.'Version',.'License'
23c20 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 6b 61 ));.foreach.($packages.as.$packa
23c40 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 28 0a 24 70 61 63 ge).{.$table->addRow(array(.$pac
23c60 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 63 6b 61 67 65 2d kage->getPrettyName(),.$package-
23c80 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 6d 70 6c 6f 64 65 >getFullPrettyVersion(),.implode
23ca0 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 65 28 29 29 20 3f (',.',.$package->getLicense()).?
23cc0 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 6e 64 65 72 28 29 :.'none',.));.}.$table->render()
23ce0 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 70 65 6e 64 65 6e ;.break;..case.'json':.$dependen
23d00 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 70 61 63 6b 61 67 cies.=.array();.foreach.($packag
23d20 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 6e 63 69 65 73 5b es.as.$package).{.$dependencies[
23d40 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 20 3d 20 61 72 72 $package->getPrettyName()].=.arr
23d60 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 3e 67 65 74 46 75 ay(.'version'.=>.$package->getFu
23d80 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 3e 20 llPrettyVersion(),.'license'.=>.
23da0 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 0a 7d 0a 0a 24 69 $package->getLicense(),.);.}..$i
23dc0 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 61 72 72 61 79 28 o->write(JsonFile::encode(array(
23de0 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 79 4e 61 6d 65 28 .'name'.=>.$root->getPrettyName(
23e00 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 46 75 6c 6c 50 72 ),.'version'.=>.$root->getFullPr
23e20 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 3e 20 24 72 6f 6f ettyVersion(),.'license'.=>.$roo
23e40 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 63 69 65 73 27 20 t->getLicense(),.'dependencies'.
23e60 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 61 6b 3b 0a 0a 64 =>.$dependencies,.)));.break;..d
23e80 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 70 74 efault:.throw.new.\RuntimeExcept
23ea0 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 72 6d 61 74 20 ion(sprintf('Unsupported.format.
23ec0 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 74 65 64 20 66 6f "%s"...See.help.for.supported.fo
23ee0 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 0a 0a 0a 0a 0a 70 rmats.',.$format));.}.}........p
23f00 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 69 72 65 64 50 61 rivate.function.filterRequiredPa
23f20 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 20 24 72 65 70 6f ckages(RepositoryInterface.$repo
23f40 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 2c 20 24 62 75 ,.PackageInterface.$package,.$bu
23f60 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 73 20 3d 20 61 72 cket.=.array()).{.$requires.=.ar
23f80 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 69 72 65 73 28 29 ray_keys($package->getRequires()
23fa0 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 72 61 79 5f 6b 65 );..$packageListNames.=.array_ke
23fc0 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 72 72 61 79 5f 66 ys($bucket);.$packages.=.array_f
23fe0 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 29 2c 0a 66 75 6e ilter(.$repo->getPackages(),.fun
24000 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 75 69 72 65 73 2c ction.($package).use.($requires,
24020 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 72 6e 20 69 6e 5f .$packageListNames).{.return.in_
24040 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 20 24 72 65 71 75 array($package->getName(),.$requ
24060 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 65 2d 3e 67 65 74 ires).&&.!in_array($package->get
24080 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 3b 0a 7d 0a 29 3b Name(),.$packageListNames);.}.);
240a0 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 61 63 6b 61 67 65 ..$bucket.=.$this->appendPackage
240c0 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 72 65 61 63 68 20 s($packages,.$bucket);..foreach.
240e0 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 62 75 63 6b 65 ($packages.as.$package).{.$bucke
24100 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 61 63 6b 61 67 65 t.=.$this->filterRequiredPackage
24120 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 29 3b 0a 7d 0a 0a s($repo,.$package,.$bucket);.}..
24140 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 70 75 62 6c 69 63 return.$bucket;.}.........public
24160 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 72 72 61 79 20 24 .function.appendPackages(array.$
24180 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 0a 66 6f 72 65 61 packages,.array.$bucket).{.forea
241a0 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 62 75 ch.($packages.as.$package).{.$bu
241c0 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 3d 20 24 70 61 63 cket[$package->getName()].=.$pac
241e0 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 0a 7d 0a 3c 3f 70 kage;.}..return.$bucket;.}.}.<?p
24200 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
24220 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 6e 66 69 67 5c 4a \Command;..use.Composer\Config\J
24240 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 72 5c 49 6e sonConfigSource;.use.Composer\In
24260 73 74 61 6c 6c 65 72 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 staller;.use.Composer\Plugin\Com
24280 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 50 mandEvent;.use.Composer\Plugin\P
242a0 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 4a 73 6f 6e 5c 4a luginEvents;.use.Composer\Json\J
242c0 73 6f 6e 46 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 sonFile;.use.Composer\Factory;.u
242e0 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
24300 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
24320 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
24340 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
24360 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
24380 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
243a0 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 6d 6f 76 65 43 6f utInterface;......class.RemoveCo
243c0 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 6f 74 65 63 74 65 mmand.extends.Command.{.protecte
243e0 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.-
24400 3e 73 65 74 4e 61 6d 65 28 27 72 65 6d 6f 76 65 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 >setName('remove').->setDescript
24420 69 6f 6e 28 27 52 65 6d 6f 76 65 73 20 61 20 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 74 68 65 20 ion('Removes.a.package.from.the.
24440 72 65 71 75 69 72 65 20 6f 72 20 72 65 71 75 69 72 65 2d 64 65 76 27 29 0a 2d 3e 73 65 74 44 65 require.or.require-dev').->setDe
24460 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 75 6d 65 6e finition(array(.new.InputArgumen
24480 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 6e 74 3a 3a 49 53 5f t('packages',.InputArgument::IS_
244a0 41 52 52 41 59 2c 20 27 50 61 63 6b 61 67 65 73 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 ARRAY,.'Packages.that.should.be.
244c0 72 65 6d 6f 76 65 64 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 removed.'),.new.InputOption('dev
244e0 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
24500 2c 20 27 52 65 6d 6f 76 65 73 20 61 20 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 74 68 65 20 72 65 ,.'Removes.a.package.from.the.re
24520 71 75 69 72 65 2d 64 65 76 20 73 65 63 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f quire-dev.section.'),.new.InputO
24540 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 49 6e 70 75 74 ption('no-progress',.null,.Input
24560 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 6f 75 74 70 Option::VALUE_NONE,.'Do.not.outp
24580 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 77 20 49 6e 70 ut.download.progress.'),.new.Inp
245a0 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 75 70 64 61 74 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 utOption('no-update',.null,.Inpu
245c0 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 74 tOption::VALUE_NONE,.'Disables.t
245e0 68 65 20 61 75 74 6f 6d 61 74 69 63 20 75 70 64 61 74 65 20 6f 66 20 74 68 65 20 64 65 70 65 6e he.automatic.update.of.the.depen
24600 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 75 70 64 dencies.'),.new.InputOption('upd
24620 61 74 65 2d 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 ate-no-dev',.null,.InputOption::
24640 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 52 75 6e 20 74 68 65 20 64 65 70 65 6e 64 65 6e 63 79 20 VALUE_NONE,.'Run.the.dependency.
24660 75 70 64 61 74 65 20 77 69 74 68 20 74 68 65 20 2d 2d 6e 6f 2d 64 65 76 20 6f 70 74 69 6f 6e 2e update.with.the.--no-dev.option.
24680 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 75 70 64 61 74 65 2d 77 69 74 68 '),.new.InputOption('update-with
246a0 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f -dependencies',.null,.InputOptio
246c0 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 6c 6c 6f 77 73 20 69 6e 68 65 72 69 74 65 64 n::VALUE_NONE,.'Allows.inherited
246e0 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 74 6f 20 62 65 20 75 70 64 61 74 65 64 20 77 69 74 68 .dependencies.to.be.updated.with
24700 20 65 78 70 6c 69 63 69 74 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 27 29 2c 0a 6e 65 77 20 49 .explicit.dependencies.'),.new.I
24720 6e 70 75 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 nputOption('ignore-platform-reqs
24740 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
24760 2c 20 27 49 67 6e 6f 72 65 20 70 6c 61 74 66 6f 72 6d 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 ,.'Ignore.platform.requirements.
24780 28 70 68 70 20 26 20 65 78 74 2d 20 70 61 63 6b 61 67 65 73 29 2e 27 29 2c 0a 6e 65 77 20 49 6e (php.&.ext-.packages).'),.new.In
247a0 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 2c putOption('optimize-autoloader',
247c0 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 27 .'o',.InputOption::VALUE_NONE,.'
247e0 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 6c Optimize.autoloader.during.autol
24800 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 6f 6e 28 27 63 oader.dump'),.new.InputOption('c
24820 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 6e 70 lassmap-authoritative',.'a',.Inp
24840 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 64 20 utOption::VALUE_NONE,.'Autoload.
24860 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 2e 20 classes.from.the.classmap.only..
24880 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 2d 61 Implicitly.enables.`--optimize-a
248a0 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 28 3c 3c 3c 45 utoloader`.'),.)).->setHelp(<<<E
248c0 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 72 65 6d 6f 76 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 OT.The.<info>remove</info>.comma
248e0 6e 64 20 72 65 6d 6f 76 65 73 20 61 20 70 61 63 6b 61 67 65 20 66 72 6f 6d 20 74 68 65 20 63 75 nd.removes.a.package.from.the.cu
24900 72 72 65 6e 74 0a 6c 69 73 74 20 6f 66 20 69 6e 73 74 61 6c 6c 65 64 20 70 61 63 6b 61 67 65 73 rrent.list.of.installed.packages
24920 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 72 65 6d 6f 76 65 ..<info>php.composer.phar.remove
24940 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 66 75 </info>..EOT.).;.}..protected.fu
24960 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
24980 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).{
249a0 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 .$packages.=.$input->getArgument
249c0 28 27 70 61 63 6b 61 67 65 73 27 29 3b 0a 0a 24 66 69 6c 65 20 3d 20 46 61 63 74 6f 72 79 3a 3a ('packages');..$file.=.Factory::
249e0 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 29 3b 0a 0a 24 6a 73 6f 6e 46 69 6c 65 20 3d 20 getComposerFile();..$jsonFile.=.
24a00 6e 65 77 20 4a 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 20 3d new.JsonFile($file);.$composer.=
24a20 20 24 6a 73 6f 6e 46 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 42 61 63 .$jsonFile->read();.$composerBac
24a40 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 46 69 6c kup.=.file_get_contents($jsonFil
24a60 65 2d 3e 67 65 74 50 61 74 68 28 29 29 3b 0a 0a 24 6a 73 6f 6e 20 3d 20 6e 65 77 20 4a 73 6f 6e e->getPath());..$json.=.new.Json
24a80 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 24 6a 73 6f 6e 46 69 6c 65 29 3b 0a 0a 24 74 79 70 65 20 ConfigSource($jsonFile);..$type.
24aa0 3d 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 3f 20 27 72 65 =.$input->getOption('dev').?.'re
24ac0 71 75 69 72 65 2d 64 65 76 27 20 3a 20 27 72 65 71 75 69 72 65 27 3b 0a 24 61 6c 74 54 79 70 65 quire-dev'.:.'require';.$altType
24ae0 20 3d 20 21 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 3f 20 27 .=.!$input->getOption('dev').?.'
24b00 72 65 71 75 69 72 65 2d 64 65 76 27 20 3a 20 27 72 65 71 75 69 72 65 27 3b 0a 24 69 6f 20 3d 20 require-dev'.:.'require';.$io.=.
24b20 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 28 24 70 61 63 6b 61 $this->getIO();..foreach.($packa
24b40 67 65 73 20 61 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 63 6f ges.as.$package).{.if.(isset($co
24b60 6d 70 6f 73 65 72 5b 24 74 79 70 65 5d 5b 24 70 61 63 6b 61 67 65 5d 29 29 20 7b 0a 24 6a 73 6f mposer[$type][$package])).{.$jso
24b80 6e 2d 3e 72 65 6d 6f 76 65 4c 69 6e 6b 28 24 74 79 70 65 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a n->removeLink($type,.$package);.
24ba0 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 24 61 6c 74 54 79 }.elseif.(isset($composer[$altTy
24bc0 70 65 5d 5b 24 70 61 63 6b 61 67 65 5d 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f pe][$package])).{.$io->writeErro
24be0 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 63 6f 75 6c 64 20 6e r('<warning>'.$package.'.could.n
24c00 6f 74 20 62 65 20 66 6f 75 6e 64 20 69 6e 20 27 2e 24 74 79 70 65 2e 27 20 62 75 74 20 69 74 20 ot.be.found.in.'.$type.'.but.it.
24c20 69 73 20 70 72 65 73 65 6e 74 20 69 6e 20 27 2e 24 61 6c 74 54 79 70 65 2e 27 3c 2f 77 61 72 6e is.present.in.'.$altType.'</warn
24c40 69 6e 67 3e 27 29 3b 0a 69 66 20 28 24 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 ing>');.if.($io->isInteractive()
24c60 29 20 7b 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 27 44 6f ).{.if.($io->askConfirmation('Do
24c80 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 72 65 6d 6f 76 65 20 69 74 20 66 72 6f 6d 20 27 2e 24 61 .you.want.to.remove.it.from.'.$a
24ca0 6c 74 54 79 70 65 2e 27 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 79 65 73 3c 2f 63 6f 6d 6d 65 6e 74 3e ltType.'.[<comment>yes</comment>
24cc0 5d 3f 20 27 2c 20 74 72 75 65 29 29 20 7b 0a 24 6a 73 6f 6e 2d 3e 72 65 6d 6f 76 65 4c 69 6e 6b ]?.',.true)).{.$json->removeLink
24ce0 28 24 61 6c 74 54 79 70 65 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 ($altType,.$package);.}.}.}.else
24d00 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 27 2e 24 .{.$io->writeError('<warning>'.$
24d20 70 61 63 6b 61 67 65 2e 27 20 69 73 20 6e 6f 74 20 72 65 71 75 69 72 65 64 20 69 6e 20 79 6f 75 package.'.is.not.required.in.you
24d40 72 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 61 6e 64 20 68 61 73 20 6e 6f 74 20 62 65 65 6e r.composer.json.and.has.not.been
24d60 20 72 65 6d 6f 76 65 64 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 .removed</warning>');.}.}..if.($
24d80 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 65 27 29 29 20 7b input->getOption('no-update')).{
24da0 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 0a 20 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 .return.0;.}....$composer.=.$thi
24dc0 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 s->getComposer();.$composer->get
24de0 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 67 DownloadManager()->setOutputProg
24e00 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 67 ress(!$input->getOption('no-prog
24e20 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 6f ress'));..$commandEvent.=.new.Co
24e40 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 44 mmandEvent(PluginEvents::COMMAND
24e60 2c 20 27 72 65 6d 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 ,.'remove',.$input,.$output);.$c
24e80 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
24ea0 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()
24ec0 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
24ee0 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);
24f00 0a 0a 24 75 70 64 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 ..$updateDevMode.=.!$input->getO
24f20 70 74 69 6f 6e 28 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 ption('update-no-dev');.$optimiz
24f40 65 20 3d 20 24 69 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 e.=.$input->getOption('optimize-
24f60 61 75 74 6f 6c 6f 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 autoloader').||.$composer->getCo
24f80 6e 66 69 67 28 29 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 nfig()->get('optimize-autoloader
24fa0 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 3e 67 65 74 ');.$authoritative.=.$input->get
24fc0 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 76 65 27 29 Option('classmap-authoritative')
24fe0 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(
25000 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 0a 24 69 6e 73 'classmap-authoritative');..$ins
25020 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 67 65 74 4f 70 74 tall.->setVerbose($input->getOpt
25040 69 6f 6e 28 27 76 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 ion('verbose')).->setDevMode($up
25060 64 61 74 65 44 65 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 dateDevMode).->setOptimizeAutolo
25080 61 64 65 72 28 24 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 ader($optimize).->setClassMapAut
250a0 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 0a 2d 3e 73 65 74 horitative($authoritative).->set
250c0 55 70 64 61 74 65 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 Update(true).->setUpdateWhitelis
250e0 74 28 24 70 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 t($packages).->setWhitelistDepen
25100 64 65 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 dencies($input->getOption('updat
25120 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
25140 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
25160 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')
25180 29 0a 3b 0a 0a 24 73 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 ).;..$status.=.$install->run();.
251a0 69 66 20 28 24 73 74 61 74 75 73 20 21 3d 3d 20 30 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 if.($status.!==.0).{.$io->writeE
251c0 72 72 6f 72 28 22 5c 6e 22 2e 27 3c 65 72 72 6f 72 3e 52 65 6d 6f 76 61 6c 20 66 61 69 6c 65 64 rror("\n".'<error>Removal.failed
251e0 2c 20 72 65 76 65 72 74 69 6e 67 20 27 2e 24 66 69 6c 65 2e 27 20 74 6f 20 69 74 73 20 6f 72 69 ,.reverting.'.$file.'.to.its.ori
25200 67 69 6e 61 6c 20 63 6f 6e 74 65 6e 74 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 66 69 6c 65 5f 70 ginal.content.</error>');.file_p
25220 75 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 ut_contents($jsonFile->getPath()
25240 2c 20 24 63 6f 6d 70 6f 73 65 72 42 61 63 6b 75 70 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 ,.$composerBackup);.}..return.$s
25260 74 61 74 75 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 tatus;.}.}.<?php............name
25280 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 53 79 6d space.Composer\Command;..use.Sym
252a0 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
252c0 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
252e0 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;.
25300 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
25320 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 6d put\InputOption;.use.Symfony\Com
25340 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 65 ponent\Console\Output\OutputInte
25360 72 66 61 63 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 rface;.use.Composer\Factory;.use
25380 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 73 65 .Composer\Installer;.use.Compose
253a0 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 4a 73 r\Json\JsonFile;.use.Composer\Js
253c0 6f 6e 5c 4a 73 6f 6e 4d 61 6e 69 70 75 6c 61 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 on\JsonManipulator;.use.Composer
253e0 5c 53 65 6d 76 65 72 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 \Semver\VersionParser;.use.Compo
25400 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
25420 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 43 poser\Plugin\PluginEvents;.use.C
25440 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
25460 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 5c sitory;.use.Composer\Repository\
25480 50 6c 61 74 66 6f 72 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 PlatformRepository;......class.R
254a0 65 71 75 69 72 65 43 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 equireCommand.extends.InitComman
254c0 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 72 65 d.{.protected.function.configure
254e0 28 29 0a 7b 0a 24 74 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 ().{.$this.->setName('require').
25500 2d 3e 73 65 74 44 65 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 ->setDescription('Adds.required.
25520 70 61 63 6b 61 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 20 61 packages.to.your.composer.json.a
25540 6e 64 20 69 6e 73 74 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 nd.installs.them').->setDefiniti
25560 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 28 27 70 61 63 on(array(.new.InputArgument('pac
25580 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 52 52 41 59 20 kages',.InputArgument::IS_ARRAY.
255a0 7c 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 52 65 71 75 |.InputArgument::OPTIONAL,.'Requ
255c0 69 72 65 64 20 70 61 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 ired.package.name.optionally.inc
255e0 6c 75 64 69 6e 67 20 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 luding.a.version.constraint,.e.g
25600 2e 20 66 6f 6f 2f 62 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 ..foo/bar.or.foo/bar:1.0.0.or.fo
25620 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 30 22 27 29 o/bar=1.0.0.or."foo/bar.1.0.0"')
25640 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 6c 2c 20 49 ,.new.InputOption('dev',.null,.I
25660 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 64 64 20 72 65 71 nputOption::VALUE_NONE,.'Add.req
25680 75 69 72 65 6d 65 6e 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 uirement.to.require-dev.'),.new.
256a0 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 20 6e 75 6c InputOption('prefer-source',.nul
256c0 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 46 6f 72 l,.InputOption::VALUE_NONE,.'For
256e0 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 65 20 73 6f ces.installation.from.package.so
25700 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 6e 67 20 56 urces.when.possible,.including.V
25720 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 4f 70 74 69 CS.information.'),.new.InputOpti
25740 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 74 4f 70 74 on('prefer-dist',.null,.InputOpt
25760 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 74 61 6c 6c ion::VALUE_NONE,.'Forces.install
25780 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 20 66 6f 72 ation.from.package.dist.even.for
257a0 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 70 74 69 6f .dev.versions.'),.new.InputOptio
257c0 6e 28 27 6e 6f 2d 70 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 n('no-progress',.null,.InputOpti
257e0 6f 6e 3a 3a 56 41 4c 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 on::VALUE_NONE,.'Do.not.output.d
25800 6f 77 6e 6c 6f 61 64 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 ownload.progress.'),.new.InputOp
25820 74 69 6f 6e 28 27 6e 6f 2d 75 70 64 61 74 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 tion('no-update',.null,.InputOpt
25840 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 74 68 65 20 61 ion::VALUE_NONE,.'Disables.the.a
25860 75 74 6f 6d 61 74 69 63 20 75 70 64 61 74 65 20 6f 66 20 74 68 65 20 64 65 70 65 6e 64 65 6e 63 utomatic.update.of.the.dependenc
25880 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 75 70 64 61 74 65 2d ies.'),.new.InputOption('update-
258a0 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 41 4c 55 no-dev',.null,.InputOption::VALU
258c0 45 5f 4e 4f 4e 45 2c 20 27 52 75 6e 20 74 68 65 20 64 65 70 65 6e 64 65 6e 63 79 20 75 70 64 61 E_NONE,.'Run.the.dependency.upda
258e0 74 65 20 77 69 74 68 20 74 68 65 20 2d 2d 6e 6f 2d 64 65 76 20 6f 70 74 69 6f 6e 2e 27 29 2c 0a te.with.the.--no-dev.option.'),.
25900 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 75 70 64 61 74 65 2d 77 69 74 68 2d 64 65 70 new.InputOption('update-with-dep
25920 65 6e 64 65 6e 63 69 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 endencies',.null,.InputOption::V
25940 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 6c 6c 6f 77 73 20 69 6e 68 65 72 69 74 65 64 20 64 65 70 ALUE_NONE,.'Allows.inherited.dep
25960 65 6e 64 65 6e 63 69 65 73 20 74 6f 20 62 65 20 75 70 64 61 74 65 64 20 77 69 74 68 20 65 78 70 endencies.to.be.updated.with.exp
25980 6c 69 63 69 74 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 licit.dependencies.'),.new.Input
259a0 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 2c 20 6e Option('ignore-platform-reqs',.n
259c0 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 49 ull,.InputOption::VALUE_NONE,.'I
259e0 67 6e 6f 72 65 20 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 gnore.platform.requirements.(php
25a00 20 26 20 65 78 74 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 .&.ext-.packages).'),.new.InputO
25a20 70 74 69 6f 6e 28 27 73 6f 72 74 2d 70 61 63 6b 61 67 65 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 ption('sort-packages',.null,.Inp
25a40 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 6f 72 74 73 20 70 61 63 utOption::VALUE_NONE,.'Sorts.pac
25a60 6b 61 67 65 73 20 77 68 65 6e 20 61 64 64 69 6e 67 2f 75 70 64 61 74 69 6e 67 20 61 20 6e 65 77 kages.when.adding/updating.a.new
25a80 20 64 65 70 65 6e 64 65 6e 63 79 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 .dependency'),.new.InputOption('
25aa0 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 70 75 74 optimize-autoloader',.'o',.Input
25ac0 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 20 61 75 Option::VALUE_NONE,.'Optimize.au
25ae0 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 6d 70 27 toloader.during.autoloader.dump'
25b00 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 61 75 74 ),.new.InputOption('classmap-aut
25b20 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 3a 3a 56 horitative',.'a',.InputOption::V
25b40 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 66 72 6f ALUE_NONE,.'Autoload.classes.fro
25b60 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 6c 79 20 m.the.classmap.only..Implicitly.
25b80 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 72 60 2e enables.`--optimize-autoloader`.
25ba0 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 68 65 20 72 65 71 75 '),.)).->setHelp(<<<EOT.The.requ
25bc0 69 72 65 20 63 6f 6d 6d 61 6e 64 20 61 64 64 73 20 72 65 71 75 69 72 65 64 20 70 61 63 6b 61 67 ire.command.adds.required.packag
25be0 65 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 es.to.your.composer.json.and.ins
25c00 74 61 6c 6c 73 20 74 68 65 6d 2e 0a 0a 49 66 20 79 6f 75 20 64 6f 20 6e 6f 74 20 73 70 65 63 69 talls.them...If.you.do.not.speci
25c20 66 79 20 61 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 2c 20 63 6f 6d 70 6f 73 65 fy.a.version.constraint,.compose
25c40 72 20 77 69 6c 6c 20 63 68 6f 6f 73 65 20 61 20 73 75 69 74 61 62 6c 65 20 6f 6e 65 20 62 61 73 r.will.choose.a.suitable.one.bas
25c60 65 64 20 6f 6e 20 74 68 65 20 61 76 61 69 6c 61 62 6c 65 20 70 61 63 6b 61 67 65 20 76 65 72 73 ed.on.the.available.package.vers
25c80 69 6f 6e 73 2e 0a 0a 49 66 20 79 6f 75 20 64 6f 20 6e 6f 74 20 77 61 6e 74 20 74 6f 20 69 6e 73 ions...If.you.do.not.want.to.ins
25ca0 74 61 6c 6c 20 74 68 65 20 6e 65 77 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 69 6d 6d 65 64 69 tall.the.new.dependencies.immedi
25cc0 61 74 65 6c 79 20 79 6f 75 20 63 61 6e 20 63 61 6c 6c 20 69 74 20 77 69 74 68 20 2d 2d 6e 6f 2d ately.you.can.call.it.with.--no-
25ce0 75 70 64 61 74 65 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 update..EOT.).;.}..protected.fun
25d00 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
25d20 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).{.
25d40 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 69 6c 65 $file.=.Factory::getComposerFile
25d60 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 6e 65 77 6c ();.$io.=.$this->getIO();..$newl
25d80 79 43 72 65 61 74 65 64 20 3d 20 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 29 3b 0a yCreated.=.!file_exists($file);.
25da0 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 29 20 26 26 20 21 66 69 6c 65 if.(!file_exists($file).&&.!file
25dc0 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 2c 20 22 7b 5c 6e 7d 5c 6e 22 29 29 20 _put_contents($file,."{\n}\n")).
25de0 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 6c {.$io->writeError('<error>'.$fil
25e00 65 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 72 65 61 74 65 64 2e 3c 2f 65 72 72 6f 72 e.'.could.not.be.created.</error
25e20 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 72 65 61 64 61 62 >');..return.1;.}.if.(!is_readab
25e40 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 65 le($file)).{.$io->writeError('<e
25e60 72 72 6f 72 3e 27 2e 24 66 69 6c 65 2e 27 20 69 73 20 6e 6f 74 20 72 65 61 64 61 62 6c 65 2e 3c rror>'.$file.'.is.not.readable.<
25e80 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 69 66 20 28 21 69 73 5f /error>');..return.1;.}.if.(!is_
25ea0 77 72 69 74 61 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 writable($file)).{.$io->writeErr
25ec0 6f 72 28 27 3c 65 72 72 6f 72 3e 27 2e 24 66 69 6c 65 2e 27 20 69 73 20 6e 6f 74 20 77 72 69 74 or('<error>'.$file.'.is.not.writ
25ee0 61 62 6c 65 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 69 able.</error>');..return.1;.}..i
25f00 66 20 28 66 69 6c 65 73 69 7a 65 28 24 66 69 6c 65 29 20 3d 3d 3d 20 30 29 20 7b 0a 66 69 6c 65 f.(filesize($file).===.0).{.file
25f20 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 2c 20 22 7b 5c 6e 7d 5c 6e 22 29 3b 0a _put_contents($file,."{\n}\n");.
25f40 7d 0a 0a 24 6a 73 6f 6e 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 66 69 6c 65 29 3b 0a }..$json.=.new.JsonFile($file);.
25f60 24 63 6f 6d 70 6f 73 65 72 44 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 6a 73 6f 6e 2d 3e 72 65 61 $composerDefinition.=.$json->rea
25f80 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 65 74 5f d();.$composerBackup.=.file_get_
25fa0 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 3b 0a 0a 24 63 6f contents($json->getPath());..$co
25fc0 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 0a 24 mposer.=.$this->getComposer();.$
25fe0 72 65 70 6f 73 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 repos.=.$composer->getRepository
26000 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 0a 24 Manager()->getRepositories();..$
26020 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 platformOverrides.=.$composer->g
26040 65 74 43 6f 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 etConfig()->get('platform').?:.a
26060 72 72 61 79 28 29 3b 0a 0a 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 20 3d 20 6e 65 77 20 43 6f 6d rray();...$this->repos.=.new.Com
26080 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 0a 61 72 positeRepository(array_merge(.ar
260a0 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 28 61 72 72 61 79 ray(new.PlatformRepository(array
260c0 28 29 2c 20 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 29 29 2c 0a 24 72 65 70 6f 73 (),.$platformOverrides)),.$repos
260e0 0a 29 29 3b 0a 0a 24 70 68 70 56 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 .));..$phpVersion.=.$this->repos
26100 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 28 27 70 68 70 27 2c 20 27 2a 27 29 2d 3e 67 65 74 56 65 ->findPackage('php',.'*')->getVe
26120 72 73 69 6f 6e 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 rsion();.$requirements.=.$this->
26140 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 70 75 74 2c 20 24 6f determineRequirements($input,.$o
26160 75 74 70 75 74 2c 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 utput,.$input->getArgument('pack
26180 61 67 65 73 27 29 2c 20 24 70 68 70 56 65 72 73 69 6f 6e 29 3b 0a 0a 24 72 65 71 75 69 72 65 4b ages'),.$phpVersion);..$requireK
261a0 65 79 20 3d 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 3f 20 ey.=.$input->getOption('dev').?.
261c0 27 72 65 71 75 69 72 65 2d 64 65 76 27 20 3a 20 27 72 65 71 75 69 72 65 27 3b 0a 24 72 65 6d 6f 'require-dev'.:.'require';.$remo
261e0 76 65 4b 65 79 20 3d 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 veKey.=.$input->getOption('dev')
26200 20 3f 20 27 72 65 71 75 69 72 65 27 20 3a 20 27 72 65 71 75 69 72 65 2d 64 65 76 27 3b 0a 24 62 .?.'require'.:.'require-dev';.$b
26220 61 73 65 52 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 aseRequirements.=.array_key_exis
26240 74 73 28 24 72 65 71 75 69 72 65 4b 65 79 2c 20 24 63 6f 6d 70 6f 73 65 72 44 65 66 69 6e 69 74 ts($requireKey,.$composerDefinit
26260 69 6f 6e 29 20 3f 20 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 ion).?.$composerDefinition[$requ
26280 69 72 65 4b 65 79 5d 20 3a 20 61 72 72 61 79 28 29 3b 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 ireKey].:.array();.$requirements
262a0 20 3d 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 72 65 .=.$this->formatRequirements($re
262c0 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 0a 0a 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d quirements);....$versionParser.=
262e0 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 .new.VersionParser();.foreach.($
26300 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 requirements.as.$constraint).{.$
26320 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 73 28 versionParser->parseConstraints(
26340 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 24 73 6f 72 74 50 61 63 6b 61 67 65 73 20 3d $constraint);.}..$sortPackages.=
26360 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 73 6f 72 74 2d 70 61 63 6b 61 67 65 .$input->getOption('sort-package
26380 73 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 2d 3e 67 s').||.$composer->getConfig()->g
263a0 65 74 28 27 73 6f 72 74 2d 70 61 63 6b 61 67 65 73 27 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 et('sort-packages');..if.(!$this
263c0 2d 3e 75 70 64 61 74 65 46 69 6c 65 43 6c 65 61 6e 6c 79 28 24 6a 73 6f 6e 2c 20 24 62 61 73 65 ->updateFileCleanly($json,.$base
263e0 52 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 24 72 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 24 72 65 Requirements,.$requirements,.$re
26400 71 75 69 72 65 4b 65 79 2c 20 24 72 65 6d 6f 76 65 4b 65 79 2c 20 24 73 6f 72 74 50 61 63 6b 61 quireKey,.$removeKey,.$sortPacka
26420 67 65 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 ges)).{.foreach.($requirements.a
26440 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 0a 24 62 61 73 65 52 s.$package.=>.$version).{.$baseR
26460 65 71 75 69 72 65 6d 65 6e 74 73 5b 24 70 61 63 6b 61 67 65 5d 20 3d 20 24 76 65 72 73 69 6f 6e equirements[$package].=.$version
26480 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 44 65 66 69 6e 69 74 69 6f 6e ;..if.(isset($composerDefinition
264a0 5b 24 72 65 6d 6f 76 65 4b 65 79 5d 5b 24 70 61 63 6b 61 67 65 5d 29 29 20 7b 0a 75 6e 73 65 74 [$removeKey][$package])).{.unset
264c0 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 5d ($composerDefinition[$removeKey]
264e0 5b 24 70 61 63 6b 61 67 65 5d 29 3b 0a 7d 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 44 65 66 69 6e [$package]);.}.}..$composerDefin
26500 69 74 69 6f 6e 5b 24 72 65 71 75 69 72 65 4b 65 79 5d 20 3d 20 24 62 61 73 65 52 65 71 75 69 72 ition[$requireKey].=.$baseRequir
26520 65 6d 65 6e 74 73 3b 0a 24 6a 73 6f 6e 2d 3e 77 72 69 74 65 28 24 63 6f 6d 70 6f 73 65 72 44 65 ements;.$json->write($composerDe
26540 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c finition);.}..$io->writeError('<
26560 69 6e 66 6f 3e 27 2e 24 66 69 6c 65 2e 27 20 68 61 73 20 62 65 65 6e 20 27 2e 28 24 6e 65 77 6c info>'.$file.'.has.been.'.($newl
26580 79 43 72 65 61 74 65 64 20 3f 20 27 63 72 65 61 74 65 64 27 20 3a 20 27 75 70 64 61 74 65 64 27 yCreated.?.'created'.:.'updated'
265a0 29 2e 27 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 ).'</info>');..if.($input->getOp
265c0 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 7d tion('no-update')).{.return.0;.}
265e0 0a 24 75 70 64 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 .$updateDevMode.=.!$input->getOp
26600 74 69 6f 6e 28 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 tion('update-no-dev');.$optimize
26620 20 3d 20 24 69 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 .=.$input->getOption('optimize-a
26640 75 74 6f 6c 6f 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 utoloader').||.$composer->getCon
26660 66 69 67 28 29 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 fig()->get('optimize-autoloader'
26680 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 3e 67 65 74 4f );.$authoritative.=.$input->getO
266a0 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 76 65 27 29 20 ption('classmap-authoritative').
266c0 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 27 ||.$composer->getConfig()->get('
266e0 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 0a 0a 20 24 74 68 classmap-authoritative');....$th
26700 69 73 2d 3e 72 65 73 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d is->resetComposer();.$composer.=
26720 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 6f 6d 70 6f 73 65 72 .$this->getComposer();.$composer
26740 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
26760 74 50 72 6f 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 tProgress(!$input->getOption('no
26780 2d 70 72 6f 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 -progress'));..$commandEvent.=.n
267a0 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
267c0 4d 4d 41 4e 44 2c 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 MMAND,.'require',.$input,.$outpu
267e0 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 74 63 68 65 t);.$composer->getEventDispatche
26800 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 3e 67 65 74 r()->dispatch($commandEvent->get
26820 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 73 74 61 6c Name(),.$commandEvent);..$instal
26840 6c 20 3d 20 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 l.=.Installer::create($io,.$comp
26860 6f 73 65 72 29 3b 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 oser);..$install.->setVerbose($i
26880 6e 70 75 74 2d 3e 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 nput->getOption('verbose')).->se
268a0 74 50 72 65 66 65 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 tPreferSource($input->getOption(
268c0 27 70 72 65 66 65 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 'prefer-source')).->setPreferDis
268e0 74 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 2d 64 69 73 74 t($input->getOption('prefer-dist
26900 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 76 4d 6f 64 65 29 ')).->setDevMode($updateDevMode)
26920 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 6d 69 .->setOptimizeAutoloader($optimi
26940 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 28 24 ze).->setClassMapAuthoritative($
26960 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 28 74 72 75 65 29 authoritative).->setUpdate(true)
26980 0a 2d 3e 73 65 74 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 .->setUpdateWhitelist(array_keys
269a0 28 24 72 65 71 75 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 ($requirements)).->setWhitelistD
269c0 65 70 65 6e 64 65 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 ependencies($input->getOption('u
269e0 70 64 61 74 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 pdate-with-dependencies')).->set
26a00 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 6e 70 75 IgnorePlatformRequirements($inpu
26a20 74 2d 3e 67 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 t->getOption('ignore-platform-re
26a40 71 73 27 29 29 0a 3b 0a 0a 24 73 74 61 74 75 73 20 3d 20 24 69 6e 73 74 61 6c 6c 2d 3e 72 75 6e qs')).;..$status.=.$install->run
26a60 28 29 3b 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 28 24 6e 65 ();.if.($status.!==.0).{.if.($ne
26a80 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 72 28 22 5c wlyCreated).{.$io->writeError("\
26aa0 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 65 64 2c 20 n".'<error>Installation.failed,.
26ac0 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 29 3b 0a 75 deleting.'.$file.'.</error>');.u
26ae0 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 6c 73 65 20 nlink($json->getPath());.}.else.
26b00 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 6f 72 3e 49 {.$io->writeError("\n".'<error>I
26b20 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 67 20 27 2e nstallation.failed,.reverting.'.
26b40 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 65 6e 74 2e $file.'.to.its.original.content.
26b60 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 73 28 24 6a </error>');.file_put_contents($j
26b80 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 6b 75 70 29 son->getPath(),.$composerBackup)
26ba0 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 61 74 75 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 ;.}.}..return.$status;.}..privat
26bc0 65 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 46 69 6c 65 43 6c 65 61 6e 6c 79 28 24 6a 73 e.function.updateFileCleanly($js
26be0 6f 6e 2c 20 61 72 72 61 79 20 24 62 61 73 65 2c 20 61 72 72 61 79 20 24 6e 65 77 2c 20 24 72 65 on,.array.$base,.array.$new,.$re
26c00 71 75 69 72 65 4b 65 79 2c 20 24 72 65 6d 6f 76 65 4b 65 79 2c 20 24 73 6f 72 74 50 61 63 6b 61 quireKey,.$removeKey,.$sortPacka
26c20 67 65 73 29 0a 7b 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 ges).{.$contents.=.file_get_cont
26c40 65 6e 74 73 28 24 6a 73 6f 6e 2d 3e 67 65 74 50 61 74 68 28 29 29 3b 0a 0a 24 6d 61 6e 69 70 75 ents($json->getPath());..$manipu
26c60 6c 61 74 6f 72 20 3d 20 6e 65 77 20 4a 73 6f 6e 4d 61 6e 69 70 75 6c 61 74 6f 72 28 24 63 6f 6e lator.=.new.JsonManipulator($con
26c80 74 65 6e 74 73 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 65 77 20 61 73 20 24 70 61 63 6b 61 tents);..foreach.($new.as.$packa
26ca0 67 65 20 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 69 66 20 28 21 24 6d 61 6e 69 70 ge.=>.$constraint).{.if.(!$manip
26cc0 75 6c 61 74 6f 72 2d 3e 61 64 64 4c 69 6e 6b 28 24 72 65 71 75 69 72 65 4b 65 79 2c 20 24 70 61 ulator->addLink($requireKey,.$pa
26ce0 63 6b 61 67 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 73 6f 72 74 50 61 63 6b 61 67 65 ckage,.$constraint,.$sortPackage
26d00 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 69 66 20 28 21 24 6d 61 6e 69 s)).{.return.false;.}.if.(!$mani
26d20 70 75 6c 61 74 6f 72 2d 3e 72 65 6d 6f 76 65 53 75 62 4e 6f 64 65 28 24 72 65 6d 6f 76 65 4b 65 pulator->removeSubNode($removeKe
26d40 79 2c 20 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a y,.$package)).{.return.false;.}.
26d60 7d 0a 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6a 73 6f 6e 2d 3e 67 65 74 50 }..file_put_contents($json->getP
26d80 61 74 68 28 29 2c 20 24 6d 61 6e 69 70 75 6c 61 74 6f 72 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 ath(),.$manipulator->getContents
26da0 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 ());..return.true;.}..protected.
26dc0 66 75 6e 63 74 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 function.interact(InputInterface
26de0 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
26e00 29 0a 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ).{.return;.}.}.<?php...........
26e20 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
26e40 65 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 e.Composer\Script\CommandEvent;.
26e60 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 74 73 use.Composer\Script\ScriptEvents
26e80 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\
26ea0 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
26ec0 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 4f y\Component\Console\Input\InputO
26ee0 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 6e ption;.use.Symfony\Component\Con
26f00 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 65 20 53 79 sole\Input\InputArgument;.use.Sy
26f20 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
26f40 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 52 75 6e 53 63 72 utputInterface;.....class.RunScr
26f60 69 70 74 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a iptCommand.extends.Command.{....
26f80 70 72 6f 74 65 63 74 65 64 20 24 73 63 72 69 70 74 45 76 65 6e 74 73 20 3d 20 61 72 72 61 79 28 protected.$scriptEvents.=.array(
26fa0 0a 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 49 4e 53 54 41 4c 4c 5f 43 4d 44 2c 0a .ScriptEvents::PRE_INSTALL_CMD,.
26fc0 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 44 2c 0a ScriptEvents::POST_INSTALL_CMD,.
26fe0 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 55 50 44 41 54 45 5f 43 4d 44 2c 0a 53 63 ScriptEvents::PRE_UPDATE_CMD,.Sc
27000 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 2c 0a 53 63 72 riptEvents::POST_UPDATE_CMD,.Scr
27020 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 53 54 41 54 55 53 5f 43 4d 44 2c 0a 53 63 72 69 70 iptEvents::PRE_STATUS_CMD,.Scrip
27040 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 53 54 41 54 55 53 5f 43 4d 44 2c 0a 53 63 72 69 70 74 tEvents::POST_STATUS_CMD,.Script
27060 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 5f 49 4e 53 54 41 4c Events::POST_ROOT_PACKAGE_INSTAL
27080 4c 2c 0a 53 63 72 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 L,.ScriptEvents::POST_CREATE_PRO
270a0 4a 45 43 54 5f 43 4d 44 2c 0a 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 41 52 43 48 JECT_CMD,.ScriptEvents::PRE_ARCH
270c0 49 56 45 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 41 52 43 48 IVE_CMD,.ScriptEvents::POST_ARCH
270e0 49 56 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 41 55 54 4f 4c IVE_CMD,.ScriptEvents::PRE_AUTOL
27100 4f 41 44 5f 44 55 4d 50 2c 0a 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 41 55 54 OAD_DUMP,.ScriptEvents::POST_AUT
27120 4f 4c 4f 41 44 5f 44 55 4d 50 2c 0a 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 OLOAD_DUMP,.);..protected.functi
27140 6f 6e 20 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 on.configure().{.$this.->setName
27160 28 27 72 75 6e 2d 73 63 72 69 70 74 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 ('run-script').->setDescription(
27180 27 52 75 6e 20 74 68 65 20 73 63 72 69 70 74 73 20 64 65 66 69 6e 65 64 20 69 6e 20 63 6f 6d 70 'Run.the.scripts.defined.in.comp
271a0 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 61 72 72 oser.json.').->setDefinition(arr
271c0 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 73 63 72 69 70 74 27 2c 20 ay(.new.InputArgument('script',.
271e0 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 53 63 72 69 70 74 InputArgument::OPTIONAL,.'Script
27200 20 6e 61 6d 65 20 74 6f 20 72 75 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 .name.to.run.'),.new.InputArgume
27220 6e 74 28 27 61 72 67 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 nt('args',.InputArgument::IS_ARR
27240 41 59 20 7c 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 27 AY.|.InputArgument::OPTIONAL,.''
27260 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 6c 2c 20 ),.new.InputOption('dev',.null,.
27280 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 73 20 74 InputOption::VALUE_NONE,.'Sets.t
272a0 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 6f 6e 28 he.dev.mode.'),.new.InputOption(
272c0 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 41 4c 'no-dev',.null,.InputOption::VAL
272e0 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 64 65 2e UE_NONE,.'Disables.the.dev.mode.
27300 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 6c 27 2c '),.new.InputOption('list',.'l',
27320 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 73 74 20 .InputOption::VALUE_NONE,.'List.
27340 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 4f 54 0a scripts.'),.)).->setHelp(<<<EOT.
27360 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 6f 6d 6d The.<info>run-script</info>.comm
27380 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 6f 6d 70 and.runs.scripts.defined.in.comp
273a0 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 72 2e 70 oser.json:..<info>php.composer.p
273c0 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 64 3c 2f har.run-script.post-update-cmd</
273e0 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 6e 63 74 info>.EOT.).;.}..protected.funct
27400 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 75 ion.execute(InputInterface.$inpu
27420 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 66 t,.OutputInterface.$output).{.if
27440 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 7b 0a 72 .($input->getOption('list')).{.r
27460 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 20 65 6c eturn.$this->listScripts();.}.el
27480 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 63 72 69 seif.(!$input->getArgument('scri
274a0 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 65 70 74 pt')).{.throw.new.\RunTimeExcept
274c0 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 74 20 22 ion('Missing.required.argument."
274e0 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 74 2d 3e script"');.}..$script.=.$input->
27500 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 6e 5f 61 getArgument('script');.if.(!in_a
27520 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 65 6e 74 rray($script,.$this->scriptEvent
27540 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 63 72 69 s)).{.if.(defined('Composer\Scri
27560 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 65 28 27 pt\ScriptEvents::'.str_replace('
27580 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 29 29 20 -',.'_',.strtoupper($script)))).
275a0 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
275c0 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 6e 6e 6f ption(sprintf('Script."%s".canno
275e0 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 24 73 63 t.be.run.with.this.command',.$sc
27600 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 73 2d 3e ript));.}.}..$composer.=.$this->
27620 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 3d 20 24 getComposer();.$hasListeners.=.$
27640 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 3e composer->getEventDispatcher()->
27660 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 45 76 65 hasEventListeners(new.CommandEve
27680 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 3e 67 65 nt($script,.$composer,.$this->ge
276a0 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 7b 0a 74 tIO()));.if.(!$hasListeners).{.t
276c0 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
276e0 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 74 20 64 on(sprintf('Script."%s".is.not.d
27700 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 69 70 74 efined.in.this.package',.$script
27720 29 29 3b 0a 7d 0a 0a 0a 20 24 62 69 6e 44 69 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 ));.}....$binDir.=.$composer->ge
27740 74 43 6f 6e 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 tConfig()->get('bin-dir');.if.(i
27760 73 5f 64 69 72 28 24 62 69 6e 44 69 72 29 29 20 7b 0a 24 5f 53 45 52 56 45 52 5b 27 50 41 54 48 s_dir($binDir)).{.$_SERVER['PATH
27780 27 5d 20 3d 20 72 65 61 6c 70 61 74 68 28 24 62 69 6e 44 69 72 29 2e 50 41 54 48 5f 53 45 50 41 '].=.realpath($binDir).PATH_SEPA
277a0 52 41 54 4f 52 2e 67 65 74 65 6e 76 28 27 50 41 54 48 27 29 3b 0a 70 75 74 65 6e 76 28 27 50 41 RATOR.getenv('PATH');.putenv('PA
277c0 54 48 3d 27 2e 24 5f 53 45 52 56 45 52 5b 27 50 41 54 48 27 5d 29 3b 0a 7d 0a 0a 24 61 72 67 73 TH='.$_SERVER['PATH']);.}..$args
277e0 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 61 72 67 73 27 29 3b 0a .=.$input->getArgument('args');.
27800 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 70 61 .return.$composer->getEventDispa
27820 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 74 2c tcher()->dispatchScript($script,
27840 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 24 69 .$input->getOption('dev').||.!$i
27860 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 67 73 nput->getOption('no-dev'),.$args
27880 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 63 72 );.}..protected.function.listScr
278a0 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 43 6f ipts().{.$scripts.=.$this->getCo
278c0 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 69 70 mposer()->getPackage()->getScrip
278e0 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 0a 72 ts();..if.(!count($scripts)).{.r
27900 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 28 29 eturn.0;.}..$io.=.$this->getIO()
27920 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 74 73 ;.$io->writeError('<info>scripts
27940 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 61 73 :</info>');.foreach.($scripts.as
27960 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 65 28 .$name.=>.$script).{.$io->write(
27980 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 7d 0a '..'...$name);.}..return.0;.}.}.
279a0 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
279c0 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 6e ser\Command;..use.Symfony\Compon
279e0 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 65 ent\Console\Input\InputInterface
27a00 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\
27a20 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
27a40 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
27a60 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
27a80 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 0a ole\Output\OutputInterface;.....
27aa0 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 64 73 class.ScriptAliasCommand.extends
27ac0 20 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 3b 0a 0a 70 75 62 .Command.{.private.$script;..pub
27ae0 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 63 72 69 70 74 lic.function.__construct($script
27b00 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 74 3b 0a 0a 70 61 ).{.$this->script.=.$script;..pa
27b20 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 6f 74 65 63 74 65 rent::__construct();.}..protecte
27b40 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.-
27b60 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 73 65 74 44 65 73 >setName($this->script).->setDes
27b80 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 3e 73 63 72 69 70 cription('Run.the.'.$this->scrip
27ba0 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 6f 6d 70 6f 73 65 t.'.script.as.defined.in.compose
27bc0 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 61 72 72 61 79 28 r.json.').->setDefinition(array(
27be0 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 6c 2c 20 49 6e .new.InputOption('dev',.null,.In
27c00 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 73 20 74 68 65 putOption::VALUE_NONE,.'Sets.the
27c20 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 6f 6e 28 27 6e .dev.mode.'),.new.InputOption('n
27c40 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 41 4c 55 45 o-dev',.null,.InputOption::VALUE
27c60 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 64 65 2e 27 29 _NONE,.'Disables.the.dev.mode.')
27c80 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
27ca0 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
27cc0 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 48 65 6c 70 ent::OPTIONAL,.''),.)).->setHelp
27ce0 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 70 74 3c 2f 69 6e (<<<EOT.The.<info>run-script</in
27d00 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 65 66 69 6e 65 64 fo>.command.runs.scripts.defined
27d20 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 70 68 70 20 63 6f .in.composer.json:..<info>php.co
27d40 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 74 2d 75 70 64 61 mposer.phar.run-script.post-upda
27d60 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 72 6f 74 65 63 74 te-cmd</info>.EOT.).;.}..protect
27d80 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 61 ed.function.execute(InputInterfa
27da0 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
27dc0 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 70 ut).{.$composer.=.$this->getComp
27de0 6f 73 65 72 28 29 3b 0a 0a 0a 20 24 62 69 6e 44 69 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e oser();....$binDir.=.$composer->
27e00 67 65 74 43 6f 6e 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 getConfig()->get('bin-dir');.if.
27e20 28 69 73 5f 64 69 72 28 24 62 69 6e 44 69 72 29 29 20 7b 0a 24 5f 53 45 52 56 45 52 5b 27 50 41 (is_dir($binDir)).{.$_SERVER['PA
27e40 54 48 27 5d 20 3d 20 72 65 61 6c 70 61 74 68 28 24 62 69 6e 44 69 72 29 2e 50 41 54 48 5f 53 45 TH'].=.realpath($binDir).PATH_SE
27e60 50 41 52 41 54 4f 52 2e 67 65 74 65 6e 76 28 27 50 41 54 48 27 29 3b 0a 70 75 74 65 6e 76 28 27 PARATOR.getenv('PATH');.putenv('
27e80 50 41 54 48 3d 27 2e 24 5f 53 45 52 56 45 52 5b 27 50 41 54 48 27 5d 29 3b 0a 7d 0a 0a 24 61 72 PATH='.$_SERVER['PATH']);.}..$ar
27ea0 67 73 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 3b 0a 0a 72 65 gs.=.$input->getArguments();..re
27ec0 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 70 61 74 63 68 turn.$composer->getEventDispatch
27ee0 65 72 28 29 2d 3e 64 69 73 70 61 74 63 68 53 63 72 69 70 74 28 24 74 68 69 73 2d 3e 73 63 72 69 er()->dispatchScript($this->scri
27f00 70 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 pt,.$input->getOption('dev').||.
27f20 21 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 !$input->getOption('no-dev'),.$a
27f40 72 67 73 5b 27 61 72 67 73 27 5d 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a rgs['args']);.}.}.<?php.........
27f60 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;..
27f80 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
27fa0 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\
27fc0 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
27fe0 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
28000 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
28020 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
28040 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 52 65 70 6f 73 putInterface;.use.Composer\Repos
28060 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 20 43 itory\CompositeRepository;.use.C
28080 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 65 70 6f 73 omposer\Repository\PlatformRepos
280a0 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 5c 52 itory;.use.Composer\Repository\R
280c0 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 73 65 72 epositoryInterface;.use.Composer
280e0 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 6c 75 67 69 6e 5c 43 6f \Factory;.use.Composer\Plugin\Co
28100 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\
28120 50 6c 75 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 PluginEvents;.....class.SearchCo
28140 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 6f 74 65 63 74 65 mmand.extends.Command.{.protecte
28160 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 65 d.$matches;.protected.$lowMatche
28180 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 0a s.=.array();.protected.$tokens;.
281a0 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 6e protected.$output;.protected.$on
281c0 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 66 lyName;..protected.function.conf
281e0 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 63 igure().{.$this.->setName('searc
28200 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 72 h').->setDescription('Search.for
28220 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 61 .packages').->setDefinition(arra
28240 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 20 y(.new.InputOption('only-name',.
28260 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 53 'N',.InputOption::VALUE_NONE,.'S
28280 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 41 earch.only.in.name'),.new.InputA
282a0 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 3a rgument('tokens',.InputArgument:
282c0 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 49 :IS_ARRAY.|.InputArgument::REQUI
282e0 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 29 RED,.'tokens.to.search.for'),.))
28300 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 6d .->setHelp(<<<EOT.The.search.com
28320 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 74 mand.searches.for.packages.by.it
28340 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 73 s.name.<info>php.composer.phar.s
28360 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 45 earch.symfony.composer</info>..E
28380 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
283a0 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
283c0 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 6f utInterface.$output).{...$platfo
283e0 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 3b rmRepo.=.new.PlatformRepository;
28400 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 24 63 6f 6d 70 .$io.=.$this->getIO();.if.($comp
28420 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 73 65 29 oser.=.$this->getComposer(false)
28440 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 72 2d 3e 67 65 74 52 ).{.$localRepo.=.$composer->getR
28460 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
28480 73 69 74 6f 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 sitory();.$installedRepo.=.new.C
284a0 6f 6d 70 6f 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 ompositeRepository(array($localR
284c0 65 70 6f 2c 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 epo,.$platformRepo));.$repos.=.n
284e0 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 5f 6d 65 72 ew.CompositeRepository(array_mer
28500 67 65 28 61 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 ge(array($installedRepo),.$compo
28520 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 74 ser->getRepositoryManager()->get
28540 52 65 70 6f 73 69 74 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 Repositories()));.}.else.{.$defa
28560 75 6c 74 52 65 70 6f 73 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 44 65 66 61 75 6c ultRepos.=.Factory::createDefaul
28580 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 69 6f 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 tRepositories($io);.$io->writeEr
285a0 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 74 ror('No.composer.json.found.in.t
285c0 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 70 61 he.current.directory,.showing.pa
285e0 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 20 61 72 ckages.from.'...implode(',.',.ar
28600 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 69 6e 73 74 ray_keys($defaultRepos)));.$inst
28620 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 0a 24 72 65 70 6f alledRepo.=.$platformRepo;.$repo
28640 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 72 72 61 s.=.new.CompositeRepository(arra
28660 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 2c 20 24 y_merge(array($installedRepo),.$
28680 64 65 66 61 75 6c 74 52 65 70 6f 73 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 defaultRepos));.}..if.($composer
286a0 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
286c0 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 73 65 61 vent(PluginEvents::COMMAND,.'sea
286e0 72 63 68 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 rch',.$input,.$output);.$compose
28700 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
28720 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
28740 6d 61 6e 64 45 76 65 6e 74 29 3b 0a 7d 0a 0a 24 6f 6e 6c 79 4e 61 6d 65 20 3d 20 24 69 6e 70 75 mandEvent);.}..$onlyName.=.$inpu
28760 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6f 6e 6c 79 2d 6e 61 6d 65 27 29 3b 0a 0a 24 66 6c 61 t->getOption('only-name');..$fla
28780 67 73 20 3d 20 24 6f 6e 6c 79 4e 61 6d 65 20 3f 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 gs.=.$onlyName.?.RepositoryInter
287a0 66 61 63 65 3a 3a 53 45 41 52 43 48 5f 4e 41 4d 45 20 3a 20 52 65 70 6f 73 69 74 6f 72 79 49 6e face::SEARCH_NAME.:.RepositoryIn
287c0 74 65 72 66 61 63 65 3a 3a 53 45 41 52 43 48 5f 46 55 4c 4c 54 45 58 54 3b 0a 24 72 65 73 75 6c terface::SEARCH_FULLTEXT;.$resul
287e0 74 73 20 3d 20 24 72 65 70 6f 73 2d 3e 73 65 61 72 63 68 28 69 6d 70 6c 6f 64 65 28 27 20 27 2c ts.=.$repos->search(implode('.',
28800 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 74 6f 6b 65 6e 73 27 29 29 2c .$input->getArgument('tokens')),
28820 20 24 66 6c 61 67 73 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 73 75 6c 74 73 20 61 73 20 .$flags);..foreach.($results.as.
28840 24 72 65 73 75 6c 74 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 72 65 73 75 6c 74 5b 27 6e $result).{.$io->write($result['n
28860 61 6d 65 27 5d 20 2e 20 28 69 73 73 65 74 28 24 72 65 73 75 6c 74 5b 27 64 65 73 63 72 69 70 74 ame']...(isset($result['descript
28880 69 6f 6e 27 5d 29 20 3f 20 27 20 27 2e 20 24 72 65 73 75 6c 74 5b 27 64 65 73 63 72 69 70 74 69 ion']).?.'.'..$result['descripti
288a0 6f 6e 27 5d 20 3a 20 27 27 29 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a on'].:.''));.}.}.}.<?php........
288c0 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 3b 0a ....namespace.Composer\Command;.
288e0 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 43 6f 6d 70 .use.Composer\Composer;.use.Comp
28900 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 55 74 69 6c 5c oser\Factory;.use.Composer\Util\
28920 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 52 65 Filesystem;.use.Composer\Util\Re
28940 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 44 6f 77 moteFilesystem;.use.Composer\Dow
28960 6e 6c 6f 61 64 65 72 5c 46 69 6c 65 73 79 73 74 65 6d 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 nloader\FilesystemException;.use
28980 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
289a0 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 6d \InputInterface;.use.Symfony\Com
289c0 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
289e0 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\
28a00 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
28a20 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
28a40 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
28a60 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 73 73 20 53 65 6c 66 \Finder\Finder;.......class.Self
28a80 55 70 64 61 74 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a UpdateCommand.extends.Command.{.
28aa0 63 6f 6e 73 74 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 const.HOMEPAGE.=.'getcomposer.or
28ac0 67 27 3b 0a 63 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 g';.const.OLD_INSTALL_EXT.=.'-ol
28ae0 64 2e 70 68 61 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 d.phar';..protected.function.con
28b00 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 6c 66 figure().{.$this.->setName('self
28b20 2d 75 70 64 61 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 -update').->setAliases(array('se
28b40 6c 66 75 70 64 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 lfupdate')).->setDescription('Up
28b60 64 61 74 65 73 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 dates.composer.phar.to.the.lates
28b80 74 20 76 65 72 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 t.version.').->setDefinition(arr
28ba0 61 79 28 0a 6e 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 ay(.new.InputOption('rollback',.
28bc0 27 72 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 52 'r',.InputOption::VALUE_NONE,.'R
28be0 65 76 65 72 74 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 evert.to.an.older.installation.o
28c00 66 20 63 6f 6d 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 f.composer'),.new.InputOption('c
28c20 6c 65 61 6e 2d 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 lean-backups',.null,.InputOption
28c40 3a 3a 56 41 4c 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 ::VALUE_NONE,.'Delete.old.backup
28c60 73 20 64 75 72 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 s.during.an.update..This.makes.t
28c80 68 65 20 63 75 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 he.current.version.of.composer.t
28ca0 68 65 20 6f 6e 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 he.only.backup.available.after.t
28cc0 68 65 20 75 70 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 he.update'),.new.InputArgument('
28ce0 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
28d00 4c 2c 20 27 54 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 L,.'The.version.to.update.to'),.
28d20 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
28d40 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
28d60 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.'
28d80 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
28da0 3e 73 65 6c 66 2d 75 70 64 61 74 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 63 68 65 63 >self-update</info>.command.chec
28dc0 6b 73 20 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 20 66 6f 72 20 6e 65 77 65 72 0a 76 65 72 ks.getcomposer.org.for.newer.ver
28de0 73 69 6f 6e 73 20 6f 66 20 63 6f 6d 70 6f 73 65 72 20 61 6e 64 20 69 66 20 66 6f 75 6e 64 2c 20 sions.of.composer.and.if.found,.
28e00 69 6e 73 74 61 6c 6c 73 20 74 68 65 20 6c 61 74 65 73 74 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 installs.the.latest...<info>php.
28e20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 73 65 6c 66 2d 75 70 64 61 74 65 3c 2f 69 6e 66 6f 3e composer.phar.self-update</info>
28e40 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 74 69 6f 6e 20 ..EOT.).;.}..protected.function.
28e60 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 20 4f execute(InputInterface.$input,.O
28e80 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 63 6f 6e 66 69 utputInterface.$output).{.$confi
28ea0 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 29 3b 0a 0a 69 66 g.=.Factory::createConfig();..if
28ec0 20 28 24 63 6f 6e 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 .($config->get('disable-tls').==
28ee0 3d 20 74 72 75 65 29 20 7b 0a 24 62 61 73 65 55 72 6c 20 3d 20 27 68 74 74 70 3a 2f 2f 27 20 2e =.true).{.$baseUrl.=.'http://'..
28f00 20 73 65 6c 66 3a 3a 48 4f 4d 45 50 41 47 45 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 62 61 73 65 55 .self::HOMEPAGE;.}.else.{.$baseU
28f20 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 27 20 2e 20 73 65 6c 66 3a 3a 48 4f 4d 45 50 41 47 45 rl.=.'https://'...self::HOMEPAGE
28f40 3b 0a 7d 0a 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 6d 6f ;.}..$io.=.$this->getIO();.$remo
28f60 74 65 46 69 6c 65 73 79 73 74 65 6d 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 52 65 teFilesystem.=.Factory::createRe
28f80 6d 6f 74 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 3b 0a 0a 24 moteFilesystem($io,.$config);..$
28fa0 63 61 63 68 65 44 69 72 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 64 cacheDir.=.$config->get('cache-d
28fc0 69 72 27 29 3b 0a 24 72 6f 6c 6c 62 61 63 6b 44 69 72 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 ir');.$rollbackDir.=.$config->ge
28fe0 74 28 27 68 6f 6d 65 27 29 3b 0a 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 20 3d 20 72 65 61 6c t('home');.$localFilename.=.real
29000 70 61 74 68 28 24 5f 53 45 52 56 45 52 5b 27 61 72 67 76 27 5d 5b 30 5d 29 20 3f 3a 20 24 5f 53 path($_SERVER['argv'][0]).?:.$_S
29020 45 52 56 45 52 5b 27 61 72 67 76 27 5d 5b 30 5d 3b 0a 0a 0a 20 24 74 6d 70 44 69 72 20 3d 20 69 ERVER['argv'][0];....$tmpDir.=.i
29040 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 69 6c 65 6e 61 6d s_writable(dirname($localFilenam
29060 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 6d 65 29 20 3a 20 e)).?.dirname($localFilename).:.
29080 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 61 62 6c 65 28 24 $cacheDir;....if.(!is_writable($
290a0 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 79 73 74 65 6d 45 tmpDir)).{.throw.new.FilesystemE
290c0 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 66 61 69 6c 65 64 xception('Composer.update.failed
290e0 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 6f 72 79 20 75 73 :.the."'.$tmpDir.'".directory.us
29100 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 6c 65 20 63 6f 75 ed.to.download.the.temp.file.cou
29120 6c 64 20 6e 6f 74 20 62 65 20 77 72 69 74 74 65 6e 27 29 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 77 ld.not.be.written');.}.if.(!is_w
29140 72 69 74 61 62 6c 65 28 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 ritable($localFilename)).{.throw
29160 20 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 .new.FilesystemException('Compos
29180 65 72 20 75 70 64 61 74 65 20 66 61 69 6c 65 64 3a 20 74 68 65 20 22 27 2e 24 6c 6f 63 61 6c 46 er.update.failed:.the."'.$localF
291a0 69 6c 65 6e 61 6d 65 2e 27 22 20 66 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 77 72 69 ilename.'".file.could.not.be.wri
291c0 74 74 65 6e 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 tten');.}..if.($input->getOption
291e0 28 27 72 6f 6c 6c 62 61 63 6b 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f ('rollback')).{.return.$this->ro
29200 6c 6c 62 61 63 6b 28 24 6f 75 74 70 75 74 2c 20 24 72 6f 6c 6c 62 61 63 6b 44 69 72 2c 20 24 6c llback($output,.$rollbackDir,.$l
29220 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 29 3b 0a 7d 0a 0a 24 6c 61 74 65 73 74 56 65 72 73 69 6f 6e ocalFilename);.}..$latestVersion
29240 20 3d 20 74 72 69 6d 28 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 2d 3e 67 65 74 43 6f .=.trim($remoteFilesystem->getCo
29260 6e 74 65 6e 74 73 28 73 65 6c 66 3a 3a 48 4f 4d 45 50 41 47 45 2c 20 24 62 61 73 65 55 72 6c 2e ntents(self::HOMEPAGE,.$baseUrl.
29280 20 27 2f 76 65 72 73 69 6f 6e 27 2c 20 66 61 6c 73 65 29 29 3b 0a 24 75 70 64 61 74 65 56 65 72 .'/version',.false));.$updateVer
292a0 73 69 6f 6e 20 3d 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 sion.=.$input->getArgument('vers
292c0 69 6f 6e 27 29 20 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 ion').?:.$latestVersion;..if.(pr
292e0 65 67 5f 6d 61 74 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 eg_match('{^[0-9a-f]{40}$}',.$up
29300 64 61 74 65 56 65 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 dateVersion).&&.$updateVersion.!
29320 3d 3d 20 24 6c 61 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 ==.$latestVersion).{.$io->writeE
29340 72 72 6f 72 28 27 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 rror('<error>You.can.not.update.
29360 74 6f 20 61 20 73 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 to.a.specific.SHA-1.as.those.pha
29380 72 73 20 61 72 65 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 rs.are.not.available.for.downloa
293a0 64 3c 2f 65 72 72 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 d</error>');..return.1;.}..if.(C
293c0 6f 6d 70 6f 73 65 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 omposer::VERSION.===.$updateVers
293e0 69 6f 6e 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 59 6f ion).{.$io->writeError('<info>Yo
29400 75 20 61 72 65 20 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 u.are.already.using.composer.ver
29420 73 69 6f 6e 20 27 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 sion.'.$updateVersion.'.</info>'
29440 29 3b 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 24 74 65 6d 70 46 69 6c 65 6e 61 6d 65 20 3d );..return.0;.}..$tempFilename.=
29460 20 24 74 6d 70 44 69 72 20 2e 20 27 2f 27 20 2e 20 62 61 73 65 6e 61 6d 65 28 24 6c 6f 63 61 6c .$tmpDir...'/'...basename($local
29480 46 69 6c 65 6e 61 6d 65 2c 20 27 2e 70 68 61 72 27 29 2e 27 2d 74 65 6d 70 2e 70 68 61 72 27 3b Filename,.'.phar').'-temp.phar';
294a0 0a 24 62 61 63 6b 75 70 46 69 6c 65 20 3d 20 73 70 72 69 6e 74 66 28 0a 27 25 73 2f 25 73 2d 25 .$backupFile.=.sprintf(.'%s/%s-%
294c0 73 25 73 27 2c 0a 24 72 6f 6c 6c 62 61 63 6b 44 69 72 2c 0a 73 74 72 74 72 28 43 6f 6d 70 6f 73 s%s',.$rollbackDir,.strtr(Compos
294e0 65 72 3a 3a 52 45 4c 45 41 53 45 5f 44 41 54 45 2c 20 27 20 3a 27 2c 20 27 5f 2d 27 29 2c 0a 70 er::RELEASE_DATE,.'.:',.'_-'),.p
29500 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 5b 30 2d 39 61 2d 66 5d 7b 37 7d 29 5b 30 2d 39 reg_replace('{^([0-9a-f]{7})[0-9
29520 61 2d 66 5d 7b 33 33 7d 24 7d 27 2c 20 27 24 31 27 2c 20 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 52 a-f]{33}$}',.'$1',.Composer::VER
29540 53 49 4f 4e 29 2c 0a 73 65 6c 66 3a 3a 4f 4c 44 5f 49 4e 53 54 41 4c 4c 5f 45 58 54 0a 29 3b 0a SION),.self::OLD_INSTALL_EXT.);.
29560 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 22 55 70 64 61 74 69 .$io->writeError(sprintf("Updati
29580 6e 67 20 74 6f 20 76 65 72 73 69 6f 6e 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 2e 22 2c ng.to.version.<info>%s</info>.",
295a0 20 24 75 70 64 61 74 65 56 65 72 73 69 6f 6e 29 29 3b 0a 24 72 65 6d 6f 74 65 46 69 6c 65 6e 61 .$updateVersion));.$remoteFilena
295c0 6d 65 20 3d 20 24 62 61 73 65 55 72 6c 20 2e 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b me.=.$baseUrl...(preg_match('{^[
295e0 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 72 73 69 6f 6e 29 20 0-9a-f]{40}$}',.$updateVersion).
29600 3f 20 27 2f 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 27 20 3a 20 22 2f 64 6f 77 6e 6c 6f 61 64 2f ?.'/composer.phar'.:."/download/
29620 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 22 29 {$updateVersion}/composer.phar")
29640 3b 0a 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 2d 3e 63 6f 70 79 28 73 65 6c 66 3a 3a ;.$remoteFilesystem->copy(self::
29660 48 4f 4d 45 50 41 47 45 2c 20 24 72 65 6d 6f 74 65 46 69 6c 65 6e 61 6d 65 2c 20 24 74 65 6d 70 HOMEPAGE,.$remoteFilename,.$temp
29680 46 69 6c 65 6e 61 6d 65 2c 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f Filename,.!$input->getOption('no
296a0 2d 70 72 6f 67 72 65 73 73 27 29 29 3b 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 -progress'));.if.(!file_exists($
296c0 74 65 6d 70 46 69 6c 65 6e 61 6d 65 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 tempFilename)).{.$io->writeError
296e0 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
29700 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.
29720 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
29740 74 75 72 6e 20 31 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 turn.1;.}....if.($input->getOpti
29760 6f 6e 28 27 63 6c 65 61 6e 2d 62 61 63 6b 75 70 73 27 29 29 20 7b 0a 24 66 69 6e 64 65 72 20 3d on('clean-backups')).{.$finder.=
29780 20 24 74 68 69 73 2d 3e 67 65 74 4f 6c 64 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 46 69 6e 64 65 72 .$this->getOldInstallationFinder
297a0 28 24 72 6f 6c 6c 62 61 63 6b 44 69 72 29 3b 0a 0a 24 66 73 20 3d 20 6e 65 77 20 46 69 6c 65 73 ($rollbackDir);..$fs.=.new.Files
297c0 79 73 74 65 6d 3b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6e 64 65 72 20 61 73 20 24 66 69 6c 65 ystem;.foreach.($finder.as.$file
297e0 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 24 69 6f 2d ).{.$file.=.(string).$file;.$io-
29800 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 24 >writeError('<info>Removing:.'.$
29820 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 69 file.'</info>');.$fs->remove($fi
29840 6c 65 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 65 72 72 20 3d 20 24 74 68 69 73 2d 3e 73 65 74 4c le);.}.}..if.($err.=.$this->setL
29860 6f 63 61 6c 50 68 61 72 28 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 2c 20 24 74 65 6d 70 46 69 ocalPhar($localFilename,.$tempFi
29880 6c 65 6e 61 6d 65 2c 20 24 62 61 63 6b 75 70 46 69 6c 65 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 lename,.$backupFile)).{.$io->wri
298a0 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 72 72 teError('<error>The.file.is.corr
298c0 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 2e 3c upted.('.$err->getMessage().').<
298e0 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 72 72 /error>');.$io->writeError('<err
29900 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 74 65 or>Please.re-run.the.self-update
29920 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 27 29 .command.to.try.again.</error>')
29940 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 73 28 ;..return.1;.}..if.(file_exists(
29960 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 72 28 $backupFile)).{.$io->writeError(
29980 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 65 20 'Use.<info>composer.self-update.
299a0 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 20 76 --rollback</info>.to.return.to.v
299c0 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 20 65 ersion.'.Composer::VERSION);.}.e
299e0 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 67 3e lse.{.$io->writeError('<warning>
29a00 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 6e 20 A.backup.of.the.current.version.
29a20 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 6b 75 could.not.be.written.to.'.$backu
29a40 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 2f 77 pFile.',.no.rollback.possible</w
29a60 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 74 69 arning>');.}.}..protected.functi
29a80 6f 6e 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 on.rollback(OutputInterface.$out
29aa0 70 75 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 put,.$rollbackDir,.$localFilenam
29ac0 65 29 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 e).{.$rollbackVersion.=.$this->g
29ae0 65 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 etLastBackupVersion($rollbackDir
29b00 29 3b 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 );.if.(!$rollbackVersion).{.thro
29b20 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 28 w.new.\UnexpectedValueException(
29b40 27 43 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 'Composer.rollback.failed:.no.in
29b60 73 74 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 stallation.to.roll.back.to.in."'
29b80 2e 24 72 6f 6c 6c 62 61 63 6b 44 69 72 2e 27 22 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 5f 77 .$rollbackDir.'"');.}..if.(!is_w
29ba0 72 69 74 61 62 6c 65 28 24 72 6f 6c 6c 62 61 63 6b 44 69 72 29 29 20 7b 0a 74 68 72 6f 77 20 6e ritable($rollbackDir)).{.throw.n
29bc0 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 72 ew.FilesystemException('Composer
29be0 20 72 6f 6c 6c 62 61 63 6b 20 66 61 69 6c 65 64 3a 20 74 68 65 20 22 27 2e 24 72 6f 6c 6c 62 61 .rollback.failed:.the."'.$rollba
29c00 63 6b 44 69 72 2e 27 22 20 64 69 72 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 77 72 69 74 74 65 ckDir.'".dir.could.not.be.writte
29c20 6e 20 74 6f 27 29 3b 0a 7d 0a 0a 24 6f 6c 64 20 3d 20 24 72 6f 6c 6c 62 61 63 6b 44 69 72 20 2e n.to');.}..$old.=.$rollbackDir..
29c40 20 27 2f 27 20 2e 20 24 72 6f 6c 6c 62 61 63 6b 56 65 72 73 69 6f 6e 20 2e 20 73 65 6c 66 3a 3a .'/'...$rollbackVersion...self::
29c60 4f 4c 44 5f 49 4e 53 54 41 4c 4c 5f 45 58 54 3b 0a 0a 69 66 20 28 21 69 73 5f 66 69 6c 65 28 24 OLD_INSTALL_EXT;..if.(!is_file($
29c80 6f 6c 64 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 45 78 63 65 old)).{.throw.new.FilesystemExce
29ca0 70 74 69 6f 6e 28 27 43 6f 6d 70 6f 73 65 72 20 72 6f 6c 6c 62 61 63 6b 20 66 61 69 6c 65 64 3a ption('Composer.rollback.failed:
29cc0 20 22 27 2e 24 6f 6c 64 2e 27 22 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 27 29 ."'.$old.'".could.not.be.found')
29ce0 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 72 65 61 64 61 62 6c 65 28 24 6f 6c 64 29 29 20 7b 0a 74 68 ;.}.if.(!is_readable($old)).{.th
29d00 72 6f 77 20 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 row.new.FilesystemException('Com
29d20 70 6f 73 65 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 2e 27 poser.rollback.failed:."'.$old.'
29d40 22 20 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 6f 6c 64 46 69 ".could.not.be.read');.}..$oldFi
29d60 6c 65 20 3d 20 24 72 6f 6c 6c 62 61 63 6b 44 69 72 20 2e 20 22 2f 7b 24 72 6f 6c 6c 62 61 63 6b le.=.$rollbackDir..."/{$rollback
29d80 56 65 72 73 69 6f 6e 7d 22 20 2e 20 73 65 6c 66 3a 3a 4f 4c 44 5f 49 4e 53 54 41 4c 4c 5f 45 58 Version}"...self::OLD_INSTALL_EX
29da0 54 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 69 6f 2d 3e 77 72 T;.$io.=.$this->getIO();.$io->wr
29dc0 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 22 52 6f 6c 6c 69 6e 67 20 62 61 63 6b 20 74 iteError(sprintf("Rolling.back.t
29de0 6f 20 76 65 72 73 69 6f 6e 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 2e 22 2c 20 24 72 6f o.version.<info>%s</info>.",.$ro
29e00 6c 6c 62 61 63 6b 56 65 72 73 69 6f 6e 29 29 3b 0a 69 66 20 28 24 65 72 72 20 3d 20 24 74 68 69 llbackVersion));.if.($err.=.$thi
29e20 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 65 2c 20 s->setLocalPhar($localFilename,.
29e40 24 6f 6c 64 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 27 3c 65 $oldFile)).{.$io->writeError('<e
29e60 72 72 6f 72 3e 54 68 65 20 62 61 63 6b 75 70 20 66 69 6c 65 20 77 61 73 20 63 6f 72 72 75 70 74 rror>The.backup.file.was.corrupt
29e80 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 20 61 6e 64 20 ed.('.$err->getMessage().').and.
29ea0 68 61 73 20 62 65 65 6e 20 72 65 6d 6f 76 65 64 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 has.been.removed.</error>');..re
29ec0 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
29ee0 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
29f00 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
29f20 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(
29f40 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
29f60 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
29f80 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($
29fa0 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);.}.
29fc0 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
29fe0 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
2a000 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);.}..
2a020 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
2a040 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).{.
2a060 69 66 20 28 24 62 61 63 6b 75 70 54 61 72 67 65 74 29 20 7b 0a 40 75 6e 6c 69 6e 6b 28 24 6e 65 if.($backupTarget).{.@unlink($ne
2a080 77 46 69 6c 65 6e 61 6d 65 29 3b 0a 7d 0a 69 66 20 28 21 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 wFilename);.}.if.(!$e.instanceof
2a0a0 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 20 26 26 20 21 24 .\UnexpectedValueException.&&.!$
2a0c0 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 50 68 61 72 45 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 e.instanceof.\PharException).{.t
2a0e0 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 hrow.$e;.}..return.$e;.}.}..prot
2a100 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 61 73 74 42 61 63 6b 75 70 56 65 72 73 ected.function.getLastBackupVers
2a120 69 6f 6e 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 24 74 ion($rollbackDir).{.$finder.=.$t
2a140 68 69 73 2d 3e 67 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 his->getOldInstallationFinder($r
2a160 6f 6c 6c 62 61 63 6b 44 69 72 29 3b 0a 24 66 69 6e 64 65 72 2d 3e 73 6f 72 74 42 79 4e 61 6d 65 ollbackDir);.$finder->sortByName
2a180 28 29 3b 0a 24 66 69 6c 65 73 20 3d 20 69 74 65 72 61 74 6f 72 5f 74 6f 5f 61 72 72 61 79 28 24 ();.$files.=.iterator_to_array($
2a1a0 66 69 6e 64 65 72 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 66 69 6c 65 73 29 29 20 7b 0a 72 finder);..if.(count($files)).{.r
2a1c0 65 74 75 72 6e 20 62 61 73 65 6e 61 6d 65 28 65 6e 64 28 24 66 69 6c 65 73 29 2c 20 73 65 6c 66 eturn.basename(end($files),.self
2a1e0 3a 3a 4f 4c 44 5f 49 4e 53 54 41 4c 4c 5f 45 58 54 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 ::OLD_INSTALL_EXT);.}..return.fa
2a200 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 67 65 74 4f 6c lse;.}..protected.function.getOl
2a220 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 6b 44 69 72 dInstallationFinder($rollbackDir
2a240 29 0a 7b 0a 24 66 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 ).{.$finder.=.Finder::create().-
2a260 3e 64 65 70 74 68 28 30 29 0a 2d 3e 66 69 6c 65 73 28 29 0a 2d 3e 6e 61 6d 65 28 27 2a 27 20 2e >depth(0).->files().->name('*'..
2a280 20 73 65 6c 66 3a 3a 4f 4c 44 5f 49 4e 53 54 41 4c 4c 5f 45 58 54 29 0a 2d 3e 69 6e 28 24 72 6f .self::OLD_INSTALL_EXT).->in($ro
2a2a0 6c 6c 62 61 63 6b 44 69 72 29 3b 0a 0a 72 65 74 75 72 6e 20 24 66 69 6e 64 65 72 3b 0a 7d 0a 7d llbackDir);..return.$finder;.}.}
2a2c0 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
2a2e0 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 44 65 70 65 oser\Command;..use.Composer\Depe
2a300 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 70 6f 73 65 ndencyResolver\Pool;.use.Compose
2a320 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 6c 74 50 6f 6c 69 r\DependencyResolver\DefaultPoli
2a340 63 79 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 6f cy;.use.Composer\Factory;.use.Co
2a360 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 49 6e mposer\Package\CompletePackageIn
2a380 74 65 72 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 56 65 72 terface;.use.Composer\Semver\Ver
2a3a0 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\
2a3c0 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 67 69 CommandEvent;.use.Composer\Plugi
2a3e0 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 61 63 n\PluginEvents;.use.Composer\Pac
2a400 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 66 6f kage\PackageInterface;.use.Symfo
2a420 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 4f ny\Component\Console\Formatter\O
2a440 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 utputFormatterStyle;.use.Symfony
2a460 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 6e \Component\Console\Input\InputIn
2a480 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
2a4a0 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 65 20 onsole\Input\InputArgument;.use.
2a4c0 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\
2a4e0 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
2a500 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
2a520 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 41 72 72 61 79 e;.use.Composer\Repository\Array
2a540 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 74 Repository;.use.Composer\Reposit
2a560 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 20 43 6f 6d ory\CompositeRepository;.use.Com
2a580 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 poser\Repository\ComposerReposit
2a5a0 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 50 6c 61 ory;.use.Composer\Repository\Pla
2a5c0 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 72 5c 52 65 tformRepository;.use.Composer\Re
2a5e0 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 73 pository\RepositoryInterface;.us
2a600 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 73 3b 0a 0a 0a e.Composer\Spdx\SpdxLicenses;...
2a620 0a 0a 0a 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 43 6f ....class.ShowCommand.extends.Co
2a640 6d 6d 61 6e 64 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 mmand.{.protected.$versionParser
2a660 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 64 20 ;.protected.$colors;..protected.
2a680 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 3e 73 function.configure().{.$this.->s
2a6a0 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 72 61 etName('show').->setAliases(arra
2a6c0 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 68 6f y('info')).->setDescription('Sho
2a6e0 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 0a 2d w.information.about.packages').-
2a700 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 74 41 >setDefinition(array(.new.InputA
2a720 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 6e 74 rgument('package',.InputArgument
2a740 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 74 27 ::OPTIONAL,.'Package.to.inspect'
2a760 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 2c 20 ),.new.InputArgument('version',.
2a780 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 69 6f InputArgument::OPTIONAL,.'Versio
2a7a0 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 70 65 n.or.version.constraint.to.inspe
2a7c0 63 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 69 6e 73 74 61 6c 6c 65 64 ct'),.new.InputOption('installed
2a7e0 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 4f 4e 45 2c ',.'i',.InputOption::VALUE_NONE,
2a800 20 27 4c 69 73 74 20 69 6e 73 74 61 6c 6c 65 64 20 70 61 63 6b 61 67 65 73 20 6f 6e 6c 79 27 29 .'List.installed.packages.only')
2a820 2c 0a 6e 65 77 20 49 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 ,.new.InputOption('platform',.'p
2a840 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 73 ',.InputOption::VALUE_NONE,.'Lis
2a860 74 20 70 6c 61 74 66 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 t.platform.packages.only'),.new.
2a880 49 6e 70 75 74 4f 70 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 InputOption('available',.'a',.In
2a8a0 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 73 74 20 61 76 61 putOption::VALUE_NONE,.'List.ava
2a8c0 69 6c 61 62 6c 65 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 ilable.packages.only'),.new.Inpu
2a8e0 74 4f 70 74 69 6f 6e 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 tOption('self',.'s',.InputOption
2a900 3a 3a 56 41 4c 55 45 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 ::VALUE_NONE,.'Show.the.root.pac
2a920 6b 61 67 65 20 69 6e 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 kage.information'),.new.InputOpt
2a940 69 6f 6e 28 27 6e 61 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 ion('name-only',.'N',.InputOptio
2a960 6e 3a 3a 56 41 4c 55 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 n::VALUE_NONE,.'List.package.nam
2a980 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 28 27 70 61 74 68 es.only'),.new.InputOption('path
2a9a0 27 2c 20 27 50 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 ',.'P',.InputOption::VALUE_NONE,
2a9c0 20 27 53 68 6f 77 20 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 .'Show.package.paths'),.new.Inpu
2a9e0 74 4f 70 74 69 6f 6e 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 tOption('tree',.'t',.InputOption
2aa00 3a 3a 56 41 4c 55 45 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 ::VALUE_NONE,.'List.the.dependen
2aa20 63 69 65 73 20 61 73 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 cies.as.a.tree'),.)).->setHelp(<
2aa40 3c 3c 45 4f 54 0a 54 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 <<EOT.The.show.command.displays.
2aa60 64 65 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 61 20 70 61 63 detailed.information.about.a.pac
2aa80 6b 61 67 65 2c 20 6f 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 kage,.or.lists.all.packages.avai
2aaa0 6c 61 62 6c 65 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 lable...EOT.).;.}..protected.fun
2aac0 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
2aae0 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).{.
2ab00 24 74 68 69 73 2d 3e 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 $this->versionParser.=.new.Versi
2ab20 6f 6e 50 61 72 73 65 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 onParser;.if.($input->getOption(
2ab40 27 74 72 65 65 27 29 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 'tree')).{.$this->initStyles($ou
2ab60 74 70 75 74 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 65 74 tput);.}..$composer.=.$this->get
2ab80 43 6f 6d 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 Composer(false);.$io.=.$this->ge
2aba0 74 49 4f 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 74 tIO();..if.($input->getOption('t
2abc0 72 65 65 27 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 69 6e 73 ree').&&.!$input->getOption('ins
2abe0 74 61 6c 6c 65 64 27 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 talled')).{.$io->writeError('The
2ac00 20 2d 2d 74 72 65 65 20 28 2d 74 29 20 6f 70 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 75 73 61 62 .--tree.(-t).option.is.only.usab
2ac20 6c 65 20 69 6e 20 63 6f 6d 62 69 6e 61 74 69 6f 6e 20 77 69 74 68 20 2d 2d 69 6e 73 74 61 6c 6c le.in.combination.with.--install
2ac40 65 64 20 28 2d 69 29 20 6f 72 20 62 79 20 70 61 73 73 69 6e 67 20 61 20 73 69 6e 67 6c 65 20 70 ed.(-i).or.by.passing.a.single.p
2ac60 61 63 6b 61 67 65 20 6e 61 6d 65 20 74 6f 20 73 68 6f 77 2c 20 61 73 73 75 6d 69 6e 67 20 2d 69 ackage.name.to.show,.assuming.-i
2ac80 27 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 69 6e 73 74 61 6c 6c 65 64 ');.$input->setOption('installed
2aca0 27 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 0a 20 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 ',.true);.}....$platformOverride
2acc0 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 70 s.=.array();.if.($composer).{.$p
2ace0 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 latformOverrides.=.$composer->ge
2ad00 74 43 6f 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 tConfig()->get('platform').?:.ar
2ad20 72 61 79 28 29 3b 0a 7d 0a 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 20 3d 20 6e 65 77 20 50 6c 61 ray();.}.$platformRepo.=.new.Pla
2ad40 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
2ad60 72 6d 4f 76 65 72 72 69 64 65 73 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 rmOverrides);..if.($input->getOp
2ad80 74 69 6f 6e 28 27 73 65 6c 66 27 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 tion('self')).{.$package.=.$this
2ada0 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 ->getComposer()->getPackage();.$
2adc0 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 6e 65 77 20 41 72 72 repos.=.$installedRepo.=.new.Arr
2ade0 61 79 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d ayRepository(array($package));.}
2ae00 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 70 6c 61 74 .elseif.($input->getOption('plat
2ae20 66 6f 72 6d 27 29 29 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 form')).{.$repos.=.$installedRep
2ae40 6f 20 3d 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 6e o.=.$platformRepo;.}.elseif.($in
2ae60 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 69 6e 73 74 61 6c 6c 65 64 27 29 29 20 7b 0a 24 put->getOption('installed')).{.$
2ae80 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 74 68 69 73 2d 3e repos.=.$installedRepo.=.$this->
2aea0 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 72 79 4d 61 6e 61 getComposer()->getRepositoryMana
2aec0 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 7d 20 65 ger()->getLocalRepository();.}.e
2aee0 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 61 69 6c 61 lseif.($input->getOption('availa
2af00 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 6c 61 74 66 ble')).{.$installedRepo.=.$platf
2af20 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 65 70 6f 73 ormRepo;.if.($composer).{.$repos
2af40 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 63 6f 6d 70 .=.new.CompositeRepository($comp
2af60 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
2af80 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 64 65 66 61 tRepositories());.}.else.{.$defa
2afa0 75 6c 74 52 65 70 6f 73 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 44 65 66 61 75 6c ultRepos.=.Factory::createDefaul
2afc0 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 69 6f 29 3b 0a 24 72 65 70 6f 73 20 3d 20 6e 65 77 tRepositories($io);.$repos.=.new
2afe0 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 70 .CompositeRepository($defaultRep
2b000 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 65 os);.$io->writeError('No.compose
2b020 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
2b040 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 65 ctory,.showing.available.package
2b060 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 6b s.from.'...implode(',.',.array_k
2b080 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 66 eys($defaultRepos)));.}.}.elseif
2b0a0 20 28 24 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 .($composer).{.$localRepo.=.$com
2b0c0 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
2b0e0 65 74 4c 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 etLocalRepository();.$installedR
2b100 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 61 72 epo.=.new.CompositeRepository(ar
2b120 72 61 79 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 ray($localRepo,.$platformRepo));
2b140 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 6f 73 69 74 6f 72 .$repos.=.new.CompositeRepositor
2b160 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 6c 6c 65 64 52 65 y(array_merge(array($installedRe
2b180 70 6f 29 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 po),.$composer->getRepositoryMan
2b1a0 61 67 65 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 ager()->getRepositories()));.}.e
2b1c0 6c 73 65 20 7b 0a 24 64 65 66 61 75 6c 74 52 65 70 6f 73 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 lse.{.$defaultRepos.=.Factory::c
2b1e0 72 65 61 74 65 44 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 69 6f 29 3b 0a 24 reateDefaultRepositories($io);.$
2b200 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 72 2e 6a 73 6f 6e io->writeError('No.composer.json
2b220 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 63 74 6f 72 79 2c .found.in.the.current.directory,
2b240 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 65 73 20 66 72 6f 6d .showing.available.packages.from
2b260 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 6b 65 79 73 28 24 64 .'...implode(',.',.array_keys($d
2b280 65 66 61 75 6c 74 52 65 70 6f 73 29 29 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d efaultRepos)));.$installedRepo.=
2b2a0 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 3b 0a 24 72 65 70 6f 73 20 3d 20 6e 65 77 20 43 6f 6d .$platformRepo;.$repos.=.new.Com
2b2c0 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 72 72 positeRepository(array_merge(arr
2b2e0 61 79 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 2c 20 24 64 65 66 61 75 6c 74 52 65 70 6f ay($installedRepo),.$defaultRepo
2b300 73 29 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 s));.}..if.($composer).{.$comman
2b320 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 75 67 69 6e dEvent.=.new.CommandEvent(Plugin
2b340 45 76 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 Events::COMMAND,.'show',.$input,
2b360 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 69 .$output);.$composer->getEventDi
2b380 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 65 spatcher()->dispatch($commandEve
2b3a0 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 7d nt->getName(),.$commandEvent);.}
2b3c0 0a 0a 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 ....if.($input->getArgument('pac
2b3e0 6b 61 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 24 76 kage').||.!empty($package)).{.$v
2b400 65 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 70 61 ersions.=.array();.if.(empty($pa
2b420 63 6b 61 67 65 29 29 20 7b 0a 6c 69 73 74 28 24 70 61 63 6b 61 67 65 2c 20 24 76 65 72 73 69 6f ckage)).{.list($package,.$versio
2b440 6e 73 29 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 24 69 6e 73 74 61 6c 6c ns).=.$this->getPackage($install
2b460 65 64 52 65 70 6f 2c 20 24 72 65 70 6f 73 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d edRepo,.$repos,.$input->getArgum
2b480 65 6e 74 28 27 70 61 63 6b 61 67 65 27 29 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d ent('package'),.$input->getArgum
2b4a0 65 6e 74 28 27 76 65 72 73 69 6f 6e 27 29 29 3b 0a 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 29 ent('version'));..if.(!$package)
2b4c0 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
2b4e0 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 27 2e 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 eption('Package.'.$input->getArg
2b500 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 29 2e 27 20 6e 6f 74 20 66 6f 75 6e 64 27 29 3b 0a ument('package').'.not.found');.
2b520 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 24 70 61 }.}.else.{.$versions.=.array($pa
2b540 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 3d 3e 20 24 70 61 ckage->getPrettyVersion().=>.$pa
2b560 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e ckage->getVersion());.}..if.($in
2b580 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 74 68 69 73 2d put->getOption('tree')).{.$this-
2b5a0 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 67 65 2c 20 24 69 >displayPackageTree($package,.$i
2b5c0 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 70 6f 73 2c 20 24 6f 75 74 70 75 74 29 3b 0a nstalledRepo,.$repos,.$output);.
2b5e0 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
2b600 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 2c 20 24 ge,.$versions,.$installedRepo,.$
2b620 72 65 70 6f 73 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 61 repos);.$this->printLinks($packa
2b640 67 65 2c 20 27 72 65 71 75 69 72 65 73 27 29 3b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4c 69 6e ge,.'requires');.$this->printLin
2b660 6b 73 28 24 70 61 63 6b 61 67 65 2c 20 27 64 65 76 52 65 71 75 69 72 65 73 27 2c 20 27 72 65 71 ks($package,.'devRequires',.'req
2b680 75 69 72 65 73 20 28 64 65 76 29 27 29 3b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 uires.(dev)');.if.($package->get
2b6a0 53 75 67 67 65 73 74 73 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 22 5c 6e 3c 69 6e 66 Suggests()).{.$io->write("\n<inf
2b6c0 6f 3e 73 75 67 67 65 73 74 73 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 o>suggests</info>");.foreach.($p
2b6e0 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 67 67 65 73 74 73 28 29 20 61 73 20 24 73 75 67 67 65 73 ackage->getSuggests().as.$sugges
2b700 74 65 64 20 3d 3e 20 24 72 65 61 73 6f 6e 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 73 75 ted.=>.$reason).{.$io->write($su
2b720 67 67 65 73 74 65 64 20 2e 20 27 20 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 72 65 61 73 6f 6e ggested...'.<comment>'...$reason
2b740 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 70 72 69 ...'</comment>');.}.}.$this->pri
2b760 6e 74 4c 69 6e 6b 73 28 24 70 61 63 6b 61 67 65 2c 20 27 70 72 6f 76 69 64 65 73 27 29 3b 0a 24 ntLinks($package,.'provides');.$
2b780 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 63 6f 6e 66 this->printLinks($package,.'conf
2b7a0 6c 69 63 74 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 licts');.$this->printLinks($pack
2b7c0 61 67 65 2c 20 27 72 65 70 6c 61 63 65 73 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a age,.'replaces');.}..return;.}..
2b7e0 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 74 72 65 65 27 29 29 ..if.($input->getOption('tree'))
2b800 20 7b 0a 24 72 6f 6f 74 50 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 .{.$rootPackage.=.$this->getComp
2b820 6f 73 65 72 28 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 72 6f 6f 74 52 65 71 75 69 oser()->getPackage();.$rootRequi
2b840 72 65 73 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 0a 27 73 74 72 74 6f 6c 6f 77 65 72 27 2c 0a 61 res.=.array_map(.'strtolower',.a
2b860 72 72 61 79 5f 6b 65 79 73 28 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 6f 6f 74 50 61 63 6b 61 rray_keys(array_merge($rootPacka
2b880 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 2c 20 24 72 6f 6f 74 50 61 63 6b 61 67 65 2d ge->getRequires(),.$rootPackage-
2b8a0 3e 67 65 74 44 65 76 52 65 71 75 69 72 65 73 28 29 29 29 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 >getDevRequires())).);..foreach.
2b8c0 28 24 69 6e 73 74 61 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 ($installedRepo->getPackages().a
2b8e0 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b s.$package).{.if.(in_array($pack
2b900 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 72 6f 6f 74 52 65 71 75 69 72 65 73 2c 20 74 age->getName(),.$rootRequires,.t
2b920 72 75 65 29 29 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 rue)).{.$this->displayPackageTre
2b940 65 28 24 70 61 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 e($package,.$installedRepo,.$rep
2b960 6f 73 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a os,.$output);.}.}..return.0;.}..
2b980 69 66 20 28 24 72 65 70 6f 73 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 70 6f 73 69 74 65 52 if.($repos.instanceof.CompositeR
2b9a0 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 72 65 70 6f 73 20 3d 20 24 72 65 70 6f 73 2d 3e 67 65 epository).{.$repos.=.$repos->ge
2b9c0 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 61 tRepositories();.}.elseif.(!is_a
2b9e0 72 72 61 79 28 24 72 65 70 6f 73 29 29 20 7b 0a 24 72 65 70 6f 73 20 3d 20 61 72 72 61 79 28 24 rray($repos)).{.$repos.=.array($
2ba00 72 65 70 6f 73 29 3b 0a 7d 0a 0a 0a 20 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 repos);.}....$packages.=.array()
2ba20 3b 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 20 7b 0a 69 ;..foreach.($repos.as.$repo).{.i
2ba40 66 20 28 24 72 65 70 6f 20 3d 3d 3d 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 29 20 7b 0a 24 74 f.($repo.===.$platformRepo).{.$t
2ba60 79 70 65 20 3d 20 27 3c 69 6e 66 6f 3e 70 6c 61 74 66 6f 72 6d 3c 2f 69 6e 66 6f 3e 3a 27 3b 0a ype.=.'<info>platform</info>:';.
2ba80 7d 20 65 6c 73 65 69 66 20 28 0a 24 72 65 70 6f 20 3d 3d 3d 20 24 69 6e 73 74 61 6c 6c 65 64 52 }.elseif.(.$repo.===.$installedR
2baa0 65 70 6f 0a 7c 7c 20 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 69 6e 73 74 61 6e 63 65 6f epo.||.($installedRepo.instanceo
2bac0 66 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 20 26 26 20 69 6e 5f 61 72 72 61 f.CompositeRepository.&&.in_arra
2bae0 79 28 24 72 65 70 6f 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 67 65 74 52 65 70 6f y($repo,.$installedRepo->getRepo
2bb00 73 69 74 6f 72 69 65 73 28 29 2c 20 74 72 75 65 29 29 0a 29 20 7b 0a 24 74 79 70 65 20 3d 20 27 sitories(),.true)).).{.$type.=.'
2bb20 3c 69 6e 66 6f 3e 69 6e 73 74 61 6c 6c 65 64 3c 2f 69 6e 66 6f 3e 3a 27 3b 0a 7d 20 65 6c 73 65 <info>installed</info>:';.}.else
2bb40 20 7b 0a 24 74 79 70 65 20 3d 20 27 3c 63 6f 6d 6d 65 6e 74 3e 61 76 61 69 6c 61 62 6c 65 3c 2f .{.$type.=.'<comment>available</
2bb60 63 6f 6d 6d 65 6e 74 3e 3a 27 3b 0a 7d 0a 69 66 20 28 24 72 65 70 6f 20 69 6e 73 74 61 6e 63 65 comment>:';.}.if.($repo.instance
2bb80 6f 66 20 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 6f 72 79 20 26 26 20 24 72 65 70 6f 2d 3e of.ComposerRepository.&&.$repo->
2bba0 68 61 73 50 72 6f 76 69 64 65 72 73 28 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f hasProviders()).{.foreach.($repo
2bbc0 2d 3e 67 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 ->getProviderNames().as.$name).{
2bbe0 0a 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 5b 24 6e 61 6d 65 5d 20 3d 20 24 6e 61 6d 65 .$packages[$type][$name].=.$name
2bc00 3b 0a 7d 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 67 65 74 ;.}.}.else.{.foreach.($repo->get
2bc20 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 66 20 28 21 69 Packages().as.$package).{.if.(!i
2bc40 73 73 65 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 67 65 2d 3e sset($packages[$type][$package->
2bc60 67 65 74 4e 61 6d 65 28 29 5d 29 0a 7c 7c 20 21 69 73 5f 6f 62 6a 65 63 74 28 24 70 61 63 6b 61 getName()]).||.!is_object($packa
2bc80 67 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 29 ges[$type][$package->getName()])
2bca0 0a 7c 7c 20 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 24 70 61 63 6b 61 67 65 73 5b 24 74 .||.version_compare($packages[$t
2bcc0 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 2d 3e 67 65 74 56 65 ype][$package->getName()]->getVe
2bce0 72 73 69 6f 6e 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c rsion(),.$package->getVersion(),
2bd00 20 27 3c 27 29 0a 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 5b 24 70 61 63 6b .'<').).{.$packages[$type][$pack
2bd20 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 3b 0a 7d 0a 7d 0a age->getName()].=.$package;.}.}.
2bd40 7d 0a 7d 0a 0a 24 73 68 6f 77 41 6c 6c 54 79 70 65 73 20 3d 20 21 24 69 6e 70 75 74 2d 3e 67 65 }.}..$showAllTypes.=.!$input->ge
2bd60 74 4f 70 74 69 6f 6e 28 27 70 6c 61 74 66 6f 72 6d 27 29 20 26 26 20 21 24 69 6e 70 75 74 2d 3e tOption('platform').&&.!$input->
2bd80 67 65 74 4f 70 74 69 6f 6e 28 27 69 6e 73 74 61 6c 6c 65 64 27 29 20 26 26 20 21 24 69 6e 70 75 getOption('installed').&&.!$inpu
2bda0 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 61 76 61 69 6c 61 62 6c 65 27 29 3b 0a 24 69 6e 64 65 t->getOption('available');.$inde
2bdc0 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 27 3b 0a nt.=.$showAllTypes.?.'..'.:.'';.
2bde0 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 6d 3c 2f foreach.(array('<info>platform</
2be00 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 61 69 6c info>:'.=>.true,.'<comment>avail
2be20 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 69 6e 66 able</comment>:'.=>.false,.'<inf
2be40 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 20 61 73 o>installed</info>:'.=>.true).as
2be60 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 28 69 73 .$type.=>.$showVersion).{.if.(is
2be80 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 24 73 68 set($packages[$type])).{.if.($sh
2bea0 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 65 29 3b owAllTypes).{.$io->write($type);
2bec0 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 24 6e 61 .}.ksort($packages[$type]);..$na
2bee0 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 3b 0a 66 meLength.=.$versionLength.=.0;.f
2bf00 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 70 61 63 oreach.($packages[$type].as.$pac
2bf20 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 65 29 29 kage).{.if.(is_object($package))
2bf40 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 67 74 68 .{.$nameLength.=.max($nameLength
2bf60 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 61 6d 65 ,.strlen($package->getPrettyName
2bf80 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 65 72 73 ()));.$versionLength.=.max($vers
2bfa0 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 65 74 46 ionLength,.strlen($package->getF
2bfc0 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 7b 0a 24 ullPrettyVersion()));.}.else.{.$
2bfe0 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 20 24 70 nameLength.=.max($nameLength,.$p
2c000 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 74 68 69 ackage);.}.}.list($width).=.$thi
2c020 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 6e 61 6c s->getApplication()->getTerminal
2c040 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 69 64 74 Dimensions();.if.(null.===.$widt
2c060 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 3b 0a 7d h).{.....$width.=.PHP_INT_MAX;.}
2c080 0a 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 4f .if.(defined('PHP_WINDOWS_VERSIO
2c0a0 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 24 77 69 64 74 68 2d 2d 3b 0a 7d 0a 0a 69 66 20 28 24 69 N_BUILD')).{.$width--;.}..if.($i
2c0c0 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 61 74 68 27 29 20 26 26 20 6e 75 6c 6c 20 nput->getOption('path').&&.null.
2c0e0 3d 3d 3d 20 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 ===.$composer).{.$io->writeError
2c100 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 74 68 65 20 ('No.composer.json.found.in.the.
2c120 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 64 69 73 61 62 6c 69 6e 67 20 22 70 61 current.directory,.disabling."pa
2c140 74 68 22 20 6f 70 74 69 6f 6e 27 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 th".option');.$input->setOption(
2c160 27 70 61 74 68 27 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 24 77 72 69 74 65 50 61 74 68 20 3d 20 'path',.false);.}..$writePath.=.
2c180 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 29 20 !$input->getOption('name-only').
2c1a0 26 26 20 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 3b 0a 24 77 &&.$input->getOption('path');.$w
2c1c0 72 69 74 65 56 65 72 73 69 6f 6e 20 3d 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e riteVersion.=.!$input->getOption
2c1e0 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 3e 67 65 74 4f 70 74 ('name-only').&&.!$input->getOpt
2c200 69 6f 6e 28 27 70 61 74 68 27 29 20 26 26 20 24 73 68 6f 77 56 65 72 73 69 6f 6e 20 26 26 20 28 ion('path').&&.$showVersion.&&.(
2c220 24 6e 61 6d 65 4c 65 6e 67 74 68 20 2b 20 24 76 65 72 73 69 6f 6e 4c 65 6e 67 74 68 20 2b 20 33 $nameLength.+.$versionLength.+.3
2c240 20 3c 3d 20 24 77 69 64 74 68 29 3b 0a 24 77 72 69 74 65 44 65 73 63 72 69 70 74 69 6f 6e 20 3d .<=.$width);.$writeDescription.=
2c260 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 29 .!$input->getOption('name-only')
2c280 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 26 .&&.!$input->getOption('path').&
2c2a0 26 20 28 24 6e 61 6d 65 4c 65 6e 67 74 68 20 2b 20 28 24 73 68 6f 77 56 65 72 73 69 6f 6e 20 3f &.($nameLength.+.($showVersion.?
2c2c0 20 24 76 65 72 73 69 6f 6e 4c 65 6e 67 74 68 20 3a 20 30 29 20 2b 20 32 34 20 3c 3d 20 24 77 69 .$versionLength.:.0).+.24.<=.$wi
2c2e0 64 74 68 29 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 dth);.foreach.($packages[$type].
2c300 61 73 20 24 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 as.$package).{.if.(is_object($pa
2c320 63 6b 61 67 65 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 69 6e 64 65 6e 74 ckage)).{.$output->write($indent
2c340 20 2e 20 73 74 72 5f 70 61 64 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 ...str_pad($package->getPrettyNa
2c360 6d 65 28 29 2c 20 24 6e 61 6d 65 4c 65 6e 67 74 68 2c 20 27 20 27 29 2c 20 66 61 6c 73 65 29 3b me(),.$nameLength,.'.'),.false);
2c380 0a 0a 69 66 20 28 24 77 72 69 74 65 56 65 72 73 69 6f 6e 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e ..if.($writeVersion).{.$output->
2c3a0 77 72 69 74 65 28 27 20 27 20 2e 20 73 74 72 5f 70 61 64 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 write('.'...str_pad($package->ge
2c3c0 74 46 75 6c 6c 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 24 76 65 72 73 69 6f 6e 4c 65 tFullPrettyVersion(),.$versionLe
2c3e0 6e 67 74 68 2c 20 27 20 27 29 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 77 72 69 74 ngth,.'.'),.false);.}..if.($writ
2c400 65 44 65 73 63 72 69 70 74 69 6f 6e 29 20 7b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 73 eDescription).{.$description.=.s
2c420 74 72 74 6f 6b 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 trtok($package->getDescription()
2c440 2c 20 22 5c 72 5c 6e 22 29 3b 0a 24 72 65 6d 61 69 6e 69 6e 67 20 3d 20 24 77 69 64 74 68 20 2d ,."\r\n");.$remaining.=.$width.-
2c460 20 24 6e 61 6d 65 4c 65 6e 67 74 68 20 2d 20 24 76 65 72 73 69 6f 6e 4c 65 6e 67 74 68 20 2d 20 .$nameLength.-.$versionLength.-.
2c480 34 3b 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 64 65 73 63 72 69 70 74 69 6f 6e 29 20 3e 20 24 72 4;.if.(strlen($description).>.$r
2c4a0 65 6d 61 69 6e 69 6e 67 29 20 7b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 73 75 62 73 74 emaining).{.$description.=.subst
2c4c0 72 28 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 30 2c 20 24 72 65 6d 61 69 6e 69 6e 67 20 2d 20 r($description,.0,.$remaining.-.
2c4e0 33 29 20 2e 20 27 2e 2e 2e 27 3b 0a 7d 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 27 20 27 3)...'...';.}.$output->write('.'
2c500 20 2e 20 24 64 65 73 63 72 69 70 74 69 6f 6e 29 3b 0a 7d 0a 0a 69 66 20 28 24 77 72 69 74 65 50 ...$description);.}..if.($writeP
2c520 61 74 68 29 20 7b 0a 24 70 61 74 68 20 3d 20 73 74 72 74 6f 6b 28 72 65 61 6c 70 61 74 68 28 24 ath).{.$path.=.strtok(realpath($
2c540 63 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 composer->getInstallationManager
2c560 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 29 2c 20 22 ()->getInstallPath($package)),."
2c580 5c 72 5c 6e 22 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 27 20 27 20 2e 20 24 70 61 \r\n");.$output->write('.'...$pa
2c5a0 74 68 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 th);.}.}.else.{.$output->write($
2c5c0 69 6e 64 65 6e 74 20 2e 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 24 69 6f 2d 3e 77 72 69 74 65 indent...$package);.}.$io->write
2c5e0 28 27 27 29 3b 0a 7d 0a 69 66 20 28 24 73 68 6f 77 41 6c 6c 54 79 70 65 73 29 20 7b 0a 24 69 6f ('');.}.if.($showAllTypes).{.$io
2c600 2d 3e 77 72 69 74 65 28 27 27 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ->write('');.}.}.}.}............
2c620 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 28 52 65 protected.function.getPackage(Re
2c640 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 52 65 70 6f positoryInterface.$installedRepo
2c660 2c 20 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 2c 20 24 6e ,.RepositoryInterface.$repos,.$n
2c680 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 6e 61 6d 65 20 3d 20 ame,.$version.=.null).{.$name.=.
2c6a0 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d strtolower($name);.$constraint.=
2c6c0 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 .null;.if.($version).{.$constrai
2c6e0 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
2c700 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 0a 0a 24 70 6f 6c 69 63 Constraints($version);.}..$polic
2c720 79 20 3d 20 6e 65 77 20 44 65 66 61 75 6c 74 50 6f 6c 69 63 79 28 29 3b 0a 24 70 6f 6f 6c 20 3d y.=.new.DefaultPolicy();.$pool.=
2c740 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 52 65 70 6f .new.Pool('dev');.$pool->addRepo
2c760 73 69 74 6f 72 79 28 24 72 65 70 6f 73 29 3b 0a 0a 24 6d 61 74 63 68 65 64 50 61 63 6b 61 67 65 sitory($repos);..$matchedPackage
2c780 20 3d 20 6e 75 6c 6c 3b 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6d .=.null;.$versions.=.array();.$m
2c7a0 61 74 63 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 6e 61 atches.=.$pool->whatProvides($na
2c7c0 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 74 63 me,.$constraint);.foreach.($matc
2c7e0 68 65 73 20 61 73 20 24 69 6e 64 65 78 20 3d 3e 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 0a 20 69 hes.as.$index.=>.$package).{...i
2c800 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 21 3d 3d 20 24 6e 61 6d 65 f.($package->getName().!==.$name
2c820 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 63 6f 6e ).{.unset($matches[$index]);.con
2c840 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 65 72 73 69 6f tinue;.}....if.(null.===.$versio
2c860 6e 20 26 26 20 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 n.&&.$installedRepo->hasPackage(
2c880 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 6d 61 74 63 68 65 64 50 61 63 6b 61 67 65 20 3d 20 24 $package)).{.$matchedPackage.=.$
2c8a0 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 73 5b 24 70 61 63 6b 61 67 65 2d 3e package;.}..$versions[$package->
2c8c0 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e getPrettyVersion()].=.$package->
2c8e0 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 5d 20 3d getVersion();.$matches[$index].=
2c900 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 6d .$package->getId();.}....if.(!$m
2c920 61 74 63 68 65 64 50 61 63 6b 61 67 65 20 26 26 20 24 6d 61 74 63 68 65 73 20 26 26 20 24 70 72 atchedPackage.&&.$matches.&&.$pr
2c940 65 66 65 72 72 65 64 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 eferred.=.$policy->selectPreferr
2c960 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
2c980 68 65 73 29 29 20 7b 0a 24 6d 61 74 63 68 65 64 50 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d hes)).{.$matchedPackage.=.$pool-
2c9a0 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 70 72 65 66 65 72 72 65 64 5b 30 5d 29 >literalToPackage($preferred[0])
2c9c0 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 6d 61 74 63 68 65 64 50 61 63 6b 61 67 ;.}..return.array($matchedPackag
2c9e0 65 2c 20 24 76 65 72 73 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 e,.$versions);.}.....protected.f
2ca00 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 4d 65 74 61 28 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 unction.printMeta(CompletePackag
2ca20 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 61 72 72 61 79 20 24 76 65 72 73 eInterface.$package,.array.$vers
2ca40 69 6f 6e 73 2c 20 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 ions,.RepositoryInterface.$insta
2ca60 6c 6c 65 64 52 65 70 6f 29 0a 7b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 lledRepo).{.$io.=.$this->getIO()
2ca80 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 6e 61 6d 65 3c 2f 69 6e 66 6f 3e 20 ;.$io->write('<info>name</info>.
2caa0 20 20 20 20 3a 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d ....:.'...$package->getPrettyNam
2cac0 65 28 29 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 64 65 73 63 72 69 70 2e e());.$io->write('<info>descrip.
2cae0 3c 2f 69 6e 66 6f 3e 20 3a 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 73 63 72 </info>.:.'...$package->getDescr
2cb00 69 70 74 69 6f 6e 28 29 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 6b 65 79 iption());.$io->write('<info>key
2cb20 77 6f 72 64 73 3c 2f 69 6e 66 6f 3e 20 3a 20 27 20 2e 20 6a 6f 69 6e 28 27 2c 20 27 2c 20 24 70 words</info>.:.'...join(',.',.$p
2cb40 61 63 6b 61 67 65 2d 3e 67 65 74 4b 65 79 77 6f 72 64 73 28 29 20 3f 3a 20 61 72 72 61 79 28 29 ackage->getKeywords().?:.array()
2cb60 29 29 3b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 56 65 72 73 69 6f 6e 73 28 24 70 61 63 6b 61 67 ));.$this->printVersions($packag
2cb80 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 24 e,.$versions,.$installedRepo);.$
2cba0 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 74 79 70 65 3c 2f 69 6e 66 6f 3e 20 20 20 20 io->write('<info>type</info>....
2cbc0 20 3a 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 79 70 65 28 29 29 3b 0a 24 74 68 .:.'...$package->getType());.$th
2cbe0 69 73 2d 3e 70 72 69 6e 74 4c 69 63 65 6e 73 65 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 69 6f is->printLicenses($package);.$io
2cc00 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 73 6f 75 72 63 65 3c 2f 69 6e 66 6f 3e 20 20 20 3a ->write('<info>source</info>...:
2cc20 20 27 20 2e 20 73 70 72 69 6e 74 66 28 27 5b 25 73 5d 20 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f .'...sprintf('[%s].<comment>%s</
2cc40 63 6f 6d 6d 65 6e 74 3e 20 25 73 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 comment>.%s',.$package->getSourc
2cc60 65 54 79 70 65 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 eType(),.$package->getSourceUrl(
2cc80 29 2c 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 65 6e 63 65 28 ),.$package->getSourceReference(
2cca0 29 29 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 64 69 73 74 3c 2f 69 6e 66 )));.$io->write('<info>dist</inf
2ccc0 6f 3e 20 20 20 20 20 3a 20 27 20 2e 20 73 70 72 69 6e 74 66 28 27 5b 25 73 5d 20 3c 63 6f 6d 6d o>.....:.'...sprintf('[%s].<comm
2cce0 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 25 73 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e ent>%s</comment>.%s',.$package->
2cd00 67 65 74 44 69 73 74 54 79 70 65 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 getDistType(),.$package->getDist
2cd20 55 72 6c 28 29 2c 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 Url(),.$package->getDistReferenc
2cd40 65 28 29 29 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 6e 61 6d 65 73 3c 2f e()));.$io->write('<info>names</
2cd60 69 6e 66 6f 3e 20 20 20 20 3a 20 27 20 2e 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 61 info>....:.'...implode(',.',.$pa
2cd80 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 28 29 29 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 ckage->getNames()));..if.($packa
2cda0 67 65 2d 3e 69 73 41 62 61 6e 64 6f 6e 65 64 28 29 29 20 7b 0a 24 72 65 70 6c 61 63 65 6d 65 6e ge->isAbandoned()).{.$replacemen
2cdc0 74 20 3d 20 28 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 t.=.($package->getReplacementPac
2cde0 6b 61 67 65 28 29 20 21 3d 3d 20 6e 75 6c 6c 29 0a 3f 20 27 20 54 68 65 20 61 75 74 68 6f 72 20 kage().!==.null).?.'.The.author.
2ce00 73 75 67 67 65 73 74 73 20 75 73 69 6e 67 20 74 68 65 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d suggests.using.the.'...$package-
2ce20 3e 67 65 74 52 65 70 6c 61 63 65 6d 65 6e 74 50 61 63 6b 61 67 65 28 29 2e 20 27 20 70 61 63 6b >getReplacementPackage()..'.pack
2ce40 61 67 65 20 69 6e 73 74 65 61 64 2e 27 0a 3a 20 6e 75 6c 6c 3b 0a 0a 24 69 6f 2d 3e 77 72 69 74 age.instead.'.:.null;..$io->writ
2ce60 65 45 72 72 6f 72 28 0a 73 70 72 69 6e 74 66 28 27 3c 77 61 72 6e 69 6e 67 3e 41 74 74 65 6e 74 eError(.sprintf('<warning>Attent
2ce80 69 6f 6e 3a 20 54 68 69 73 20 70 61 63 6b 61 67 65 20 69 73 20 61 62 61 6e 64 6f 6e 65 64 20 61 ion:.This.package.is.abandoned.a
2cea0 6e 64 20 6e 6f 20 6c 6f 6e 67 65 72 20 6d 61 69 6e 74 61 69 6e 65 64 2e 25 73 3c 2f 77 61 72 6e nd.no.longer.maintained.%s</warn
2cec0 69 6e 67 3e 27 2c 20 24 72 65 70 6c 61 63 65 6d 65 6e 74 29 0a 29 3b 0a 7d 0a 0a 69 66 20 28 24 ing>',.$replacement).);.}..if.($
2cee0 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 70 70 6f 72 74 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 package->getSupport()).{.$io->wr
2cf00 69 74 65 28 22 5c 6e 3c 69 6e 66 6f 3e 73 75 70 70 6f 72 74 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 66 ite("\n<info>support</info>");.f
2cf20 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 70 70 6f 72 74 28 29 20 61 oreach.($package->getSupport().a
2cf40 73 20 24 74 79 70 65 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 s.$type.=>.$value).{.$io->write(
2cf60 27 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 74 79 70 65 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 '<comment>'...$type...'</comment
2cf80 3e 20 3a 20 27 2e 24 76 61 6c 75 65 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 >.:.'.$value);.}.}..if.($package
2cfa0 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 22 5c ->getAutoload()).{.$io->write("\
2cfc0 6e 3c 69 6e 66 6f 3e 61 75 74 6f 6c 6f 61 64 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 66 6f 72 65 61 63 n<info>autoload</info>");.foreac
2cfe0 68 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 20 61 73 20 24 74 h.($package->getAutoload().as.$t
2d000 79 70 65 20 3d 3e 20 24 61 75 74 6f 6c 6f 61 64 73 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 ype.=>.$autoloads).{.$io->write(
2d020 27 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 74 79 70 65 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 '<comment>'...$type...'</comment
2d040 3e 27 29 3b 0a 0a 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 27 70 73 72 2d 30 27 29 20 7b 0a 66 >');..if.($type.===.'psr-0').{.f
2d060 6f 72 65 61 63 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 oreach.($autoloads.as.$name.=>.$
2d080 70 61 74 68 29 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 path).{.$io->write(($name.?:.'*'
2d0a0 29 20 2e 20 27 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 )...'.=>.'...(is_array($path).?.
2d0c0 69 6d 70 6c 6f 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 implode(',.',.$path).:.($path.?:
2d0e0 20 27 2e 27 29 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 .'.')));.}.}.elseif.($type.===.'
2d100 70 73 72 2d 34 27 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 73 20 61 73 psr-4').{.foreach.($autoloads.as
2d120 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 74 65 28 28 24 .$name.=>.$path).{.$io->write(($
2d140 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 5f 61 72 72 61 name.?:.'*')...'.=>.'...(is_arra
2d160 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 61 74 68 29 20 y($path).?.implode(',.',.$path).
2d180 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 65 69 66 20 28 :.($path.?:.'.')));.}.}.elseif.(
2d1a0 24 74 79 70 65 20 3d 3d 3d 20 27 63 6c 61 73 73 6d 61 70 27 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 $type.===.'classmap').{.$io->wri
2d1c0 74 65 28 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 61 75 74 6f 6c 6f 61 64 73 29 29 3b 0a 7d te(implode(',.',.$autoloads));.}
2d1e0 0a 7d 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 .}.if.($package->getIncludePaths
2d200 28 29 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 69 6e 63 6c 75 ()).{.$io->write('<comment>inclu
2d220 64 65 2d 70 61 74 68 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 de-path</comment>');.$io->write(
2d240 69 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 49 6e 63 6c 75 implode(',.',.$package->getInclu
2d260 64 65 50 61 74 68 73 28 29 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 dePaths()));.}.}.}.....protected
2d280 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 56 65 72 73 69 6f 6e 73 28 43 6f 6d 70 6c 65 74 65 .function.printVersions(Complete
2d2a0 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 72 72 61 79 PackageInterface.$package,.array
2d2c0 20 24 76 65 72 73 69 6f 6e 73 2c 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 .$versions,.RepositoryInterface.
2d2e0 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 0a 7b 0a 75 61 73 6f 72 74 28 24 76 65 72 73 69 6f $installedRepo).{.uasort($versio
2d300 6e 73 2c 20 27 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 27 29 3b 0a 24 76 65 72 73 69 6f 6e ns,.'version_compare');.$version
2d320 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 76 65 s.=.array_keys(array_reverse($ve
2d340 72 73 69 6f 6e 73 29 29 3b 0a 0a 0a 20 69 66 20 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d rsions));....if.($installedRepo-
2d360 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 69 6e 73 74 61 6c >hasPackage($package)).{.$instal
2d380 6c 65 64 56 65 72 73 69 6f 6e 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 ledVersion.=.$package->getPretty
2d3a0 56 65 72 73 69 6f 6e 28 29 3b 0a 24 6b 65 79 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 Version();.$key.=.array_search($
2d3c0 69 6e 73 74 61 6c 6c 65 64 56 65 72 73 69 6f 6e 2c 20 24 76 65 72 73 69 6f 6e 73 29 3b 0a 69 66 installedVersion,.$versions);.if
2d3e0 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 6b 65 79 29 20 7b 0a 24 76 65 72 73 69 6f 6e 73 5b 24 6b .(false.!==.$key).{.$versions[$k
2d400 65 79 5d 20 3d 20 27 3c 69 6e 66 6f 3e 2a 20 27 20 2e 20 24 69 6e 73 74 61 6c 6c 65 64 56 65 72 ey].=.'<info>*.'...$installedVer
2d420 73 69 6f 6e 20 2e 20 27 3c 2f 69 6e 66 6f 3e 27 3b 0a 7d 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 73 sion...'</info>';.}.}..$versions
2d440 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 76 65 72 73 69 6f 6e 73 29 3b 0a 0a 24 74 .=.implode(',.',.$versions);..$t
2d460 68 69 73 2d 3e 67 65 74 49 4f 28 29 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 76 65 72 73 69 his->getIO()->write('<info>versi
2d480 6f 6e 73 3c 2f 69 6e 66 6f 3e 20 3a 20 27 20 2e 20 24 76 65 72 73 69 6f 6e 73 29 3b 0a 7d 0a 0a ons</info>.:.'...$versions);.}..
2d4a0 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 69 6e 74 4c .......protected.function.printL
2d4c0 69 6e 6b 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 20 24 70 inks(CompletePackageInterface.$p
2d4e0 61 63 6b 61 67 65 2c 20 24 6c 69 6e 6b 54 79 70 65 2c 20 24 74 69 74 6c 65 20 3d 20 6e 75 6c 6c ackage,.$linkType,.$title.=.null
2d500 29 0a 7b 0a 24 74 69 74 6c 65 20 3d 20 24 74 69 74 6c 65 20 3f 3a 20 24 6c 69 6e 6b 54 79 70 65 ).{.$title.=.$title.?:.$linkType
2d520 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 24 6c 69 6e ;.$io.=.$this->getIO();.if.($lin
2d540 6b 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 7b 27 67 65 74 27 2e 75 63 66 69 72 73 74 28 24 6c ks.=.$package->{'get'.ucfirst($l
2d560 69 6e 6b 54 79 70 65 29 7d 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 22 5c 6e 3c 69 6e inkType)}()).{.$io->write("\n<in
2d580 66 6f 3e 22 20 2e 20 24 74 69 74 6c 65 20 2e 20 22 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 0a 66 6f 72 fo>"...$title..."</info>");..for
2d5a0 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 69 6f 2d 3e 77 72 each.($links.as.$link).{.$io->wr
2d5c0 69 74 65 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 2e 20 27 20 3c 63 6f 6d 6d ite($link->getTarget()...'.<comm
2d5e0 65 6e 74 3e 27 20 2e 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 ent>'...$link->getPrettyConstrai
2d600 6e 74 28 29 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a nt()...'</comment>');.}.}.}.....
2d620 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 4c 69 63 65 6e 73 ..protected.function.printLicens
2d640 65 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 20 24 70 61 63 es(CompletePackageInterface.$pac
2d660 6b 61 67 65 29 0a 7b 0a 24 73 70 64 78 4c 69 63 65 6e 73 65 73 20 3d 20 6e 65 77 20 53 70 64 78 kage).{.$spdxLicenses.=.new.Spdx
2d680 4c 69 63 65 6e 73 65 73 28 29 3b 0a 0a 24 6c 69 63 65 6e 73 65 73 20 3d 20 24 70 61 63 6b 61 67 Licenses();..$licenses.=.$packag
2d6a0 65 2d 3e 67 65 74 4c 69 63 65 6e 73 65 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 65 e->getLicense();.$io.=.$this->ge
2d6c0 74 49 4f 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 63 65 6e 73 65 73 20 61 73 20 24 6c tIO();..foreach.($licenses.as.$l
2d6e0 69 63 65 6e 73 65 49 64 29 20 7b 0a 24 6c 69 63 65 6e 73 65 20 3d 20 24 73 70 64 78 4c 69 63 65 icenseId).{.$license.=.$spdxLice
2d700 6e 73 65 73 2d 3e 67 65 74 4c 69 63 65 6e 73 65 42 79 49 64 65 6e 74 69 66 69 65 72 28 24 6c 69 nses->getLicenseByIdentifier($li
2d720 63 65 6e 73 65 49 64 29 3b 20 0a 0a 69 66 20 28 21 24 6c 69 63 65 6e 73 65 29 20 7b 0a 24 6f 75 censeId);...if.(!$license).{.$ou
2d740 74 20 3d 20 24 6c 69 63 65 6e 73 65 49 64 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 69 66 20 28 24 t.=.$licenseId;.}.else.{...if.($
2d760 6c 69 63 65 6e 73 65 5b 31 5d 20 3d 3d 3d 20 74 72 75 65 29 20 7b 0a 24 6f 75 74 20 3d 20 73 70 license[1].===.true).{.$out.=.sp
2d780 72 69 6e 74 66 28 27 25 73 20 28 25 73 29 20 28 4f 53 49 20 61 70 70 72 6f 76 65 64 29 20 25 73 rintf('%s.(%s).(OSI.approved).%s
2d7a0 27 2c 20 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 ',.$license[0],.$licenseId,.$lic
2d7c0 65 6e 73 65 5b 32 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f 75 74 20 3d 20 73 70 72 69 6e 74 ense[2]);.}.else.{.$out.=.sprint
2d7e0 66 28 27 25 73 20 28 25 73 29 20 25 73 27 2c 20 24 6c 69 63 65 6e 73 65 5b 30 5d 2c 20 24 6c 69 f('%s.(%s).%s',.$license[0],.$li
2d800 63 65 6e 73 65 49 64 2c 20 24 6c 69 63 65 6e 73 65 5b 32 5d 29 3b 0a 7d 0a 7d 0a 0a 24 69 6f 2d censeId,.$license[2]);.}.}..$io-
2d820 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 6c 69 63 65 6e 73 65 3c 2f 69 6e 66 6f 3e 20 20 3a 20 >write('<info>license</info>..:.
2d840 27 20 2e 20 24 6f 75 74 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 '...$out);.}.}.......protected.f
2d860 75 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 unction.initStyles(OutputInterfa
2d880 63 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 ce.$output).{.$this->colors.=.ar
2d8a0 72 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 ray(.'green',.'yellow',.'cyan',.
2d8c0 27 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 'magenta',.'blue',.);..foreach.(
2d8e0 24 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 $this->colors.as.$color).{.$styl
2d900 65 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 e.=.new.OutputFormatterStyle($co
2d920 6c 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 lor);.$output->getFormatter()->s
2d940 65 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 etStyle($color,.$style);.}.}....
2d960 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 61 79 ......protected.function.display
2d980 50 61 63 6b 61 67 65 54 72 65 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 PackageTree(PackageInterface.$pa
2d9a0 63 6b 61 67 65 2c 20 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 ckage,.RepositoryInterface.$inst
2d9c0 61 6c 6c 65 64 52 65 70 6f 2c 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 alledRepo,.RepositoryInterface.$
2d9e0 64 69 73 74 61 6e 74 52 65 70 6f 73 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f distantRepos,.OutputInterface.$o
2da00 75 74 70 75 74 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 49 6e 54 72 65 65 20 3d 20 61 72 72 61 79 utput).{.$packagesInTree.=.array
2da20 28 29 3b 0a 24 70 61 63 6b 61 67 65 73 49 6e 54 72 65 65 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 ();.$packagesInTree[].=.$package
2da40 3b 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 70 72 69 6e 74 66 28 27 3c 69 6e 66 6f ;..$output->write(sprintf('<info
2da60 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 >%s</info>',.$package->getPretty
2da80 4e 61 6d 65 28 29 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 27 20 27 20 2e 20 24 Name()));.$output->write('.'...$
2daa0 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 29 3b 0a 24 6f package->getPrettyVersion());.$o
2dac0 75 74 70 75 74 2d 3e 77 72 69 74 65 28 27 20 27 20 2e 20 73 74 72 74 6f 6b 28 24 70 61 63 6b 61 utput->write('.'...strtok($packa
2dae0 67 65 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 2c 20 22 5c 72 5c 6e 22 29 29 3b 0a ge->getDescription(),."\r\n"));.
2db00 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 29 3b 0a 0a 69 66 20 28 69 73 5f 6f 62 $output->writeln('');..if.(is_ob
2db20 6a 65 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 ject($package)).{.$requires.=.$p
2db40 61 63 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 ackage->getRequires();.$treeBar.
2db60 3d 20 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 =.'...';.$j.=.0;.$total.=.count(
2db80 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 73 20 61 $requires);.foreach.($requires.a
2dba0 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 0a 24 6a s.$requireName.=>.$require).{.$j
2dbc0 2b 2b 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 ++;.if.($j.==.0).{.$this->writeT
2dbe0 72 65 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 reeLine($treeBar);.}.if.($j.==.$
2dc00 74 6f 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 total).{.$treeBar.=.'...';.}.$le
2dc20 76 65 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 vel.=.1;.$color.=.$this->colors[
2dc40 24 6c 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 $level];.$info.=.sprintf('%s....
2dc60 94 80 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 ..<%s>%s</%s>.%s',.$treeBar,.$co
2dc80 6c 6f 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 lor,.$requireName,.$color,.$requ
2dca0 69 72 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 ire->getPrettyConstraint());.$th
2dcc0 69 73 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 is->writeTreeLine($info);..$tree
2dce0 42 61 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 Bar.=.str_replace('...',.'.',.$t
2dd00 72 65 65 42 61 72 29 3b 0a 0a 24 70 61 63 6b 61 67 65 73 49 6e 54 72 65 65 5b 5d 20 3d 20 24 72 reeBar);..$packagesInTree[].=.$r
2dd20 65 71 75 69 72 65 4e 61 6d 65 3b 0a 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 54 72 65 65 28 equireName;..$this->displayTree(
2dd40 24 72 65 71 75 69 72 65 4e 61 6d 65 2c 20 24 72 65 71 75 69 72 65 2c 20 24 69 6e 73 74 61 6c 6c $requireName,.$require,.$install
2dd60 65 64 52 65 70 6f 2c 20 24 64 69 73 74 61 6e 74 52 65 70 6f 73 2c 20 24 70 61 63 6b 61 67 65 73 edRepo,.$distantRepos,.$packages
2dd80 49 6e 54 72 65 65 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 72 65 65 42 61 72 2c 20 24 6c 65 76 65 InTree,.$output,.$treeBar,.$leve
2dda0 6c 20 2b 20 31 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 l.+.1);.}.}.}..............prote
2ddc0 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 70 6c 61 79 54 72 65 65 28 24 6e 61 6d 65 2c cted.function.displayTree($name,
2dde0 20 24 70 61 63 6b 61 67 65 2c 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 .$package,.RepositoryInterface.$
2de00 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 installedRepo,.RepositoryInterfa
2de20 63 65 20 24 64 69 73 74 61 6e 74 52 65 70 6f 73 2c 20 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 ce.$distantRepos,.array.$package
2de40 73 49 6e 54 72 65 65 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 sInTree,.OutputInterface.$output
2de60 2c 20 24 70 72 65 76 69 6f 75 73 54 72 65 65 42 61 72 20 3d 20 27 e2 94 9c 27 2c 20 24 6c 65 76 ,.$previousTreeBar.=.'...',.$lev
2de80 65 6c 20 3d 20 31 29 0a 7b 0a 24 70 72 65 76 69 6f 75 73 54 72 65 65 42 61 72 20 3d 20 73 74 72 el.=.1).{.$previousTreeBar.=.str
2dea0 5f 72 65 70 6c 61 63 65 28 27 e2 94 9c 27 2c 20 27 e2 94 82 27 2c 20 24 70 72 65 76 69 6f 75 73 _replace('...',.'...',.$previous
2dec0 54 72 65 65 42 61 72 29 3b 0a 6c 69 73 74 28 24 70 61 63 6b 61 67 65 2c 20 24 76 65 72 73 69 6f TreeBar);.list($package,.$versio
2dee0 6e 73 29 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 24 69 6e 73 74 61 6c 6c ns).=.$this->getPackage($install
2df00 65 64 52 65 70 6f 2c 20 24 64 69 73 74 61 6e 74 52 65 70 6f 73 2c 20 24 6e 61 6d 65 2c 20 24 70 edRepo,.$distantRepos,.$name,.$p
2df20 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 28 29 20 3d 3d ackage->getPrettyConstraint().==
2df40 3d 20 27 73 65 6c 66 2e 76 65 72 73 69 6f 6e 27 20 3f 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 =.'self.version'.?.$package->get
2df60 43 6f 6e 73 74 72 61 69 6e 74 28 29 20 3a 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 Constraint().:.$package->getPret
2df80 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 tyConstraint());.if.(is_object($
2dfa0 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 6b 61 67 65 package)).{.$requires.=.$package
2dfc0 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 24 70 72 65 ->getRequires();.$treeBar.=.$pre
2dfe0 76 69 6f 75 73 54 72 65 65 42 61 72 20 2e 20 27 20 20 e2 94 9c 27 3b 0a 24 69 20 3d 20 30 3b 0a viousTreeBar...'.....';.$i.=.0;.
2e000 24 74 6f 74 61 6c 20 3d 20 63 6f 75 6e 74 28 24 72 65 71 75 69 72 65 73 29 3b 0a 66 6f 72 65 61 $total.=.count($requires);.forea
2e020 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 4e 61 6d 65 20 3d 3e ch.($requires.as.$requireName.=>
2e040 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 69 2b 2b 3b 0a 69 66 20 28 24 69 20 3d 3d 20 24 74 6f .$require).{.$i++;.if.($i.==.$to
2e060 74 61 6c 29 20 7b 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 tal).{.$treeBar.=.$previousTreeB
2e080 61 72 20 2e 20 27 20 20 e2 94 94 27 3b 0a 7d 0a 24 63 6f 6c 6f 72 49 64 65 6e 74 20 3d 20 24 6c ar...'.....';.}.$colorIdent.=.$l
2e0a0 65 76 65 6c 20 25 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 29 3b 0a 24 63 6f evel.%.count($this->colors);.$co
2e0c0 6c 6f 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 73 5b 24 63 6f 6c 6f 72 49 64 65 6e 74 5d lor.=.$this->colors[$colorIdent]
2e0e0 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 3c 25 73 3e 25 ;.$info.=.sprintf('%s......<%s>%
2e100 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 72 2c 20 24 72 s</%s>.%s',.$treeBar,.$color,.$r
2e120 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
2e140 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 2d 3e 77 72 69 tPrettyConstraint());.$this->wri
2e160 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 72 20 3d 20 73 teTreeLine($info);..$treeBar.=.s
2e180 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 65 42 61 72 29 tr_replace('...',.'.',.$treeBar)
2e1a0 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 72 65 71 75 69 72 65 4e 61 6d 65 2c 20 24 70 ;.if.(!in_array($requireName,.$p
2e1c0 61 63 6b 61 67 65 73 49 6e 54 72 65 65 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 49 6e 54 72 65 ackagesInTree)).{.$packagesInTre
2e1e0 65 5b 5d 20 3d 20 24 72 65 71 75 69 72 65 4e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c e[].=.$requireName;.$this->displ
2e200 61 79 54 72 65 65 28 24 72 65 71 75 69 72 65 4e 61 6d 65 2c 20 24 72 65 71 75 69 72 65 2c 20 24 ayTree($requireName,.$require,.$
2e220 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 64 69 73 74 61 6e 74 52 65 70 6f 73 2c 20 24 70 installedRepo,.$distantRepos,.$p
2e240 61 63 6b 61 67 65 73 49 6e 54 72 65 65 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 72 65 65 42 61 72 ackagesInTree,.$output,.$treeBar
2e260 2c 20 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 ,.$level.+.1);.}.}.}.}..private.
2e280 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 7b 0a function.writeTreeLine($line).{.
2e2a0 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 2d 3e $io.=.$this->getIO();.if.(!$io->
2e2c0 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 65 70 isDecorated()).{.$line.=.str_rep
2e2e0 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 94 80 lace(array('...',.'...',.'......
2e300 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 2d 27 ',.'...'),.array('`-',.'|-',.'-'
2e320 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 24 6c ,.'|'),.$line);.}..$io->write($l
2e340 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 65 73 ine);.}.}.<?php............names
2e360 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 53 79 6d 66 pace.Composer\Command;..use.Symf
2e380 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
2e3a0 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
2e3c0 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 73 65 t\Console\Input\InputOption;.use
2e3e0 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
2e400 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 72 5c t\OutputInterface;.use.Composer\
2e420 44 6f 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 Downloader\ChangeReportInterface
2e440 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 6e 64 45 76 65 ;.use.Composer\Plugin\CommandEve
2e460 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 67 69 6e 45 76 nt;.use.Composer\Plugin\PluginEv
2e480 65 6e 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 ents;.use.Composer\Script\Script
2e4a0 45 76 65 6e 74 73 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 74 61 74 75 73 43 6f 6d 6d 61 6e 64 Events;......class.StatusCommand
2e4c0 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e .extends.Command.{.protected.fun
2e4e0 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 3e 73 65 74 4e ction.configure().{.$this.->setN
2e500 61 6d 65 28 27 73 74 61 74 75 73 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 ame('status').->setDescription('
2e520 53 68 6f 77 20 61 20 6c 69 73 74 20 6f 66 20 6c 6f 63 61 6c 6c 79 20 6d 6f 64 69 66 69 65 64 20 Show.a.list.of.locally.modified.
2e540 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 61 79 packages').->setDefinition(array
2e560 28 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 7c (.new.InputOption('verbose',.'v|
2e580 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 45 vv|vvv',.InputOption::VALUE_NONE
2e5a0 2c 20 27 53 68 6f 77 20 6d 6f 64 69 66 69 65 64 20 66 69 6c 65 73 20 66 6f 72 20 65 61 63 68 20 ,.'Show.modified.files.for.each.
2e5c0 64 69 72 65 63 74 6f 72 79 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 63 68 61 6e 67 65 73 2e directory.that.contains.changes.
2e5e0 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 68 65 20 73 74 61 74 '),.)).->setHelp(<<<EOT.The.stat
2e600 75 73 20 63 6f 6d 6d 61 6e 64 20 64 69 73 70 6c 61 79 73 20 61 20 6c 69 73 74 20 6f 66 20 64 65 us.command.displays.a.list.of.de
2e620 70 65 6e 64 65 6e 63 69 65 73 20 74 68 61 74 20 68 61 76 65 0a 62 65 65 6e 20 6d 6f 64 69 66 69 pendencies.that.have.been.modifi
2e640 65 64 20 6c 6f 63 61 6c 6c 79 2e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 ed.locally...EOT.).;.}..protecte
2e660 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 61 63 d.function.execute(InputInterfac
2e680 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 75 e.$input,.OutputInterface.$outpu
2e6a0 74 29 0a 7b 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 t).{...$composer.=.$this->getCom
2e6c0 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 20 43 6f poser();..$commandEvent.=.new.Co
2e6e0 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 44 mmandEvent(PluginEvents::COMMAND
2e700 2c 20 27 73 74 61 74 75 73 27 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 63 ,.'status',.$input,.$output);.$c
2e720 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
2e740 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()
2e760 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 65 64 52 65 70 ,.$commandEvent);..$installedRep
2e780 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 6e 61 o.=.$composer->getRepositoryMana
2e7a0 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 0a 24 64 ger()->getLocalRepository();..$d
2e7c0 6d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 m.=.$composer->getDownloadManage
2e7e0 72 28 29 3b 0a 24 69 6d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c r();.$im.=.$composer->getInstall
2e800 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 3b 0a 0a 0a 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 ationManager();....$composer->ge
2e820 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 53 63 72 69 tEventDispatcher()->dispatchScri
2e840 70 74 28 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 53 54 41 54 55 53 5f 43 4d 44 2c pt(ScriptEvents::PRE_STATUS_CMD,
2e860 20 74 72 75 65 29 3b 0a 0a 24 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 69 6f 20 .true);..$errors.=.array();.$io.
2e880 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 69 =.$this->getIO();....foreach.($i
2e8a0 6e 73 74 61 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 nstalledRepo->getPackages().as.$
2e8c0 70 61 63 6b 61 67 65 29 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 20 3d 20 24 64 6d 2d 3e 67 65 package).{.$downloader.=.$dm->ge
2e8e0 74 44 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 tDownloaderForInstalledPackage($
2e900 70 61 63 6b 61 67 65 29 3b 0a 0a 69 66 20 28 24 64 6f 77 6e 6c 6f 61 64 65 72 20 69 6e 73 74 61 package);..if.($downloader.insta
2e920 6e 63 65 6f 66 20 43 68 61 6e 67 65 52 65 70 6f 72 74 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 nceof.ChangeReportInterface).{.$
2e940 74 61 72 67 65 74 44 69 72 20 3d 20 24 69 6d 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 targetDir.=.$im->getInstallPath(
2e960 24 70 61 63 6b 61 67 65 29 3b 0a 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 74 61 72 67 65 74 44 $package);..if.(is_link($targetD
2e980 69 72 29 29 20 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 74 61 ir)).{.$errors[$targetDir].=.$ta
2e9a0 72 67 65 74 44 69 72 20 2e 20 27 20 69 73 20 61 20 73 79 6d 62 6f 6c 69 63 20 6c 69 6e 6b 2e 27 rgetDir...'.is.a.symbolic.link.'
2e9c0 3b 0a 7d 0a 0a 69 66 20 28 24 63 68 61 6e 67 65 73 20 3d 20 24 64 6f 77 6e 6c 6f 61 64 65 72 2d ;.}..if.($changes.=.$downloader-
2e9e0 3e 67 65 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 74 61 72 67 >getLocalChanges($package,.$targ
2ea00 65 74 44 69 72 29 29 20 7b 0a 24 65 72 72 6f 72 73 5b 24 74 61 72 67 65 74 44 69 72 5d 20 3d 20 etDir)).{.$errors[$targetDir].=.
2ea20 24 63 68 61 6e 67 65 73 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 65 72 72 6f 72 73 29 $changes;.}.}.}....if.(!$errors)
2ea40 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 4e 6f 20 6c 6f 63 .{.$io->writeError('<info>No.loc
2ea60 61 6c 20 63 68 61 6e 67 65 73 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 al.changes</info>');.}.else.{.$i
2ea80 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 20 68 61 76 65 20 63 o->writeError('<error>You.have.c
2eaa0 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 65 70 65 6e 64 65 6e hanges.in.the.following.dependen
2eac0 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 63 68 20 28 24 65 72 cies:</error>');.}..foreach.($er
2eae0 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 29 20 7b 0a 69 66 20 rors.as.$path.=>.$changes).{.if.
2eb00 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 73 65 27 29 29 20 7b ($input->getOption('verbose')).{
2eb20 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 64 65 28 22 5c 6e 22 .$indentedChanges.=.implode("\n"
2eb40 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 6e 65 29 20 7b 0a 72 ,.array_map(function.($line).{.r
2eb60 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 65 29 3b 0a 7d 2c 20 eturn.'....'...ltrim($line);.},.
2eb80 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 3b 0a 24 69 6f 2d 3e explode("\n",.$changes)));.$io->
2eba0 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 6e 66 6f 3e 3a 27 29 write('<info>'.$path.'</info>:')
2ebc0 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 6e 67 65 73 29 3b 0a ;.$io->write($indentedChanges);.
2ebe0 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 29 3b 0a 7d 0a 7d 0a }.else.{.$io->write($path);.}.}.
2ec00 0a 69 66 20 28 24 65 72 72 6f 72 73 20 26 26 20 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 .if.($errors.&&.!$input->getOpti
2ec20 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 72 72 6f 72 on('verbose')).{.$io->writeError
2ec40 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 6d 6f 64 69 ('Use.--verbose.(-v).to.see.modi
2ec60 66 69 65 64 20 66 69 6c 65 73 27 29 3b 0a 7d 0a 0a 0a 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 fied.files');.}....$composer->ge
2ec80 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 53 63 72 69 tEventDispatcher()->dispatchScri
2eca0 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 53 5f 43 4d 44 pt(ScriptEvents::POST_STATUS_CMD
2ecc0 2c 20 74 72 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 65 72 72 6f 72 73 20 3f 20 31 20 3a 20 30 ,.true);..return.$errors.?.1.:.0
2ece0 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
2ed00 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 79 5c .Composer\Command;..use.Symfony\
2ed20 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
2ed40 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
2ed60 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
2ed80 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
2eda0 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 6e nputOption;.use.Symfony\Componen
2edc0 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
2ede0 3b 0a 0a 63 6c 61 73 73 20 53 75 67 67 65 73 74 73 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 ;..class.SuggestsCommand.extends
2ee00 20 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 .Command.{.protected.function.co
2ee20 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 73 75 67 nfigure().{.$this.->setName('sug
2ee40 67 65 73 74 73 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 68 6f 77 20 70 gests').->setDescription('Show.p
2ee60 61 63 6b 61 67 65 20 73 75 67 67 65 73 74 69 6f 6e 73 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 ackage.suggestions').->setDefini
2ee80 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 6e 6f 2d tion(array(.new.InputOption('no-
2eea0 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
2eec0 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
2eee0 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
2ef00 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
2ef20 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
2ef40 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.
2ef60 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.'),.)).
2ef80 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
2efa0 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.
2efc0 73 75 67 67 65 73 74 65 64 20 70 61 63 6b 61 67 65 73 2e 0a 0a 57 69 74 68 20 3c 69 6e 66 6f 3e suggested.packages...With.<info>
2efe0 2d 76 3c 2f 69 6e 66 6f 3e 20 79 6f 75 20 61 6c 73 6f 20 73 65 65 20 77 68 69 63 68 20 70 61 63 -v</info>.you.also.see.which.pac
2f000 6b 61 67 65 20 73 75 67 67 65 73 74 65 64 20 69 74 20 61 6e 64 20 77 68 79 2e 0a 0a 45 4f 54 0a kage.suggested.it.and.why...EOT.
2f020 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
2f040 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
2f060 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 6c 6f 63 6b 20 3d 20 24 74 68 69 nterface.$output).{.$lock.=.$thi
2f080 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 2d 3e 67 65 74 4c 6f 63 6b 65 72 28 29 2d 3e 67 s->getComposer()->getLocker()->g
2f0a0 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 6c 6f 63 6b 29 29 etLockData();..if.(empty($lock))
2f0c0 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('
2f0e0 4c 6f 63 6b 66 69 6c 65 20 73 65 65 6d 73 20 74 6f 20 62 65 20 65 6d 70 74 79 3f 27 29 3b 0a 7d Lockfile.seems.to.be.empty?');.}
2f100 0a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 6c 6f 63 6b 5b 27 70 61 63 6b 61 67 65 73 27 5d 3b ..$packages.=.$lock['packages'];
2f120 0a 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 65 76 ..if.(!$input->getOption('no-dev
2f140 27 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 2b 3d 20 24 6c 6f 63 6b 5b 27 70 61 63 6b 61 67 ')).{.$packages.+=.$lock['packag
2f160 65 73 2d 64 65 76 27 5d 3b 0a 7d 0a 0a 24 66 69 6c 74 65 72 20 3d 20 24 69 6e 70 75 74 2d 3e 67 es-dev'];.}..$filter.=.$input->g
2f180 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 66 6f 72 65 61 63 68 etArgument('packages');..foreach
2f1a0 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 65 .($packages.as.$package).{.if.(e
2f1c0 6d 70 74 79 28 24 70 61 63 6b 61 67 65 5b 27 73 75 67 67 65 73 74 27 5d 29 29 20 7b 0a 63 6f 6e mpty($package['suggest'])).{.con
2f1e0 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 66 69 6c 74 65 72 29 20 26 26 tinue;.}..if.(!empty($filter).&&
2f200 20 21 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 5b 27 6e 61 6d 65 27 5d 2c 20 24 66 69 .!in_array($package['name'],.$fi
2f220 6c 74 65 72 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 70 72 69 lter)).{.continue;.}..$this->pri
2f240 6e 74 53 75 67 67 65 73 74 69 6f 6e 73 28 24 70 61 63 6b 61 67 65 73 2c 20 24 70 61 63 6b 61 67 ntSuggestions($packages,.$packag
2f260 65 5b 27 6e 61 6d 65 27 5d 2c 20 24 70 61 63 6b 61 67 65 5b 27 73 75 67 67 65 73 74 27 5d 29 3b e['name'],.$package['suggest']);
2f280 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 69 6e 74 53 75 .}.}..protected.function.printSu
2f2a0 67 67 65 73 74 69 6f 6e 73 28 24 69 6e 73 74 61 6c 6c 65 64 2c 20 24 73 6f 75 72 63 65 2c 20 24 ggestions($installed,.$source,.$
2f2c0 73 75 67 67 65 73 74 69 6f 6e 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 73 75 67 67 65 73 74 suggestions).{.foreach.($suggest
2f2e0 69 6f 6e 73 20 61 73 20 24 73 75 67 67 65 73 74 69 6f 6e 20 3d 3e 20 24 72 65 61 73 6f 6e 29 20 ions.as.$suggestion.=>.$reason).
2f300 7b 0a 66 6f 72 65 61 63 68 20 28 24 69 6e 73 74 61 6c 6c 65 64 20 61 73 20 24 70 61 63 6b 61 67 {.foreach.($installed.as.$packag
2f320 65 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 5b 27 6e 61 6d 65 27 5d 20 3d 3d 3d 20 24 73 e).{.if.($package['name'].===.$s
2f340 75 67 67 65 73 74 69 6f 6e 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 20 32 3b 0a 7d 0a 7d 0a 0a 69 66 uggestion).{.continue.2;.}.}..if
2f360 20 28 65 6d 70 74 79 28 24 72 65 61 73 6f 6e 29 29 20 7b 0a 24 72 65 61 73 6f 6e 20 3d 20 27 2a .(empty($reason)).{.$reason.=.'*
2f380 27 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 53 75 67 67 65 73 74 69 6f 6e 28 24 73 6f ';.}..$this->printSuggestion($so
2f3a0 75 72 63 65 2c 20 24 73 75 67 67 65 73 74 69 6f 6e 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 7d urce,.$suggestion,.$reason);.}.}
2f3c0 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 53 75 67 67 65 73 ..protected.function.printSugges
2f3e0 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 24 73 75 67 67 65 73 74 69 6f 6e 2c 20 24 72 65 61 tion($package,.$suggestion,.$rea
2f400 73 6f 6e 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 0a 69 66 son).{.$io.=.$this->getIO();..if
2f420 20 28 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 .($io->isVerbose()).{.$io->write
2f440 28 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 (sprintf('<comment>%s</comment>.
2f460 73 75 67 67 65 73 74 73 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 3a 20 25 73 27 2c 20 24 suggests.<info>%s</info>:.%s',.$
2f480 70 61 63 6b 61 67 65 2c 20 24 73 75 67 67 65 73 74 69 6f 6e 2c 20 24 72 65 61 73 6f 6e 29 29 3b package,.$suggestion,.$reason));
2f4a0 0a 7d 20 65 6c 73 65 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 .}.else.{.$io->write(sprintf('<i
2f4c0 6e 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 nfo>%s</info>',.$suggestion));.}
2f4e0 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.
2f500 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 6f 73 65 72 5c Composer\Command;..use.Composer\
2f520 43 6f 6d 70 6f 73 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 Composer;.use.Composer\Installer
2f540 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
2f560 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 3b se.Composer\Plugin\CommandEvent;
2f580 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 74 .use.Composer\Plugin\PluginEvent
2f5a0 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 65 s;.use.Symfony\Component\Console
2f5c0 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
2f5e0 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
2f600 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
2f620 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\
2f640 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
2f660 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
2f680 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
2f6a0 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
2f6c0 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
2f6e0 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
2f700 5c 51 75 65 73 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 70 64 61 74 65 43 6f 6d 6d \Question;......class.UpdateComm
2f720 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 and.extends.Command.{.protected.
2f740 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 3e 73 function.configure().{.$this.->s
2f760 65 74 4e 61 6d 65 28 27 75 70 64 61 74 65 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f etName('update').->setDescriptio
2f780 6e 28 27 55 70 64 61 74 65 73 20 79 6f 75 72 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 74 6f 20 n('Updates.your.dependencies.to.
2f7a0 74 68 65 20 6c 61 74 65 73 74 20 76 65 72 73 69 6f 6e 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 the.latest.version.according.to.
2f7c0 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 2c 20 61 6e 64 20 75 70 64 61 74 65 73 20 74 68 65 20 63 composer.json,.and.updates.the.c
2f7e0 6f 6d 70 6f 73 65 72 2e 6c 6f 63 6b 20 66 69 6c 65 2e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 omposer.lock.file.').->setDefini
2f800 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 28 27 70 tion(array(.new.InputArgument('p
2f820 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 52 52 41 ackages',.InputArgument::IS_ARRA
2f840 59 20 7c 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 50 61 Y.|.InputArgument::OPTIONAL,.'Pa
2f860 63 6b 61 67 65 73 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 75 70 64 61 74 65 64 2c 20 69 ckages.that.should.be.updated,.i
2f880 66 20 6e 6f 74 20 70 72 6f 76 69 64 65 64 20 61 6c 6c 20 70 61 63 6b 61 67 65 73 20 61 72 65 2e f.not.provided.all.packages.are.
2f8a0 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 73 6f 75 72 '),.new.InputOption('prefer-sour
2f8c0 63 65 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 ce',.null,.InputOption::VALUE_NO
2f8e0 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 61 NE,.'Forces.installation.from.pa
2f900 63 6b 61 67 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 ckage.sources.when.possible,.inc
2f920 6c 75 64 69 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 luding.VCS.information.'),.new.I
2f940 6e 70 75 74 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 nputOption('prefer-dist',.null,.
2f960 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 73 InputOption::VALUE_NONE,.'Forces
2f980 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 65 20 64 69 73 74 20 .installation.from.package.dist.
2f9a0 65 76 65 6e 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 even.for.dev.versions.'),.new.In
2f9c0 70 75 74 4f 70 74 69 6f 6e 28 27 64 72 79 2d 72 75 6e 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 putOption('dry-run',.null,.Input
2f9e0 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4f 75 74 70 75 74 73 20 74 68 65 Option::VALUE_NONE,.'Outputs.the
2fa00 20 6f 70 65 72 61 74 69 6f 6e 73 20 62 75 74 20 77 69 6c 6c 20 6e 6f 74 20 65 78 65 63 75 74 65 .operations.but.will.not.execute
2fa20 20 61 6e 79 74 68 69 6e 67 20 28 69 6d 70 6c 69 63 69 74 6c 79 20 65 6e 61 62 6c 65 73 20 2d 2d .anything.(implicitly.enables.--
2fa40 76 65 72 62 6f 73 65 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 verbose).'),.new.InputOption('de
2fa60 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 4e v',.null,.InputOption::VALUE_NON
2fa80 45 2c 20 27 45 6e 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 E,.'Enables.installation.of.requ
2faa0 69 72 65 2d 64 65 76 20 70 61 63 6b 61 67 65 73 20 28 65 6e 61 62 6c 65 64 20 62 79 20 64 65 66 ire-dev.packages.(enabled.by.def
2fac0 61 75 6c 74 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 ault,.only.present.for.BC).'),.n
2fae0 65 77 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 ew.InputOption('no-dev',.null,.I
2fb00 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 69 73 61 62 6c 65 nputOption::VALUE_NONE,.'Disable
2fb20 73 20 69 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 s.installation.of.require-dev.pa
2fb40 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 6e 28 27 6c 6f 63 6b ckages.'),.new.InputOption('lock
2fb60 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
2fb80 2c 20 27 4f 6e 6c 79 20 75 70 64 61 74 65 73 20 74 68 65 20 6c 6f 63 6b 20 66 69 6c 65 20 68 61 ,.'Only.updates.the.lock.file.ha
2fba0 73 68 20 74 6f 20 73 75 70 70 72 65 73 73 20 77 61 72 6e 69 6e 67 20 61 62 6f 75 74 20 74 68 65 sh.to.suppress.warning.about.the
2fbc0 20 6c 6f 63 6b 20 66 69 6c 65 20 62 65 69 6e 67 20 6f 75 74 20 6f 66 20 64 61 74 65 2e 27 29 2c .lock.file.being.out.of.date.'),
2fbe0 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 2c 20 6e .new.InputOption('no-plugins',.n
2fc00 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
2fc20 69 73 61 62 6c 65 73 20 61 6c 6c 20 70 6c 75 67 69 6e 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 isables.all.plugins.'),.new.Inpu
2fc40 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 2c 20 tOption('no-custom-installers',.
2fc60 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,.'
2fc80 44 45 50 52 45 43 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 DEPRECATED:.Use.no-plugins.inste
2fca0 61 64 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 61 75 74 6f 6c ad.'),.new.InputOption('no-autol
2fcc0 6f 61 64 65 72 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 oader',.null,.InputOption::VALUE
2fce0 5f 4e 4f 4e 45 2c 20 27 53 6b 69 70 73 20 61 75 74 6f 6c 6f 61 64 65 72 20 67 65 6e 65 72 61 74 _NONE,.'Skips.autoloader.generat
2fd00 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 6f 2d 73 63 72 69 70 ion'),.new.InputOption('no-scrip
2fd20 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 4e 4f ts',.null,.InputOption::VALUE_NO
2fd40 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 6c 20 NE,.'Skips.the.execution.of.all.
2fd60 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 6f 6e scripts.defined.in.composer.json
2fd80 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 6e 6f 2d 70 72 .file.'),.new.InputOption('no-pr
2fda0 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 55 ogress',.null,.InputOption::VALU
2fdc0 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 20 E_NONE,.'Do.not.output.download.
2fde0 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 77 69 progress.'),.new.InputOption('wi
2fe00 74 68 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 th-dependencies',.null,.InputOpt
2fe20 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 64 64 20 61 6c 73 6f 20 61 6c 6c 20 64 ion::VALUE_NONE,.'Add.also.all.d
2fe40 65 70 65 6e 64 65 6e 63 69 65 73 20 6f 66 20 77 68 69 74 65 6c 69 73 74 65 64 20 70 61 63 6b 61 ependencies.of.whitelisted.packa
2fe60 67 65 73 20 74 6f 20 74 68 65 20 77 68 69 74 65 6c 69 73 74 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 ges.to.the.whitelist.'),.new.Inp
2fe80 75 74 4f 70 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 utOption('verbose',.'v|vv|vvv',.
2fea0 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 73 20 InputOption::VALUE_NONE,.'Shows.
2fec0 6d 6f 72 65 20 64 65 74 61 69 6c 73 20 69 6e 63 6c 75 64 69 6e 67 20 6e 65 77 20 63 6f 6d 6d 69 more.details.including.new.commi
2fee0 74 73 20 70 75 6c 6c 65 64 20 69 6e 20 77 68 65 6e 20 75 70 64 61 74 69 6e 67 20 70 61 63 6b 61 ts.pulled.in.when.updating.packa
2ff00 67 65 73 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 69 6d 69 7a ges.'),.new.InputOption('optimiz
2ff20 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 70 74 69 6f 6e 3a e-autoloader',.'o',.InputOption:
2ff40 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 6f 6c 6f 61 64 65 :VALUE_NONE,.'Optimize.autoloade
2ff60 72 20 64 75 72 69 6e 67 20 61 75 74 6f 6c 6f 61 64 65 72 20 64 75 6d 70 2e 27 29 2c 0a 6e 65 77 r.during.autoloader.dump.'),.new
2ff80 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 72 69 74 61 .InputOption('classmap-authorita
2ffa0 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 55 45 5f 4e tive',.'a',.InputOption::VALUE_N
2ffc0 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 74 68 65 20 ONE,.'Autoload.classes.from.the.
2ffe0 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 61 62 6c 65 classmap.only..Implicitly.enable
30000 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 29 2c 0a 6e 65 s.`--optimize-autoloader`.'),.ne
30020 77 20 49 6e 70 75 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 w.InputOption('ignore-platform-r
30040 65 71 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 eqs',.null,.InputOption::VALUE_N
30060 4f 4e 45 2c 20 27 49 67 6e 6f 72 65 20 70 6c 61 74 66 6f 72 6d 20 72 65 71 75 69 72 65 6d 65 6e ONE,.'Ignore.platform.requiremen
30080 74 73 20 28 70 68 70 20 26 20 65 78 74 2d 20 70 61 63 6b 61 67 65 73 29 2e 27 29 2c 0a 6e 65 77 ts.(php.&.ext-.packages).'),.new
300a0 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 74 61 62 6c 65 27 2c 20 6e 75 .InputOption('prefer-stable',.nu
300c0 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 50 72 ll,.InputOption::VALUE_NONE,.'Pr
300e0 65 66 65 72 20 73 74 61 62 6c 65 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 64 65 70 65 6e 64 65 6e efer.stable.versions.of.dependen
30100 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 70 72 65 66 65 72 cies.'),.new.InputOption('prefer
30120 2d 6c 6f 77 65 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 -lowest',.null,.InputOption::VAL
30140 55 45 5f 4e 4f 4e 45 2c 20 27 50 72 65 66 65 72 20 6c 6f 77 65 73 74 20 76 65 72 73 69 6f 6e 73 UE_NONE,.'Prefer.lowest.versions
30160 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 49 6e 70 75 74 4f 70 .of.dependencies.'),.new.InputOp
30180 74 69 6f 6e 28 27 69 6e 74 65 72 61 63 74 69 76 65 27 2c 20 27 69 27 2c 20 49 6e 70 75 74 4f 70 tion('interactive',.'i',.InputOp
301a0 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 49 6e 74 65 72 61 63 74 69 76 65 20 69 tion::VALUE_NONE,.'Interactive.i
301c0 6e 74 65 72 66 61 63 65 20 77 69 74 68 20 61 75 74 6f 63 6f 6d 70 6c 65 74 69 6f 6e 20 74 6f 20 nterface.with.autocompletion.to.
301e0 73 65 6c 65 63 74 20 74 68 65 20 70 61 63 6b 61 67 65 73 20 74 6f 20 75 70 64 61 74 65 2e 27 29 select.the.packages.to.update.')
30200 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 3e ,.)).->setHelp(<<<EOT.The.<info>
30220 75 70 64 61 74 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 72 65 61 64 73 20 74 68 65 20 update</info>.command.reads.the.
30240 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 66 72 6f 6d 20 74 68 65 0a 63 75 72 72 composer.json.file.from.the.curr
30260 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 70 72 6f 63 65 73 73 65 73 20 69 74 2c 20 61 6e 64 ent.directory,.processes.it,.and
30280 20 75 70 64 61 74 65 73 2c 20 72 65 6d 6f 76 65 73 20 6f 72 20 69 6e 73 74 61 6c 6c 73 20 61 6c .updates,.removes.or.installs.al
302a0 6c 20 74 68 65 0a 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 l.the.dependencies...<info>php.c
302c0 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 75 70 64 61 74 65 3c 2f 69 6e 66 6f 3e 0a 0a 54 6f 20 6c omposer.phar.update</info>..To.l
302e0 69 6d 69 74 20 74 68 65 20 75 70 64 61 74 65 20 6f 70 65 72 61 74 69 6f 6e 20 74 6f 20 61 20 66 imit.the.update.operation.to.a.f
30300 65 77 20 70 61 63 6b 61 67 65 73 2c 20 79 6f 75 20 63 61 6e 20 6c 69 73 74 20 74 68 65 20 70 61 ew.packages,.you.can.list.the.pa
30320 63 6b 61 67 65 28 73 29 0a 79 6f 75 20 77 61 6e 74 20 74 6f 20 75 70 64 61 74 65 20 61 73 20 73 ckage(s).you.want.to.update.as.s
30340 75 63 68 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 72 20 75 70 uch:..<info>php.composer.phar.up
30360 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 6d 79 70 61 63 6b 61 date.vendor/package1.foo/mypacka
30380 67 65 20 5b 2e 2e 2e 5d 3c 2f 69 6e 66 6f 3e 0a 0a 59 6f 75 20 6d 61 79 20 61 6c 73 6f 20 75 73 ge.[...]</info>..You.may.also.us
303a0 65 20 61 6e 20 61 73 74 65 72 69 73 6b 20 28 2a 29 20 70 61 74 74 65 72 6e 20 74 6f 20 6c 69 6d e.an.asterisk.(*).pattern.to.lim
303c0 69 74 20 74 68 65 20 75 70 64 61 74 65 20 6f 70 65 72 61 74 69 6f 6e 20 74 6f 20 70 61 63 6b 61 it.the.update.operation.to.packa
303e0 67 65 28 73 29 0a 66 72 6f 6d 20 61 20 73 70 65 63 69 66 69 63 20 76 65 6e 64 6f 72 3a 0a 0a 3c ge(s).from.a.specific.vendor:..<
30400 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 20 76 65 info>php.composer.phar.update.ve
30420 6e 64 6f 72 2f 70 61 63 6b 61 67 65 31 20 66 6f 6f 2f 2a 20 5b 2e 2e 2e 5d 3c 2f 69 6e 66 6f 3e ndor/package1.foo/*.[...]</info>
30440 0a 0a 54 6f 20 73 65 6c 65 63 74 20 70 61 63 6b 61 67 65 73 20 6e 61 6d 65 73 20 69 6e 74 65 72 ..To.select.packages.names.inter
30460 61 63 74 69 76 65 6c 79 20 77 69 74 68 20 61 75 74 6f 2d 63 6f 6d 70 6c 65 74 69 6f 6e 20 75 73 actively.with.auto-completion.us
30480 65 20 3c 69 6e 66 6f 3e 2d 69 3c 2f 69 6e 66 6f 3e 2e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 e.<info>-i</info>...EOT.).;.}..p
304a0 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
304c0 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
304e0 20 24 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 .$output).{.$io.=.$this->getIO()
30500 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 6e 6f 2d 63 75 73 74 ;.if.($input->getOption('no-cust
30520 6f 6d 2d 69 6e 73 74 61 6c 6c 65 72 73 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 om-installers')).{.$io->writeErr
30540 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 67 20 74 68 65 20 64 or('<warning>You.are.using.the.d
30560 65 70 72 65 63 61 74 65 64 20 6f 70 74 69 6f 6e 20 22 6e 6f 2d 63 75 73 74 6f 6d 2d 69 6e 73 74 eprecated.option."no-custom-inst
30580 61 6c 6c 65 72 73 22 2e 20 55 73 65 20 22 6e 6f 2d 70 6c 75 67 69 6e 73 22 20 69 6e 73 74 65 61 allers"..Use."no-plugins".instea
305a0 64 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f d.</warning>');.$input->setOptio
305c0 6e 28 27 6e 6f 2d 70 6c 75 67 69 6e 73 27 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 n('no-plugins',.true);.}..if.($i
305e0 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 nput->getOption('dev')).{.$io->w
30600 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
30620 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 64 65 76 22 2e 20 44 g.the.deprecated.option."dev"..D
30640 65 76 20 70 61 63 6b 61 67 65 73 20 61 72 65 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 20 64 65 66 ev.packages.are.installed.by.def
30660 61 75 6c 74 20 6e 6f 77 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f ault.now.</warning>');.}..$compo
30680 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 74 72 75 65 2c 20 24 ser.=.$this->getComposer(true,.$
306a0 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 29 3b input->getOption('no-plugins'));
306c0 0a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e ..$packages.=.$input->getArgumen
306e0 74 28 27 70 61 63 6b 61 67 65 73 27 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f t('packages');..if.($input->getO
30700 70 74 69 6f 6e 28 27 69 6e 74 65 72 61 63 74 69 76 65 27 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 ption('interactive')).{.$package
30720 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 49 6e 74 65 72 61 63 74 69 76 s.=.$this->getPackagesInteractiv
30740 65 6c 79 28 24 69 6f 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 63 6f 6d 70 6f ely($io,.$input,.$output,.$compo
30760 73 65 72 2c 20 24 70 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 ser,.$packages);.}..$composer->g
30780 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 74 50 72 etDownloadManager()->setOutputPr
307a0 6f 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 ogress(!$input->getOption('no-pr
307c0 6f 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 ogress'));..$commandEvent.=.new.
307e0 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 41 CommandEvent(PluginEvents::COMMA
30800 4e 44 2c 20 27 75 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 ND,.'update',.$input,.$output);.
30820 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()-
30840 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
30860 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.=.
30880 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
308a0 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
308c0 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
308e0 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
30900 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')).{
30920 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.=.
30940 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
30960 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'
30980 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
309a0 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').||.
309c0 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')
309e0 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
30a00 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
30a20 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-
30a40 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
30a60 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').
30a80 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
30aa0 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-
30ac0 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
30ae0 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
30b00 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
30b20 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
30b40 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
30b60 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
30b80 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(
30ba0 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
30bc0 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
30be0 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('
30c00 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
30c20 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'
30c40 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
30c60 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
30c80 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 28 74 72 75 ($authoritative).->setUpdate(tru
30ca0 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 69 6e 70 75 74 2d 3e e).->setUpdateWhitelist($input->
30cc0 67 65 74 4f 70 74 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 getOption('lock').?.array('lock'
30ce0 29 20 3a 20 24 70 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 ).:.$packages).->setWhitelistDep
30d00 65 6e 64 65 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 77 69 74 endencies($input->getOption('wit
30d20 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 50 6c 61 h-dependencies')).->setIgnorePla
30d40 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 4f 70 74 tformRequirements($input->getOpt
30d60 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 2d 3e 73 ion('ignore-platform-reqs')).->s
30d80 65 74 50 72 65 66 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 etPreferStable($input->getOption
30da0 28 27 70 72 65 66 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 ('prefer-stable')).->setPreferLo
30dc0 77 65 73 74 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 2d 6c west($input->getOption('prefer-l
30de0 6f 77 65 73 74 27 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 owest')).;..if.($input->getOptio
30e00 6e 28 27 6e 6f 2d 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 n('no-plugins')).{.$install->dis
30e20 61 62 6c 65 50 6c 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 ablePlugins();.}..return.$instal
30e40 6c 2d 3e 72 75 6e 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 l->run();.}..private.function.ge
30e60 74 50 61 63 6b 61 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 tPackagesInteractively(IOInterfa
30e80 63 65 20 24 69 6f 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 ce.$io,.InputInterface.$input,.O
30ea0 75 74 70 75 74 49 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 utputInterface.$output,.Composer
30ec0 20 24 63 6f 6d 70 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 .$composer,.array.$packages).{.i
30ee0 66 20 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 74 f.(!$input->isInteractive()).{.t
30f00 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
30f20 6f 6e 28 27 2d 2d 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 on('--interactive.cannot.be.used
30f40 20 69 6e 20 6e 6f 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 .in.non-interactive.terminals.')
30f60 3b 0a 7d 0a 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 0a 24 63 ;.}..$requires.=.array_merge(.$c
30f80 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 52 65 71 75 69 72 omposer->getPackage()->getRequir
30fa0 65 73 28 29 2c 0a 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 es(),.$composer->getPackage()->g
30fc0 65 74 44 65 76 52 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 etDevRequires().);.$autocomplete
30fe0 72 56 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 72 65 71 rValues.=.array();.foreach.($req
31000 75 69 72 65 73 20 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 uires.as.$require).{.$autocomple
31020 74 65 72 56 61 6c 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 terValues[strtolower($require->g
31040 65 74 54 61 72 67 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 etTarget())].=.$require->getTarg
31060 65 74 28 29 3b 0a 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 et();.}..$installedPackages.=.$c
31080 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 2d omposer->getRepositoryManager()-
310a0 3e 67 65 74 4c 6f 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 >getLocalRepository()->getPackag
310c0 65 73 28 29 3b 0a 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 es();.foreach.($installedPackage
310e0 73 20 61 73 20 24 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 s.as.$package).{.$autocompleterV
31100 61 6c 75 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 24 70 61 alues[$package->getName()].=.$pa
31120 63 6b 61 67 65 2d 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 ckage->getPrettyName();.}..$help
31140 65 72 20 3d 20 24 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 er.=.$this->getHelper('question'
31160 29 3b 0a 24 71 75 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 );.$question.=.new.Question('<co
31180 6d 6d 65 6e 74 3e 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 mment>Enter.package.name:.</comm
311a0 65 6e 74 3e 27 2c 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 ent>',.null);..$io->writeError('
311c0 3c 69 6e 66 6f 3e 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 <info>Press.enter.without.value.
311e0 74 6f 20 65 6e 64 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 to.end.submission</info>');..do.
31200 7b 0a 24 61 75 74 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 {.$autocompleterValues.=.array_d
31220 69 66 66 28 24 61 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 iff($autocompleterValues,.$packa
31240 67 65 73 29 3b 0a 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 ges);.$question->setAutocomplete
31260 72 56 61 6c 75 65 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 rValues($autocompleterValues);.$
31280 61 64 64 65 64 50 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 addedPackage.=.$helper->ask($inp
312a0 75 74 2c 20 24 6f 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 ut,.$output,.$question);..if.(!i
312c0 73 5f 73 74 72 69 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 s_string($addedPackage).||.empty
312e0 28 24 61 64 64 65 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 ($addedPackage)).{.break;.}..$ad
31300 64 65 64 50 61 63 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 dedPackage.=.strtolower($addedPa
31320 63 6b 61 67 65 29 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 ckage);.if.(!in_array($addedPack
31340 61 67 65 2c 20 24 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 age,.$packages)).{.$packages[].=
31360 20 24 61 64 64 65 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 .$addedPackage;.}.}.while.(true)
31380 3b 0a 0a 24 70 61 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 ;..$packages.=.array_filter($pac
313a0 6b 61 67 65 73 29 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 kages);.if.(!$packages).{.throw.
313c0 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 59 new.\InvalidArgumentException('Y
313e0 6f 75 20 6d 75 73 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 ou.must.enter.minimum.one.packag
31400 65 2e 27 29 3b 0a 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 e.');.}..$table.=.new.Table($out
31420 70 75 74 29 3b 0a 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 put);.$table->setHeaders(array('
31440 53 65 6c 65 63 74 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 Selected.packages'));.foreach.($
31460 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 74 61 62 6c 65 2d 3e packages.as.$package).{.$table->
31480 61 64 64 52 6f 77 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 addRow(array($package));.}.$tabl
314a0 65 2d 3e 72 65 6e 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 e->render();..if.($io->askConfir
314c0 6d 61 74 69 6f 6e 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 mation(sprintf(.'Would.you.like.
314e0 74 6f 20 63 6f 6e 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 to.continue.and.update.the.above
31500 20 70 61 63 6b 61 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 .package%s.[<comment>yes</commen
31520 74 3e 5d 3f 20 27 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 t>]?.',.1.===.count($packages).?
31540 20 27 27 20 3a 20 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 .''.:.'s'.),.true)).{.return.$pa
31560 63 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 ckages;.}..throw.new.\RuntimeExc
31580 65 70 74 69 6f 6e 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 eption('Installation.aborted.');
315a0 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.
315c0 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 6f 73 65 72 5c Composer\Command;..use.Composer\
315e0 46 61 63 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 4c 6f Factory;.use.Composer\Package\Lo
31600 61 64 65 72 5c 56 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 ader\ValidatingArrayLoader;.use.
31620 43 6f 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 Composer\Util\ConfigValidator;.u
31640 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
31660 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 6f ut\InputArgument;.use.Symfony\Co
31680 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 72 mponent\Console\Input\InputInter
316a0 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 73 face;.use.Symfony\Component\Cons
316c0 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 6f ole\Input\InputOption;.use.Symfo
316e0 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
31700 75 74 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 utInterface;........class.Valida
31720 74 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 teCommand.extends.Command.{....p
31740 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().{.
31760 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 73 65 $this.->setName('validate').->se
31780 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 6f 73 tDescription('Validates.a.compos
317a0 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 73 65 er.json.and.composer.lock').->se
317c0 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 74 69 tDefinition(array(.new.InputOpti
317e0 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 4f 70 on('no-check-all',.null,.InputOp
31800 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 20 61 tion::VALUE_NONE,.'Do.not.make.a
31820 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 70 75 .complete.validation'),.new.Inpu
31840 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 20 49 tOption('no-check-lock',.null,.I
31860 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 20 nputOption::VALUE_NONE,.'Do.not.
31880 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 74 65 check.if.lock.file.is.up.to.date
318a0 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 70 75 '),.new.InputOption('no-check-pu
318c0 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 55 45 blish',.null,.InputOption::VALUE
318e0 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 73 68 _NONE,.'Do.not.check.for.publish
31900 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 74 68 .errors'),.new.InputOption('with
31920 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 6f 6e -dependencies',.'A',.InputOption
31940 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 68 65 ::VALUE_NONE,.'Also.validate.the
31960 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 64 20 .composer.json.of.all.installed.
31980 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 6e 28 dependencies'),.new.InputOption(
319a0 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 41 4c 'strict',.null,.InputOption::VAL
319c0 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 69 74 UE_NONE,.'Return.a.non-zero.exit
319e0 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 65 72 .code.for.warnings.as.well.as.er
31a00 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 65 27 rors'),.new.InputArgument('file'
31a20 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 74 68 ,.InputArgument::OPTIONAL,.'path
31a40 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 6d 70 .to.composer.json.file',.'./comp
31a60 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 4f 54 oser.json'),.)).->setHelp(<<<EOT
31a80 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 73 20 .The.validate.command.validates.
31aa0 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 6f 73 a.given.composer.json.and.compos
31ac0 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 20 65 er.lock..Exit.codes.in.case.of.e
31ae0 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 67 28 rrors.are:.1.validation.warning(
31b00 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 6e 0a s),.only.when.--strict.is.given.
31b20 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 6e 72 2.validation.error(s).3.file.unr
31b40 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 0a 0a eadable.or.missing..EOT.);.}....
31b60 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 28 49 ....protected.function.execute(I
31b80 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 65 nputInterface.$input,.OutputInte
31ba0 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 74 2d rface.$output).{.$file.=.$input-
31bc0 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 68 69 >getArgument('file');.$io.=.$thi
31be0 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 24 66 s->getIO();..if.(!file_exists($f
31c00 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 72 3e ile)).{.$io->writeError('<error>
31c20 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 72 3e '...$file...'.not.found.</error>
31c40 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 62 6c ');..return.3;.}.if.(!is_readabl
31c60 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 65 72 e($file)).{.$io->writeError('<er
31c80 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 62 6c ror>'...$file...'.is.not.readabl
31ca0 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 61 6c e.</error>');..return.3;.}..$val
31cc0 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 69 6f idator.=.new.ConfigValidator($io
31ce0 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 6f 6e );.$checkAll.=.$input->getOption
31d00 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 69 6e ('no-check-all').?.0.:.Validatin
31d20 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 6b 50 gArrayLoader::CHECK_ALL;.$checkP
31d40 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 6f 2d ublish.=.!$input->getOption('no-
31d60 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 21 24 check-publish');.$checkLock.=.!$
31d80 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 6b 27 input->getOption('no-check-lock'
31da0 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 6f 6e );.$isStrict.=.$input->getOption
31dc0 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 6c 69 ('strict');.list($errors,.$publi
31de0 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 74 6f shErrors,.$warnings).=.$validato
31e00 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 0a 0a r->validate($file,.$checkAll);..
31e20 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 65 72 $lockErrors.=.array();.$composer
31e40 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 3b 0a .=.Factory::create($io,.$file);.
31e60 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 28 29 $locker.=.$composer->getLocker()
31e80 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 24 6c ;.if.($locker->isLocked().&&.!$l
31ea0 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 73 5b ocker->isFresh()).{.$lockErrors[
31ec0 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 6f 20 ].=.'The.lock.file.is.not.up.to.
31ee0 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 6e 20 date.with.the.latest.changes.in.
31f00 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 65 64 composer.json,.it.is.recommended
31f20 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 60 2e .that.you.run.`composer.update`.
31f40 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 20 24 ';.}..$this->outputResult($io,.$
31f60 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 63 6b file,.$errors,.$warnings,.$check
31f80 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 6b 4c Publish,.$publishErrors,.$checkL
31fa0 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 74 43 ock,.$lockErrors,.true);..$exitC
31fc0 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 72 73 ode.=.$errors.||.($publishErrors
31fe0 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 72 6f .&&.$checkPublish).||.($lockErro
32000 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 72 69 rs.&&.$checkLock).?.2.:.($isStri
32020 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 28 24 ct.&&.$warnings.?.1.:.0);..if.($
32040 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 6e 63 input->getOption('with-dependenc
32060 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 72 2d ies')).{.$localRepo.=.$composer-
32080 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 61 >getRepositoryManager()->getLoca
320a0 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 52 65 lRepository();.foreach.($localRe
320c0 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 20 7b po->getPackages().as.$package).{
320e0 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 61 74 .$path.=.$composer->getInstallat
32100 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 70 61 ionManager()->getInstallPath($pa
32120 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 6f 73 ckage);.$file.=.$path...'/compos
32140 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 20 66 er.json';.if.(is_dir($path).&&.f
32160 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 6f 72 ile_exists($file)).{.list($error
32180 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 3d 20 s,.$publishErrors,.$warnings).=.
321a0 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 68 65 $validator->validate($file,.$che
321c0 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 6f 2c ckAll);.$this->outputResult($io,
321e0 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 72 72 .$package->getPrettyName(),.$err
32200 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 20 24 ors,.$warnings,.$checkPublish,.$
32220 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 72 72 publishErrors);..$depCode.=.$err
32240 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 63 6b ors.||.($publishErrors.&&.$check
32260 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 77 61 Publish).?.2.:.($isStrict.&&.$wa
32280 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 61 78 rnings.?.1.:.0);.$exitCode.=.max
322a0 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 72 65 ($depCode,.$exitCode);.}.}.}..re
322c0 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 63 74 turn.$exitCode;.}..private.funct
322e0 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 24 65 ion.outputResult($io,.$name,.&$e
32300 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 73 68 rrors,.&$warnings,.$checkPublish
32320 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 61 79 .=.false,.$publishErrors.=.array
32340 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 72 72 (),.$checkLock.=.false,.$lockErr
32360 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 20 3d ors.=.array(),.$printSchemaUrl.=
32380 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 62 6c .false).{.if.(!$errors.&&.!$publ
323a0 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 2d 3e ishErrors.&&.!$warnings).{.$io->
323c0 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 76 61 write('<info>'...$name...'.is.va
323e0 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 72 73 lid</info>');.}.elseif.(!$errors
32400 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 69 74 .&&.!$publishErrors).{.$io->writ
32420 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 20 76 eError('<info>'...$name...'.is.v
32440 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 2f 69 alid,.but.with.a.few.warnings</i
32460 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 0a 24 nfo>');.if.($printSchemaUrl).{.$
32480 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 74 74 io->writeError('<warning>See.htt
324a0 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 68 65 ps://getcomposer.org/doc/04-sche
324c0 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 61 3c ma.md.for.details.on.the.schema<
324e0 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 6f 72 /warning>');.}.}.elseif.(!$error
32500 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 2e 20 s).{.$io->writeError('<info>'...
32520 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 75 73 $name...'.is.valid.for.simple.us
32540 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 6f 3e age.with.composer.but.has</info>
32560 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 69 63 ');.$io->writeError('<info>stric
32580 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 6f 20 t.errors.that.make.it.unable.to.
325a0 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 66 6f be.published.as.a.package:</info
325c0 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 6f 2d >');.if.($printSchemaUrl).{.$io-
325e0 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 73 3a >writeError('<warning>See.https:
32600 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 61 2e //getcomposer.org/doc/04-schema.
32620 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 77 61 md.for.details.on.the.schema</wa
32640 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 65 45 rning>');.}.}.else.{.$io->writeE
32660 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 69 6e rror('<error>'...$name...'.is.in
32680 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 72 6e valid,.the.following.errors/warn
326a0 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 0a 0a ings.were.found:</error>');.}...
326c0 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 3d 20 .if.($checkPublish).{.$errors.=.
326e0 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 72 72 array_merge($errors,.$publishErr
32700 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 61 79 ors);.}.else.{.$warnings.=.array
32720 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 72 73 _merge($warnings,.$publishErrors
32740 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 6f 72 );.}....if.($checkLock).{.$error
32760 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 45 72 s.=.array_merge($errors,.$lockEr
32780 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 61 rors);.}.else.{.$warnings.=.arra
327a0 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 29 3b y_merge($warnings,.$lockErrors);
327c0 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 20 3d .}..$messages.=.array(.'error'.=
327e0 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 6e 67 >.$errors,.'warning'.=>.$warning
32800 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 73 74 s,.);..foreach.($messages.as.$st
32820 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 20 61 yle.=>.$msgs).{.foreach.($msgs.a
32840 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 2e 20 s.$msg).{.$io->writeError('<'...
32860 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 73 74 $style...'>'...$msg...'</'...$st
32880 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 0a 0a yle...'>');.}.}.}.}.<?php.......
328a0 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 6f .....namespace.Composer;..use.Co
328c0 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 72 66 mposer\Package\RootPackageInterf
328e0 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 65 72 ace;.use.Composer\Package\Locker
32900 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 69 ;.use.Composer\Repository\Reposi
32920 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 61 6c toryManager;.use.Composer\Instal
32940 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 6d ler\InstallationManager;.use.Com
32960 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 65 20 poser\Plugin\PluginManager;.use.
32980 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 6e 61 Composer\Downloader\DownloadMana
329a0 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 68 65 ger;.use.Composer\EventDispatche
329c0 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\
329e0 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 0a 0a Autoload\AutoloadGenerator;.....
32a00 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 4f 4e ..class.Composer.{.const.VERSION
32a20 20 3d 20 27 31 64 30 38 66 38 33 39 37 36 32 63 37 33 32 31 64 66 35 65 31 61 30 63 30 31 64 66 .=.'1d08f839762c7321df5e1a0c01df
32a40 36 36 34 30 33 61 32 30 61 66 37 64 27 3b 0a 63 6f 6e 73 74 20 42 52 41 4e 43 48 5f 41 4c 49 41 66403a20af7d';.const.BRANCH_ALIA
32a60 53 5f 56 45 52 53 49 4f 4e 20 3d 20 27 31 2e 30 2d 64 65 76 27 3b 0a 63 6f 6e 73 74 20 52 45 4c S_VERSION.=.'1.0-dev';.const.REL
32a80 45 41 53 45 5f 44 41 54 45 20 3d 20 27 32 30 31 36 2d 30 31 2d 31 38 20 31 32 3a 32 39 3a 31 34 EASE_DATE.=.'2016-01-18.12:29:14
32aa0 27 3b 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 ';.....private.$package;.....pri
32ac0 76 61 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 vate.$locker;.....private.$repos
32ae0 69 74 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 itoryManager;.....private.$downl
32b00 6f 61 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 oadManager;.....private.$install
32b20 61 74 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 ationManager;.....private.$plugi
32b40 6e 4d 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 nManager;.....private.$config;..
32b60 0a 0a 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 ...private.$eventDispatcher;....
32b80 0a 70 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 .private.$autoloadGenerator;....
32ba0 0a 0a 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 ..public.function.setPackage(Roo
32bc0 74 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 74 tPackageInterface.$package).{.$t
32be0 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 0a 0a 70 his->package.=.$package;.}.....p
32c00 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 0a 7b 0a 72 65 ublic.function.getPackage().{.re
32c20 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 70 75 62 6c 69 turn.$this->package;.}.....publi
32c40 63 20 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 c.function.setConfig(Config.$con
32c60 66 69 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 fig).{.$this->config.=.$config;.
32c80 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 6e 66 69 67 28 }.....public.function.getConfig(
32ca0 29 0a 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 ).{.return.$this->config;.}.....
32cc0 70 75 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 public.function.setLocker(Locker
32ce0 20 24 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 .$locker).{.$this->locker.=.$loc
32d00 6b 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 74 4c 6f ker;.}.....public.function.getLo
32d20 63 6b 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 cker().{.return.$this->locker;.}
32d40 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 69 74 6f .....public.function.setReposito
32d60 72 79 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 ryManager(RepositoryManager.$man
32d80 61 67 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 ager).{.$this->repositoryManager
32da0 20 3d 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 .=.$manager;.}.....public.functi
32dc0 6f 6e 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 on.getRepositoryManager().{.retu
32de0 72 6e 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 rn.$this->repositoryManager;.}..
32e00 0a 0a 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 ...public.function.setDownloadMa
32e20 6e 61 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 nager(DownloadManager.$manager).
32e40 7b 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 6d 61 6e 61 {.$this->downloadManager.=.$mana
32e60 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 20 67 65 74 44 6f ger;.}.....public.function.getDo
32e80 77 6e 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 wnloadManager().{.return.$this->
32ea0 64 6f 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 downloadManager;.}.....public.fu
32ec0 6e 63 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 nction.setInstallationManager(In
32ee0 73 74 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 stallationManager.$manager).{.$t
32f00 68 69 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 his->installationManager.=.$mana
32f20 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 20 67 65 74 49 6e ger;.}.....public.function.getIn
32f40 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 24 74 68 stallationManager().{.return.$th
32f60 69 73 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 is->installationManager;.}.....p
32f80 75 62 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 ublic.function.setPluginManager(
32fa0 50 6c 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 PluginManager.$manager).{.$this-
32fc0 3e 70 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 >pluginManager.=.$manager;.}....
32fe0 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 4d 61 6e 61 67 65 .public.function.getPluginManage
33000 72 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 4d 61 6e 61 67 65 r().{.return.$this->pluginManage
33020 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 45 76 65 6e r;.}.....public.function.setEven
33040 74 44 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 tDispatcher(EventDispatcher.$eve
33060 6e 74 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 ntDispatcher).{.$this->eventDisp
33080 61 74 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 atcher.=.$eventDispatcher;.}....
330a0 0a 70 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 .public.function.getEventDispatc
330c0 68 65 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 her().{.return.$this->eventDispa
330e0 74 63 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 tcher;.}.....public.function.set
33100 41 75 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 AutoloadGenerator(AutoloadGenera
33120 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 68 69 73 2d tor.$autoloadGenerator).{.$this-
33140 3e 61 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 >autoloadGenerator.=.$autoloadGe
33160 6e 65 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 nerator;.}.....public.function.g
33180 65 74 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 etAutoloadGenerator().{.return.$
331a0 74 68 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 this->autoloadGenerator;.}.}.<?p
331c0 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
331e0 3b 0a 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 ;..use.Composer\Config\ConfigSou
33200 72 63 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 rceInterface;.....class.Config.{
33220 0a 63 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 .const.RELATIVE_PATHS.=.1;..publ
33240 69 63 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 ic.static.$defaultConfig.=.array
33260 28 0a 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 (.'process-timeout'.=>.300,.'use
33280 2d 69 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 -include-path'.=>.false,.'prefer
332a0 72 65 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 red-install'.=>.'auto',.'notify-
332c0 6f 6e 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 on-install'.=>.true,.'github-pro
332e0 74 6f 63 6f 6c 73 27 20 3d 3e 20 61 72 72 61 79 28 27 67 69 74 27 2c 20 27 68 74 74 70 73 27 2c tocols'.=>.array('git',.'https',
33300 20 27 73 73 68 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 .'ssh'),.'vendor-dir'.=>.'vendor
33320 27 2c 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 ',.'bin-dir'.=>.'{$vendor-dir}/b
33340 69 6e 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 in',.'cache-dir'.=>.'{$home}/cac
33360 68 65 27 2c 0a 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 64 69 72 27 20 3d 3e 20 27 7b 24 63 61 63 he',.'cache-files-dir'.=>.'{$cac
33380 68 65 2d 64 69 72 7d 2f 66 69 6c 65 73 27 2c 0a 27 63 61 63 68 65 2d 72 65 70 6f 2d 64 69 72 27 he-dir}/files',.'cache-repo-dir'
333a0 20 3d 3e 20 27 7b 24 63 61 63 68 65 2d 64 69 72 7d 2f 72 65 70 6f 27 2c 0a 27 63 61 63 68 65 2d .=>.'{$cache-dir}/repo',.'cache-
333c0 76 63 73 2d 64 69 72 27 20 3d 3e 20 27 7b 24 63 61 63 68 65 2d 64 69 72 7d 2f 76 63 73 27 2c 0a vcs-dir'.=>.'{$cache-dir}/vcs',.
333e0 27 63 61 63 68 65 2d 74 74 6c 27 20 3d 3e 20 31 35 35 35 32 30 30 30 2c 20 0a 20 27 63 61 63 68 'cache-ttl'.=>.15552000,...'cach
33400 65 2d 66 69 6c 65 73 2d 74 74 6c 27 20 3d 3e 20 6e 75 6c 6c 2c 20 0a 20 27 63 61 63 68 65 2d 66 e-files-ttl'.=>.null,...'cache-f
33420 69 6c 65 73 2d 6d 61 78 73 69 7a 65 27 20 3d 3e 20 27 33 30 30 4d 69 42 27 2c 0a 27 62 69 6e 2d iles-maxsize'.=>.'300MiB',.'bin-
33440 63 6f 6d 70 61 74 27 20 3d 3e 20 27 61 75 74 6f 27 2c 0a 27 64 69 73 63 61 72 64 2d 63 68 61 6e compat'.=>.'auto',.'discard-chan
33460 67 65 73 27 20 3d 3e 20 66 61 6c 73 65 2c 0a 27 61 75 74 6f 6c 6f 61 64 65 72 2d 73 75 66 66 69 ges'.=>.false,.'autoloader-suffi
33480 78 27 20 3d 3e 20 6e 75 6c 6c 2c 0a 27 73 6f 72 74 2d 70 61 63 6b 61 67 65 73 27 20 3d 3e 20 66 x'.=>.null,.'sort-packages'.=>.f
334a0 61 6c 73 65 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 3e 20 66 alse,.'optimize-autoloader'.=>.f
334c0 61 6c 73 65 2c 0a 27 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 27 20 3d alse,.'classmap-authoritative'.=
334e0 3e 20 66 61 6c 73 65 2c 0a 27 70 72 65 70 65 6e 64 2d 61 75 74 6f 6c 6f 61 64 65 72 27 20 3d 3e >.false,.'prepend-autoloader'.=>
33500 20 74 72 75 65 2c 0a 27 67 69 74 68 75 62 2d 64 6f 6d 61 69 6e 73 27 20 3d 3e 20 61 72 72 61 79 .true,.'github-domains'.=>.array
33520 28 27 67 69 74 68 75 62 2e 63 6f 6d 27 29 2c 0a 27 64 69 73 61 62 6c 65 2d 74 6c 73 27 20 3d 3e ('github.com'),.'disable-tls'.=>
33540 20 66 61 6c 73 65 2c 0a 27 63 61 66 69 6c 65 27 20 3d 3e 20 6e 75 6c 6c 2c 0a 27 67 69 74 68 75 .false,.'cafile'.=>.null,.'githu
33560 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
33580 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
335a0 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',.
335c0 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-
335e0 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'.
33600 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
33620 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(.
33640 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'.=>.
33660 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
33680 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
336a0 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
336c0 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.
336e0 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
33700 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;
33720 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
33740 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
33760 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
33780 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::$
337a0 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
337c0 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
337e0 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
33800 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
33820 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
33840 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
33860 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
33880 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
338a0 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.$
338c0 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
338e0 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
33900 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
33920 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;.}
33940 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
33960 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
33980 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
339a0 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(
339c0 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($
339e0 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
33a00 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)
33a20 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
33a40 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
33a60 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
33a80 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].
33aa0 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
33ac0 5d 2c 20 24 76 61 6c 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 ],.$val);.}.else.{.$this->config
33ae0 5b 24 6b 65 79 5d 20 3d 20 24 76 61 6c 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 [$key].=.$val;.}.}.}..if.(!empty
33b00 28 24 63 6f 6e 66 69 67 5b 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d 29 20 26 26 20 69 73 5f ($config['repositories']).&&.is_
33b20 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d 29 29 20 array($config['repositories'])).
33b40 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 5f 72 65 {.$this->repositories.=.array_re
33b60 76 65 72 73 65 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 75 65 29 verse($this->repositories,.true)
33b80 3b 0a 24 6e 65 77 52 65 70 6f 73 20 3d 20 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 63 6f 6e ;.$newRepos.=.array_reverse($con
33ba0 66 69 67 5b 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d 2c 20 74 72 75 65 29 3b 0a 66 6f 72 65 fig['repositories'],.true);.fore
33bc0 61 63 68 20 28 24 6e 65 77 52 65 70 6f 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 72 65 70 6f ach.($newRepos.as.$name.=>.$repo
33be0 73 69 74 6f 72 79 29 20 7b 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 70 6f 73 sitory).{...if.(false.===.$repos
33c00 69 74 6f 72 79 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 itory).{.unset($this->repositori
33c20 65 73 5b 24 6e 61 6d 65 5d 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 es[$name]);.continue;.}....if.(i
33c40 73 5f 61 72 72 61 79 28 24 72 65 70 6f 73 69 74 6f 72 79 29 20 26 26 20 31 20 3d 3d 3d 20 63 6f s_array($repository).&&.1.===.co
33c60 75 6e 74 28 24 72 65 70 6f 73 69 74 6f 72 79 29 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 63 75 unt($repository).&&.false.===.cu
33c80 72 72 65 6e 74 28 24 72 65 70 6f 73 69 74 6f 72 79 29 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 rrent($repository)).{.unset($thi
33ca0 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 5b 6b 65 79 28 24 72 65 70 6f 73 69 74 6f 72 79 29 s->repositories[key($repository)
33cc0 5d 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 69 6e 74 28 24 6e ]);.continue;.}....if.(is_int($n
33ce0 61 6d 65 29 29 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 ame)).{.$this->repositories[].=.
33d00 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 $repository;.}.else.{.$this->rep
33d20 6f 73 69 74 6f 72 69 65 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a ositories[$name].=.$repository;.
33d40 7d 0a 7d 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 5f }.}.$this->repositories.=.array_
33d60 72 65 76 65 72 73 65 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 75 reverse($this->repositories,.tru
33d80 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 67 65 74 52 e);.}.}.....public.function.getR
33da0 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 68 69 73 2d 3e 72 65 epositories().{.return.$this->re
33dc0 70 6f 73 69 74 6f 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 positories;.}..........public.fu
33de0 6e 63 74 69 6f 6e 20 67 65 74 28 24 6b 65 79 2c 20 24 66 6c 61 67 73 20 3d 20 30 29 0a 7b 0a 73 nction.get($key,.$flags.=.0).{.s
33e00 77 69 74 63 68 20 28 24 6b 65 79 29 20 7b 0a 63 61 73 65 20 27 76 65 6e 64 6f 72 2d 64 69 72 27 witch.($key).{.case.'vendor-dir'
33e20 3a 0a 63 61 73 65 20 27 62 69 6e 2d 64 69 72 27 3a 0a 63 61 73 65 20 27 70 72 6f 63 65 73 73 2d :.case.'bin-dir':.case.'process-
33e40 74 69 6d 65 6f 75 74 27 3a 0a 63 61 73 65 20 27 63 61 63 68 65 2d 64 69 72 27 3a 0a 63 61 73 65 timeout':.case.'cache-dir':.case
33e60 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 65 2d .'cache-files-dir':.case.'cache-
33e80 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 27 3a repo-dir':.case.'cache-vcs-dir':
33ea0 0a 63 61 73 65 20 27 63 61 66 69 6c 65 27 3a 0a 0a 20 24 65 6e 76 20 3d 20 27 43 4f 4d 50 4f 53 .case.'cafile':...$env.=.'COMPOS
33ec0 45 52 5f 27 20 2e 20 73 74 72 74 6f 75 70 70 65 72 28 73 74 72 74 72 28 24 6b 65 79 2c 20 27 2d ER_'...strtoupper(strtr($key,.'-
33ee0 27 2c 20 27 5f 27 29 29 3b 0a 0a 24 76 61 6c 20 3d 20 72 74 72 69 6d 28 24 74 68 69 73 2d 3e 70 ',.'_'));..$val.=.rtrim($this->p
33f00 72 6f 63 65 73 73 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 45 6e 76 28 24 65 6e rocess($this->getComposerEnv($en
33f20 76 29 20 3f 3a 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 2c 20 24 66 6c 61 67 v).?:.$this->config[$key],.$flag
33f40 73 29 2c 20 27 2f 5c 5c 27 29 3b 0a 24 76 61 6c 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 s),.'/\\');.$val.=.preg_replace(
33f60 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 69 6d 28 67 65 74 65 '#^(\$HOME|~)(/|$)#',.rtrim(gete
33f80 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 52 50 52 4f 46 49 4c nv('HOME').?:.getenv('USERPROFIL
33fa0 45 27 29 2c 20 27 2f 5c 5c 27 29 20 2e 20 27 2f 27 2c 20 24 76 61 6c 29 3b 0a 0a 69 66 20 28 73 E'),.'/\\')...'/',.$val);..if.(s
33fc0 75 62 73 74 72 28 24 6b 65 79 2c 20 2d 34 29 20 21 3d 3d 20 27 2d 64 69 72 27 29 20 7b 0a 72 65 ubstr($key,.-4).!==.'-dir').{.re
33fe0 74 75 72 6e 20 24 76 61 6c 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 28 24 66 6c 61 67 73 20 26 20 73 turn.$val;.}..return.($flags.&.s
34000 65 6c 66 3a 3a 52 45 4c 41 54 49 56 45 5f 50 41 54 48 53 20 3d 3d 20 73 65 6c 66 3a 3a 52 45 4c elf::RELATIVE_PATHS.==.self::REL
34020 41 54 49 56 45 5f 50 41 54 48 53 29 20 3f 20 24 76 61 6c 20 3a 20 24 74 68 69 73 2d 3e 72 65 61 ATIVE_PATHS).?.$val.:.$this->rea
34040 6c 70 61 74 68 28 24 76 61 6c 29 3b 0a 0a 63 61 73 65 20 27 63 61 63 68 65 2d 74 74 6c 27 3a 0a lpath($val);..case.'cache-ttl':.
34060 72 65 74 75 72 6e 20 28 69 6e 74 29 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d return.(int).$this->config[$key]
34080 3b 0a 0a 63 61 73 65 20 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 6d 61 78 73 69 7a 65 27 3a 0a 69 ;..case.'cache-files-maxsize':.i
340a0 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 5c 73 2a 28 5b 30 2d 39 2e 5d 2b 29 5c 73 f.(!preg_match('/^\s*([0-9.]+)\s
340c0 2a 28 3f 3a 28 5b 6b 6d 67 5d 29 28 3f 3a 69 3f 62 29 3f 29 3f 5c 73 2a 24 2f 69 27 2c 20 24 74 *(?:([kmg])(?:i?b)?)?\s*$/i',.$t
340e0 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a his->config[$key],.$matches)).{.
34100 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 0a 22 43 6f throw.new.\RuntimeException(."Co
34120 75 6c 64 20 6e 6f 74 20 70 61 72 73 65 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 27 63 61 63 68 uld.not.parse.the.value.of.'cach
34140 65 2d 66 69 6c 65 73 2d 6d 61 78 73 69 7a 65 27 3a 20 7b 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 e-files-maxsize':.{$this->config
34160 5b 24 6b 65 79 5d 7d 22 0a 29 3b 0a 7d 0a 24 73 69 7a 65 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 [$key]}".);.}.$size.=.$matches[1
34180 5d 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 20 7b 0a 73 77 69 ];.if.(isset($matches[2])).{.swi
341a0 74 63 68 20 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 20 7b 0a tch.(strtolower($matches[2])).{.
341c0 63 61 73 65 20 27 67 27 3a 0a 24 73 69 7a 65 20 2a 3d 20 31 30 32 34 3b 0a 0a 20 63 61 73 65 20 case.'g':.$size.*=.1024;...case.
341e0 27 6d 27 3a 0a 24 73 69 7a 65 20 2a 3d 20 31 30 32 34 3b 0a 0a 20 63 61 73 65 20 27 6b 27 3a 0a 'm':.$size.*=.1024;...case.'k':.
34200 24 73 69 7a 65 20 2a 3d 20 31 30 32 34 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 $size.*=.1024;.break;.}.}..retur
34220 6e 20 24 73 69 7a 65 3b 0a 0a 63 61 73 65 20 27 63 61 63 68 65 2d 66 69 6c 65 73 2d 74 74 6c 27 n.$size;..case.'cache-files-ttl'
34240 3a 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 24 6b 65 79 5d 29 :.if.(isset($this->config[$key])
34260 29 20 7b 0a 72 65 74 75 72 6e 20 28 69 6e 74 29 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 ).{.return.(int).$this->config[$
34280 6b 65 79 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 28 69 6e 74 29 20 24 74 68 69 73 2d 3e 63 6f 6e key];.}..return.(int).$this->con
342a0 66 69 67 5b 27 63 61 63 68 65 2d 74 74 6c 27 5d 3b 0a 0a 63 61 73 65 20 27 68 6f 6d 65 27 3a 0a fig['cache-ttl'];..case.'home':.
342c0 72 65 74 75 72 6e 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 return.rtrim($this->process($thi
342e0 73 2d 3e 63 6f 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 s->config[$key],.$flags),.'/\\')
34300 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 20 24 ;..case.'bin-compat':.$value.=.$
34320 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 5f 42 this->getComposerEnv('COMPOSER_B
34340 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 6b 65 IN_COMPAT').?:.$this->config[$ke
34360 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 61 79 y];..if.(!in_array($value,.array
34380 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 20 5c ('auto',.'full'))).{.throw.new.\
343a0 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 75 65 RuntimeException(."Invalid.value
343c0 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 78 70 .for.'bin-compat':.{$value}..Exp
343e0 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 20 24 ected.auto,.full".);.}..return.$
34400 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 3a 0a value;..case.'discard-changes':.
34420 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 6e 76 if.($env.=.$this->getComposerEnv
34440 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 7b 0a ('COMPOSER_DISCARD_CHANGES')).{.
34460 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 73 68 if.(!in_array($env,.array('stash
34480 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 20 74 ',.'true',.'false',.'1',.'0'),.t
344a0 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 74 rue)).{.throw.new.\RuntimeExcept
344c0 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 45 52 ion(."Invalid.value.for.COMPOSER
344e0 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 63 74 _DISCARD_CHANGES:.{$env}..Expect
34500 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 0a 29 ed.1,.0,.true,.false.or.stash".)
34520 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 74 75 ;.}.if.('stash'.===.$env).{.retu
34540 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 3d 3d rn.'stash';.}....return.$env.!==
34560 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 20 28 .'false'.&&.(bool).$env;.}..if.(
34580 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 20 61 !in_array($this->config[$key],.a
345a0 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 75 65 rray(true,.false,.'stash'),.true
345c0 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
345e0 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 63 68 (."Invalid.value.for.'discard-ch
34600 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 20 45 anges':.{$this->config[$key]}..E
34620 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 29 3b xpected.true,.false.or.stash".);
34640 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 3b 0a .}..return.$this->config[$key];.
34660 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 69 66 20 28 72 65 .case.'github-protocols':.if.(re
34680 73 65 74 28 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 6f 63 set($this->config['github-protoc
346a0 6f 6c 73 27 5d 29 20 3d 3d 3d 20 27 68 74 74 70 27 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c ols']).===.'http').{.throw.new.\
346c0 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 68 74 74 70 20 70 72 6f 74 6f RuntimeException('The.http.proto
346e0 63 6f 6c 20 66 6f 72 20 67 69 74 68 75 62 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 col.for.github.is.not.available.
34700 61 6e 79 6d 6f 72 65 2c 20 75 70 64 61 74 65 20 79 6f 75 72 20 63 6f 6e 66 69 67 5c 27 73 20 67 anymore,.update.your.config\'s.g
34720 69 74 68 75 62 2d 70 72 6f 74 6f 63 6f 6c 73 20 74 6f 20 75 73 65 20 22 68 74 74 70 73 22 2c 20 ithub-protocols.to.use."https",.
34740 22 67 69 74 22 20 6f 72 20 22 73 73 68 22 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 "git".or."ssh"');.}..return.$thi
34760 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 3b 0a 0a 63 61 73 65 20 27 64 69 73 61 62 6c 65 2d s->config[$key];..case.'disable-
34780 74 6c 73 27 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 tls':.return.$this->config[$key]
347a0 20 21 3d 3d 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 .!==.'false'.&&.(bool).$this->co
347c0 6e 66 69 67 5b 24 6b 65 79 5d 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a 69 66 20 28 21 69 73 73 65 74 nfig[$key];..default:.if.(!isset
347e0 28 24 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 ($this->config[$key])).{.return.
34800 6e 75 6c 6c 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 28 24 null;.}..return.$this->process($
34820 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 2c 20 24 66 6c 61 67 73 29 3b 0a 7d 0a 7d this->config[$key],.$flags);.}.}
34840 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 6c 6c 28 24 66 6c 61 67 73 20 3d 20 30 ..public.function.all($flags.=.0
34860 29 0a 7b 0a 24 61 6c 6c 20 3d 20 61 72 72 61 79 28 0a 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 ).{.$all.=.array(.'repositories'
34880 20 3d 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 29 3b .=>.$this->getRepositories(),.);
348a0 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 63 6f 6e 66 .foreach.(array_keys($this->conf
348c0 69 67 29 20 61 73 20 24 6b 65 79 29 20 7b 0a 24 61 6c 6c 5b 27 63 6f 6e 66 69 67 27 5d 5b 24 6b ig).as.$key).{.$all['config'][$k
348e0 65 79 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 28 24 6b 65 79 2c 20 24 66 6c 61 67 73 29 3b 0a ey].=.$this->get($key,.$flags);.
34900 7d 0a 0a 72 65 74 75 72 6e 20 24 61 6c 6c 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 }..return.$all;.}..public.functi
34920 6f 6e 20 72 61 77 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 72 65 70 6f 73 69 on.raw().{.return.array(.'reposi
34940 74 6f 72 69 65 73 27 20 3d 3e 20 24 74 68 69 73 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 tories'.=>.$this->getRepositorie
34960 73 28 29 2c 0a 27 63 6f 6e 66 69 67 27 20 3d 3e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 0a s(),.'config'.=>.$this->config,.
34980 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 68 61 73 28 );.}........public.function.has(
349a0 24 6b 65 79 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 $key).{.return.array_key_exists(
349c0 24 6b 65 79 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a $key,.$this->config);.}.........
349e0 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 28 24 76 61 6c 75 65 2c private.function.process($value,
34a00 20 24 66 6c 61 67 73 29 0a 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 24 74 68 69 73 3b 0a 0a 69 66 20 .$flags).{.$config.=.$this;..if.
34a20 28 21 69 73 5f 73 74 72 69 6e 67 28 24 76 61 6c 75 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 (!is_string($value)).{.return.$v
34a40 61 6c 75 65 3b 0a 7d 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 alue;.}..return.preg_replace_cal
34a60 6c 62 61 63 6b 28 27 23 5c 7b 5c 24 28 2e 2b 29 5c 7d 23 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 lback('#\{\$(.+)\}#',.function.(
34a80 24 6d 61 74 63 68 29 20 75 73 65 20 28 24 63 6f 6e 66 69 67 2c 20 24 66 6c 61 67 73 29 20 7b 0a $match).use.($config,.$flags).{.
34aa0 72 65 74 75 72 6e 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 24 6d 61 74 63 68 5b 31 5d 2c 20 24 return.$config->get($match[1],.$
34ac0 66 6c 61 67 73 29 3b 0a 7d 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 flags);.},.$value);.}..........p
34ae0 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 6c 70 61 74 68 28 24 70 61 74 68 29 0a rivate.function.realpath($path).
34b00 7b 0a 69 66 20 28 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 {.if.(substr($path,.0,.1).===.'/
34b20 27 20 7c 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 '.||.substr($path,.1,.1).===.':'
34b40 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 74 68 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 ).{.return.$path;.}..return.$thi
34b60 73 2d 3e 62 61 73 65 44 69 72 20 2e 20 27 2f 27 20 2e 20 24 70 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a s->baseDir...'/'...$path;.}.....
34b80 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 70 6f 73 ......private.function.getCompos
34ba0 65 72 45 6e 76 28 24 76 61 72 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 75 73 65 45 6e 76 69 erEnv($var).{.if.($this->useEnvi
34bc0 72 6f 6e 6d 65 6e 74 29 20 7b 0a 72 65 74 75 72 6e 20 67 65 74 65 6e 76 28 24 76 61 72 29 3b 0a ronment).{.return.getenv($var);.
34be0 7d 0a 0a 72 65 74 75 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 }..return.false;.}.}.<?php......
34c00 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 66 69 67 3b ......namespace.Composer\Config;
34c20 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 6f 6e 66 69 67 53 6f 75 72 63 65 49 6e ........interface.ConfigSourceIn
34c40 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 6e 20 terface.{.......public.function.
34c60 61 64 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 3b 0a 0a addRepository($name,.$config);..
34c80 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 52 65 70 6f 73 .....public.function.removeRepos
34ca0 69 74 6f 72 79 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 itory($name);........public.func
34cc0 74 69 6f 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 tion.addConfigSetting($name,.$va
34ce0 6c 75 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 72 65 6d 6f lue);.......public.function.remo
34d00 76 65 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a veConfigSetting($name);.........
34d20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4c 69 6e 6b 28 24 74 79 70 65 2c 20 24 public.function.addLink($type,.$
34d40 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e name,.$value);........public.fun
34d60 63 74 69 6f 6e 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 3b 0a ction.removeLink($type,.$name);.
34d80 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 65 28 29 3b ......public.function.getName();
34da0 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
34dc0 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f mposer\Config;..use.Composer\Jso
34de0 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 4a 73 6f 6e 5c 4a 73 n\JsonFile;.use.Composer\Json\Js
34e00 6f 6e 4d 61 6e 69 70 75 6c 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e onManipulator;........class.Json
34e20 43 6f 6e 66 69 67 53 6f 75 72 63 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 66 69 67 53 6f ConfigSource.implements.ConfigSo
34e40 75 72 63 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 urceInterface.{....private.$file
34e60 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 61 75 74 68 43 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 0a ;.....private.$authConfig;......
34e80 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 4a 73 ..public.function.__construct(Js
34ea0 6f 6e 46 69 6c 65 20 24 66 69 6c 65 2c 20 24 61 75 74 68 43 6f 6e 66 69 67 20 3d 20 66 61 6c 73 onFile.$file,.$authConfig.=.fals
34ec0 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 20 3d 20 24 66 69 6c 65 3b 0a 24 74 68 69 73 2d e).{.$this->file.=.$file;.$this-
34ee0 3e 61 75 74 68 43 6f 6e 66 69 67 20 3d 20 24 61 75 74 68 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 0a 0a >authConfig.=.$authConfig;.}....
34f00 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 74 .public.function.getName().{.ret
34f20 75 72 6e 20 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 3b 0a 7d 0a 0a 0a urn.$this->file->getPath();.}...
34f40 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(
34f60 24 6e 61 6d 65 2c 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 61 6e 69 70 75 6c $name,.$config).{.$this->manipul
34f80 61 74 65 4a 73 6f 6e 28 27 61 64 64 52 65 70 6f 73 69 74 6f 72 79 27 2c 20 24 6e 61 6d 65 2c 20 ateJson('addRepository',.$name,.
34fa0 24 63 6f 6e 66 69 67 2c 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 63 6f 6e 66 69 67 2c 20 24 72 65 $config,.function.(&$config,.$re
34fc0 70 6f 2c 20 24 72 65 70 6f 43 6f 6e 66 69 67 29 20 7b 0a 24 63 6f 6e 66 69 67 5b 27 72 65 70 6f po,.$repoConfig).{.$config['repo
34fe0 73 69 74 6f 72 69 65 73 27 5d 5b 24 72 65 70 6f 5d 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 3b sitories'][$repo].=.$repoConfig;
35000 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 20 72 65 6d 6f 76 .});.}.....public.function.remov
35020 65 52 65 70 6f 73 69 74 6f 72 79 28 24 6e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 61 6e 69 eRepository($name).{.$this->mani
35040 70 75 6c 61 74 65 4a 73 6f 6e 28 27 72 65 6d 6f 76 65 52 65 70 6f 73 69 74 6f 72 79 27 2c 20 24 pulateJson('removeRepository',.$
35060 6e 61 6d 65 2c 20 66 75 6e 63 74 69 6f 6e 20 28 26 24 63 6f 6e 66 69 67 2c 20 24 72 65 70 6f 29 name,.function.(&$config,.$repo)
35080 20 7b 0a 75 6e 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d .{.unset($config['repositories']
350a0 5b 24 72 65 70 6f 5d 29 3b 0a 7d 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 [$repo]);.});.}.....public.funct
350c0 69 6f 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 ion.addConfigSetting($name,.$val
350e0 75 65 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 ue).{.$this->manipulateJson('add
35100 43 6f 6e 66 69 67 53 65 74 74 69 6e 67 27 2c 20 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 2c 20 66 ConfigSetting',.$name,.$value,.f
35120 75 6e 63 74 69 6f 6e 20 28 26 24 63 6f 6e 66 69 67 2c 20 24 6b 65 79 2c 20 24 76 61 6c 29 20 7b unction.(&$config,.$key,.$val).{
35140 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 68 .if.(preg_match('{^(github-oauth
35160 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 72 |gitlab-oauth|http-basic|platfor
35180 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 73 m)\.}',.$key)).{.list($key,.$hos
351a0 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 28 t).=.explode('.',.$key,.2);.if.(
351c0 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 66 69 67 5b 24 6b 65 $this->authConfig).{.$config[$ke
351e0 79 5d 5b 24 68 6f 73 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 y][$host].=.$val;.}.else.{.$conf
35200 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 20 3d 20 24 76 61 6c ig['config'][$key][$host].=.$val
35220 3b 0a 7d 0a 7d 20 65 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 ;.}.}.else.{.$config['config'][$
35240 6b 65 79 5d 20 3d 20 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 key].=.$val;.}.});.}.....public.
35260 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 61 function.removeConfigSetting($na
35280 6d 65 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 72 65 6d me).{.$this->manipulateJson('rem
352a0 6f 76 65 43 6f 6e 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 oveConfigSetting',.$name,.functi
352c0 6f 6e 20 28 26 24 63 6f 6e 66 69 67 2c 20 24 6b 65 79 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d on.(&$config,.$key).{.if.(preg_m
352e0 61 74 63 68 28 27 7b 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 atch('{^(github-oauth|gitlab-oau
35300 74 68 7c 68 74 74 70 2d 62 61 73 69 63 7c 70 6c 61 74 66 6f 72 6d 29 5c 2e 7d 27 2c 20 24 6b 65 th|http-basic|platform)\.}',.$ke
35320 79 29 29 20 7b 0a 6c 69 73 74 28 24 6b 65 79 2c 20 24 68 6f 73 74 29 20 3d 20 65 78 70 6c 6f 64 y)).{.list($key,.$host).=.explod
35340 65 28 27 2e 27 2c 20 24 6b 65 79 2c 20 32 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 75 74 68 e('.',.$key,.2);.if.($this->auth
35360 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 65 79 5d 5b 24 68 Config).{.unset($config[$key][$h
35380 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 66 69 67 5b 27 63 ost]);.}.else.{.unset($config['c
353a0 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 20 65 6c 73 65 20 onfig'][$key][$host]);.}.}.else.
353c0 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 24 6b 65 79 5d 29 {.unset($config['config'][$key])
353e0 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 6e 20 61 64 ;.}.});.}.....public.function.ad
35400 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 0a 7b 0a 24 74 dLink($type,.$name,.$value).{.$t
35420 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 6e 6b 27 2c 20 24 his->manipulateJson('addLink',.$
35440 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 69 6f 6e 20 28 26 type,.$name,.$value,.function.(&
35460 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 6c 75 65 29 20 7b $config,.$type,.$name,.$value).{
35480 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 76 61 6c 75 65 3b .$config[$type][$name].=.$value;
354a0 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 20 72 65 6d 6f 76 .});.}.....public.function.remov
354c0 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 73 2d 3e 6d 61 6e eLink($type,.$name).{.$this->man
354e0 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 27 2c 20 24 74 79 ipulateJson('removeSubNode',.$ty
35500 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 66 69 67 2c 20 24 pe,.$name,.function.(&$config,.$
35520 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 69 67 5b 24 74 79 type,.$name).{.unset($config[$ty
35540 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 74 65 64 20 66 75 pe][$name]);.});.}..protected.fu
35560 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 68 6f 64 2c 20 24 nction.manipulateJson($method,.$
35580 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 20 66 75 6e 63 5f args,.$fallback).{.$args.=.func_
355a0 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 24 61 72 67 73 29 get_args();...array_shift($args)
355c0 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 72 67 73 29 3b 0a ;.$fallback.=.array_pop($args);.
355e0 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 29 20 7b 0a 24 63 .if.($this->file->exists()).{.$c
35600 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 24 74 68 69 ontents.=.file_get_contents($thi
35620 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 66 20 28 24 s->file->getPath());.}.elseif.($
35640 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 73 20 3d 20 this->authConfig).{.$contents.=.
35660 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 20 3d 20 22 "{\n}\n";.}.else.{.$contents.=."
35680 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 6e 7d 5c 6e {\n....\"config\":.{\n....}\n}\n
356a0 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 6e 4d 61 6e ";.}..$manipulator.=.new.JsonMan
356c0 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 6c 65 20 3d ipulator($contents);..$newFile.=
356e0 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 69 66 20 28 .!$this->file->exists();....if.(
35700 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 20 3d 3d 3d $this->authConfig.&&.$method.===
35720 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 6f 64 20 3d .'addConfigSetting').{.$method.=
35740 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 65 2c 20 24 .'addSubNode';.list($mainNode,.$
35760 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 20 32 name).=.explode('.',.$args[0],.2
35780 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 61 6d );.$args.=.array($mainNode,.$nam
357a0 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 73 2d 3e 61 e,.$args[1]);.}.elseif.($this->a
357c0 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 6d 6f 76 65 uthConfig.&&.$method.===.'remove
357e0 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 27 72 65 6d ConfigSetting').{.$method.=.'rem
35800 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 20 24 6e 61 oveSubNode';.list($mainNode,.$na
35820 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 20 32 29 3b me).=.explode('.',.$args[0],.2);
35840 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 61 6d 65 29 .$args.=.array($mainNode,.$name)
35860 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 72 61 79 28 ;.}....if.(call_user_func_array(
35880 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 2c 20 24 61 array($manipulator,.$method),.$a
358a0 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 68 69 73 2d rgs)).{.file_put_contents($this-
358c0 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 6f 72 2d 3e >file->getPath(),.$manipulator->
358e0 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 63 6f 6e 66 getContents());.}.else.{...$conf
35900 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 68 69 73 2d ig.=.$this->file->read();.$this-
35920 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 66 69 67 29 >arrayUnshiftRef($args,.$config)
35940 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 62 61 63 6b ;.call_user_func_array($fallback
35960 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 28 24 63 6f ,.$args);.$this->file->write($co
35980 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 40 63 68 6d 6f 64 nfig);.}..if.($newFile).{.@chmod
359a0 28 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 2c 20 30 36 30 30 29 3b 0a ($this->file->getPath(),.0600);.
359c0 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 61 72 72 }.}.........private.function.arr
359e0 61 79 55 6e 73 68 69 66 74 52 65 66 28 26 24 61 72 72 61 79 2c 20 26 24 76 61 6c 75 65 29 0a 7b ayUnshiftRef(&$array,.&$value).{
35a00 0a 24 72 65 74 75 72 6e 20 3d 20 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 61 72 72 61 79 2c .$return.=.array_unshift($array,
35a20 20 27 27 29 3b 0a 24 61 72 72 61 79 5b 30 5d 20 3d 20 26 24 76 61 6c 75 65 3b 0a 0a 72 65 74 75 .'');.$array[0].=.&$value;..retu
35a40 72 6e 20 24 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a rn.$return;.}.}.<?php...........
35a60 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 6c 65 3b 0a 0a 75 73 .namespace.Composer\Console;..us
35a80 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 6c e.Symfony\Component\Console\Appl
35aa0 69 63 61 74 69 6f 6e 20 61 73 20 42 61 73 65 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 ication.as.BaseApplication;.use.
35ac0 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\
35ae0 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 6d 70 InputInterface;.use.Symfony\Comp
35b00 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;
35b20 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
35b40 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 75 73 utput\ConsoleOutputInterface;.us
35b60 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
35b80 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 66 6f 6e 79 5c ut\OutputInterface;.use.Symfony\
35ba0 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 6c 65 Component\Console\Output\Console
35bc0 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
35be0 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 3b nsole\Formatter\OutputFormatter;
35c00 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 43 6f 6d 70 6f .use.Composer\Command;.use.Compo
35c20 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 46 61 63 74 6f ser\Composer;.use.Composer\Facto
35c40 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 65 3b ry;.use.Composer\IO\IOInterface;
35c60 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 43 6f 6e 73 6f 6c 65 49 4f 3b 0a 75 73 65 20 .use.Composer\IO\ConsoleIO;.use.
35c80 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 78 63 65 Composer\Json\JsonValidationExce
35ca0 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 45 72 72 6f 72 48 61 ption;.use.Composer\Util\ErrorHa
35cc0 6e 64 6c 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 70 70 6c 69 63 61 74 69 6f 6e ndler;.........class.Application
35ce0 20 65 78 74 65 6e 64 73 20 42 61 73 65 41 70 70 6c 69 63 61 74 69 6f 6e 0a 7b 0a 0a 0a 0a 70 72 .extends.BaseApplication.{....pr
35d00 6f 74 65 63 74 65 64 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 otected.$composer;.....protected
35d20 20 24 69 6f 3b 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 6c 6f 67 6f 20 3d 20 27 20 .$io;..private.static.$logo.=.'.
35d40 20 20 5f 5f 5f 5f 5f 5f 0a 20 20 2f 20 5f 5f 5f 5f 2f 5f 5f 5f 20 20 5f 5f 5f 5f 20 5f 5f 5f 20 ..______.../.____/___..____.___.
35d60 20 5f 5f 5f 5f 20 20 5f 5f 5f 5f 20 20 5f 5f 5f 5f 5f 5f 5f 5f 20 20 5f 5f 5f 5f 5f 0a 20 2f 20 .____..____..________.._____../.
35d80 2f 20 20 20 2f 20 5f 5f 20 5c 2f 20 5f 5f 20 60 5f 5f 20 5c 2f 20 5f 5f 20 5c 2f 20 5f 5f 20 5c /.../.__.\/.__.`__.\/.__.\/.__.\
35da0 2f 20 5f 5f 5f 2f 20 5f 20 5c 2f 20 5f 5f 5f 2f 0a 2f 20 2f 5f 5f 5f 2f 20 2f 5f 2f 20 2f 20 2f /.___/._.\/.___/././___/./_/././
35dc0 20 2f 20 2f 20 2f 20 2f 20 2f 5f 2f 20 2f 20 2f 5f 2f 20 28 5f 5f 20 20 29 20 20 5f 5f 2f 20 2f ./././././_/././_/.(__..)..__/./
35de0 0a 5c 5f 5f 5f 5f 2f 5c 5f 5f 5f 5f 2f 5f 2f 20 2f 5f 2f 20 2f 5f 2f 20 2e 5f 5f 5f 2f 5c 5f 5f .\____/\____/_/./_/./_/..___/\__
35e00 5f 5f 2f 5f 5f 5f 5f 2f 5c 5f 5f 5f 2f 5f 2f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 __/____/\___/_/.................
35e20 20 20 20 20 2f 5f 2f 0a 27 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f ..../_/.';..public.function.__co
35e40 6e 73 74 72 75 63 74 28 29 0a 7b 0a 73 74 61 74 69 63 20 24 73 68 75 74 64 6f 77 6e 52 65 67 69 nstruct().{.static.$shutdownRegi
35e60 73 74 65 72 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 stered.=.false;..if.(function_ex
35e80 69 73 74 73 28 27 69 6e 69 5f 73 65 74 27 29 20 26 26 20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 ists('ini_set').&&.extension_loa
35ea0 64 65 64 28 27 78 64 65 62 75 67 27 29 29 20 7b 0a 69 6e 69 5f 73 65 74 28 27 78 64 65 62 75 67 ded('xdebug')).{.ini_set('xdebug
35ec0 2e 73 68 6f 77 5f 65 78 63 65 70 74 69 6f 6e 5f 74 72 61 63 65 27 2c 20 66 61 6c 73 65 29 3b 0a .show_exception_trace',.false);.
35ee0 69 6e 69 5f 73 65 74 28 27 78 64 65 62 75 67 2e 73 63 72 65 61 6d 27 2c 20 66 61 6c 73 65 29 3b ini_set('xdebug.scream',.false);
35f00 0a 7d 0a 0a 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 64 61 74 65 5f 64 65 .}..if.(function_exists('date_de
35f20 66 61 75 6c 74 5f 74 69 6d 65 7a 6f 6e 65 5f 73 65 74 27 29 20 26 26 20 66 75 6e 63 74 69 6f 6e fault_timezone_set').&&.function
35f40 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 67 _exists('date_default_timezone_g
35f60 65 74 27 29 29 20 7b 0a 64 61 74 65 5f 64 65 66 61 75 6c 74 5f 74 69 6d 65 7a 6f 6e 65 5f 73 65 et')).{.date_default_timezone_se
35f80 74 28 40 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 28 29 29 3b t(@date_default_timezone_get());
35fa0 0a 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 .}..if.(!$shutdownRegistered).{.
35fc0 24 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 $shutdownRegistered.=.true;..reg
35fe0 69 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 ister_shutdown_function(function
36000 20 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 .().{.$lastError.=.error_get_las
36020 74 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 t();..if.($lastError.&&.$lastErr
36040 6f 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 or['message'].&&.(strpos($lastEr
36060 72 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 ror['message'],.'Allowed.memory'
36080 29 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 ).!==.false..||.strpos($lastErro
360a0 72 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 r['message'],.'exceeded.memory')
360c0 20 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 .!==.false.)).{.echo."\n"..'Chec
360e0 6b 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 k.https://getcomposer.org/doc/ar
36100 74 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 ticles/troubleshooting.md#memory
36120 2d 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 -limit-errors.for.more.info.on.h
36140 6f 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 ow.to.handle.out.of.memory.error
36160 73 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 s.';.}.});.}..parent::__construc
36180 74 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 t('Composer',.Composer::VERSION)
361a0 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 75 6e 28 49 6e 70 75 ;.}.....public.function.run(Inpu
361c0 74 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 tInterface.$input.=.null,.Output
361e0 49 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 Interface.$output.=.null).{.if.(
36200 6e 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 null.===.$output).{.$styles.=.Fa
36220 63 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 ctory::createAdditionalStyles();
36240 0a 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 .$formatter.=.new.OutputFormatte
36260 72 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 r(null,.$styles);.$output.=.new.
36280 43 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 ConsoleOutput(ConsoleOutput::VER
362a0 42 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 BOSITY_NORMAL,.null,.$formatter)
362c0 3b 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 ;.}..return.parent::run($input,.
362e0 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 63 74 69 6f 6e 20 $output);.}.....public.function.
36300 64 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 doRun(InputInterface.$input,.Out
36320 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 69 6f 20 3d 20 24 74 putInterface.$output).{.$io.=.$t
36340 68 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 his->io.=.new.ConsoleIO($input,.
36360 24 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 $output,.$this->getHelperSet());
36380 0a 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 .ErrorHandler::register($io);...
363a0 20 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 .$commandName.=.'';.if.($name.=.
363c0 24 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 $this->getCommandName($input)).{
363e0 0a 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 .try.{.$commandName.=.$this->fin
36400 64 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 d($name)->getName();.}.catch.(\I
36420 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 20 7b 0a 7d 0a nvalidArgumentException.$e).{.}.
36440 7d 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 }..if.($commandName.!==.'global'
36460 29 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 ).{.if.(PHP_VERSION_ID.<.50302).
36480 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 43 6f 6d 70 {.$io->writeError('<warning>Comp
364a0 6f 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 oser.only.officially.supports.PH
364c0 50 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 P.5.3.2.and.above,.you.will.most
364e0 20 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 .likely.encounter.problems.with.
36500 79 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 your.PHP.'.PHP_VERSION.',.upgrad
36520 69 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 ing.is.strongly.recommended.</wa
36540 72 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 rning>');.}..if.(extension_loade
36560 64 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 d('xdebug').&&.!getenv('COMPOSER
36580 5f 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 _DISABLE_XDEBUG_WARN')).{.$io->w
365a0 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 72 75 6e 6e riteError('<warning>You.are.runn
365c0 69 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 ing.composer.with.xdebug.enabled
365e0 2e 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 ..This.has.a.major.impact.on.run
36600 74 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 time.performance..See.https://ge
36620 74 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 tcomposer.org/xdebug</warning>')
36640 3b 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 ;.}..if.(defined('COMPOSER_DEV_W
36660 41 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 ARNING_TIME').&&.$commandName.!=
36680 3d 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 =.'self-update'.&&.$commandName.
366a0 21 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 !==.'selfupdate'.&&.time().>.COM
366c0 50 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 POSER_DEV_WARNING_TIME).{.$io->w
366e0 72 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 riteError(sprintf('<warning>Warn
36700 69 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 ing:.This.development.build.of.c
36720 6f 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 omposer.is.over.60.days.old..It.
36740 69 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 is.recommended.to.update.it.by.r
36760 75 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 unning."%s.self-update".to.get.t
36780 68 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 he.latest.version.</warning>',.$
367a0 5f 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 _SERVER['PHP_SELF']));.}..if.(ge
367c0 74 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 tenv('COMPOSER_NO_INTERACTION'))
367e0 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 28 66 61 6c 73 65 29 .{.$input->setInteractive(false)
36800 3b 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 ;.}....if.($newWorkDir.=.$this->
36820 67 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 getNewWorkingDir($input)).{.$old
36840 57 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 WorkingDir.=.getcwd();.chdir($ne
36860 77 57 6f 72 6b 44 69 72 29 3b 0a 69 66 20 28 24 69 6f 2d 3e 69 73 44 65 62 75 67 28 29 20 3e 3d wWorkDir);.if.($io->isDebug().>=
36880 20 34 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 43 68 61 6e 67 65 64 20 43 .4).{.$io->writeError('Changed.C
368a0 57 44 20 74 6f 20 27 20 2e 20 67 65 74 63 77 64 28 29 29 3b 0a 7d 0a 7d 0a 0a 0a 20 24 66 69 6c WD.to.'...getcwd());.}.}....$fil
368c0 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 69 6c 65 28 29 3b 0a e.=.Factory::getComposerFile();.
368e0 69 66 20 28 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 if.(is_file($file).&&.is_readabl
36900 65 28 24 66 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 e($file).&&.is_array($composer.=
36920 20 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 .json_decode(file_get_contents($
36940 66 69 6c 65 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 file),.true))).{.if.(isset($comp
36960 6f 73 65 72 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 oser['scripts']).&&.is_array($co
36980 6d 70 6f 73 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 mposer['scripts'])).{.foreach.($
369a0 63 6f 6d 70 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 composer['scripts'].as.$script.=
369c0 3e 20 24 64 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 >.$dummy).{.if.(!defined('Compos
369e0 65 72 5c 53 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 er\Script\ScriptEvents::'.str_re
36a00 70 6c 61 63 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 place('-',.'_',.strtoupper($scri
36a20 70 74 29 29 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 pt)))).{.if.($this->has($script)
36a40 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 41 20 ).{.$io->writeError('<warning>A.
36a60 73 63 72 69 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 script.named.'.$script.'.would.o
36a80 76 65 72 72 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 verride.a.native.Composer.functi
36aa0 6f 6e 20 61 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 on.and.has.been.skipped</warning
36ac0 3e 27 29 3b 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 >');.}.else.{.$this->add(new.Com
36ae0 6d 61 6e 64 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 mand\ScriptAliasCommand($script)
36b00 29 3b 0a 7d 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 );.}.}.}.}.}.}..try.{.if.($input
36b20 2d 3e 68 61 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 ->hasParameterOption('--profile'
36b40 29 29 20 7b 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 )).{.$startTime.=.microtime(true
36b60 29 3b 0a 24 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 );.$this->io->enableDebugging($s
36b80 74 61 72 74 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 tartTime);.}..$result.=.parent::
36ba0 64 6f 52 75 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 doRun($input,.$output);..if.(iss
36bc0 65 74 28 24 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 et($oldWorkingDir)).{.chdir($old
36be0 57 6f 72 6b 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 WorkingDir);.}..if.(isset($start
36c00 54 69 6d 65 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 Time)).{.$io->writeError('<info>
36c20 4d 65 6d 6f 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 Memory.usage:.'.round(memory_get
36c40 5f 75 73 61 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 _usage()./.1024./.1024,.2).'MB.(
36c60 70 65 61 6b 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 peak:.'.round(memory_get_peak_us
36c80 61 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 29 2c 20 74 69 age()./.1024./.1024,.2).'MB),.ti
36ca0 6d 65 3a 20 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 me:.'.round(microtime(true).-.$s
36cc0 74 61 72 74 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 tartTime,.2).'s');.}..return.$re
36ce0 73 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 sult;.}.catch.(\Exception.$e).{.
36d00 24 74 68 69 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 $this->hintCommonErrors($e);.thr
36d20 6f 77 20 24 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 ow.$e;.}.}.......private.functio
36d40 6e 20 67 65 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 n.getNewWorkingDir(InputInterfac
36d60 65 20 24 69 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 e.$input).{.$workingDir.=.$input
36d80 2d 3e 67 65 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 ->getParameterOption(array('--wo
36da0 72 6b 69 6e 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 rking-dir',.'-d'));.if.(false.!=
36dc0 3d 20 24 77 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 =.$workingDir.&&.!is_dir($workin
36de0 67 44 69 72 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 gDir)).{.throw.new.\RuntimeExcep
36e00 74 69 6f 6e 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 tion('Invalid.working.directory.
36e20 73 70 65 63 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 specified,.'.$workingDir.'.does.
36e40 6e 6f 74 20 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 not.exist.');.}..return.$working
36e60 44 69 72 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 68 69 6e 74 Dir;.}.....private.function.hint
36e80 43 6f 6d 6d 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 CommonErrors($exception).{.$io.=
36ea0 20 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 0a 74 72 79 20 7b 0a 24 63 6f 6d 70 6f 73 65 .$this->getIO();..try.{.$compose
36ec0 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 73 65 2c 20 74 72 r.=.$this->getComposer(false,.tr
36ee0 75 65 29 3b 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 20 ue);.if.($composer).{.$config.=.
36f00 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 3b 0a 0a 24 6d 69 6e 53 70 61 $composer->getConfig();..$minSpa
36f20 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 28 28 28 24 64 66 20 ceFree.=.1024.*.1024;.if.((($df.
36f40 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 6e 66 69 =.@disk_free_space($dir.=.$confi
36f60 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 65 20 26 26 20 24 64 g->get('home'))).!==.false.&&.$d
36f80 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 64 66 20 3d 20 40 64 f.<.$minSpaceFree).||.(($df.=.@d
36fa0 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 6e 66 69 67 2d 3e 67 isk_free_space($dir.=.$config->g
36fc0 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 6c 73 65 20 26 26 20 et('vendor-dir'))).!==.false.&&.
36fe0 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 64 66 20 3d 20 $df.<.$minSpaceFree).||.(($df.=.
37000 40 64 69 73 6b 5f 66 72 65 65 5f 73 70 61 63 65 28 24 64 69 72 20 3d 20 73 79 73 5f 67 65 74 5f @disk_free_space($dir.=.sys_get_
37020 74 65 6d 70 5f 64 69 72 28 29 29 29 20 21 3d 3d 20 66 61 6c 73 65 20 26 26 20 24 64 66 20 3c 20 temp_dir())).!==.false.&&.$df.<.
37040 24 6d 69 6e 53 70 61 63 65 46 72 65 65 29 0a 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 $minSpaceFree).).{.$io->writeErr
37060 6f 72 28 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 27 2e 24 64 or('<error>The.disk.hosting.'.$d
37080 69 72 2e 27 20 69 73 20 66 75 6c 6c 2c 20 74 68 69 73 20 6d 61 79 20 62 65 20 74 68 65 20 63 61 ir.'.is.full,.this.may.be.the.ca
370a0 75 73 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 78 63 65 70 74 69 6f 6e 3c 2f use.of.the.following.exception</
370c0 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f error>');.}.}.}.catch.(\Exceptio
370e0 6e 20 24 65 29 20 7b 0a 7d 0a 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 n.$e).{.}..if.(defined('PHP_WIND
37100 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d OWS_VERSION_BUILD').&&.false.!==
37120 20 73 74 72 70 6f 73 28 24 65 78 63 65 70 74 69 6f 6e 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 .strpos($exception->getMessage()
37140 2c 20 27 54 68 65 20 73 79 73 74 65 6d 20 63 61 6e 6e 6f 74 20 66 69 6e 64 20 74 68 65 20 70 61 ,.'The.system.cannot.find.the.pa
37160 74 68 20 73 70 65 63 69 66 69 65 64 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f th.specified')).{.$io->writeErro
37180 72 28 27 3c 65 72 72 6f 72 3e 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 78 63 65 70 74 69 6f r('<error>The.following.exceptio
371a0 6e 20 6d 61 79 20 62 65 20 63 61 75 73 65 64 20 62 79 20 61 20 73 74 61 6c 65 20 65 6e 74 72 79 n.may.be.caused.by.a.stale.entry
371c0 20 69 6e 20 79 6f 75 72 20 63 6d 64 2e 65 78 65 20 41 75 74 6f 52 75 6e 3c 2f 65 72 72 6f 72 3e .in.your.cmd.exe.AutoRun</error>
371e0 27 29 3b 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 68 65 63 ');.$io->writeError('<error>Chec
37200 6b 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 k.https://getcomposer.org/doc/ar
37220 74 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 2d 74 68 65 2d 73 ticles/troubleshooting.md#-the-s
37240 79 73 74 65 6d 2d 63 61 6e 6e 6f 74 2d 66 69 6e 64 2d 74 68 65 2d 70 61 74 68 2d 73 70 65 63 69 ystem-cannot-find-the-path-speci
37260 66 69 65 64 2d 77 69 6e 64 6f 77 73 2d 20 66 6f 72 20 64 65 74 61 69 6c 73 3c 2f 65 72 72 6f 72 fied-windows-.for.details</error
37280 3e 27 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 24 65 78 >');.}..if.(false.!==.strpos($ex
372a0 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 66 61 69 ception->getMessage(),.'fork.fai
372c0 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 29 29 20 led.-.Cannot.allocate.memory')).
372e0 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 66 6f {.$io->writeError('<error>The.fo
37300 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 79 20 61 llowing.exception.is.caused.by.a
37320 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 67 20 73 .lack.of.memory.and.not.having.s
37340 77 61 70 20 63 6f 6e 66 69 67 75 72 65 64 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 24 69 6f 2d 3e 77 wap.configured</error>');.$io->w
37360 72 69 74 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 riteError('<error>Check.https://
37380 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 74 72 6f getcomposer.org/doc/articles/tro
373a0 75 62 6c 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 ubleshooting.md#proc-open-fork-f
373c0 61 69 6c 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 ailed-errors.for.details</error>
373e0 27 29 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 67 ');.}.}........public.function.g
37400 65 74 43 6f 6d 70 6f 73 65 72 28 24 72 65 71 75 69 72 65 64 20 3d 20 74 72 75 65 2c 20 24 64 69 etComposer($required.=.true,.$di
37420 73 61 62 6c 65 50 6c 75 67 69 6e 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c sablePlugins.=.false).{.if.(null
37440 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 74 72 79 20 7b 0a 24 74 .===.$this->composer).{.try.{.$t
37460 68 69 73 2d 3e 63 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 his->composer.=.Factory::create(
37480 24 74 68 69 73 2d 3e 69 6f 2c 20 6e 75 6c 6c 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 $this->io,.null,.$disablePlugins
374a0 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 6e 74 45 78 63 65 );.}.catch.(\InvalidArgumentExce
374c0 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 72 65 71 75 69 72 65 64 29 20 7b 0a 24 74 68 ption.$e).{.if.($required).{.$th
374e0 69 73 2d 3e 69 6f 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 is->io->writeError($e->getMessag
37500 65 28 29 29 3b 0a 65 78 69 74 28 31 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 4a 73 6f 6e 56 61 e());.exit(1);.}.}.catch.(JsonVa
37520 6c 69 64 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 65 72 72 6f 72 73 20 lidationException.$e).{.$errors.
37540 3d 20 27 20 2d 20 27 20 2e 20 69 6d 70 6c 6f 64 65 28 50 48 50 5f 45 4f 4c 20 2e 20 27 20 2d 20 =.'.-.'...implode(PHP_EOL...'.-.
37560 27 2c 20 24 65 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 24 6d 65 73 73 61 67 65 20 3d 20 ',.$e->getErrors());.$message.=.
37580 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 20 2e 20 27 3a 27 20 2e 20 50 48 50 5f 45 4f 4c $e->getMessage()...':'...PHP_EOL
375a0 20 2e 20 24 65 72 72 6f 72 73 3b 0a 74 68 72 6f 77 20 6e 65 77 20 4a 73 6f 6e 56 61 6c 69 64 61 ...$errors;.throw.new.JsonValida
375c0 74 69 6f 6e 45 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 tionException($message);.}.}..re
375e0 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
37600 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 0a 7b 0a 24 74 ic.function.resetComposer().{.$t
37620 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c his->composer.=.null;.}.....publ
37640 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
37660 69 73 2d 3e 69 6f 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 is->io;.}..public.function.getHe
37680 6c 70 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 6c 6f 67 6f 20 2e 20 70 61 72 65 lp().{.return.self::$logo...pare
376a0 6e 74 3a 3a 67 65 74 48 65 6c 70 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 nt::getHelp();.}.....protected.f
376c0 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 73 28 29 0a 7b 0a 24 unction.getDefaultCommands().{.$
376e0 63 6f 6d 6d 61 6e 64 73 20 3d 20 70 61 72 65 6e 74 3a 3a 67 65 74 44 65 66 61 75 6c 74 43 6f 6d commands.=.parent::getDefaultCom
37700 6d 61 6e 64 73 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 mands();.$commands[].=.new.Comma
37720 6e 64 5c 41 62 6f 75 74 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d nd\AboutCommand();.$commands[].=
37740 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 43 6f 6e 66 69 67 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 .new.Command\ConfigCommand();.$c
37760 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 44 65 70 65 6e 64 73 43 ommands[].=.new.Command\DependsC
37780 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d ommand();.$commands[].=.new.Comm
377a0 61 6e 64 5c 49 6e 69 74 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d and\InitCommand();.$commands[].=
377c0 20 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 29 3b 0a 24 .new.Command\InstallCommand();.$
377e0 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 43 72 65 61 74 65 50 commands[].=.new.Command\CreateP
37800 72 6f 6a 65 63 74 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e rojectCommand();.$commands[].=.n
37820 65 77 20 43 6f 6d 6d 61 6e 64 5c 55 70 64 61 74 65 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d ew.Command\UpdateCommand();.$com
37840 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 53 65 61 72 63 68 43 6f 6d 6d mands[].=.new.Command\SearchComm
37860 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 and();.$commands[].=.new.Command
37880 5c 56 61 6c 69 64 61 74 65 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 \ValidateCommand();.$commands[].
378a0 3d 20 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 3b 0a 24 63 6f =.new.Command\ShowCommand();.$co
378c0 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 53 75 67 67 65 73 74 73 43 mmands[].=.new.Command\SuggestsC
378e0 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d ommand();.$commands[].=.new.Comm
37900 61 6e 64 5c 52 65 71 75 69 72 65 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b and\RequireCommand();.$commands[
37920 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 44 75 6d 70 41 75 74 6f 6c 6f 61 64 43 6f 6d 6d ].=.new.Command\DumpAutoloadComm
37940 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 and();.$commands[].=.new.Command
37960 5c 53 74 61 74 75 73 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 \StatusCommand();.$commands[].=.
37980 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 41 72 63 68 69 76 65 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 new.Command\ArchiveCommand();.$c
379a0 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 44 69 61 67 6e 6f 73 65 ommands[].=.new.Command\Diagnose
379c0 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d Command();.$commands[].=.new.Com
379e0 6d 61 6e 64 5c 52 75 6e 53 63 72 69 70 74 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e mand\RunScriptCommand();.$comman
37a00 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 4c 69 63 65 6e 73 65 73 43 6f 6d 6d 61 ds[].=.new.Command\LicensesComma
37a20 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c nd();.$commands[].=.new.Command\
37a40 47 6c 6f 62 61 6c 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e GlobalCommand();.$commands[].=.n
37a60 65 77 20 43 6f 6d 6d 61 6e 64 5c 43 6c 65 61 72 43 61 63 68 65 43 6f 6d 6d 61 6e 64 28 29 3b 0a ew.Command\ClearCacheCommand();.
37a80 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 52 65 6d 6f 76 65 $commands[].=.new.Command\Remove
37aa0 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d Command();.$commands[].=.new.Com
37ac0 6d 61 6e 64 5c 48 6f 6d 65 43 6f 6d 6d 61 6e 64 28 29 3b 0a 0a 69 66 20 28 27 70 68 61 72 3a 27 mand\HomeCommand();..if.('phar:'
37ae0 20 3d 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 .===.substr(__FILE__,.0,.5)).{.$
37b00 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 53 65 6c 66 55 70 64 commands[].=.new.Command\SelfUpd
37b20 61 74 65 43 6f 6d 6d 61 6e 64 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 ateCommand();.}..return.$command
37b40 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 4c 6f 6e 67 s;.}.....public.function.getLong
37b60 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 69 66 20 28 43 6f 6d 70 6f 73 65 72 3a 3a 42 52 41 4e 43 48 Version().{.if.(Composer::BRANCH
37b80 5f 41 4c 49 41 53 5f 56 45 52 53 49 4f 4e 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 _ALIAS_VERSION).{.return.sprintf
37ba0 28 0a 27 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 20 76 65 72 73 69 6f 6e 20 3c 63 6f 6d 6d (.'<info>%s</info>.version.<comm
37bc0 65 6e 74 3e 25 73 20 28 25 73 29 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 25 73 27 2c 0a 24 74 68 69 73 ent>%s.(%s)</comment>.%s',.$this
37be0 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 0a 43 6f 6d 70 6f 73 65 72 3a 3a 42 52 41 4e 43 48 5f 41 4c ->getName(),.Composer::BRANCH_AL
37c00 49 41 53 5f 56 45 52 53 49 4f 4e 2c 0a 24 74 68 69 73 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 IAS_VERSION,.$this->getVersion()
37c20 2c 0a 43 6f 6d 70 6f 73 65 72 3a 3a 52 45 4c 45 41 53 45 5f 44 41 54 45 0a 29 3b 0a 7d 0a 0a 72 ,.Composer::RELEASE_DATE.);.}..r
37c40 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 67 65 74 4c 6f 6e 67 56 65 72 73 69 6f 6e 28 29 20 2e eturn.parent::getLongVersion()..
37c60 20 27 20 27 20 2e 20 43 6f 6d 70 6f 73 65 72 3a 3a 52 45 4c 45 41 53 45 5f 44 41 54 45 3b 0a 7d .'.'...Composer::RELEASE_DATE;.}
37c80 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
37ca0 6c 74 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 24 64 65 66 69 6e 69 74 69 6f ltInputDefinition().{.$definitio
37cc0 6e 20 3d 20 70 61 72 65 6e 74 3a 3a 67 65 74 44 65 66 61 75 6c 74 49 6e 70 75 74 44 65 66 69 6e n.=.parent::getDefaultInputDefin
37ce0 69 74 69 6f 6e 28 29 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 ition();.$definition->addOption(
37d00 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 70 72 6f 66 69 6c 65 27 2c 20 6e 75 6c new.InputOption('--profile',.nul
37d20 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 69 73 l,.InputOption::VALUE_NONE,.'Dis
37d40 70 6c 61 79 20 74 69 6d 69 6e 67 20 61 6e 64 20 6d 65 6d 6f 72 79 20 75 73 61 67 65 20 69 6e 66 play.timing.and.memory.usage.inf
37d60 6f 72 6d 61 74 69 6f 6e 27 29 29 3b 0a 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 61 64 64 4f 70 74 ormation'));.$definition->addOpt
37d80 69 6f 6e 28 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 77 6f 72 6b 69 6e 67 2d 64 ion(new.InputOption('--working-d
37da0 69 72 27 2c 20 27 2d 64 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 ir',.'-d',.InputOption::VALUE_RE
37dc0 51 55 49 52 45 44 2c 20 27 49 66 20 73 70 65 63 69 66 69 65 64 2c 20 75 73 65 20 74 68 65 20 67 QUIRED,.'If.specified,.use.the.g
37de0 69 76 65 6e 20 64 69 72 65 63 74 6f 72 79 20 61 73 20 77 6f 72 6b 69 6e 67 20 64 69 72 65 63 74 iven.directory.as.working.direct
37e00 6f 72 79 2e 27 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 7d 0a ory.'));..return.$definition;.}.
37e20 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
37e40 70 6f 73 65 72 5c 43 6f 6e 73 6f 6c 65 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 poser\Console;..use.Symfony\Comp
37e60 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
37e80 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 74 6d 6c 4f 75 74 70 75 74 46 6f 72 rmatter;.....class.HtmlOutputFor
37ea0 6d 61 74 74 65 72 20 65 78 74 65 6e 64 73 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 0a 7b matter.extends.OutputFormatter.{
37ec0 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 46 6f 72 65 67 72 .private.static.$availableForegr
37ee0 6f 75 6e 64 43 6f 6c 6f 72 73 20 3d 20 61 72 72 61 79 28 0a 33 30 20 3d 3e 20 27 62 6c 61 63 6b oundColors.=.array(.30.=>.'black
37f00 27 2c 0a 33 31 20 3d 3e 20 27 72 65 64 27 2c 0a 33 32 20 3d 3e 20 27 67 72 65 65 6e 27 2c 0a 33 ',.31.=>.'red',.32.=>.'green',.3
37f20 33 20 3d 3e 20 27 79 65 6c 6c 6f 77 27 2c 0a 33 34 20 3d 3e 20 27 62 6c 75 65 27 2c 0a 33 35 20 3.=>.'yellow',.34.=>.'blue',.35.
37f40 3d 3e 20 27 6d 61 67 65 6e 74 61 27 2c 0a 33 36 20 3d 3e 20 27 63 79 61 6e 27 2c 0a 33 37 20 3d =>.'magenta',.36.=>.'cyan',.37.=
37f60 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 61 76 >.'white',.);.private.static.$av
37f80 61 69 6c 61 62 6c 65 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 ailableBackgroundColors.=.array(
37fa0 0a 34 30 20 3d 3e 20 27 62 6c 61 63 6b 27 2c 0a 34 31 20 3d 3e 20 27 72 65 64 27 2c 0a 34 32 20 .40.=>.'black',.41.=>.'red',.42.
37fc0 3d 3e 20 27 67 72 65 65 6e 27 2c 0a 34 33 20 3d 3e 20 27 79 65 6c 6c 6f 77 27 2c 0a 34 34 20 3d =>.'green',.43.=>.'yellow',.44.=
37fe0 3e 20 27 62 6c 75 65 27 2c 0a 34 35 20 3d 3e 20 27 6d 61 67 65 6e 74 61 27 2c 0a 34 36 20 3d 3e >.'blue',.45.=>.'magenta',.46.=>
38000 20 27 63 79 61 6e 27 2c 0a 34 37 20 3d 3e 20 27 77 68 69 74 65 27 2c 0a 29 3b 0a 70 72 69 76 61 .'cyan',.47.=>.'white',.);.priva
38020 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 72 te.static.$availableOptions.=.ar
38040 72 61 79 28 0a 31 20 3d 3e 20 27 62 6f 6c 64 27 2c 0a 34 20 3d 3e 20 27 75 6e 64 65 72 73 63 6f ray(.1.=>.'bold',.4.=>.'undersco
38060 72 65 27 2c 0a 0a 20 0a 20 0a 20 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f re',.......);.....public.functio
38080 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 73 74 79 6c 65 73 20 3d 20 61 72 n.__construct(array.$styles.=.ar
380a0 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 74 72 75 ray()).{.parent::__construct(tru
380c0 65 2c 20 24 73 74 79 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 e,.$styles);.}..public.function.
380e0 66 6f 72 6d 61 74 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 66 6f 72 6d 61 74 74 65 64 20 3d 20 format($message).{.$formatted.=.
38100 70 61 72 65 6e 74 3a 3a 66 6f 72 6d 61 74 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 24 63 6c 65 61 parent::format($message);..$clea
38120 72 45 73 63 61 70 65 43 6f 64 65 73 20 3d 20 27 28 3f 3a 33 39 7c 34 39 7c 30 7c 32 32 7c 32 34 rEscapeCodes.=.'(?:39|49|0|22|24
38140 7c 32 35 7c 32 37 7c 32 38 29 27 3b 0a 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 |25|27|28)';..return.preg_replac
38160 65 5f 63 61 6c 6c 62 61 63 6b 28 22 7b 5c 30 33 33 5c 5b 28 5b 30 2d 39 3b 5d 2b 29 6d 28 2e 2a e_callback("{\033\[([0-9;]+)m(.*
38180 3f 29 5c 30 33 33 5c 5b 28 3f 3a 22 2e 24 63 6c 65 61 72 45 73 63 61 70 65 43 6f 64 65 73 2e 22 ?)\033\[(?:".$clearEscapeCodes."
381a0 3b 29 2a 3f 22 2e 24 63 6c 65 61 72 45 73 63 61 70 65 43 6f 64 65 73 2e 22 6d 7d 73 22 2c 20 61 ;)*?".$clearEscapeCodes."m}s",.a
381c0 72 72 61 79 28 24 74 68 69 73 2c 20 27 66 6f 72 6d 61 74 48 74 6d 6c 27 29 2c 20 24 66 6f 72 6d rray($this,.'formatHtml'),.$form
381e0 61 74 74 65 64 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d atted);.}..private.function.form
38200 61 74 48 74 6d 6c 28 24 6d 61 74 63 68 65 73 29 0a 7b 0a 24 6f 75 74 20 3d 20 27 3c 73 70 61 6e atHtml($matches).{.$out.=.'<span
38220 20 73 74 79 6c 65 3d 22 27 3b 0a 66 6f 72 65 61 63 68 20 28 65 78 70 6c 6f 64 65 28 27 3b 27 2c .style="';.foreach.(explode(';',
38240 20 24 6d 61 74 63 68 65 73 5b 31 5d 29 20 61 73 20 24 63 6f 64 65 29 20 7b 0a 69 66 20 28 69 73 .$matches[1]).as.$code).{.if.(is
38260 73 65 74 28 73 65 6c 66 3a 3a 24 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 72 6f 75 6e 64 43 6f set(self::$availableForegroundCo
38280 6c 6f 72 73 5b 24 63 6f 64 65 5d 29 29 20 7b 0a 24 6f 75 74 20 2e 3d 20 27 63 6f 6c 6f 72 3a 27 lors[$code])).{.$out..=.'color:'
382a0 2e 73 65 6c 66 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 .self::$availableForegroundColor
382c0 73 5b 24 63 6f 64 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 s[$code].';';.}.elseif.(isset(se
382e0 6c 66 3a 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 lf::$availableBackgroundColors[$
38300 63 6f 64 65 5d 29 29 20 7b 0a 24 6f 75 74 20 2e 3d 20 27 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f code])).{.$out..=.'background-co
38320 6c 6f 72 3a 27 2e 73 65 6c 66 3a 3a 24 61 76 61 69 6c 61 62 6c 65 42 61 63 6b 67 72 6f 75 6e 64 lor:'.self::$availableBackground
38340 43 6f 6c 6f 72 73 5b 24 63 6f 64 65 5d 2e 27 3b 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 Colors[$code].';';.}.elseif.(iss
38360 65 74 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 et(self::$availableOptions[$code
38380 5d 29 29 20 7b 0a 73 77 69 74 63 68 20 28 73 65 6c 66 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 ])).{.switch.(self::$availableOp
383a0 74 69 6f 6e 73 5b 24 63 6f 64 65 5d 29 20 7b 0a 63 61 73 65 20 27 62 6f 6c 64 27 3a 0a 24 6f 75 tions[$code]).{.case.'bold':.$ou
383c0 74 20 2e 3d 20 27 66 6f 6e 74 2d 77 65 69 67 68 74 3a 62 6f 6c 64 3b 27 3b 0a 62 72 65 61 6b 3b t..=.'font-weight:bold;';.break;
383e0 0a 0a 63 61 73 65 20 27 75 6e 64 65 72 73 63 6f 72 65 27 3a 0a 24 6f 75 74 20 2e 3d 20 27 74 65 ..case.'underscore':.$out..=.'te
38400 78 74 2d 64 65 63 6f 72 61 74 69 6f 6e 3a 75 6e 64 65 72 6c 69 6e 65 3b 27 3b 0a 62 72 65 61 6b xt-decoration:underline;';.break
38420 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6f 75 74 2e 27 22 3e 27 2e 24 6d 61 74 63 68 ;.}.}.}..return.$out.'">'.$match
38440 65 73 5b 32 5d 2e 27 3c 2f 73 70 61 6e 3e 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a es[2].'</span>';.}.}.<?php......
38460 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 64 65 ......namespace.Composer\Depende
38480 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 63 69 73 69 6f ncyResolver;.......class.Decisio
384a0 6e 73 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 74 65 72 61 74 6f 72 2c 20 5c 43 6f 75 6e 74 61 ns.implements.\Iterator,.\Counta
384c0 62 6c 65 0a 7b 0a 63 6f 6e 73 74 20 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 20 3d 20 30 ble.{.const.DECISION_LITERAL.=.0
384e0 3b 0a 63 6f 6e 73 74 20 44 45 43 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 20 3d 20 31 3b 0a 0a 70 72 ;.const.DECISION_REASON.=.1;..pr
38500 6f 74 65 63 74 65 64 20 24 70 6f 6f 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 63 69 73 69 otected.$pool;.protected.$decisi
38520 6f 6e 4d 61 70 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 20 onMap;.protected.$decisionQueue.
38540 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 6f 6e 20 5f 5f 63 6f =.array();..public.function.__co
38560 6e 73 74 72 75 63 74 28 24 70 6f 6f 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 3d 20 24 nstruct($pool).{.$this->pool.=.$
38580 70 6f 6f 6c 3b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 20 3d 20 61 72 72 61 79 pool;.$this->decisionMap.=.array
385a0 28 29 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 64 65 28 24 6c ();.}..public.function.decide($l
385c0 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 2c 20 24 77 68 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 iteral,.$level,.$why).{.$this->a
385e0 64 64 44 65 63 69 73 69 6f 6e 28 24 6c 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 29 3b 0a 24 74 ddDecision($literal,.$level);.$t
38600 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 5b 5d 20 3d 20 61 72 72 61 79 28 0a 73 65 his->decisionQueue[].=.array(.se
38620 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 20 3d 3e 20 24 6c 69 74 65 72 61 6c lf::DECISION_LITERAL.=>.$literal
38640 2c 0a 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 20 3d 3e 20 24 77 68 79 2c ,.self::DECISION_REASON.=>.$why,
38660 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 61 74 69 73 66 79 28 24 .);.}..public.function.satisfy($
38680 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 74 literal).{.$packageId.=.abs($lit
386a0 65 72 61 6c 29 3b 0a 0a 72 65 74 75 72 6e 20 28 0a 24 6c 69 74 65 72 61 6c 20 3e 20 30 20 26 26 eral);..return.(.$literal.>.0.&&
386c0 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 5b 24 70 61 63 6b 61 .isset($this->decisionMap[$packa
386e0 67 65 49 64 5d 29 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 geId]).&&.$this->decisionMap[$pa
38700 63 6b 61 67 65 49 64 5d 20 3e 20 30 20 7c 7c 0a 24 6c 69 74 65 72 61 6c 20 3c 20 30 20 26 26 20 ckageId].>.0.||.$literal.<.0.&&.
38720 69 73 73 65 74 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 isset($this->decisionMap[$packag
38740 65 49 64 5d 29 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 eId]).&&.$this->decisionMap[$pac
38760 6b 61 67 65 49 64 5d 20 3c 20 30 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f kageId].<.0.);.}..public.functio
38780 6e 20 63 6f 6e 66 6c 69 63 74 28 24 6c 69 74 65 72 61 6c 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 n.conflict($literal).{.$packageI
387a0 64 20 3d 20 61 62 73 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 72 65 74 75 72 6e 20 28 0a 28 69 73 d.=.abs($literal);..return.(.(is
387c0 73 65 74 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 set($this->decisionMap[$packageI
387e0 64 5d 29 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 d]).&&.$this->decisionMap[$packa
38800 67 65 49 64 5d 20 3e 20 30 20 26 26 20 24 6c 69 74 65 72 61 6c 20 3c 20 30 29 20 7c 7c 0a 28 69 geId].>.0.&&.$literal.<.0).||.(i
38820 73 73 65 74 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 sset($this->decisionMap[$package
38840 49 64 5d 29 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 Id]).&&.$this->decisionMap[$pack
38860 61 67 65 49 64 5d 20 3c 20 30 20 26 26 20 24 6c 69 74 65 72 61 6c 20 3e 20 30 29 0a 29 3b 0a 7d ageId].<.0.&&.$literal.>.0).);.}
38880 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 69 64 65 64 28 24 6c 69 74 65 72 ..public.function.decided($liter
388a0 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 0a 7b 0a 72 65 74 75 72 6e 20 21 65 6d 70 74 79 28 24 alOrPackageId).{.return.!empty($
388c0 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 72 61 6c 4f 72 this->decisionMap[abs($literalOr
388e0 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 63 74 69 6f 6e PackageId)]);.}..public.function
38900 20 75 6e 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 49 64 29 0a .undecided($literalOrPackageId).
38920 7b 0a 72 65 74 75 72 6e 20 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 {.return.empty($this->decisionMa
38940 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 29 3b 0a 7d 0a p[abs($literalOrPackageId)]);.}.
38960 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 69 64 65 64 49 6e 73 74 61 6c 6c 28 .public.function.decidedInstall(
38980 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 $literalOrPackageId).{.$packageI
389a0 64 20 3d 20 61 62 73 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 3b 0a 0a 72 d.=.abs($literalOrPackageId);..r
389c0 65 74 75 72 6e 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 5b 24 eturn.isset($this->decisionMap[$
389e0 70 61 63 6b 61 67 65 49 64 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 packageId]).&&.$this->decisionMa
38a00 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3e 20 30 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e p[$packageId].>.0;.}..public.fun
38a20 63 74 69 6f 6e 20 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 ction.decisionLevel($literalOrPa
38a40 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 74 ckageId).{.$packageId.=.abs($lit
38a60 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 eralOrPackageId);.if.(isset($thi
38a80 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 29 20 7b 0a 72 s->decisionMap[$packageId])).{.r
38aa0 65 74 75 72 6e 20 61 62 73 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 eturn.abs($this->decisionMap[$pa
38ac0 63 6b 61 67 65 49 64 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 70 75 62 6c 69 ckageId]);.}..return.0;.}..publi
38ae0 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 69 73 69 6f 6e 52 75 6c 65 28 24 6c 69 74 65 72 61 6c c.function.decisionRule($literal
38b00 4f 72 50 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 OrPackageId).{.$packageId.=.abs(
38b20 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 $literalOrPackageId);..foreach.(
38b40 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 20 61 73 20 24 69 20 3d 3e 20 24 64 $this->decisionQueue.as.$i.=>.$d
38b60 65 63 69 73 69 6f 6e 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 49 64 20 3d 3d 3d 20 61 62 ecision).{.if.($packageId.===.ab
38b80 73 28 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 s($decision[self::DECISION_LITER
38ba0 41 4c 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 64 65 63 69 73 69 6f 6e 5b 73 65 6c 66 3a 3a 44 AL])).{.return.$decision[self::D
38bc0 45 43 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c ECISION_REASON];.}.}..return.nul
38be0 6c 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 74 4f 66 66 73 65 74 28 24 l;.}..public.function.atOffset($
38c00 71 75 65 75 65 4f 66 66 73 65 74 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 63 queueOffset).{.return.$this->dec
38c20 69 73 69 6f 6e 51 75 65 75 65 5b 24 71 75 65 75 65 4f 66 66 73 65 74 5d 3b 0a 7d 0a 0a 70 75 62 isionQueue[$queueOffset];.}..pub
38c40 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 4f 66 66 73 65 74 28 24 71 75 65 75 65 4f lic.function.validOffset($queueO
38c60 66 66 73 65 74 29 0a 7b 0a 72 65 74 75 72 6e 20 24 71 75 65 75 65 4f 66 66 73 65 74 20 3e 3d 20 ffset).{.return.$queueOffset.>=.
38c80 30 20 26 26 20 24 71 75 65 75 65 4f 66 66 73 65 74 20 3c 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 0.&&.$queueOffset.<.count($this-
38ca0 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
38cc0 69 6f 6e 20 6c 61 73 74 52 65 61 73 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d ion.lastReason().{.return.$this-
38ce0 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 >decisionQueue[count($this->deci
38d00 73 69 6f 6e 51 75 65 75 65 29 20 2d 20 31 5d 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 52 sionQueue).-.1][self::DECISION_R
38d20 45 41 53 4f 4e 5d 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 4c EASON];.}..public.function.lastL
38d40 69 74 65 72 61 6c 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 iteral().{.return.$this->decisio
38d60 6e 51 75 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 nQueue[count($this->decisionQueu
38d80 65 29 20 2d 20 31 5d 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b e).-.1][self::DECISION_LITERAL];
38da0 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 28 29 0a 7b 0a 77 68 .}..public.function.reset().{.wh
38dc0 69 6c 65 20 28 24 64 65 63 69 73 69 6f 6e 20 3d 20 61 72 72 61 79 5f 70 6f 70 28 24 74 68 69 73 ile.($decision.=.array_pop($this
38de0 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 ->decisionQueue)).{.$this->decis
38e00 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 45 43 49 53 ionMap[abs($decision[self::DECIS
38e20 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 6c 69 63 20 ION_LITERAL])].=.0;.}.}..public.
38e40 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 54 6f 4f 66 66 73 65 74 28 24 6f 66 66 73 65 74 29 0a function.resetToOffset($offset).
38e60 7b 0a 77 68 69 6c 65 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 {.while.(count($this->decisionQu
38e80 65 75 65 29 20 3e 20 24 6f 66 66 73 65 74 20 2b 20 31 29 20 7b 0a 24 64 65 63 69 73 69 6f 6e 20 eue).>.$offset.+.1).{.$decision.
38ea0 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 75 65 75 65 =.array_pop($this->decisionQueue
38ec0 29 3b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 61 62 73 28 24 64 65 63 69 73 );.$this->decisionMap[abs($decis
38ee0 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 5d 29 5d 20 3d 20 ion[self::DECISION_LITERAL])].=.
38f00 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 76 65 72 74 4c 61 0;.}.}..public.function.revertLa
38f20 73 74 28 29 0a 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 24 74 st().{.$this->decisionMap[abs($t
38f40 68 69 73 2d 3e 6c 61 73 74 4c 69 74 65 72 61 6c 28 29 29 5d 20 3d 20 30 3b 0a 61 72 72 61 79 5f his->lastLiteral())].=.0;.array_
38f60 70 6f 70 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 pop($this->decisionQueue);.}..pu
38f80 62 6c 69 63 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 63 blic.function.count().{.return.c
38fa0 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 3b 0a 7d 0a 0a 70 ount($this->decisionQueue);.}..p
38fc0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b 0a 65 6e 64 28 24 74 ublic.function.rewind().{.end($t
38fe0 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 63 20 66 his->decisionQueue);.}..public.f
39000 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 63 75 72 72 65 unction.current().{.return.curre
39020 6e 74 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 nt($this->decisionQueue);.}..pub
39040 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6b 65 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6b 65 79 28 lic.function.key().{.return.key(
39060 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 63 $this->decisionQueue);.}..public
39080 20 66 75 6e 63 74 69 6f 6e 20 6e 65 78 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 70 72 65 76 28 24 .function.next().{.return.prev($
390a0 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 63 20 this->decisionQueue);.}..public.
390c0 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 function.valid().{.return.false.
390e0 21 3d 3d 20 63 75 72 72 65 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 !==.current($this->decisionQueue
39100 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 6d 70 74 79 28 29 0a );.}..public.function.isEmpty().
39120 7b 0a 72 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 {.return.count($this->decisionQu
39140 65 75 65 29 20 3d 3d 3d 20 30 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f eue).===.0;.}..protected.functio
39160 6e 20 61 64 64 44 65 63 69 73 69 6f 6e 28 24 6c 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 29 0a n.addDecision($literal,.$level).
39180 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 29 3b 0a 0a 24 {.$packageId.=.abs($literal);..$
391a0 70 72 65 76 69 6f 75 73 44 65 63 69 73 69 6f 6e 20 3d 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e previousDecision.=.isset($this->
391c0 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 3f 20 24 74 68 69 73 decisionMap[$packageId]).?.$this
391e0 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 3a 20 6e 75 6c 6c ->decisionMap[$packageId].:.null
39200 3b 0a 69 66 20 28 24 70 72 65 76 69 6f 75 73 44 65 63 69 73 69 6f 6e 20 21 3d 20 30 29 20 7b 0a ;.if.($previousDecision.!=.0).{.
39220 24 6c 69 74 65 72 61 6c 53 74 72 69 6e 67 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 $literalString.=.$this->pool->li
39240 74 65 72 61 6c 54 6f 53 74 72 69 6e 67 28 24 6c 69 74 65 72 61 6c 29 3b 0a 24 70 61 63 6b 61 67 teralToString($literal);.$packag
39260 65 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 e.=.$this->pool->literalToPackag
39280 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c 76 65 72 42 75 67 e($literal);.throw.new.SolverBug
392a0 45 78 63 65 70 74 69 6f 6e 28 0a 22 54 72 79 69 6e 67 20 74 6f 20 64 65 63 69 64 65 20 24 6c 69 Exception(."Trying.to.decide.$li
392c0 74 65 72 61 6c 53 74 72 69 6e 67 20 6f 6e 20 6c 65 76 65 6c 20 24 6c 65 76 65 6c 2c 20 65 76 65 teralString.on.level.$level,.eve
392e0 6e 20 74 68 6f 75 67 68 20 24 70 61 63 6b 61 67 65 20 77 61 73 20 70 72 65 76 69 6f 75 73 6c 79 n.though.$package.was.previously
39300 20 64 65 63 69 64 65 64 20 61 73 20 22 2e 28 69 6e 74 29 20 24 70 72 65 76 69 6f 75 73 44 65 63 .decided.as.".(int).$previousDec
39320 69 73 69 6f 6e 2e 22 2e 22 0a 29 3b 0a 7d 0a 0a 69 66 20 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 ision.".".);.}..if.($literal.>.0
39340 29 20 7b 0a 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
39360 64 5d 20 3d 20 24 6c 65 76 65 6c 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 d].=.$level;.}.else.{.$this->dec
39380 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3d 20 2d 24 6c 65 76 65 6c 3b 0a isionMap[$packageId].=.-$level;.
393a0 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 70 61 63 65 }.}.}.<?php............namespace
393c0 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 75 .Composer\DependencyResolver;..u
393e0 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
39400 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
39420 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 42 61 Package;.use.Composer\Package\Ba
39440 73 65 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 43 sePackage;.use.Composer\Semver\C
39460 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 0a 63 6c 61 73 73 onstraint\Constraint;......class
39480 20 44 65 66 61 75 6c 74 50 6f 6c 69 63 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 50 6f 6c 69 63 79 .DefaultPolicy.implements.Policy
394a0 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 72 65 66 65 72 53 74 61 62 6c Interface.{.private.$preferStabl
394c0 65 3b 0a 70 72 69 76 61 74 65 20 24 70 72 65 66 65 72 4c 6f 77 65 73 74 3b 0a 0a 70 75 62 6c 69 e;.private.$preferLowest;..publi
394e0 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 72 65 66 65 72 53 74 c.function.__construct($preferSt
39500 61 62 6c 65 20 3d 20 66 61 6c 73 65 2c 20 24 70 72 65 66 65 72 4c 6f 77 65 73 74 20 3d 20 66 61 able.=.false,.$preferLowest.=.fa
39520 6c 73 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 72 lse).{.$this->preferStable.=.$pr
39540 65 66 65 72 53 74 61 62 6c 65 3b 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 4c 6f 77 65 73 74 20 eferStable;.$this->preferLowest.
39560 3d 20 24 70 72 65 66 65 72 4c 6f 77 65 73 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 =.$preferLowest;.}..public.funct
39580 69 6f 6e 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 ion.versionCompare(PackageInterf
395a0 61 63 65 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 ace.$a,.PackageInterface.$b,.$op
395c0 65 72 61 74 6f 72 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 74 61 62 6c erator).{.if.($this->preferStabl
395e0 65 20 26 26 20 28 24 73 74 61 62 41 20 3d 20 24 61 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 28 e.&&.($stabA.=.$a->getStability(
39600 29 29 20 21 3d 3d 20 28 24 73 74 61 62 42 20 3d 20 24 62 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 )).!==.($stabB.=.$b->getStabilit
39620 79 28 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 y())).{.return.BasePackage::$sta
39640 62 69 6c 69 74 69 65 73 5b 24 73 74 61 62 41 5d 20 3c 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a bilities[$stabA].<.BasePackage::
39660 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 73 74 61 62 42 5d 3b 0a 7d 0a 0a 24 63 6f 6e 73 74 72 $stabilities[$stabB];.}..$constr
39680 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 74 6f 72 2c aint.=.new.Constraint($operator,
396a0 20 24 62 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 6e .$b->getVersion());.$version.=.n
396c0 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 61 2d 3e 67 65 74 56 65 72 73 69 ew.Constraint('==',.$a->getVersi
396e0 6f 6e 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 on());..return.$constraint->matc
39700 68 53 70 65 63 69 66 69 63 28 24 76 65 72 73 69 6f 6e 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 70 75 hSpecific($version,.true);.}..pu
39720 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 55 70 64 61 74 65 50 61 63 6b 61 67 65 73 blic.function.findUpdatePackages
39740 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 64 4d 61 70 (Pool.$pool,.array.$installedMap
39760 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 2c 20 24 6d 75 ,.PackageInterface.$package,.$mu
39780 73 74 4d 61 74 63 68 4e 61 6d 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 stMatchName.=.false).{.$packages
397a0 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 6f 6c 2d 3e 77 68 61 .=.array();..foreach.($pool->wha
397c0 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 6e tProvides($package->getName(),.n
397e0 75 6c 6c 2c 20 24 6d 75 73 74 4d 61 74 63 68 4e 61 6d 65 29 20 61 73 20 24 63 61 6e 64 69 64 61 ull,.$mustMatchName).as.$candida
39800 74 65 29 20 7b 0a 69 66 20 28 24 63 61 6e 64 69 64 61 74 65 20 21 3d 3d 20 24 70 61 63 6b 61 67 te).{.if.($candidate.!==.$packag
39820 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 7d e).{.$packages[].=.$candidate;.}
39840 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 70 75 62 6c 69 63 20 .}..return.$packages;.}..public.
39860 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 69 6f 72 69 74 79 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c function.getPriority(Pool.$pool,
39880 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 72 65 .PackageInterface.$package).{.re
398a0 74 75 72 6e 20 24 70 6f 6f 6c 2d 3e 67 65 74 50 72 69 6f 72 69 74 79 28 24 70 61 63 6b 61 67 65 turn.$pool->getPriority($package
398c0 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ->getRepository());.}.....public
398e0 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 50 72 65 66 65 72 65 64 50 61 63 6b 61 67 65 73 .function.selectPreferedPackages
39900 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 64 4d 61 70 (Pool.$pool,.array.$installedMap
39920 2c 20 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 2c 20 24 72 65 71 75 69 72 65 64 50 61 63 6b ,.array.$literals,.$requiredPack
39940 61 67 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 4d 65 74 age.=.null).{.trigger_error('Met
39960 68 6f 64 20 73 65 6c 65 63 74 50 72 65 66 65 72 65 64 50 61 63 6b 61 67 65 73 20 69 73 20 64 65 hod.selectPreferedPackages.is.de
39980 70 72 65 63 61 74 65 64 20 61 6e 64 20 72 65 70 6c 61 63 65 64 20 62 79 20 73 65 6c 65 63 74 50 precated.and.replaced.by.selectP
399a0 72 65 66 65 72 72 65 64 50 61 63 6b 61 67 65 73 2c 20 70 6c 65 61 73 65 20 75 70 64 61 74 65 20 referredPackages,.please.update.
399c0 79 6f 75 72 20 75 73 61 67 65 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b your.usage',.E_USER_DEPRECATED);
399e0 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 65 6c 65 63 74 50 72 65 66 65 72 72 65 64 50 ..return.$this->selectPreferredP
39a00 61 63 6b 61 67 65 73 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 ackages($pool,.$installedMap,.$l
39a20 69 74 65 72 61 6c 73 2c 20 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 70 iterals,.$requiredPackage);.}..p
39a40 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 50 72 65 66 65 72 72 65 64 50 61 ublic.function.selectPreferredPa
39a60 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 74 61 6c ckages(Pool.$pool,.array.$instal
39a80 6c 65 64 4d 61 70 2c 20 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 2c 20 24 72 65 71 75 69 72 ledMap,.array.$literals,.$requir
39aa0 65 64 50 61 63 6b 61 67 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 edPackage.=.null).{.$packages.=.
39ac0 24 74 68 69 73 2d 3e 67 72 6f 75 70 4c 69 74 65 72 61 6c 73 42 79 4e 61 6d 65 50 72 65 66 65 72 $this->groupLiteralsByNamePrefer
39ae0 49 6e 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 Installed($pool,.$installedMap,.
39b00 24 6c 69 74 65 72 61 6c 73 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 $literals);..foreach.($packages.
39b20 61 73 20 26 24 6c 69 74 65 72 61 6c 73 29 20 7b 0a 24 70 6f 6c 69 63 79 20 3d 20 24 74 68 69 73 as.&$literals).{.$policy.=.$this
39b40 3b 0a 75 73 6f 72 74 28 24 6c 69 74 65 72 61 6c 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c ;.usort($literals,.function.($a,
39b60 20 24 62 29 20 75 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 .$b).use.($policy,.$pool,.$insta
39b80 6c 6c 65 64 4d 61 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 lledMap,.$requiredPackage).{.ret
39ba0 75 72 6e 20 24 70 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 urn.$policy->compareByPriorityPr
39bc0 65 66 65 72 49 6e 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 eferInstalled($pool,.$installedM
39be0 61 70 2c 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 61 29 2c ap,.$pool->literalToPackage($a),
39c00 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 62 29 2c 20 24 72 .$pool->literalToPackage($b),.$r
39c20 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 2c 20 74 72 75 65 29 3b 0a 7d 29 3b 0a 7d 0a 0a 66 6f equiredPackage,.true);.});.}..fo
39c40 72 65 61 63 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 reach.($packages.as.&$literals).
39c60 7b 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 6f 48 69 67 68 {.$literals.=.$this->pruneToHigh
39c80 65 73 74 50 72 69 6f 72 69 74 79 4f 72 49 6e 73 74 61 6c 6c 65 64 28 24 70 6f 6f 6c 2c 20 24 69 estPriorityOrInstalled($pool,.$i
39ca0 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 24 6c 69 74 65 72 nstalledMap,.$literals);..$liter
39cc0 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 70 72 75 6e 65 54 6f 42 65 73 74 56 65 72 73 69 6f 6e 28 als.=.$this->pruneToBestVersion(
39ce0 24 70 6f 6f 6c 2c 20 24 6c 69 74 65 72 61 6c 73 29 3b 0a 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 $pool,.$literals);..$literals.=.
39d00 24 74 68 69 73 2d 3e 70 72 75 6e 65 52 65 6d 6f 74 65 41 6c 69 61 73 65 73 28 24 70 6f 6f 6c 2c $this->pruneRemoteAliases($pool,
39d20 20 24 6c 69 74 65 72 61 6c 73 29 3b 0a 7d 0a 0a 24 73 65 6c 65 63 74 65 64 20 3d 20 63 61 6c 6c .$literals);.}..$selected.=.call
39d40 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 20 _user_func_array('array_merge',.
39d60 24 70 61 63 6b 61 67 65 73 29 3b 0a 0a 0a 20 75 73 6f 72 74 28 24 73 65 6c 65 63 74 65 64 2c 20 $packages);....usort($selected,.
39d80 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,.
39da0 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
39dc0 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
39de0 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
39e00 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
39e20 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
39e40 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 29 3b 0a 7d 29 ckage($b),.$requiredPackage);.})
39e60 3b 0a 0a 72 65 74 75 72 6e 20 24 73 65 6c 65 63 74 65 64 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 ;..return.$selected;.}..protecte
39e80 64 20 66 75 6e 63 74 69 6f 6e 20 67 72 6f 75 70 4c 69 74 65 72 61 6c 73 42 79 4e 61 6d 65 50 72 d.function.groupLiteralsByNamePr
39ea0 65 66 65 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 79 20 eferInstalled(Pool.$pool,.array.
39ec0 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 6c 69 74 65 72 61 6c 73 29 0a 7b 0a 24 70 61 63 $installedMap,.$literals).{.$pac
39ee0 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 69 74 65 72 kages.=.array();.foreach.($liter
39f00 61 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 4e 61 6d 65 20 als.as.$literal).{.$packageName.
39f20 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 6c 69 74 65 72 =.$pool->literalToPackage($liter
39f40 61 6c 29 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 70 61 63 al)->getName();..if.(!isset($pac
39f60 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 4e 61 6d 65 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 kages[$packageName])).{.$package
39f80 73 5b 24 70 61 63 6b 61 67 65 4e 61 6d 65 5d 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 69 66 s[$packageName].=.array();.}..if
39fa0 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 .(isset($installedMap[abs($liter
39fc0 61 6c 29 5d 29 29 20 7b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 70 61 63 6b 61 67 65 73 al)])).{.array_unshift($packages
39fe0 5b 24 70 61 63 6b 61 67 65 4e 61 6d 65 5d 2c 20 24 6c 69 74 65 72 61 6c 29 3b 0a 7d 20 65 6c 73 [$packageName],.$literal);.}.els
3a000 65 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 5b 5d 20 3d 20 e.{.$packages[$packageName][].=.
3a020 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 3b $literal;.}.}..return.$packages;
3a040 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 6d 70 61 72 65 42 79 .}.....public.function.compareBy
3a060 50 72 69 6f 72 69 74 79 50 72 65 66 65 72 49 6e 73 74 61 6c 6c 65 64 28 50 6f 6f 6c 20 24 70 6f PriorityPreferInstalled(Pool.$po
3a080 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 50 61 63 6b 61 67 65 ol,.array.$installedMap,.Package
3a0a0 49 6e 74 65 72 66 61 63 65 20 24 61 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 Interface.$a,.PackageInterface.$
3a0c0 62 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 2c 20 24 69 67 6e b,.$requiredPackage.=.null,.$ign
3a0e0 6f 72 65 52 65 70 6c 61 63 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 24 61 2d 3e 67 65 oreReplace.=.false).{.if.($a->ge
3a100 74 52 65 70 6f 73 69 74 6f 72 79 28 29 20 3d 3d 3d 20 24 62 2d 3e 67 65 74 52 65 70 6f 73 69 74 tRepository().===.$b->getReposit
3a120 6f 72 79 28 29 29 20 7b 0a 0a 20 69 66 20 28 24 61 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d ory()).{...if.($a->getName().===
3a140 20 24 62 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 61 41 6c 69 61 73 65 64 20 3d 20 24 61 .$b->getName()).{.$aAliased.=.$a
3a160 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 0a 24 62 41 6c 69 61 .instanceof.AliasPackage;.$bAlia
3a180 73 65 64 20 3d 20 24 62 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 sed.=.$b.instanceof.AliasPackage
3a1a0 3b 0a 69 66 20 28 24 61 41 6c 69 61 73 65 64 20 26 26 20 21 24 62 41 6c 69 61 73 65 64 29 20 7b ;.if.($aAliased.&&.!$bAliased).{
3a1c0 0a 72 65 74 75 72 6e 20 2d 31 3b 20 0a 20 7d 0a 69 66 20 28 21 24 61 41 6c 69 61 73 65 64 20 26 .return.-1;...}.if.(!$aAliased.&
3a1e0 26 20 24 62 41 6c 69 61 73 65 64 29 20 7b 0a 72 65 74 75 72 6e 20 31 3b 20 0a 20 7d 0a 7d 0a 0a &.$bAliased).{.return.1;...}.}..
3a200 69 66 20 28 21 24 69 67 6e 6f 72 65 52 65 70 6c 61 63 65 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 if.(!$ignoreReplace).{...if.($th
3a220 69 73 2d 3e 72 65 70 6c 61 63 65 73 28 24 61 2c 20 24 62 29 29 20 7b 0a 72 65 74 75 72 6e 20 31 is->replaces($a,.$b)).{.return.1
3a240 3b 20 0a 20 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 73 28 24 62 2c 20 24 61 ;...}.if.($this->replaces($b,.$a
3a260 29 29 20 7b 0a 72 65 74 75 72 6e 20 2d 31 3b 20 0a 20 7d 0a 0a 0a 20 0a 20 69 66 20 28 24 72 65 )).{.return.-1;...}......if.($re
3a280 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 28 24 70 6f 73 quiredPackage.&&.false.!==.($pos
3a2a0 20 3d 20 73 74 72 70 6f 73 28 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 2c 20 27 2f 27 29 .=.strpos($requiredPackage,.'/')
3a2c0 29 29 20 7b 0a 24 72 65 71 75 69 72 65 64 56 65 6e 64 6f 72 20 3d 20 73 75 62 73 74 72 28 24 72 )).{.$requiredVendor.=.substr($r
3a2e0 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 2c 20 30 2c 20 24 70 6f 73 29 3b 0a 0a 24 61 49 73 53 equiredPackage,.0,.$pos);..$aIsS
3a300 61 6d 65 56 65 6e 64 6f 72 20 3d 20 73 75 62 73 74 72 28 24 61 2d 3e 67 65 74 4e 61 6d 65 28 29 ameVendor.=.substr($a->getName()
3a320 2c 20 30 2c 20 24 70 6f 73 29 20 3d 3d 3d 20 24 72 65 71 75 69 72 65 64 56 65 6e 64 6f 72 3b 0a ,.0,.$pos).===.$requiredVendor;.
3a340 24 62 49 73 53 61 6d 65 56 65 6e 64 6f 72 20 3d 20 73 75 62 73 74 72 28 24 62 2d 3e 67 65 74 4e $bIsSameVendor.=.substr($b->getN
3a360 61 6d 65 28 29 2c 20 30 2c 20 24 70 6f 73 29 20 3d 3d 3d 20 24 72 65 71 75 69 72 65 64 56 65 6e ame(),.0,.$pos).===.$requiredVen
3a380 64 6f 72 3b 0a 0a 69 66 20 28 24 62 49 73 53 61 6d 65 56 65 6e 64 6f 72 20 21 3d 3d 20 24 61 49 dor;..if.($bIsSameVendor.!==.$aI
3a3a0 73 53 61 6d 65 56 65 6e 64 6f 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 49 73 53 61 6d 65 56 65 sSameVendor).{.return.$aIsSameVe
3a3c0 6e 64 6f 72 20 3f 20 2d 31 20 3a 20 31 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 24 61 2d 3e ndor.?.-1.:.1;.}.}.}....if.($a->
3a3e0 69 64 20 3d 3d 3d 20 24 62 2d 3e 69 64 29 20 7b 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 72 65 id.===.$b->id).{.return.0;.}..re
3a400 74 75 72 6e 20 28 24 61 2d 3e 69 64 20 3c 20 24 62 2d 3e 69 64 29 20 3f 20 2d 31 20 3a 20 31 3b turn.($a->id.<.$b->id).?.-1.:.1;
3a420 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 61 70 5b 24 61 2d 3e .}..if.(isset($installedMap[$a->
3a440 69 64 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 2d 31 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 id])).{.return.-1;.}..if.(isset(
3a460 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 62 2d 3e 69 64 5d 29 29 20 7b 0a 72 65 74 75 72 6e $installedMap[$b->id])).{.return
3a480 20 31 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 28 24 74 68 69 73 2d 3e 67 65 74 50 72 69 6f 72 69 74 .1;.}..return.($this->getPriorit
3a4a0 79 28 24 70 6f 6f 6c 2c 20 24 61 29 20 3e 20 24 74 68 69 73 2d 3e 67 65 74 50 72 69 6f 72 69 74 y($pool,.$a).>.$this->getPriorit
3a4c0 79 28 24 70 6f 6f 6c 2c 20 24 62 29 29 20 3f 20 2d 31 20 3a 20 31 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a y($pool,.$b)).?.-1.:.1;.}.......
3a4e0 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 70 6c 61 63 65 73 .....protected.function.replaces
3a500 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 2c 20 50 61 63 6b 61 (PackageInterface.$source,.Packa
3a520 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 geInterface.$target).{.foreach.(
3a540 24 73 6f 75 72 63 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 $source->getReplaces().as.$link)
3a560 20 7b 0a 69 66 20 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 3d 3d 3d 20 24 74 .{.if.($link->getTarget().===.$t
3a580 61 72 67 65 74 2d 3e 67 65 74 4e 61 6d 65 28 29 0a 0a 0a 20 29 20 7b 0a 72 65 74 75 72 6e 20 74 arget->getName()....).{.return.t
3a5a0 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 70 72 6f 74 65 rue;.}.}..return.false;.}..prote
3a5c0 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 75 6e 65 54 6f 42 65 73 74 56 65 72 73 69 6f 6e cted.function.pruneToBestVersion
3a5e0 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 24 6c 69 74 65 72 61 6c 73 29 0a 7b 0a 24 6f 70 65 72 61 (Pool.$pool,.$literals).{.$opera
3a600 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 70 72 65 66 65 72 4c 6f 77 65 73 74 20 3f 20 27 3c 27 20 tor.=.$this->preferLowest.?.'<'.
3a620 3a 20 27 3e 27 3b 0a 24 62 65 73 74 4c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 28 24 6c 69 :.'>';.$bestLiterals.=.array($li
3a640 74 65 72 61 6c 73 5b 30 5d 29 3b 0a 24 62 65 73 74 50 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c terals[0]);.$bestPackage.=.$pool
3a660 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 73 5b 30 5d 29 ->literalToPackage($literals[0])
3a680 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 69 20 3d 3e 20 24 6c ;.foreach.($literals.as.$i.=>.$l
3a6a0 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 69 29 20 7b 0a 63 6f 6e 74 69 6e iteral).{.if.(0.===.$i).{.contin
3a6c0 75 65 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c ue;.}..$package.=.$pool->literal
3a6e0 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 74 68 69 73 2d ToPackage($literal);..if.($this-
3a700 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 70 61 63 6b 61 67 65 2c 20 24 62 65 73 74 50 >versionCompare($package,.$bestP
3a720 61 63 6b 61 67 65 2c 20 24 6f 70 65 72 61 74 6f 72 29 29 20 7b 0a 24 62 65 73 74 50 61 63 6b 61 ackage,.$operator)).{.$bestPacka
3a740 67 65 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 24 62 65 73 74 4c 69 74 65 72 61 6c 73 20 3d 20 61 ge.=.$package;.$bestLiterals.=.a
3a760 72 72 61 79 28 24 6c 69 74 65 72 61 6c 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d rray($literal);.}.elseif.($this-
3a780 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 70 61 63 6b 61 67 65 2c 20 24 62 65 73 74 50 >versionCompare($package,.$bestP
3a7a0 61 63 6b 61 67 65 2c 20 27 3d 3d 27 29 29 20 7b 0a 24 62 65 73 74 4c 69 74 65 72 61 6c 73 5b 5d ackage,.'==')).{.$bestLiterals[]
3a7c0 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 62 65 73 74 4c 69 .=.$literal;.}.}..return.$bestLi
3a7e0 74 65 72 61 6c 73 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 terals;.}.....protected.function
3a800 20 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 6c .pruneToHighestPriorityOrInstall
3a820 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 64 4d ed(Pool.$pool,.array.$installedM
3a840 61 70 2c 20 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 29 0a 7b 0a 24 73 65 6c 65 63 74 65 64 ap,.array.$literals).{.$selected
3a860 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 70 72 69 6f 72 69 74 79 20 3d 20 6e 75 6c 6c 3b 0a 0a .=.array();..$priority.=.null;..
3a880 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 29 20 foreach.($literals.as.$literal).
3a8a0 7b 0a 24 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 {.$package.=.$pool->literalToPac
3a8c0 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 kage($literal);..if.(isset($inst
3a8e0 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 73 65 6c 65 alledMap[$package->id])).{.$sele
3a900 63 74 65 64 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a cted[].=.$literal;.continue;.}..
3a920 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 70 72 69 6f 72 69 74 79 29 20 7b 0a 24 70 72 69 6f 72 if.(null.===.$priority).{.$prior
3a940 69 74 79 20 3d 20 24 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 ity.=.$this->getPriority($pool,.
3a960 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 65 74 50 72 69 6f $package);.}..if.($this->getPrio
3a980 72 69 74 79 28 24 70 6f 6f 6c 2c 20 24 70 61 63 6b 61 67 65 29 20 21 3d 20 24 70 72 69 6f 72 69 rity($pool,.$package).!=.$priori
3a9a0 74 79 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 73 65 6c 65 63 74 65 64 5b 5d 20 3d 20 24 6c ty).{.break;.}..$selected[].=.$l
3a9c0 69 74 65 72 61 6c 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 65 6c 65 63 74 65 64 3b 0a 7d 0a 0a iteral;.}..return.$selected;.}..
3a9e0 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 75 6e 65 52 65 6d .....protected.function.pruneRem
3aa00 6f 74 65 41 6c 69 61 73 65 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 6c 69 oteAliases(Pool.$pool,.array.$li
3aa20 74 65 72 61 6c 73 29 0a 7b 0a 24 68 61 73 4c 6f 63 61 6c 41 6c 69 61 73 20 3d 20 66 61 6c 73 65 terals).{.$hasLocalAlias.=.false
3aa40 3b 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 ;..foreach.($literals.as.$litera
3aa60 6c 29 20 7b 0a 24 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 l).{.$package.=.$pool->literalTo
3aa80 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 67 65 Package($literal);..if.($package
3aaa0 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 20 24 70 61 63 .instanceof.AliasPackage.&&.$pac
3aac0 6b 61 67 65 2d 3e 69 73 52 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 28 29 29 20 7b 0a 24 68 kage->isRootPackageAlias()).{.$h
3aae0 61 73 4c 6f 63 61 6c 41 6c 69 61 73 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a asLocalAlias.=.true;.break;.}.}.
3ab00 0a 69 66 20 28 21 24 68 61 73 4c 6f 63 61 6c 41 6c 69 61 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 .if.(!$hasLocalAlias).{.return.$
3ab20 6c 69 74 65 72 61 6c 73 3b 0a 7d 0a 0a 24 73 65 6c 65 63 74 65 64 20 3d 20 61 72 72 61 79 28 29 literals;.}..$selected.=.array()
3ab40 3b 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
3ab60 29 20 7b 0a 24 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 ).{.$package.=.$pool->literalToP
3ab80 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 67 65 20 ackage($literal);..if.($package.
3aba0 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 20 24 70 61 63 6b instanceof.AliasPackage.&&.$pack
3abc0 61 67 65 2d 3e 69 73 52 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 28 29 29 20 7b 0a 24 73 65 age->isRootPackageAlias()).{.$se
3abe0 6c 65 63 74 65 64 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e lected[].=.$literal;.}.}..return
3ac00 20 24 73 65 6c 65 63 74 65 64 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a .$selected;.}.}.<?php...........
3ac20 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 65 .namespace.Composer\DependencyRe
3ac40 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 6d 70 6f 73 65 72 5c solver\Operation;..use.Composer\
3ac60 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 0a Package\PackageInterface;.......
3ac80 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 53 class.InstallOperation.extends.S
3aca0 6f 6c 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 olverOperation.{.protected.$pack
3acc0 61 67 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 age;........public.function.__co
3ace0 6e 73 74 72 75 63 74 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 nstruct(PackageInterface.$packag
3ad00 65 2c 20 24 72 65 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 e,.$reason.=.null).{.parent::__c
3ad20 6f 6e 73 74 72 75 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 onstruct($reason);..$this->packa
3ad40 67 65 20 3d 20 24 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 ge.=.$package;.}.......public.fu
3ad60 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 72 6e 20 24 74 68 nction.getPackage().{.return.$th
3ad80 69 73 2d 3e 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 is->package;.}.......public.func
3ada0 74 69 6f 6e 20 67 65 74 4a 6f 62 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 69 6e 73 74 tion.getJobType().{.return.'inst
3adc0 61 6c 6c 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 all';.}.....public.function.__to
3ade0 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 49 6e 73 74 61 6c 6c 69 6e 67 20 27 2e String().{.return.'Installing.'.
3ae00 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 29 2e $this->package->getPrettyName().
3ae20 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 73 2d '.('.$this->formatVersion($this-
3ae40 3e 70 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 >package).')';.}.}.<?php........
3ae60 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
3ae80 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 6d 70 6f 73 yResolver\Operation;..use.Compos
3aea0 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 6f 6d er\Package\AliasPackage;.use.Com
3aec0 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 0a poser\Package\PackageInterface;.
3aee0 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 4f 70 ......class.MarkAliasInstalledOp
3af00 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 0a eration.extends.SolverOperation.
3af20 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 62 {.protected.$package;........pub
3af40 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 6c 69 61 73 50 61 lic.function.__construct(AliasPa
3af60 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 6e 75 6c 6c 29 0a ckage.$package,.$reason.=.null).
3af80 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);.
3afa0 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;.}...
3afc0 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()
3afe0 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;.}.....
3b000 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().{
3b020 0a 72 65 74 75 72 6e 20 27 6d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 27 3b 0a 7d 0a .return.'markAliasInstalled';.}.
3b040 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()
3b060 0a 7b 0a 72 65 74 75 72 6e 20 27 4d 61 72 6b 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b .{.return.'Marking.'.$this->pack
3b080 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 2d age->getPrettyName().'.('.$this-
3b0a0 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 27 >formatVersion($this->package).'
3b0c0 29 20 61 73 20 69 6e 73 74 61 6c 6c 65 64 2c 20 61 6c 69 61 73 20 6f 66 20 27 2e 24 74 68 69 73 ).as.installed,.alias.of.'.$this
3b0e0 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 2d 3e 67 65 74 50 72 65 74 ->package->getAliasOf()->getPret
3b100 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 65 72 73 69 tyName().'.('.$this->formatVersi
3b120 6f 6e 28 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 29 29 on($this->package->getAliasOf())
3b140 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
3b160 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
3b180 5c 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 \Operation;..use.Composer\Packag
3b1a0 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 50 61 63 e\AliasPackage;.use.Composer\Pac
3b1c0 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 63 6c 61 kage\PackageInterface;.......cla
3b1e0 73 73 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 ss.MarkAliasUninstalledOperation
3b200 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 6f 74 65 .extends.SolverOperation.{.prote
3b220 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 66 75 6e cted.$package;........public.fun
3b240 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 41 6c 69 61 73 50 61 63 6b 61 67 65 20 24 ction.__construct(AliasPackage.$
3b260 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 7b 0a 70 61 72 65 6e package,.$reason.=.null).{.paren
3b280 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 0a 24 74 68 69 73 2d t::__construct($reason);..$this-
3b2a0 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 0a 0a 70 75 62 >package.=.$package;.}.......pub
3b2c0 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
3b2e0 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 0a 0a 70 75 62 6c 69 rn.$this->package;.}.......publi
3b300 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 0a 72 65 74 75 72 6e c.function.getJobType().{.return
3b320 20 27 6d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 27 3b 0a 7d 0a 0a 0a 0a 0a 70 .'markAliasUninstalled';.}.....p
3b340 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
3b360 74 75 72 6e 20 27 4d 61 72 6b 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e turn.'Marking.'.$this->package->
3b380 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 6f 72 6d getPrettyName().'.('.$this->form
3b3a0 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 27 29 20 61 73 20 atVersion($this->package).').as.
3b3c0 75 6e 69 6e 73 74 61 6c 6c 65 64 2c 20 61 6c 69 61 73 20 6f 66 20 27 2e 24 74 68 69 73 2d 3e 70 uninstalled,.alias.of.'.$this->p
3b3e0 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 2d 3e 67 65 74 50 72 65 74 74 79 4e ackage->getAliasOf()->getPrettyN
3b400 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 65 72 73 69 6f 6e 28 ame().'.('.$this->formatVersion(
3b420 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 29 29 2e 27 29 $this->package->getAliasOf()).')
3b440 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 61 63 ';.}.}.<?php............namespac
3b460 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
3b480 65 72 61 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4f 70 65 72 61 74 69 eration;.......interface.Operati
3b4a0 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 20 66 75 6e 63 74 69 onInterface.{......public.functi
3b4c0 6f 6e 20 67 65 74 4a 6f 62 54 79 70 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 on.getJobType();.......public.fu
3b4e0 6e 63 74 69 6f 6e 20 67 65 74 52 65 61 73 6f 6e 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 nction.getReason();.......public
3b500 20 66 75 6e 63 74 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 .function.__toString();.}.<?php.
3b520 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 65 ...........namespace.Composer\De
3b540 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 75 73 65 pendencyResolver\Operation;..use
3b560 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
3b580 63 65 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 53 6f 6c 76 65 72 4f ce;.......abstract.class.SolverO
3b5a0 70 65 72 61 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4f 70 65 72 61 74 69 6f 6e 49 6e 74 peration.implements.OperationInt
3b5c0 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 61 73 6f 6e 3b 0a 0a 0a 0a 0a erface.{.protected.$reason;.....
3b5e0 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 72 ..public.function.__construct($r
3b600 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 20 3d 20 eason.=.null).{.$this->reason.=.
3b620 24 72 65 61 73 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 $reason;.}.......public.function
3b640 20 67 65 74 52 65 61 73 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 .getReason().{.return.$this->rea
3b660 73 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 66 6f 72 6d 61 son;.}..protected.function.forma
3b680 74 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 tVersion(PackageInterface.$packa
3b6a0 67 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 46 75 6c 6c 50 72 ge).{.return.$package->getFullPr
3b6c0 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a ettyVersion();.}.}.<?php........
3b6e0 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
3b700 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 6d 70 6f 73 yResolver\Operation;..use.Compos
3b720 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 0a er\Package\PackageInterface;....
3b740 0a 0a 0a 63 6c 61 73 73 20 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 20 65 78 74 65 ...class.UninstallOperation.exte
3b760 6e 64 73 20 53 6f 6c 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 nds.SolverOperation.{.protected.
3b780 24 70 61 63 6b 61 67 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 $package;........public.function
3b7a0 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 .__construct(PackageInterface.$p
3b7c0 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 ackage,.$reason.=.null).{.parent
3b7e0 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 61 73 6f 6e 29 3b 0a 0a 24 74 68 69 73 2d 3e ::__construct($reason);..$this->
3b800 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 0a 0a 70 75 62 6c package.=.$package;.}.......publ
3b820 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 72 ic.function.getPackage().{.retur
3b840 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 n.$this->package;.}.......public
3b860 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 .function.getJobType().{.return.
3b880 27 75 6e 69 6e 73 74 61 6c 6c 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 'uninstall';.}.....public.functi
3b8a0 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 55 6e 69 6e 73 74 on.__toString().{.return.'Uninst
3b8c0 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 50 72 65 74 alling.'.$this->package->getPret
3b8e0 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 65 72 73 69 tyName().'.('.$this->formatVersi
3b900 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 3c 3f 70 68 on($this->package).')';.}.}.<?ph
3b920 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\
3b940 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 75 DependencyResolver\Operation;..u
3b960 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
3b980 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f face;.......class.UpdateOperatio
3b9a0 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 6f 74 n.extends.SolverOperation.{.prot
3b9c0 65 63 74 65 64 20 24 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 3b 0a 70 72 6f 74 65 63 74 65 64 ected.$initialPackage;.protected
3b9e0 20 24 74 61 72 67 65 74 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 .$targetPackage;.........public.
3ba00 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
3ba20 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 65 rface.$initial,.PackageInterface
3ba40 20 24 74 61 72 67 65 74 2c 20 24 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 .$target,.$reason.=.null).{.pare
3ba60 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 0a 24 74 68 69 73 nt::__construct($reason);..$this
3ba80 2d 3e 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 20 3d 20 24 69 6e 69 74 69 61 6c 3b 0a 24 74 68 ->initialPackage.=.$initial;.$th
3baa0 69 73 2d 3e 74 61 72 67 65 74 50 61 63 6b 61 67 65 20 3d 20 24 74 61 72 67 65 74 3b 0a 7d 0a 0a is->targetPackage.=.$target;.}..
3bac0 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 69 74 69 61 6c 50 .....public.function.getInitialP
3bae0 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 69 6e 69 74 69 61 6c ackage().{.return.$this->initial
3bb00 50 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
3bb20 20 67 65 74 54 61 72 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 .getTargetPackage().{.return.$th
3bb40 69 73 2d 3e 74 61 72 67 65 74 50 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 is->targetPackage;.}.......publi
3bb60 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 0a 72 65 74 75 72 6e c.function.getJobType().{.return
3bb80 20 27 75 70 64 61 74 65 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e .'update';.}.....public.function
3bba0 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 55 70 64 61 74 69 6e 67 .__toString().{.return.'Updating
3bbc0 20 27 2e 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 .'.$this->initialPackage->getPre
3bbe0 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 65 72 73 ttyName().'.('.$this->formatVers
3bc00 69 6f 6e 28 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 29 2e 27 29 20 74 6f ion($this->initialPackage).').to
3bc20 20 27 2e 0a 24 74 68 69 73 2d 3e 74 61 72 67 65 74 50 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 .'..$this->targetPackage->getPre
3bc40 74 74 79 4e 61 6d 65 28 29 2e 20 27 20 28 27 2e 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 65 72 ttyName()..'.('.$this->formatVer
3bc60 73 69 6f 6e 28 24 74 68 69 73 2d 3e 74 61 72 67 65 74 50 61 63 6b 61 67 65 29 2e 27 29 27 3b 0a sion($this->targetPackage).')';.
3bc80 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
3bca0 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
3bcc0 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
3bce0 63 65 3b 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 ce;.....interface.PolicyInterfac
3bd00 65 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 65 72 73 69 6f 6e 43 6f 6d 70 61 e.{.public.function.versionCompa
3bd20 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 6b 61 67 65 49 re(PackageInterface.$a,.PackageI
3bd40 6e 74 65 72 66 61 63 65 20 24 62 2c 20 24 6f 70 65 72 61 74 6f 72 29 3b 0a 0a 70 75 62 6c 69 63 nterface.$b,.$operator);..public
3bd60 20 66 75 6e 63 74 69 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 .function.findUpdatePackages(Poo
3bd80 6c 20 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 50 61 l.$pool,.array.$installedMap,.Pa
3bda0 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 70 75 62 6c 69 ckageInterface.$package);..publi
3bdc0 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 50 72 65 66 65 72 72 65 64 50 61 63 6b 61 67 c.function.selectPreferredPackag
3bde0 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 74 61 6c 6c 65 64 4d es(Pool.$pool,.array.$installedM
3be00 61 70 2c 20 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a ap,.array.$literals);.}.<?php...
3be20 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
3be40 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 5c 50 61 ndencyResolver;..use.Composer\Pa
3be60 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 70 6f 73 65 72 5c ckage\BasePackage;.use.Composer\
3be80 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 6f 6d 70 6f 73 Package\AliasPackage;.use.Compos
3bea0 65 72 5c 53 65 6d 76 65 72 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d er\Semver\VersionParser;.use.Com
3bec0 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
3bee0 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 6d 76 65 72 ntInterface;.use.Composer\Semver
3bf00 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 65 20 43 6f 6d 70 \Constraint\Constraint;.use.Comp
3bf20 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 73 oser\Semver\Constraint\EmptyCons
3bf40 74 72 61 69 6e 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 traint;.use.Composer\Repository\
3bf60 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 73 65 RepositoryInterface;.use.Compose
3bf80 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
3bfa0 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
3bfc0 65 72 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 erRepository;.use.Composer\Repos
3bfe0 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 65 72 66 61 itory\InstalledRepositoryInterfa
3c000 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 6c 61 74 ce;.use.Composer\Repository\Plat
3c020 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 72 5c 50 61 63 formRepository;.use.Composer\Pac
3c040 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 0a 63 6c kage\PackageInterface;........cl
3c060 61 73 73 20 50 6f 6f 6c 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 43 6f 75 6e 74 61 62 6c 65 0a 7b ass.Pool.implements.\Countable.{
3c080 0a 63 6f 6e 73 74 20 4d 41 54 43 48 5f 4e 41 4d 45 20 3d 20 2d 31 3b 0a 63 6f 6e 73 74 20 4d 41 .const.MATCH_NAME.=.-1;.const.MA
3c0a0 54 43 48 5f 4e 4f 4e 45 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 4d 41 54 43 48 20 3d 20 31 3b 0a 63 TCH_NONE.=.0;.const.MATCH.=.1;.c
3c0c0 6f 6e 73 74 20 4d 41 54 43 48 5f 50 52 4f 56 49 44 45 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 4d 41 onst.MATCH_PROVIDE.=.2;.const.MA
3c0e0 54 43 48 5f 52 45 50 4c 41 43 45 20 3d 20 33 3b 0a 63 6f 6e 73 74 20 4d 41 54 43 48 5f 46 49 4c TCH_REPLACE.=.3;.const.MATCH_FIL
3c100 54 45 52 45 44 20 3d 20 34 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 TERED.=.4;..protected.$repositor
3c120 69 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 70 72 6f 76 69 64 ies.=.array();.protected.$provid
3c140 65 72 52 65 70 6f 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 61 erRepos.=.array();.protected.$pa
3c160 63 6b 61 67 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 70 61 63 ckages.=.array();.protected.$pac
3c180 6b 61 67 65 42 79 4e 61 6d 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 kageByName.=.array();.protected.
3c1a0 24 70 61 63 6b 61 67 65 42 79 45 78 61 63 74 4e 61 6d 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 $packageByExactName.=.array();.p
3c1c0 72 6f 74 65 63 74 65 64 20 24 61 63 63 65 70 74 61 62 6c 65 53 74 61 62 69 6c 69 74 69 65 73 3b rotected.$acceptableStabilities;
3c1e0 0a 70 72 6f 74 65 63 74 65 64 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 3b 0a 70 72 6f 74 .protected.$stabilityFlags;.prot
3c200 65 63 74 65 64 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 ected.$versionParser;.protected.
3c220 24 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 70 72 6f 74 65 63 $providerCache.=.array();.protec
3c240 74 65 64 20 24 66 69 6c 74 65 72 52 65 71 75 69 72 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 ted.$filterRequires;.protected.$
3c260 77 68 69 74 65 6c 69 73 74 20 3d 20 6e 75 6c 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 64 20 whitelist.=.null;.protected.$id.
3c280 3d 20 31 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 =.1;..public.function.__construc
3c2a0 74 28 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 20 3d 20 27 73 74 61 62 6c 65 27 2c 20 t($minimumStability.=.'stable',.
3c2c0 61 72 72 61 79 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 2c array.$stabilityFlags.=.array(),
3c2e0 20 61 72 72 61 79 20 24 66 69 6c 74 65 72 52 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 .array.$filterRequires.=.array()
3c300 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 ).{.$this->versionParser.=.new.V
3c320 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 24 74 68 69 73 2d 3e 61 63 63 65 70 74 61 62 6c 65 53 ersionParser;.$this->acceptableS
3c340 74 61 62 69 6c 69 74 69 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 42 tabilities.=.array();.foreach.(B
3c360 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 20 61 73 20 24 73 74 61 asePackage::$stabilities.as.$sta
3c380 62 69 6c 69 74 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 24 76 61 6c 75 65 20 3c bility.=>.$value).{.if.($value.<
3c3a0 3d 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 6d 69 6e =.BasePackage::$stabilities[$min
3c3c0 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 63 63 65 70 74 61 imumStability]).{.$this->accepta
3c3e0 62 6c 65 53 74 61 62 69 6c 69 74 69 65 73 5b 24 73 74 61 62 69 6c 69 74 79 5d 20 3d 20 24 76 61 bleStabilities[$stability].=.$va
3c400 6c 75 65 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 3d lue;.}.}.$this->stabilityFlags.=
3c420 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 52 .$stabilityFlags;.$this->filterR
3c440 65 71 75 69 72 65 73 20 3d 20 24 66 69 6c 74 65 72 52 65 71 75 69 72 65 73 3b 0a 66 6f 72 65 61 equires.=.$filterRequires;.forea
3c460 63 68 20 28 24 66 69 6c 74 65 72 52 65 71 75 69 72 65 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 ch.($filterRequires.as.$name.=>.
3c480 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 50 6c $constraint).{.if.(preg_match(Pl
3c4a0 61 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 atformRepository::PLATFORM_PACKA
3c4c0 47 45 5f 52 45 47 45 58 2c 20 24 6e 61 6d 65 29 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d GE_REGEX,.$name)).{.unset($this-
3c4e0 3e 66 69 6c 74 65 72 52 65 71 75 69 72 65 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a >filterRequires[$name]);.}.}.}..
3c500 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 57 68 69 74 65 6c 69 73 74 28 24 77 68 public.function.setWhitelist($wh
3c520 69 74 65 6c 69 73 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 20 3d 20 24 77 itelist).{.$this->whitelist.=.$w
3c540 68 69 74 65 6c 69 73 74 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 43 61 63 68 65 20 3d hitelist;.$this->providerCache.=
3c560 20 61 72 72 61 79 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 .array();.}........public.functi
3c580 6f 6e 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 on.addRepository(RepositoryInter
3c5a0 66 61 63 65 20 24 72 65 70 6f 2c 20 24 72 6f 6f 74 41 6c 69 61 73 65 73 20 3d 20 61 72 72 61 79 face.$repo,.$rootAliases.=.array
3c5c0 28 29 29 0a 7b 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 ()).{.if.($repo.instanceof.Compo
3c5e0 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 72 65 70 6f 73 20 3d 20 24 72 65 70 6f siteRepository).{.$repos.=.$repo
3c600 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 ->getRepositories();.}.else.{.$r
3c620 65 70 6f 73 20 3d 20 61 72 72 61 79 28 24 72 65 70 6f 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 epos.=.array($repo);.}..foreach.
3c640 28 24 72 65 70 6f 73 20 61 73 20 24 72 65 70 6f 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 ($repos.as.$repo).{.$this->repos
3c660 69 74 6f 72 69 65 73 5b 5d 20 3d 20 24 72 65 70 6f 3b 0a 0a 24 65 78 65 6d 70 74 20 3d 20 24 72 itories[].=.$repo;..$exempt.=.$r
3c680 65 70 6f 20 69 6e 73 74 61 6e 63 65 6f 66 20 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 epo.instanceof.PlatformRepositor
3c6a0 79 20 7c 7c 20 24 72 65 70 6f 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 73 74 61 6c 6c 65 64 52 y.||.$repo.instanceof.InstalledR
3c6c0 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 0a 69 66 20 28 24 72 65 70 6f 20 69 epositoryInterface;..if.($repo.i
3c6e0 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 6f 72 79 20 26 26 20 nstanceof.ComposerRepository.&&.
3c700 24 72 65 70 6f 2d 3e 68 61 73 50 72 6f 76 69 64 65 72 73 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e $repo->hasProviders()).{.$this->
3c720 70 72 6f 76 69 64 65 72 52 65 70 6f 73 5b 5d 20 3d 20 24 72 65 70 6f 3b 0a 24 72 65 70 6f 2d 3e providerRepos[].=.$repo;.$repo->
3c740 73 65 74 52 6f 6f 74 41 6c 69 61 73 65 73 28 24 72 6f 6f 74 41 6c 69 61 73 65 73 29 3b 0a 24 72 setRootAliases($rootAliases);.$r
3c760 65 70 6f 2d 3e 72 65 73 65 74 50 61 63 6b 61 67 65 49 64 73 28 29 3b 0a 7d 20 65 6c 73 65 20 7b epo->resetPackageIds();.}.else.{
3c780 0a 66 6f 72 65 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 .foreach.($repo->getPackages().a
3c7a0 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 6e 61 6d 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d s.$package).{.$names.=.$package-
3c7c0 3e 67 65 74 4e 61 6d 65 73 28 29 3b 0a 24 73 74 61 62 69 6c 69 74 79 20 3d 20 24 70 61 63 6b 61 >getNames();.$stability.=.$packa
3c7e0 67 65 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 3b 0a 69 66 20 28 24 65 78 65 6d 70 74 20 ge->getStability();.if.($exempt.
3c800 7c 7c 20 24 74 68 69 73 2d 3e 69 73 50 61 63 6b 61 67 65 41 63 63 65 70 74 61 62 6c 65 28 24 6e ||.$this->isPackageAcceptable($n
3c820 61 6d 65 73 2c 20 24 73 74 61 62 69 6c 69 74 79 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 ames,.$stability)).{.$package->s
3c840 65 74 49 64 28 24 74 68 69 73 2d 3e 69 64 2b 2b 29 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 etId($this->id++);.$this->packag
3c860 65 73 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 es[].=.$package;.$this->packageB
3c880 79 45 78 61 63 74 4e 61 6d 65 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b yExactName[$package->getName()][
3c8a0 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 0a 66 6f 72 65 61 $package->id].=.$package;..forea
3c8c0 63 68 20 28 24 6e 61 6d 65 73 20 61 73 20 24 70 72 6f 76 69 64 65 64 29 20 7b 0a 24 74 68 69 73 ch.($names.as.$provided).{.$this
3c8e0 2d 3e 70 61 63 6b 61 67 65 42 79 4e 61 6d 65 5b 24 70 72 6f 76 69 64 65 64 5d 5b 5d 20 3d 20 24 ->packageByName[$provided][].=.$
3c900 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 20 24 6e 61 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e package;.}....$name.=.$package->
3c920 67 65 74 4e 61 6d 65 28 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 72 6f 6f 74 41 6c 69 61 73 65 getName();.if.(isset($rootAliase
3c940 73 5b 24 6e 61 6d 65 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 s[$name][$package->getVersion()]
3c960 29 29 20 7b 0a 24 61 6c 69 61 73 20 3d 20 24 72 6f 6f 74 41 6c 69 61 73 65 73 5b 24 6e 61 6d 65 )).{.$alias.=.$rootAliases[$name
3c980 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 3b 0a 69 66 20 28 24 ][$package->getVersion()];.if.($
3c9a0 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)
3c9c0 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 .{.$package.=.$package->getAlias
3c9e0 4f 66 28 29 3b 0a 7d 0a 24 61 6c 69 61 73 50 61 63 6b 61 67 65 20 3d 20 6e 65 77 20 41 6c 69 61 Of();.}.$aliasPackage.=.new.Alia
3ca00 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 73 sPackage($package,.$alias['alias
3ca20 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 3b _normalized'],.$alias['alias']);
3ca40 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 6c .$aliasPackage->setRootPackageAl
3ca60 69 61 73 28 74 72 75 65 29 3b 0a 24 61 6c 69 61 73 50 61 63 6b 61 67 65 2d 3e 73 65 74 49 64 28 ias(true);.$aliasPackage->setId(
3ca80 24 74 68 69 73 2d 3e 69 64 2b 2b 29 3b 0a 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6f $this->id++);..$package->getRepo
3caa0 73 69 74 6f 72 79 28 29 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 61 6c 69 61 73 50 61 63 6b 61 sitory()->addPackage($aliasPacka
3cac0 67 65 29 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 61 6c 69 61 73 50 ge);.$this->packages[].=.$aliasP
3cae0 61 63 6b 61 67 65 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 45 78 61 63 74 4e 61 6d ackage;.$this->packageByExactNam
3cb00 65 5b 24 61 6c 69 61 73 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 24 61 6c 69 e[$aliasPackage->getName()][$ali
3cb20 61 73 50 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 24 61 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a asPackage->id].=.$aliasPackage;.
3cb40 0a 66 6f 72 65 61 63 68 20 28 24 61 6c 69 61 73 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 .foreach.($aliasPackage->getName
3cb60 73 28 29 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 s().as.$name).{.$this->packageBy
3cb80 4e 61 6d 65 5b 24 6e 61 6d 65 5d 5b 5d 20 3d 20 24 61 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 7d Name[$name][].=.$aliasPackage;.}
3cba0 0a 7d 0a 7d 0a 7d 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 .}.}.}.}.}.}..public.function.ge
3cbc0 74 50 72 69 6f 72 69 74 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 tPriority(RepositoryInterface.$r
3cbe0 65 70 6f 29 0a 7b 0a 24 70 72 69 6f 72 69 74 79 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 epo).{.$priority.=.array_search(
3cc00 24 72 65 70 6f 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 75 65 $repo,.$this->repositories,.true
3cc20 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 70 72 69 6f 72 69 74 79 29 20 7b 0a 74 );..if.(false.===.$priority).{.t
3cc40 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 43 6f 75 6c hrow.new.\RuntimeException("Coul
3cc60 64 20 6e 6f 74 20 64 65 74 65 72 6d 69 6e 65 20 72 65 70 6f 73 69 74 6f 72 79 20 70 72 69 6f 72 d.not.determine.repository.prior
3cc80 69 74 79 2e 20 54 68 65 20 72 65 70 6f 73 69 74 6f 72 79 20 77 61 73 20 6e 6f 74 20 72 65 67 69 ity..The.repository.was.not.regi
3cca0 73 74 65 72 65 64 20 69 6e 20 74 68 65 20 70 6f 6f 6c 2e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e stered.in.the.pool.");.}..return
3ccc0 20 2d 24 70 72 69 6f 72 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e .-$priority;.}........public.fun
3cce0 63 74 69 6f 6e 20 70 61 63 6b 61 67 65 42 79 49 64 28 24 69 64 29 0a 7b 0a 72 65 74 75 72 6e 20 ction.packageById($id).{.return.
3cd00 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 5b 24 69 64 20 2d 20 31 5d 3b 0a 7d 0a 0a 0a 0a 0a $this->packages[$id.-.1];.}.....
3cd20 70 75 62 6c 69 63 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 public.function.count().{.return
3cd40 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a .count($this->packages);.}......
3cd60 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 68 61 74 50 72 6f 76 69 64 ......public.function.whatProvid
3cd80 65 73 28 24 6e 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 es($name,.ConstraintInterface.$c
3cda0 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 2c 20 24 6d 75 73 74 4d 61 74 63 68 4e 61 6d 65 onstraint.=.null,.$mustMatchName
3cdc0 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 6b 65 79 20 3d 20 28 28 69 6e 74 29 20 24 6d 75 73 74 4d .=.false).{.$key.=.((int).$mustM
3cde0 61 74 63 68 4e 61 6d 65 29 2e 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 69 66 20 28 69 73 73 65 74 atchName).$constraint;.if.(isset
3ce00 28 24 74 68 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 ($this->providerCache[$name][$ke
3ce20 79 5d 29 29 20 7b 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 y])).{.return.$this->providerCac
3ce40 68 65 5b 24 6e 61 6d 65 5d 5b 24 6b 65 79 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 he[$name][$key];.}..return.$this
3ce60 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 20 3d 20 24 ->providerCache[$name][$key].=.$
3ce80 74 68 69 73 2d 3e 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 this->computeWhatProvides($name,
3cea0 20 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 29 3b 0a 7d .$constraint,.$mustMatchName);.}
3cec0 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 70 75 74 65 57 68 61 .....private.function.computeWha
3cee0 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 2c 20 24 6d tProvides($name,.$constraint,.$m
3cf00 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 63 61 6e 64 69 64 61 ustMatchName.=.false).{.$candida
3cf20 74 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 2d 3e tes.=.array();..foreach.($this->
3cf40 70 72 6f 76 69 64 65 72 52 65 70 6f 73 20 61 73 20 24 72 65 70 6f 29 20 7b 0a 66 6f 72 65 61 63 providerRepos.as.$repo).{.foreac
3cf60 68 20 28 24 72 65 70 6f 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 74 68 69 73 2c 20 24 6e h.($repo->whatProvides($this,.$n
3cf80 61 6d 65 29 20 61 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 24 63 61 6e 64 69 64 61 74 65 ame).as.$candidate).{.$candidate
3cfa0 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 69 66 20 28 24 63 61 6e 64 69 64 61 74 65 s[].=.$candidate;.if.($candidate
3cfc0 2d 3e 69 64 20 3c 20 31 29 20 7b 0a 24 63 61 6e 64 69 64 61 74 65 2d 3e 73 65 74 49 64 28 24 74 ->id.<.1).{.$candidate->setId($t
3cfe0 68 69 73 2d 3e 69 64 2b 2b 29 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 5b 24 74 68 69 his->id++);.$this->packages[$thi
3d000 73 2d 3e 69 64 20 2d 20 32 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 7d 0a 7d 0a 7d 0a 0a s->id.-.2].=.$candidate;.}.}.}..
3d020 69 66 20 28 24 6d 75 73 74 4d 61 74 63 68 4e 61 6d 65 29 20 7b 0a 24 63 61 6e 64 69 64 61 74 65 if.($mustMatchName).{.$candidate
3d040 73 20 3d 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 s.=.array_filter($candidates,.fu
3d060 6e 63 74 69 6f 6e 20 28 24 63 61 6e 64 69 64 61 74 65 29 20 75 73 65 20 28 24 6e 61 6d 65 29 20 nction.($candidate).use.($name).
3d080 7b 0a 72 65 74 75 72 6e 20 24 63 61 6e 64 69 64 61 74 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d {.return.$candidate->getName().=
3d0a0 3d 20 24 6e 61 6d 65 3b 0a 7d 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 61 =.$name;.});.if.(isset($this->pa
3d0c0 63 6b 61 67 65 42 79 45 78 61 63 74 4e 61 6d 65 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 63 61 6e ckageByExactName[$name])).{.$can
3d0e0 64 69 64 61 74 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 63 61 6e 64 69 64 61 74 65 didates.=.array_merge($candidate
3d100 73 2c 20 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 6e 61 s,.$this->packageByExactName[$na
3d120 6d 65 5d 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 me]);.}.}.elseif.(isset($this->p
3d140 61 63 6b 61 67 65 42 79 4e 61 6d 65 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 63 61 6e 64 69 64 61 ackageByName[$name])).{.$candida
3d160 74 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 63 61 6e 64 69 64 61 74 65 73 2c 20 24 tes.=.array_merge($candidates,.$
3d180 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 29 3b 0a 7d 0a 0a this->packageByName[$name]);.}..
3d1a0 24 6d 61 74 63 68 65 73 20 3d 20 24 70 72 6f 76 69 64 65 4d 61 74 63 68 65 73 20 3d 20 61 72 72 $matches.=.$provideMatches.=.arr
3d1c0 61 79 28 29 3b 0a 24 6e 61 6d 65 4d 61 74 63 68 20 3d 20 66 61 6c 73 65 3b 0a 0a 66 6f 72 65 61 ay();.$nameMatch.=.false;..forea
3d1e0 63 68 20 28 24 63 61 6e 64 69 64 61 74 65 73 20 61 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b ch.($candidates.as.$candidate).{
3d200 0a 24 61 6c 69 61 73 4f 66 43 61 6e 64 69 64 61 74 65 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 20 0a 20 .$aliasOfCandidate.=.null;......
3d220 69 66 20 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 50 if.($candidate.instanceof.AliasP
3d240 61 63 6b 61 67 65 29 20 7b 0a 24 61 6c 69 61 73 4f 66 43 61 6e 64 69 64 61 74 65 20 3d 20 24 63 ackage).{.$aliasOfCandidate.=.$c
3d260 61 6e 64 69 64 61 74 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 andidate->getAliasOf();.}..if.($
3d280 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 20 21 3d 3d 20 6e 75 6c 6c 20 26 26 20 28 0a 28 21 this->whitelist.!==.null.&&.(.(!
3d2a0 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 50 61 63 6b ($candidate.instanceof.AliasPack
3d2c0 61 67 65 29 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 73 74 5b age).&&.!isset($this->whitelist[
3d2e0 24 63 61 6e 64 69 64 61 74 65 2d 3e 69 64 5d 29 29 20 7c 7c 0a 28 24 63 61 6e 64 69 64 61 74 65 $candidate->id])).||.($candidate
3d300 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 20 21 69 73 73 .instanceof.AliasPackage.&&.!iss
3d320 65 74 28 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 5b 24 61 6c 69 61 73 4f 66 43 61 6e 64 et($this->whitelist[$aliasOfCand
3d340 69 64 61 74 65 2d 3e 69 64 5d 29 29 0a 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 73 77 idate->id])).)).{.continue;.}.sw
3d360 69 74 63 68 20 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 28 24 63 61 6e 64 69 64 61 74 65 2c 20 24 itch.($this->match($candidate,.$
3d380 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 63 61 73 65 20 73 65 6c 66 3a name,.$constraint)).{.case.self:
3d3a0 3a 4d 41 54 43 48 5f 4e 4f 4e 45 3a 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a :MATCH_NONE:.break;..case.self::
3d3c0 4d 41 54 43 48 5f 4e 41 4d 45 3a 0a 24 6e 61 6d 65 4d 61 74 63 68 20 3d 20 74 72 75 65 3b 0a 62 MATCH_NAME:.$nameMatch.=.true;.b
3d3e0 72 65 61 6b 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 4d 41 54 43 48 3a 0a 24 6e 61 6d 65 4d 61 reak;..case.self::MATCH:.$nameMa
3d400 74 63 68 20 3d 20 74 72 75 65 3b 0a 24 6d 61 74 63 68 65 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 tch.=.true;.$matches[].=.$candid
3d420 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 50 52 ate;.break;..case.self::MATCH_PR
3d440 4f 56 49 44 45 3a 0a 24 70 72 6f 76 69 64 65 4d 61 74 63 68 65 73 5b 5d 20 3d 20 24 63 61 6e 64 OVIDE:.$provideMatches[].=.$cand
3d460 69 64 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f idate;.break;..case.self::MATCH_
3d480 52 45 50 4c 41 43 45 3a 0a 24 6d 61 74 63 68 65 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 REPLACE:.$matches[].=.$candidate
3d4a0 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 46 49 4c 54 45 ;.break;..case.self::MATCH_FILTE
3d4c0 52 45 44 3a 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 65 77 20 RED:.break;..default:.throw.new.
3d4e0 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 65 78 70 \UnexpectedValueException('Unexp
3d500 65 63 74 65 64 20 6d 61 74 63 68 20 74 79 70 65 27 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 24 ected.match.type');.}.}....if.($
3d520 6e 61 6d 65 4d 61 74 63 68 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 3b 0a 7d 0a nameMatch).{.return.$matches;.}.
3d540 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6d 61 74 63 68 65 73 2c 20 24 70 .return.array_merge($matches,.$p
3d560 72 6f 76 69 64 65 4d 61 74 63 68 65 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 rovideMatches);.}..public.functi
3d580 6f 6e 20 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 0a 7b 0a on.literalToPackage($literal).{.
3d5a0 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
3d5c0 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 49 64 28 24 70 61 63 6b 61 67 65 49 urn.$this->packageById($packageI
3d5e0 64 29 3b 0a 7d 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 d);.}..public.function.literalTo
3d600 50 72 65 74 74 79 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 PrettyString($literal,.$installe
3d620 64 4d 61 70 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 dMap).{.$package.=.$this->litera
3d640 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 20 28 69 73 73 65 74 lToPackage($literal);..if.(isset
3d660 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 69 64 5d 29 29 20 7b ($installedMap[$package->id])).{
3d680 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 20 27 6b 65 65 70 .$prefix.=.($literal.>.0.?.'keep
3d6a0 27 20 3a 20 27 72 65 6d 6f 76 65 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 72 65 66 69 78 20 '.:.'remove');.}.else.{.$prefix.
3d6c0 3d 20 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 20 3f 20 27 69 6e 73 74 61 6c 6c 27 20 3a 20 27 64 =.($literal.>.0.?.'install'.:.'d
3d6e0 6f 6e 5c 27 74 20 69 6e 73 74 61 6c 6c 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 72 65 66 on\'t.install');.}..return.$pref
3d700 69 78 2e 27 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 ix.'.'.$package->getPrettyString
3d720 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 50 61 63 6b 61 67 65 ();.}..public.function.isPackage
3d740 41 63 63 65 70 74 61 62 6c 65 28 24 6e 61 6d 65 2c 20 24 73 74 61 62 69 6c 69 74 79 29 0a 7b 0a Acceptable($name,.$stability).{.
3d760 66 6f 72 65 61 63 68 20 28 28 61 72 72 61 79 29 20 24 6e 61 6d 65 20 61 73 20 24 6e 29 20 7b 0a foreach.((array).$name.as.$n).{.
3d780 0a 20 69 66 20 28 21 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 ..if.(!isset($this->stabilityFla
3d7a0 67 73 5b 24 6e 5d 29 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 63 63 65 70 74 61 62 gs[$n]).&&.isset($this->acceptab
3d7c0 6c 65 53 74 61 62 69 6c 69 74 69 65 73 5b 24 73 74 61 62 69 6c 69 74 79 5d 29 29 20 7b 0a 72 65 leStabilities[$stability])).{.re
3d7e0 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d turn.true;.}....if.(isset($this-
3d800 3e 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 5d 29 20 26 26 20 42 61 73 65 50 61 63 6b >stabilityFlags[$n]).&&.BasePack
3d820 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 73 74 61 62 69 6c 69 74 79 5d 20 3c 3d age::$stabilities[$stability].<=
3d840 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 5d 29 20 7b 0a 72 65 .$this->stabilityFlags[$n]).{.re
3d860 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 0a turn.true;.}.}..return.false;.}.
3d880 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 6d 61 74 63 68 ..........private.function.match
3d8a0 28 24 63 61 6e 64 69 64 61 74 65 2c 20 24 6e 61 6d 65 2c 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e ($candidate,.$name,.ConstraintIn
3d8c0 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 7b 0a 24 63 terface.$constraint.=.null).{.$c
3d8e0 61 6e 64 69 64 61 74 65 4e 61 6d 65 20 3d 20 24 63 61 6e 64 69 64 61 74 65 2d 3e 67 65 74 4e 61 andidateName.=.$candidate->getNa
3d900 6d 65 28 29 3b 0a 24 63 61 6e 64 69 64 61 74 65 56 65 72 73 69 6f 6e 20 3d 20 24 63 61 6e 64 69 me();.$candidateVersion.=.$candi
3d920 64 61 74 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 24 69 73 44 65 76 20 3d 20 24 63 61 date->getVersion();.$isDev.=.$ca
3d940 6e 64 69 64 61 74 65 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 20 3d 3d 3d 20 27 64 65 76 ndidate->getStability().===.'dev
3d960 27 3b 0a 24 69 73 41 6c 69 61 73 20 3d 20 24 63 61 6e 64 69 64 61 74 65 20 69 6e 73 74 61 6e 63 ';.$isAlias.=.$candidate.instanc
3d980 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 0a 69 66 20 28 21 24 69 73 44 65 76 20 26 eof.AliasPackage;..if.(!$isDev.&
3d9a0 26 20 21 24 69 73 41 6c 69 61 73 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 66 69 6c 74 &.!$isAlias.&&.isset($this->filt
3d9c0 65 72 52 65 71 75 69 72 65 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 72 65 71 75 69 72 65 46 69 erRequires[$name])).{.$requireFi
3d9e0 6c 74 65 72 20 3d 20 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 lter.=.$this->filterRequires[$na
3da00 6d 65 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 71 75 69 72 65 46 69 6c 74 65 72 20 3d 20 6e me];.}.else.{.$requireFilter.=.n
3da20 65 77 20 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 69 66 20 28 24 63 61 6e 64 ew.EmptyConstraint;.}..if.($cand
3da40 69 64 61 74 65 4e 61 6d 65 20 3d 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 24 70 6b 67 43 6f 6e 73 74 idateName.===.$name).{.$pkgConst
3da60 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 63 61 raint.=.new.Constraint('==',.$ca
3da80 6e 64 69 64 61 74 65 56 65 72 73 69 6f 6e 29 3b 0a 0a 69 66 20 28 24 63 6f 6e 73 74 72 61 69 6e ndidateVersion);..if.($constrain
3daa0 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 68 t.===.null.||.$constraint->match
3dac0 65 73 28 24 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 72 65 es($pkgConstraint)).{.return.$re
3dae0 71 75 69 72 65 46 69 6c 74 65 72 2d 3e 6d 61 74 63 68 65 73 28 24 70 6b 67 43 6f 6e 73 74 72 61 quireFilter->matches($pkgConstra
3db00 69 6e 74 29 20 3f 20 73 65 6c 66 3a 3a 4d 41 54 43 48 20 3a 20 73 65 6c 66 3a 3a 4d 41 54 43 48 int).?.self::MATCH.:.self::MATCH
3db20 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 3a 4d 41 54 43 48 _FILTERED;.}..return.self::MATCH
3db40 5f 4e 41 4d 45 3b 0a 7d 0a 0a 24 70 72 6f 76 69 64 65 73 20 3d 20 24 63 61 6e 64 69 64 61 74 65 _NAME;.}..$provides.=.$candidate
3db60 2d 3e 67 65 74 50 72 6f 76 69 64 65 73 28 29 3b 0a 24 72 65 70 6c 61 63 65 73 20 3d 20 24 63 61 ->getProvides();.$replaces.=.$ca
3db80 6e 64 69 64 61 74 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 73 28 29 3b 0a 0a 0a 20 69 66 20 28 69 ndidate->getReplaces();....if.(i
3dba0 73 73 65 74 28 24 72 65 70 6c 61 63 65 73 5b 30 5d 29 20 7c 7c 20 69 73 73 65 74 28 24 70 72 6f sset($replaces[0]).||.isset($pro
3dbc0 76 69 64 65 73 5b 30 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 72 6f 76 69 64 65 73 20 vides[0])).{.foreach.($provides.
3dbe0 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 72 67 65 74 as.$link).{.if.($link->getTarget
3dc00 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 6e 74 20 3d 3d 3d ().===.$name.&&.($constraint.===
3dc20 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 68 65 73 28 24 6c .null.||.$constraint->matches($l
3dc40 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 72 65 74 75 72 6e ink->getConstraint()))).{.return
3dc60 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 6c 69 6e 6b 2d 3e .$requireFilter->matches($link->
3dc80 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 41 54 43 48 5f 50 getConstraint()).?.self::MATCH_P
3dca0 52 4f 56 49 44 45 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 ROVIDE.:.self::MATCH_FILTERED;.}
3dcc0 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6c 61 63 65 73 20 61 73 20 24 6c 69 6e 6b 29 .}..foreach.($replaces.as.$link)
3dce0 20 7b 0a 69 66 20 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 3d 3d 3d 20 24 6e .{.if.($link->getTarget().===.$n
3dd00 61 6d 65 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 ame.&&.($constraint.===.null.||.
3dd20 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 43 $constraint->matches($link->getC
3dd40 6f 6e 73 74 72 61 69 6e 74 28 29 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 onstraint()))).{.return.$require
3dd60 46 69 6c 74 65 72 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 Filter->matches($link->getConstr
3dd80 61 69 6e 74 28 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 aint()).?.self::MATCH_REPLACE.:.
3dda0 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 46 49 4c 54 45 52 45 44 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 self::MATCH_FILTERED;.}.}..retur
3ddc0 6e 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 4e 4f 4e 45 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 n.self::MATCH_NONE;.}..if.(isset
3dde0 28 24 70 72 6f 76 69 64 65 73 5b 24 6e 61 6d 65 5d 29 20 26 26 20 28 24 63 6f 6e 73 74 72 61 69 ($provides[$name]).&&.($constrai
3de00 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
3de20 68 65 73 28 24 70 72 6f 76 69 64 65 73 5b 24 6e 61 6d 65 5d 2d 3e 67 65 74 43 6f 6e 73 74 72 61 hes($provides[$name]->getConstra
3de40 69 6e 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 int()))).{.return.$requireFilter
3de60 2d 3e 6d 61 74 63 68 65 73 28 24 70 72 6f 76 69 64 65 73 5b 24 6e 61 6d 65 5d 2d 3e 67 65 74 43 ->matches($provides[$name]->getC
3de80 6f 6e 73 74 72 61 69 6e 74 28 29 29 20 3f 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 50 52 4f 56 49 onstraint()).?.self::MATCH_PROVI
3dea0 44 45 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 69 66 DE.:.self::MATCH_FILTERED;.}..if
3dec0 20 28 69 73 73 65 74 28 24 72 65 70 6c 61 63 65 73 5b 24 6e 61 6d 65 5d 29 20 26 26 20 28 24 63 .(isset($replaces[$name]).&&.($c
3dee0 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 69 6e onstraint.===.null.||.$constrain
3df00 74 2d 3e 6d 61 74 63 68 65 73 28 24 72 65 70 6c 61 63 65 73 5b 24 6e 61 6d 65 5d 2d 3e 67 65 74 t->matches($replaces[$name]->get
3df20 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 Constraint()))).{.return.$requir
3df40 65 46 69 6c 74 65 72 2d 3e 6d 61 74 63 68 65 73 28 24 72 65 70 6c 61 63 65 73 5b 24 6e 61 6d 65 eFilter->matches($replaces[$name
3df60 5d 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 41 54 43 ]->getConstraint()).?.self::MATC
3df80 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 52 45 44 H_REPLACE.:.self::MATCH_FILTERED
3dfa0 3b 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 45 3b 0a 7d 0a ;.}..return.self::MATCH_NONE;.}.
3dfc0 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
3dfe0 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 0a 0a poser\DependencyResolver;.......
3e000 63 6c 61 73 73 20 50 72 6f 62 6c 65 6d 0a 7b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 class.Problem.{.....protected.$r
3e020 65 61 73 6f 6e 53 65 65 6e 3b 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 61 73 6f easonSeen;......protected.$reaso
3e040 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 73 65 63 74 69 6f ns.=.array();..protected.$sectio
3e060 6e 20 3d 20 30 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f 6f 6c 3b 0a 0a 70 75 62 6c 69 63 n.=.0;..protected.$pool;..public
3e080 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 6f 6f 6c 20 24 70 6f 6f 6c .function.__construct(Pool.$pool
3e0a0 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 7d 0a 0a 0a 0a 0a 0a ).{.$this->pool.=.$pool;.}......
3e0c0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 75 6c 65 28 52 75 6c 65 20 24 72 .public.function.addRule(Rule.$r
3e0e0 75 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 65 61 73 6f 6e 28 73 70 6c 5f 6f 62 6a 65 ule).{.$this->addReason(spl_obje
3e100 63 74 5f 68 61 73 68 28 24 72 75 6c 65 29 2c 20 61 72 72 61 79 28 0a 27 72 75 6c 65 27 20 3d 3e ct_hash($rule),.array(.'rule'.=>
3e120 20 24 72 75 6c 65 2c 0a 27 6a 6f 62 27 20 3d 3e 20 24 72 75 6c 65 2d 3e 67 65 74 4a 6f 62 28 29 .$rule,.'job'.=>.$rule->getJob()
3e140 2c 0a 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 6f 6e 20 67 65 ,.));.}.......public.function.ge
3e160 74 52 65 61 73 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 73 6f tReasons().{.return.$this->reaso
3e180 6e 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 67 65 74 ns;.}........public.function.get
3e1a0 50 72 65 74 74 79 53 74 72 69 6e 67 28 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 PrettyString(array.$installedMap
3e1c0 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 72 65 61 73 6f 6e 73 20 3d 20 63 61 6c 6c 5f 75 73 .=.array()).{.$reasons.=.call_us
3e1e0 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 61 72 72 er_func_array('array_merge',.arr
3e200 61 79 5f 72 65 76 65 72 73 65 28 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 73 29 29 3b 0a 0a 69 66 ay_reverse($this->reasons));..if
3e220 20 28 63 6f 75 6e 74 28 24 72 65 61 73 6f 6e 73 29 20 3d 3d 3d 20 31 29 20 7b 0a 72 65 73 65 74 .(count($reasons).===.1).{.reset
3e240 28 24 72 65 61 73 6f 6e 73 29 3b 0a 24 72 65 61 73 6f 6e 20 3d 20 63 75 72 72 65 6e 74 28 24 72 ($reasons);.$reason.=.current($r
3e260 65 61 73 6f 6e 73 29 3b 0a 0a 24 72 75 6c 65 20 3d 20 24 72 65 61 73 6f 6e 5b 27 72 75 6c 65 27 easons);..$rule.=.$reason['rule'
3e280 5d 3b 0a 24 6a 6f 62 20 3d 20 24 72 65 61 73 6f 6e 5b 27 6a 6f 62 27 5d 3b 0a 0a 69 66 20 28 69 ];.$job.=.$reason['job'];..if.(i
3e2a0 73 73 65 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 29 20 7b 0a 24 70 61 63 sset($job['constraint'])).{.$pac
3e2c0 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
3e2e0 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
3e300 73 74 72 61 69 6e 74 27 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d straint']);.}.else.{.$packages.=
3e320 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 69 66 20 28 24 6a 6f 62 20 26 26 20 24 6a 6f 62 5b 27 63 .array();.}..if.($job.&&.$job['c
3e340 6d 64 27 5d 20 3d 3d 3d 20 27 69 6e 73 74 61 6c 6c 27 20 26 26 20 65 6d 70 74 79 28 24 70 61 63 md'].===.'install'.&&.empty($pac
3e360 6b 61 67 65 73 29 29 20 7b 0a 0a 0a 20 69 66 20 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 kages)).{....if.($job['packageNa
3e380 6d 65 27 5d 20 3d 3d 3d 20 27 70 68 70 27 20 7c 7c 20 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e me'].===.'php'.||.$job['packageN
3e3a0 61 6d 65 27 5d 20 3d 3d 3d 20 27 70 68 70 2d 36 34 62 69 74 27 20 7c 7c 20 24 6a 6f 62 5b 27 70 ame'].===.'php-64bit'.||.$job['p
3e3c0 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 24 61 76 61 69 ackageName'].===.'hhvm').{.$avai
3e3e0 6c 61 62 6c 65 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 lable.=.$this->pool->whatProvide
3e400 73 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 29 3b 0a 24 76 65 72 73 69 6f 6e s($job['packageName']);.$version
3e420 20 3d 20 63 6f 75 6e 74 28 24 61 76 61 69 6c 61 62 6c 65 29 20 3f 20 24 61 76 61 69 6c 61 62 6c .=.count($available).?.$availabl
3e440 65 5b 30 5d 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 3a 20 70 68 70 76 65 e[0]->getPrettyVersion().:.phpve
3e460 72 73 69 6f 6e 28 29 3b 0a 0a 24 6d 73 67 20 3d 20 22 5c 6e 20 20 20 20 2d 20 54 68 69 73 20 70 rsion();..$msg.=."\n....-.This.p
3e480 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 73 20 22 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e ackage.requires.".$job['packageN
3e4a0 61 6d 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 ame'].$this->constraintToText($j
3e4c0 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 20 62 75 74 20 27 3b 0a 0a 69 66 20 28 ob['constraint']).'.but.';..if.(
3e4e0 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 72 65 74 75 72 defined('HHVM_VERSION')).{.retur
3e500 6e 20 24 6d 73 67 20 2e 20 27 79 6f 75 72 20 48 48 56 4d 20 76 65 72 73 69 6f 6e 20 64 6f 65 73 n.$msg...'your.HHVM.version.does
3e520 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 6d 65 6e 74 2e 27 3b .not.satisfy.that.requirement.';
3e540 0a 7d 20 65 6c 73 65 69 66 20 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 20 3d .}.elseif.($job['packageName'].=
3e560 3d 3d 20 27 68 68 76 6d 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 73 67 20 2e 20 27 79 6f 75 20 ==.'hhvm').{.return.$msg...'you.
3e580 61 72 65 20 72 75 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 are.running.this.with.PHP.and.no
3e5a0 74 20 48 48 56 4d 2e 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6d 73 67 20 2e 20 27 79 6f 75 72 t.HHVM.';.}..return.$msg...'your
3e5c0 20 50 48 50 20 76 65 72 73 69 6f 6e 20 28 27 2e 20 24 76 65 72 73 69 6f 6e 20 2e 27 29 20 64 6f .PHP.version.('..$version..').do
3e5e0 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 6d 65 6e 74 2e es.not.satisfy.that.requirement.
3e600 27 3b 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 ';.}....if.(0.===.stripos($job['
3e620 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 27 65 78 74 2d 27 29 29 20 7b 0a 24 65 78 74 20 3d packageName'],.'ext-')).{.$ext.=
3e640 20 73 75 62 73 74 72 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 34 29 3b .substr($job['packageName'],.4);
3e660 0a 24 65 72 72 6f 72 20 3d 20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 24 65 78 74 29 .$error.=.extension_loaded($ext)
3e680 20 3f 20 27 68 61 73 20 74 68 65 20 77 72 6f 6e 67 20 76 65 72 73 69 6f 6e 20 28 27 2e 28 70 68 .?.'has.the.wrong.version.('.(ph
3e6a0 70 76 65 72 73 69 6f 6e 28 24 65 78 74 29 20 3f 3a 20 27 30 27 29 2e 27 29 20 69 6e 73 74 61 6c pversion($ext).?:.'0').').instal
3e6c0 6c 65 64 27 20 3a 20 27 69 73 20 6d 69 73 73 69 6e 67 20 66 72 6f 6d 20 79 6f 75 72 20 73 79 73 led'.:.'is.missing.from.your.sys
3e6e0 74 65 6d 27 3b 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 tem';..return."\n....-.The.reque
3e700 73 74 65 64 20 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 20 22 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 sted.PHP.extension.".$job['packa
3e720 67 65 4e 61 6d 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 geName'].$this->constraintToText
3e740 28 24 6a 6f 62 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 2e ($job['constraint']).'.'.$error.
3e760 27 2e 20 49 6e 73 74 61 6c 6c 20 6f 72 20 65 6e 61 62 6c 65 20 50 48 50 5c 27 73 20 27 2e 24 65 '..Install.or.enable.PHP\'s.'.$e
3e780 78 74 2e 27 20 65 78 74 65 6e 73 69 6f 6e 2e 27 3b 0a 7d 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d xt.'.extension.';.}....if.(0.===
3e7a0 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 6c .stripos($job['packageName'],.'l
3e7c0 69 62 2d 27 29 29 20 7b 0a 69 66 20 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 6a 6f 62 5b 27 70 61 ib-')).{.if.(strtolower($job['pa
3e7e0 63 6b 61 67 65 4e 61 6d 65 27 5d 29 20 3d 3d 3d 20 27 6c 69 62 2d 69 63 75 27 29 20 7b 0a 24 65 ckageName']).===.'lib-icu').{.$e
3e800 72 72 6f 72 20 3d 20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 69 6e 74 6c 27 29 20 rror.=.extension_loaded('intl').
3e820 3f 20 27 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 6c ?.'has.the.wrong.version.install
3e840 65 64 2c 20 74 72 79 20 75 70 67 72 61 64 69 6e 67 20 74 68 65 20 69 6e 74 6c 20 65 78 74 65 6e ed,.try.upgrading.the.intl.exten
3e860 73 69 6f 6e 2e 27 20 3a 20 27 69 73 20 6d 69 73 73 69 6e 67 20 66 72 6f 6d 20 79 6f 75 72 20 73 sion.'.:.'is.missing.from.your.s
3e880 79 73 74 65 6d 2c 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 69 6e 74 6c 20 65 78 74 65 6e 73 ystem,.make.sure.the.intl.extens
3e8a0 69 6f 6e 20 69 73 20 6c 6f 61 64 65 64 2e 27 3b 0a 0a 72 65 74 75 72 6e 20 22 5c 6e 20 20 20 20 ion.is.loaded.';..return."\n....
3e8c0 2d 20 54 68 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 22 -.The.requested.linked.library."
3e8e0 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
3e900 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'])
3e920 2e 27 20 27 2e 24 65 72 72 6f 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 5c 6e 20 20 20 20 2d 20 .'.'.$error;.}..return."\n....-.
3e940 54 68 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 22 2e 24 The.requested.linked.library.".$
3e960 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
3e980 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']).'
3e9a0 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 6c 65 64 .has.the.wrong.version.installed
3e9c0 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 65 6d 2c .or.is.missing.from.your.system,
3e9e0 20 6d 61 6b 65 20 73 75 72 65 20 74 6f 20 6c 6f 61 64 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e .make.sure.to.load.the.extension
3ea00 20 70 72 6f 76 69 64 69 6e 67 20 69 74 2e 27 3b 0a 7d 0a 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 .providing.it.';.}..if.(!preg_ma
3ea20 74 63 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 6a 6f 62 tch('{^[A-Za-z0-9_./-]+$}',.$job
3ea40 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 29 29 20 7b 0a 24 69 6c 6c 65 67 61 6c 43 68 61 72 ['packageName'])).{.$illegalChar
3ea60 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 2e 2f s.=.preg_replace('{[A-Za-z0-9_./
3ea80 2d 5d 2b 7d 27 2c 20 27 27 2c 20 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 29 3b -]+}',.'',.$job['packageName']);
3eaa0 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 74 65 64 20 ..return."\n....-.The.requested.
3eac0 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 5d 2e 27 20 package.".$job['packageName'].'.
3eae0 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 2c 20 69 74 20 6c 6f 6f 6b 73 20 6c 69 6b could.not.be.found,.it.looks.lik
3eb00 65 20 69 74 73 20 6e 61 6d 65 20 69 73 20 69 6e 76 61 6c 69 64 2c 20 22 27 2e 24 69 6c 6c 65 67 e.its.name.is.invalid,."'.$illeg
3eb20 61 6c 43 68 61 72 73 2e 27 22 20 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 20 69 6e 20 70 61 63 alChars.'".is.not.allowed.in.pac
3eb40 6b 61 67 65 20 6e 61 6d 65 73 2e 27 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 70 6f 6f kage.names.';.}..if.(!$this->poo
3eb60 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 6d l->whatProvides($job['packageNam
3eb80 65 27 5d 29 29 20 7b 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 e'])).{.return."\n....-.The.requ
3eba0 65 73 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 ested.package.".$job['packageNam
3ebc0 65 27 5d 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 20 69 6e 20 61 6e 79 20 e'].'.could.not.be.found.in.any.
3ebe0 76 65 72 73 69 6f 6e 2c 20 74 68 65 72 65 20 6d 61 79 20 62 65 20 61 20 74 79 70 6f 20 69 6e 20 version,.there.may.be.a.typo.in.
3ec00 74 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 2e 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 5c the.package.name.';.}..return."\
3ec20 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.".$
3ec40 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
3ec60 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']).'
3ec80 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 2e 27 3b 0a 7d 0a 7d 0a 0a 24 6d 65 73 .could.not.be.found.';.}.}..$mes
3eca0 73 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 61 73 sages.=.array();..foreach.($reas
3ecc0 6f 6e 73 20 61 73 20 24 72 65 61 73 6f 6e 29 20 7b 0a 24 72 75 6c 65 20 3d 20 24 72 65 61 73 6f ons.as.$reason).{.$rule.=.$reaso
3ece0 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 5b 27 6a 6f 62 27 5d n['rule'];.$job.=.$reason['job']
3ed00 3b 0a 0a 69 66 20 28 24 6a 6f 62 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 74 68 ;..if.($job).{.$messages[].=.$th
3ed20 69 73 2d 3e 6a 6f 62 54 6f 54 65 78 74 28 24 6a 6f 62 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 is->jobToText($job);.}.elseif.($
3ed40 72 75 6c 65 29 20 7b 0a 69 66 20 28 24 72 75 6c 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 75 6c rule).{.if.($rule.instanceof.Rul
3ed60 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 72 75 6c 65 2d 3e 67 65 74 50 72 65 e).{.$messages[].=.$rule->getPre
3ed80 74 74 79 53 74 72 69 6e 67 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 ttyString($this->pool,.$installe
3eda0 64 4d 61 70 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 5c 6e 20 20 20 20 2d 20 22 2e dMap);.}.}.}..return."\n....-.".
3edc0 69 6d 70 6c 6f 64 65 28 22 5c 6e 20 20 20 20 2d 20 22 2c 20 24 6d 65 73 73 61 67 65 73 29 3b 0a implode("\n....-.",.$messages);.
3ede0 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 61 64 64 52 }........protected.function.addR
3ee00 65 61 73 6f 6e 28 24 69 64 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 eason($id,.$reason).{.if.(!isset
3ee20 28 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 53 65 65 6e 5b 24 69 64 5d 29 29 20 7b 0a 24 74 68 69 ($this->reasonSeen[$id])).{.$thi
3ee40 73 2d 3e 72 65 61 73 6f 6e 53 65 65 6e 5b 24 69 64 5d 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 s->reasonSeen[$id].=.true;.$this
3ee60 2d 3e 72 65 61 73 6f 6e 73 5b 24 74 68 69 73 2d 3e 73 65 63 74 69 6f 6e 5d 5b 5d 20 3d 20 24 72 ->reasons[$this->section][].=.$r
3ee80 65 61 73 6f 6e 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 65 78 74 eason;.}.}..public.function.next
3eea0 53 65 63 74 69 6f 6e 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 65 63 74 69 6f 6e 2b 2b 3b 0a 7d 0a Section().{.$this->section++;.}.
3eec0 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 6a 6f 62 54 6f 54 .......protected.function.jobToT
3eee0 65 78 74 28 24 6a 6f 62 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 6a 6f 62 5b 27 63 6d 64 27 5d 29 ext($job).{.switch.($job['cmd'])
3ef00 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 20 24 .{.case.'install':.$packages.=.$
3ef20 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 27 70 this->pool->whatProvides($job['p
3ef40 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 27 5d ackageName'],.$job['constraint']
3ef60 29 3b 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 73 29 20 7b 0a 72 65 74 75 72 6e 20 27 4e 6f 20 );.if.(!$packages).{.return.'No.
3ef80 70 61 63 6b 61 67 65 20 66 6f 75 6e 64 20 74 6f 20 73 61 74 69 73 66 79 20 69 6e 73 74 61 6c 6c package.found.to.satisfy.install
3efa0 20 72 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 .request.for.'.$job['packageName
3efc0 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 5b '].$this->constraintToText($job[
3efe0 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 49 6e 73 74 61 'constraint']);.}..return.'Insta
3f000 6c 6c 61 74 69 6f 6e 20 72 65 71 75 65 73 74 20 66 6f 72 20 27 2e 24 6a 6f 62 5b 27 70 61 63 6b llation.request.for.'.$job['pack
3f020 61 67 65 4e 61 6d 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 ageName'].$this->constraintToTex
3f040 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 20 2d 3e 20 73 61 74 69 73 t($job['constraint']).'.->.satis
3f060 66 69 61 62 6c 65 20 62 79 20 27 2e 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 4c 69 73 fiable.by.'.$this->getPackageLis
3f080 74 28 24 70 61 63 6b 61 67 65 73 29 2e 27 2e 27 3b 0a 63 61 73 65 20 27 75 70 64 61 74 65 27 3a t($packages).'.';.case.'update':
3f0a0 0a 72 65 74 75 72 6e 20 27 55 70 64 61 74 65 20 72 65 71 75 65 73 74 20 66 6f 72 20 27 2e 24 6a .return.'Update.request.for.'.$j
3f0c0 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
3f0e0 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 2e intToText($job['constraint']).'.
3f100 27 3b 0a 63 61 73 65 20 27 72 65 6d 6f 76 65 27 3a 0a 72 65 74 75 72 6e 20 27 52 65 6d 6f 76 61 ';.case.'remove':.return.'Remova
3f120 6c 20 72 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 l.request.for.'.$job['packageNam
3f140 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
3f160 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 27 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 ['constraint']).'';.}..if.(isset
3f180 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 ($job['constraint'])).{.$package
3f1a0 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 28 24 6a s.=.$this->pool->whatProvides($j
3f1c0 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 73 74 72 61 ob['packageName'],.$job['constra
3f1e0 69 6e 74 27 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 int']);.}.else.{.$packages.=.arr
3f200 61 79 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 4a 6f 62 28 63 6d 64 3d 27 2e 24 6a 6f 62 5b ay();.}..return.'Job(cmd='.$job[
3f220 27 63 6d 64 27 5d 2e 27 2c 20 74 61 72 67 65 74 3d 27 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 'cmd'].',.target='.$job['package
3f240 4e 61 6d 65 27 5d 2e 27 2c 20 70 61 63 6b 61 67 65 73 3d 5b 27 2e 24 74 68 69 73 2d 3e 67 65 74 Name'].',.packages=['.$this->get
3f260 50 61 63 6b 61 67 65 4c 69 73 74 28 24 70 61 63 6b 61 67 65 73 29 2e 27 5d 29 27 3b 0a 7d 0a 0a PackageList($packages).'])';.}..
3f280 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 4c 69 73 protected.function.getPackageLis
3f2a0 74 28 24 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 t($packages).{.$prepared.=.array
3f2c0 28 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 6b 61 ();.foreach.($packages.as.$packa
3f2e0 67 65 29 20 7b 0a 24 70 72 65 70 61 72 65 64 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d ge).{.$prepared[$package->getNam
3f300 65 28 29 5d 5b 27 6e 61 6d 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 e()]['name'].=.$package->getPret
3f320 74 79 4e 61 6d 65 28 29 3b 0a 24 70 72 65 70 61 72 65 64 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 tyName();.$prepared[$package->ge
3f340 74 4e 61 6d 65 28 29 5d 5b 27 76 65 72 73 69 6f 6e 73 27 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 tName()]['versions'][$package->g
3f360 65 74 56 65 72 73 69 6f 6e 28 29 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 etVersion()].=.$package->getPret
3f380 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 70 72 65 70 61 72 65 tyVersion();.}.foreach.($prepare
3f3a0 64 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 70 72 65 70 61 d.as.$name.=>.$package).{.$prepa
3f3c0 72 65 64 5b 24 6e 61 6d 65 5d 20 3d 20 24 70 61 63 6b 61 67 65 5b 27 6e 61 6d 65 27 5d 2e 27 5b red[$name].=.$package['name'].'[
3f3e0 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 61 63 6b 61 67 65 5b 27 76 65 72 73 69 6f '.implode(',.',.$package['versio
3f400 6e 73 27 5d 29 2e 27 5d 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 2c 20 ns']).']';.}..return.implode(',.
3f420 27 2c 20 24 70 72 65 70 61 72 65 64 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 ',.$prepared);.}........protecte
3f440 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 63 6f 6e d.function.constraintToText($con
3f460 73 74 72 61 69 6e 74 29 0a 7b 0a 72 65 74 75 72 6e 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 straint).{.return.($constraint).
3f480 3f 20 27 20 27 2e 24 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 ?.'.'.$constraint->getPrettyStri
3f4a0 6e 67 28 29 20 3a 20 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 ng().:.'';.}.}.<?php............
3f4c0 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 65 73 namespace.Composer\DependencyRes
3f4e0 6f 6c 76 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 olver;..use.Composer\Semver\Cons
3f500 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 0a 0a 0a traint\ConstraintInterface;.....
3f520 63 6c 61 73 73 20 52 65 71 75 65 73 74 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6a 6f 62 73 3b class.Request.{.protected.$jobs;
3f540 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 29 0a ..public.function.__construct().
3f560 7b 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c {.$this->jobs.=.array();.}..publ
3f580 69 63 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 4e 61 6d 65 ic.function.install($packageName
3f5a0 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 6e ,.ConstraintInterface.$constrain
3f5c0 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 61 63 6b 61 t.=.null).{.$this->addJob($packa
3f5e0 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 6e 74 29 3b geName,.'install',.$constraint);
3f600 0a 7d 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 24 70 61 63 6b .}..public.function.update($pack
3f620 61 67 65 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 ageName,.ConstraintInterface.$co
3f640 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 61 64 64 4a 6f 62 nstraint.=.null).{.$this->addJob
3f660 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 27 75 70 64 61 74 65 27 2c 20 24 63 6f 6e 73 74 72 ($packageName,.'update',.$constr
3f680 61 69 6e 74 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 aint);.}..public.function.remove
3f6a0 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 66 61 ($packageName,.ConstraintInterfa
3f6c0 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 2d 3e ce.$constraint.=.null).{.$this->
3f6e0 61 64 64 4a 6f 62 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 27 72 65 6d 6f 76 65 27 2c 20 24 addJob($packageName,.'remove',.$
3f700 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 constraint);.}.......public.func
3f720 74 69 6f 6e 20 66 69 78 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 43 6f 6e 73 74 72 61 69 6e tion.fix($packageName,.Constrain
3f740 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 7b tInterface.$constraint.=.null).{
3f760 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 69 6e .$this->addJob($packageName,.'in
3f780 73 74 61 6c 6c 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 70 stall',.$constraint,.true);.}..p
3f7a0 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4a 6f 62 28 24 70 61 63 6b 61 67 rotected.function.addJob($packag
3f7c0 65 4e 61 6d 65 2c 20 24 63 6d 64 2c 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 eName,.$cmd,.ConstraintInterface
3f7e0 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 2c 20 24 66 69 78 65 64 20 3d 20 66 61 .$constraint.=.null,.$fixed.=.fa
3f800 6c 73 65 29 0a 7b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 lse).{.$packageName.=.strtolower
3f820 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 5b 5d 20 3d ($packageName);..$this->jobs[].=
3f840 20 61 72 72 61 79 28 0a 27 63 6d 64 27 20 3d 3e 20 24 63 6d 64 2c 0a 27 70 61 63 6b 61 67 65 4e .array(.'cmd'.=>.$cmd,.'packageN
3f860 61 6d 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 0a 27 63 6f 6e 73 74 72 61 69 6e ame'.=>.$packageName,.'constrain
3f880 74 27 20 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 0a 27 66 69 78 65 64 27 20 3d 3e 20 24 66 t'.=>.$constraint,.'fixed'.=>.$f
3f8a0 69 78 65 64 2c 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 ixed,.);.}..public.function.upda
3f8c0 74 65 41 6c 6c 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 5b 5d 20 3d 20 61 72 72 61 79 28 teAll().{.$this->jobs[].=.array(
3f8e0 27 63 6d 64 27 20 3d 3e 20 27 75 70 64 61 74 65 2d 61 6c 6c 27 29 3b 0a 7d 0a 0a 70 75 62 6c 69 'cmd'.=>.'update-all');.}..publi
3f900 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 c.function.getJobs().{.return.$t
3f920 68 69 73 2d 3e 6a 6f 62 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a his->jobs;.}.}.<?php............
3f940 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 65 73 namespace.Composer\DependencyRes
3f960 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6c 65 0a 7b 0a 63 6f 6e 73 74 20 52 55 olver;.....class.Rule.{.const.RU
3f980 4c 45 5f 49 4e 54 45 52 4e 41 4c 5f 41 4c 4c 4f 57 5f 55 50 44 41 54 45 20 3d 20 31 3b 0a 63 6f LE_INTERNAL_ALLOW_UPDATE.=.1;.co
3f9a0 6e 73 74 20 52 55 4c 45 5f 4a 4f 42 5f 49 4e 53 54 41 4c 4c 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 nst.RULE_JOB_INSTALL.=.2;.const.
3f9c0 52 55 4c 45 5f 4a 4f 42 5f 52 45 4d 4f 56 45 20 3d 20 33 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f RULE_JOB_REMOVE.=.3;.const.RULE_
3f9e0 50 41 43 4b 41 47 45 5f 43 4f 4e 46 4c 49 43 54 20 3d 20 36 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 PACKAGE_CONFLICT.=.6;.const.RULE
3fa00 5f 50 41 43 4b 41 47 45 5f 52 45 51 55 49 52 45 53 20 3d 20 37 3b 0a 63 6f 6e 73 74 20 52 55 4c _PACKAGE_REQUIRES.=.7;.const.RUL
3fa20 45 5f 50 41 43 4b 41 47 45 5f 4f 42 53 4f 4c 45 54 45 53 20 3d 20 38 3b 0a 63 6f 6e 73 74 20 52 E_PACKAGE_OBSOLETES.=.8;.const.R
3fa40 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 45 53 20 ULE_INSTALLED_PACKAGE_OBSOLETES.
3fa60 3d 20 39 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 53 41 4d 45 5f 4e 41 4d =.9;.const.RULE_PACKAGE_SAME_NAM
3fa80 45 20 3d 20 31 30 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 49 4d 50 4c 49 E.=.10;.const.RULE_PACKAGE_IMPLI
3faa0 43 49 54 5f 4f 42 53 4f 4c 45 54 45 53 20 3d 20 31 31 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 4c CIT_OBSOLETES.=.11;.const.RULE_L
3fac0 45 41 52 4e 45 44 20 3d 20 31 32 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f EARNED.=.12;.const.RULE_PACKAGE_
3fae0 41 4c 49 41 53 20 3d 20 31 33 3b 0a 0a 63 6f 6e 73 74 20 42 49 54 46 49 45 4c 44 5f 54 59 50 45 ALIAS.=.13;..const.BITFIELD_TYPE
3fb00 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 42 49 54 46 49 45 4c 44 5f 52 45 41 53 4f 4e 20 3d 20 38 3b .=.0;.const.BITFIELD_REASON.=.8;
3fb20 0a 63 6f 6e 73 74 20 42 49 54 46 49 45 4c 44 5f 44 49 53 41 42 4c 45 44 20 3d 20 31 36 3b 0a 0a .const.BITFIELD_DISABLED.=.16;..
3fb40 0a 0a 0a 0a 70 75 62 6c 69 63 20 24 6c 69 74 65 72 61 6c 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 ....public.$literals;..protected
3fb60 20 24 62 69 74 66 69 65 6c 64 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 61 73 6f 6e 44 61 74 .$bitfield;.protected.$reasonDat
3fb80 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 63 74 28 a;..public.function.__construct(
3fba0 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f array.$literals,.$reason,.$reaso
3fbc0 6e 44 61 74 61 2c 20 24 6a 6f 62 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 73 6f 72 74 28 24 6c 69 nData,.$job.=.null).{...sort($li
3fbe0 74 65 72 61 6c 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 20 3d 20 24 6c 69 74 terals);..$this->literals.=.$lit
3fc00 65 72 61 6c 73 3b 0a 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 44 61 74 61 20 3d 20 24 72 65 61 73 erals;.$this->reasonData.=.$reas
3fc20 6f 6e 44 61 74 61 3b 0a 0a 69 66 20 28 24 6a 6f 62 29 20 7b 0a 24 74 68 69 73 2d 3e 6a 6f 62 20 onData;..if.($job).{.$this->job.
3fc40 3d 20 24 6a 6f 62 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 62 69 74 66 69 65 6c 64 20 3d 20 28 30 20 =.$job;.}..$this->bitfield.=.(0.
3fc60 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 20 7c 0a 28 24 <<.self::BITFIELD_DISABLED).|.($
3fc80 72 65 61 73 6f 6e 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 52 45 41 53 4f 4e 29 reason.<<.self::BITFIELD_REASON)
3fca0 20 7c 0a 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 3b .|.(255.<<.self::BITFIELD_TYPE);
3fcc0 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 61 73 68 28 29 0a 7b 0a .}..public.function.getHash().{.
3fce0 24 64 61 74 61 20 3d 20 75 6e 70 61 63 6b 28 27 69 68 61 73 68 27 2c 20 6d 64 35 28 69 6d 70 6c $data.=.unpack('ihash',.md5(impl
3fd00 6f 64 65 28 27 2c 27 2c 20 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 29 2c 20 74 72 75 65 29 ode(',',.$this->literals),.true)
3fd20 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 61 74 61 5b 27 68 61 73 68 27 5d 3b 0a 7d 0a 0a 70 75 62 );..return.$data['hash'];.}..pub
3fd40 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 lic.function.getJob().{.return.i
3fd60 73 73 65 74 28 24 74 68 69 73 2d 3e 6a 6f 62 29 20 3f 20 24 74 68 69 73 2d 3e 6a 6f 62 20 3a 20 sset($this->job).?.$this->job.:.
3fd80 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 67 65 74 52 65 61 73 null;.}..public.function.getReas
3fda0 6f 6e 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 on().{.return.($this->bitfield.&
3fdc0 20 28 32 35 35 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 52 45 41 53 4f 4e 29 29 .(255.<<.self::BITFIELD_REASON))
3fde0 20 3e 3e 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 52 45 41 53 4f 4e 3b 0a 7d 0a 0a 70 75 .>>.self::BITFIELD_REASON;.}..pu
3fe00 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 61 73 6f 6e 44 61 74 61 28 29 0a 7b 0a blic.function.getReasonData().{.
3fe20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 44 61 74 61 3b 0a 7d 0a 0a 70 75 62 return.$this->reasonData;.}..pub
3fe40 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 28 lic.function.getRequiredPackage(
3fe60 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 65 74 52 65 61 73 6f 6e 28 29 20 3d 3d 3d 20 73 ).{.if.($this->getReason().===.s
3fe80 65 6c 66 3a 3a 52 55 4c 45 5f 4a 4f 42 5f 49 4e 53 54 41 4c 4c 29 20 7b 0a 72 65 74 75 72 6e 20 elf::RULE_JOB_INSTALL).{.return.
3fea0 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 44 61 74 61 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d $this->reasonData;.}..if.($this-
3fec0 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 50 41 43 4b >getReason().===.self::RULE_PACK
3fee0 41 47 45 5f 52 45 51 55 49 52 45 53 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 AGE_REQUIRES).{.return.$this->re
3ff00 61 73 6f 6e 44 61 74 61 2d 3e 67 65 74 54 61 72 67 65 74 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a asonData->getTarget();.}.}......
3ff20 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 71 75 61 6c 73 28 52 75 6c 65 20 ....public.function.equals(Rule.
3ff40 24 72 75 6c 65 29 0a 7b 0a 69 66 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 $rule).{.if.(count($this->litera
3ff60 6c 73 29 20 21 3d 20 63 6f 75 6e 74 28 24 72 75 6c 65 2d 3e 6c 69 74 65 72 61 6c 73 29 29 20 7b ls).!=.count($rule->literals)).{
3ff80 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 2c 20 24 .return.false;.}..for.($i.=.0,.$
3ffa0 6e 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 29 3b 20 24 69 20 3c n.=.count($this->literals);.$i.<
3ffc0 20 24 6e 3b 20 24 69 2b 2b 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 .$n;.$i++).{.if.($this->literals
3ffe0 5b 24 69 5d 20 21 3d 3d 20 24 72 75 6c 65 2d 3e 6c 69 74 65 72 61 6c 73 5b 24 69 5d 29 20 7b 0a [$i].!==.$rule->literals[$i]).{.
40000 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 0a return.false;.}.}..return.true;.
40020 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 79 70 65 28 24 74 79 70 65 }..public.function.setType($type
40040 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 69 74 66 69 65 6c 64 20 3d 20 28 24 74 68 69 73 2d 3e 62 69 ).{.$this->bitfield.=.($this->bi
40060 74 66 69 65 6c 64 20 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 tfield.&.~(255.<<.self::BITFIELD
40080 5f 54 59 50 45 29 29 20 7c 20 28 28 32 35 35 20 26 20 24 74 79 70 65 29 20 3c 3c 20 73 65 6c 66 _TYPE)).|.((255.&.$type).<<.self
400a0 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 20 66 75 6e 63 ::BITFIELD_TYPE);.}..public.func
400c0 74 69 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 24 74 68 69 73 2d 3e tion.getType().{.return.($this->
400e0 62 69 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 bitfield.&.(255.<<.self::BITFIEL
40100 44 5f 54 59 50 45 29 29 20 3e 3e 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 54 59 50 45 3b D_TYPE)).>>.self::BITFIELD_TYPE;
40120 0a 7d 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 28 29 0a 7b 0a .}..public.function.disable().{.
40140 24 74 68 69 73 2d 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 $this->bitfield.=.($this->bitfie
40160 6c 64 20 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 ld.&.~(255.<<.self::BITFIELD_DIS
40180 41 42 4c 45 44 29 29 20 7c 20 28 31 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 45 4c 44 5f 44 ABLED)).|.(1.<<.self::BITFIELD_D
401a0 49 53 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 65 6e 61 ISABLED);.}..public.function.ena
401c0 62 6c 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 69 74 66 69 65 6c 64 20 3d 20 24 74 68 69 73 2d ble().{.$this->bitfield.=.$this-
401e0 3e 62 69 74 66 69 65 6c 64 20 26 20 7e 28 32 35 35 20 3c 3c 20 73 65 6c 66 3a 3a 42 49 54 46 49 >bitfield.&.~(255.<<.self::BITFI
40200 45 4c 44 5f 44 49 53 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 ELD_DISABLED);.}..public.functio
40220 6e 20 69 73 44 69 73 61 62 6c 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 29 20 28 n.isDisabled().{.return.(bool).(
40240 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 65 6c 66 3a ($this->bitfield.&.(255.<<.self:
40260 3a 42 49 54 46 49 45 4c 44 5f 44 49 53 41 42 4c 45 44 29 29 20 3e 3e 20 73 65 6c 66 3a 3a 42 49 :BITFIELD_DISABLED)).>>.self::BI
40280 54 46 49 45 4c 44 5f 44 49 53 41 42 4c 45 44 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 TFIELD_DISABLED);.}..public.func
402a0 74 69 6f 6e 20 69 73 45 6e 61 62 6c 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 21 28 28 24 74 68 tion.isEnabled().{.return.!(($th
402c0 69 73 2d 3e 62 69 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 is->bitfield.&.(255.<<.self::BIT
402e0 46 49 45 4c 44 5f 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 FIELD_DISABLED)).>>.self::BITFIE
40300 4c 44 5f 44 49 53 41 42 4c 45 44 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 LD_DISABLED);.}.....public.funct
40320 69 6f 6e 20 67 65 74 4c 69 74 65 72 61 6c 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ion.getLiterals().{.return.$this
40340 2d 3e 6c 69 74 65 72 61 6c 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 ->literals;.}..public.function.i
40360 73 41 73 73 65 72 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 31 20 3d 3d 3d 20 63 6f 75 6e sAssertion().{.return.1.===.coun
40380 74 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 t($this->literals);.}..public.fu
403a0 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 50 6f 6f 6c 20 24 70 6f 6f nction.getPrettyString(Pool.$poo
403c0 6c 2c 20 61 72 72 61 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 l,.array.$installedMap.=.array()
403e0 29 0a 7b 0a 24 72 75 6c 65 54 65 78 74 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 ).{.$ruleText.=.'';.foreach.($th
40400 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 20 is->literals.as.$i.=>.$literal).
40420 7b 0a 69 66 20 28 24 69 20 21 3d 20 30 29 20 7b 0a 24 72 75 6c 65 54 65 78 74 20 2e 3d 20 27 7c {.if.($i.!=.0).{.$ruleText..=.'|
40440 27 3b 0a 7d 0a 24 72 75 6c 65 54 65 78 74 20 2e 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c ';.}.$ruleText..=.$pool->literal
40460 54 6f 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 6c 69 74 65 72 61 6c 2c 20 24 69 6e 73 74 61 6c ToPrettyString($literal,.$instal
40480 6c 65 64 4d 61 70 29 3b 0a 7d 0a 0a 73 77 69 74 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 52 65 ledMap);.}..switch.($this->getRe
404a0 61 73 6f 6e 28 29 29 20 7b 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 49 4e 54 45 52 4e ason()).{.case.self::RULE_INTERN
404c0 41 4c 5f 41 4c 4c 4f 57 5f 55 50 44 41 54 45 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 AL_ALLOW_UPDATE:.return.$ruleTex
404e0 74 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 4a 4f 42 5f 49 4e 53 54 41 4c 4c 3a t;..case.self::RULE_JOB_INSTALL:
40500 0a 72 65 74 75 72 6e 20 22 49 6e 73 74 61 6c 6c 20 63 6f 6d 6d 61 6e 64 20 72 75 6c 65 20 28 24 .return."Install.command.rule.($
40520 72 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 4a 4f 42 ruleText)";..case.self::RULE_JOB
40540 5f 52 45 4d 4f 56 45 3a 0a 72 65 74 75 72 6e 20 22 52 65 6d 6f 76 65 20 63 6f 6d 6d 61 6e 64 20 _REMOVE:.return."Remove.command.
40560 72 75 6c 65 20 28 24 72 75 6c 65 54 65 78 74 29 22 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 rule.($ruleText)";..case.self::R
40580 55 4c 45 5f 50 41 43 4b 41 47 45 5f 43 4f 4e 46 4c 49 43 54 3a 0a 24 70 61 63 6b 61 67 65 31 20 ULE_PACKAGE_CONFLICT:.$package1.
405a0 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 74 68 69 73 2d =.$pool->literalToPackage($this-
405c0 3e 6c 69 74 65 72 61 6c 73 5b 30 5d 29 3b 0a 24 70 61 63 6b 61 67 65 32 20 3d 20 24 70 6f 6f 6c >literals[0]);.$package2.=.$pool
405e0 2d 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 ->literalToPackage($this->litera
40600 6c 73 5b 31 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 31 2d 3e 67 65 74 50 72 ls[1]);..return.$package1->getPr
40620 65 74 74 79 53 74 72 69 6e 67 28 29 2e 27 20 63 6f 6e 66 6c 69 63 74 73 20 77 69 74 68 20 27 2e ettyString().'.conflicts.with.'.
40640 24 74 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 $this->formatPackagesUnique($poo
40660 6c 2c 20 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 32 29 29 2e 27 2e 27 3b 0a 0a 63 61 73 65 20 l,.array($package2)).'.';..case.
40680 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 45 53 3a 0a 24 6c 69 self::RULE_PACKAGE_REQUIRES:.$li
406a0 74 65 72 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 3b 0a 24 73 6f 75 72 63 terals.=.$this->literals;.$sourc
406c0 65 4c 69 74 65 72 61 6c 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 6c 69 74 65 72 61 6c 73 eLiteral.=.array_shift($literals
406e0 29 3b 0a 24 73 6f 75 72 63 65 50 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 );.$sourcePackage.=.$pool->liter
40700 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 73 6f 75 72 63 65 4c 69 74 65 72 61 6c 29 3b 0a 0a 24 72 alToPackage($sourceLiteral);..$r
40720 65 71 75 69 72 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 69 74 equires.=.array();.foreach.($lit
40740 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 72 65 71 75 69 72 65 73 5b 5d erals.as.$literal).{.$requires[]
40760 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 6c 69 74 65 .=.$pool->literalToPackage($lite
40780 72 61 6c 29 3b 0a 7d 0a 0a 24 74 65 78 74 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 44 61 ral);.}..$text.=.$this->reasonDa
407a0 74 61 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 73 6f 75 72 63 65 50 61 63 6b 61 ta->getPrettyString($sourcePacka
407c0 67 65 29 3b 0a 69 66 20 28 24 72 65 71 75 69 72 65 73 29 20 7b 0a 24 74 65 78 74 20 2e 3d 20 27 ge);.if.($requires).{.$text..=.'
407e0 20 2d 3e 20 73 61 74 69 73 66 69 61 62 6c 65 20 62 79 20 27 20 2e 20 24 74 68 69 73 2d 3e 66 6f .->.satisfiable.by.'...$this->fo
40800 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 24 72 65 71 75 69 rmatPackagesUnique($pool,.$requi
40820 72 65 73 29 20 2e 20 27 2e 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 61 72 67 65 74 4e 61 6d 65 res)...'.';.}.else.{.$targetName
40840 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 54 61 72 67 65 74 28 .=.$this->reasonData->getTarget(
40860 29 3b 0a 0a 69 66 20 28 24 74 61 72 67 65 74 4e 61 6d 65 20 3d 3d 3d 20 27 70 68 70 27 20 7c 7c );..if.($targetName.===.'php'.||
40880 20 24 74 61 72 67 65 74 4e 61 6d 65 20 3d 3d 3d 20 27 70 68 70 2d 36 34 62 69 74 27 20 7c 7c 20 .$targetName.===.'php-64bit'.||.
408a0 24 74 61 72 67 65 74 4e 61 6d 65 20 3d 3d 3d 20 27 68 68 76 6d 27 29 20 7b 0a 0a 20 69 66 20 28 $targetName.===.'hhvm').{...if.(
408c0 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 74 65 78 74 defined('HHVM_VERSION')).{.$text
408e0 20 2e 3d 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 ..=.'.->.your.HHVM.version.does.
40900 6e 6f 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 not.satisfy.that.requirement.';.
40920 7d 20 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 }.elseif.($targetName.===.'hhvm'
40940 29 20 7b 0a 24 74 65 78 74 20 2e 3d 20 27 20 2d 3e 20 79 6f 75 20 61 72 65 20 72 75 6e 6e 69 6e ).{.$text..=.'.->.you.are.runnin
40960 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 2e 27 3b 0a g.this.with.PHP.and.not.HHVM.';.
40980 7d 20 65 6c 73 65 20 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 }.else.{.$text..=.'.->.your.PHP.
409a0 76 65 72 73 69 6f 6e 20 28 27 2e 20 70 68 70 76 65 72 73 69 6f 6e 28 29 20 2e 27 29 20 6f 72 20 version.('..phpversion()..').or.
409c0 76 61 6c 75 65 20 6f 66 20 22 63 6f 6e 66 69 67 2e 70 6c 61 74 66 6f 72 6d 2e 70 68 70 22 20 69 value.of."config.platform.php".i
409e0 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 73 61 74 69 73 66 79 n.composer.json.does.not.satisfy
40a00 20 74 68 61 74 20 72 65 71 75 69 72 65 6d 65 6e 74 2e 27 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 .that.requirement.';.}.}.elseif.
40a20 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 65 78 74 2d (0.===.strpos($targetName,.'ext-
40a40 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 65 74 4e 61 6d ')).{...$ext.=.substr($targetNam
40a60 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 6f 61 64 65 64 e,.4);.$error.=.extension_loaded
40a80 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 73 69 6f 6e 20 ($ext).?.'has.the.wrong.version.
40aa0 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 29 2e 27 29 20 ('.(phpversion($ext).?:.'0').').
40ac0 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 6f 6d 20 79 6f installed'.:.'is.missing.from.yo
40ae0 75 72 20 73 79 73 74 65 6d 27 3b 0a 0a 24 74 65 78 74 20 2e 3d 20 27 20 2d 3e 20 74 68 65 20 72 ur.system';..$text..=.'.->.the.r
40b00 65 71 75 65 73 74 65 64 20 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 20 27 2e 24 65 78 74 2e 27 20 equested.PHP.extension.'.$ext.'.
40b20 27 2e 24 65 72 72 6f 72 2e 27 2e 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 30 20 3d 3d 3d 20 73 74 '.$error.'.';.}.elseif.(0.===.st
40b40 72 70 6f 73 28 24 74 61 72 67 65 74 4e 61 6d 65 2c 20 27 6c 69 62 2d 27 29 29 20 7b 0a 0a 20 24 rpos($targetName,.'lib-')).{...$
40b60 6c 69 62 20 3d 20 73 75 62 73 74 72 28 24 74 61 72 67 65 74 4e 61 6d 65 2c 20 34 29 3b 0a 0a 24 lib.=.substr($targetName,.4);..$
40b80 74 65 78 74 20 2e 3d 20 27 20 2d 3e 20 74 68 65 20 72 65 71 75 65 73 74 65 64 20 6c 69 6e 6b 65 text..=.'.->.the.requested.linke
40ba0 64 20 6c 69 62 72 61 72 79 20 27 2e 24 6c 69 62 2e 27 20 68 61 73 20 74 68 65 20 77 72 6f 6e 67 d.library.'.$lib.'.has.the.wrong
40bc0 20 76 65 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 .version.installed.or.is.missing
40be0 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 74 6f 20 .from.your.system,.make.sure.to.
40c00 68 61 76 65 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 have.the.extension.providing.it.
40c20 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 65 78 74 20 2e 3d 20 27 20 2d 3e 20 6e 6f 20 6d 61 74 ';.}.else.{.$text..=.'.->.no.mat
40c40 63 68 69 6e 67 20 70 61 63 6b 61 67 65 20 66 6f 75 6e 64 2e 27 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 ching.package.found.';.}.}..retu
40c60 72 6e 20 24 74 65 78 74 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 rn.$text;..case.self::RULE_PACKA
40c80 47 45 5f 4f 42 53 4f 4c 45 54 45 53 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a GE_OBSOLETES:.return.$ruleText;.
40ca0 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 49 4e 53 54 41 4c 4c 45 44 5f 50 41 43 4b 41 47 case.self::RULE_INSTALLED_PACKAG
40cc0 45 5f 4f 42 53 4f 4c 45 54 45 53 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a 63 E_OBSOLETES:.return.$ruleText;.c
40ce0 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 53 41 4d 45 5f 4e 41 4d 45 ase.self::RULE_PACKAGE_SAME_NAME
40d00 3a 0a 72 65 74 75 72 6e 20 27 43 61 6e 20 6f 6e 6c 79 20 69 6e 73 74 61 6c 6c 20 6f 6e 65 20 6f :.return.'Can.only.install.one.o
40d20 66 3a 20 27 20 2e 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 50 61 63 6b 61 67 65 73 55 6e 69 71 f:.'...$this->formatPackagesUniq
40d40 75 65 28 24 70 6f 6f 6c 2c 20 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 29 20 2e 20 27 2e 27 ue($pool,.$this->literals)...'.'
40d60 3b 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 49 4d 50 4c 49 43 ;.case.self::RULE_PACKAGE_IMPLIC
40d80 49 54 5f 4f 42 53 4f 4c 45 54 45 53 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a IT_OBSOLETES:.return.$ruleText;.
40da0 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 4c 45 41 52 4e 45 44 3a 0a 72 65 74 75 72 6e 20 case.self::RULE_LEARNED:.return.
40dc0 27 43 6f 6e 63 6c 75 73 69 6f 6e 3a 20 27 2e 24 72 75 6c 65 54 65 78 74 3b 0a 63 61 73 65 20 73 'Conclusion:.'.$ruleText;.case.s
40de0 65 6c 66 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 41 4c 49 41 53 3a 0a 72 65 74 75 72 6e 20 elf::RULE_PACKAGE_ALIAS:.return.
40e00 24 72 75 6c 65 54 65 78 74 3b 0a 64 65 66 61 75 6c 74 3a 0a 72 65 74 75 72 6e 20 27 28 27 2e 24 $ruleText;.default:.return.'('.$
40e20 72 75 6c 65 54 65 78 74 2e 27 29 27 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e ruleText.')';.}.}..protected.fun
40e40 63 74 69 6f 6e 20 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 ction.formatPackagesUnique($pool
40e60 2c 20 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 29 0a 7b 0a 24 70 72 65 70 61 72 65 64 20 3d ,.array.$packages).{.$prepared.=
40e80 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 73 20 61 73 20 .array();.foreach.($packages.as.
40ea0 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 21 69 73 5f 6f 62 6a 65 63 74 28 24 70 61 63 6b $package).{.if.(!is_object($pack
40ec0 61 67 65 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 age)).{.$package.=.$pool->litera
40ee0 6c 54 6f 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 24 70 72 65 70 61 72 65 lToPackage($package);.}.$prepare
40f00 64 5b 24 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 d[$package->getName()]['name'].=
40f20 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 0a 24 70 72 65 .$package->getPrettyName();.$pre
40f40 70 61 72 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 pared[$package->getName()]['vers
40f60 69 6f 6e 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 ions'][$package->getVersion()].=
40f80 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 3b 0a 7d .$package->getPrettyVersion();.}
40fa0 0a 66 6f 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 .foreach.($prepared.as.$name.=>.
40fc0 24 70 61 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 $package).{.$prepared[$name].=.$
40fe0 70 61 63 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 package['name'].'['.implode(',.'
41000 2c 20 24 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 ,.$package['versions']).']';.}..
41020 72 65 74 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 return.implode(',.',.$prepared);
41040 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 74 72 .}.......public.function.__toStr
41060 69 6e 67 28 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 28 24 74 68 69 73 2d 3e 69 73 44 69 73 61 ing().{.$result.=.($this->isDisa
41080 62 6c 65 64 28 29 29 20 3f 20 27 64 69 73 61 62 6c 65 64 28 27 20 3a 20 27 28 27 3b 0a 0a 66 6f bled()).?.'disabled('.:.'(';..fo
410a0 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 20 61 73 20 24 69 20 3d 3e 20 reach.($this->literals.as.$i.=>.
410c0 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 69 20 21 3d 20 30 29 20 7b 0a 24 72 65 73 75 $literal).{.if.($i.!=.0).{.$resu
410e0 6c 74 20 2e 3d 20 27 7c 27 3b 0a 7d 0a 24 72 65 73 75 6c 74 20 2e 3d 20 24 6c 69 74 65 72 61 6c lt..=.'|';.}.$result..=.$literal
41100 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 2e 3d 20 27 29 27 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 ;.}..$result..=.')';..return.$re
41120 73 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 65 73 sult;.}.}.<?php............names
41140 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
41160 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6c 65 53 65 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c ;.....class.RuleSet.implements.\
41180 49 74 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 2c 20 5c 43 6f 75 6e 74 61 62 6c 65 0a 7b 0a IteratorAggregate,.\Countable.{.
411a0 0a 20 63 6f 6e 73 74 20 54 59 50 45 5f 50 41 43 4b 41 47 45 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 ..const.TYPE_PACKAGE.=.0;.const.
411c0 54 59 50 45 5f 4a 4f 42 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 4c 45 41 52 4e 45 44 TYPE_JOB.=.1;.const.TYPE_LEARNED
411e0 20 3d 20 34 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 24 72 75 6c 65 42 79 49 64 3b 0a 0a 70 .=.4;.......public.$ruleById;..p
41200 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 24 74 79 70 65 73 20 3d 20 61 72 72 61 79 28 0a rotected.static.$types.=.array(.
41220 32 35 35 20 3d 3e 20 27 55 4e 4b 4e 4f 57 4e 27 2c 0a 73 65 6c 66 3a 3a 54 59 50 45 5f 50 41 43 255.=>.'UNKNOWN',.self::TYPE_PAC
41240 4b 41 47 45 20 3d 3e 20 27 50 41 43 4b 41 47 45 27 2c 0a 73 65 6c 66 3a 3a 54 59 50 45 5f 4a 4f KAGE.=>.'PACKAGE',.self::TYPE_JO
41260 42 20 3d 3e 20 27 4a 4f 42 27 2c 0a 73 65 6c 66 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 20 3d B.=>.'JOB',.self::TYPE_LEARNED.=
41280 3e 20 27 4c 45 41 52 4e 45 44 27 2c 0a 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 >.'LEARNED',.);..protected.$rule
412a0 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 65 78 74 52 75 6c 65 49 64 3b 0a 0a 70 72 6f 74 65 s;.protected.$nextRuleId;..prote
412c0 63 74 65 64 20 24 72 75 6c 65 73 42 79 48 61 73 68 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 cted.$rulesByHash;..public.funct
412e0 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 6e 65 78 74 52 ion.__construct().{.$this->nextR
41300 75 6c 65 49 64 20 3d 20 30 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 54 uleId.=.0;..foreach.($this->getT
41320 79 70 65 73 28 29 20 61 73 20 24 74 79 70 65 29 20 7b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b ypes().as.$type).{.$this->rules[
41340 24 74 79 70 65 5d 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 75 6c 65 $type].=.array();.}..$this->rule
41360 73 42 79 48 61 73 68 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e sByHash.=.array();.}..public.fun
41380 63 74 69 6f 6e 20 61 64 64 28 52 75 6c 65 20 24 72 75 6c 65 2c 20 24 74 79 70 65 29 0a 7b 0a 69 ction.add(Rule.$rule,.$type).{.i
413a0 66 20 28 21 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 74 79 70 65 73 5b 24 74 79 70 65 5d 29 29 20 f.(!isset(self::$types[$type])).
413c0 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4f 75 74 4f 66 42 6f 75 6e 64 73 45 78 63 65 70 74 69 6f {.throw.new.\OutOfBoundsExceptio
413e0 6e 28 27 55 6e 6b 6e 6f 77 6e 20 72 75 6c 65 20 74 79 70 65 3a 20 27 20 2e 20 24 74 79 70 65 29 n('Unknown.rule.type:.'...$type)
41400 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 79 ;.}..if.(!isset($this->rules[$ty
41420 70 65 5d 29 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 61 72 pe])).{.$this->rules[$type].=.ar
41440 72 61 79 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 79 70 65 5d 5b 5d 20 ray();.}..$this->rules[$type][].
41460 3d 20 24 72 75 6c 65 3b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 42 79 49 64 5b 24 74 68 69 73 2d 3e =.$rule;.$this->ruleById[$this->
41480 6e 65 78 74 52 75 6c 65 49 64 5d 20 3d 20 24 72 75 6c 65 3b 0a 24 72 75 6c 65 2d 3e 73 65 74 54 nextRuleId].=.$rule;.$rule->setT
414a0 79 70 65 28 24 74 79 70 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 6e 65 78 74 52 75 6c 65 49 64 2b 2b ype($type);..$this->nextRuleId++
414c0 3b 0a 0a 24 68 61 73 68 20 3d 20 24 72 75 6c 65 2d 3e 67 65 74 48 61 73 68 28 29 3b 0a 69 66 20 ;..$hash.=.$rule->getHash();.if.
414e0 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 5b 24 68 61 73 68 (!isset($this->rulesByHash[$hash
41500 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 5b 24 68 61 73 68 5d 20 ])).{.$this->rulesByHash[$hash].
41520 3d 20 61 72 72 61 79 28 24 72 75 6c 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e =.array($rule);.}.else.{.$this->
41540 72 75 6c 65 73 42 79 48 61 73 68 5b 24 68 61 73 68 5d 5b 5d 20 3d 20 24 72 75 6c 65 3b 0a 7d 0a rulesByHash[$hash][].=.$rule;.}.
41560 7d 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 0a 7b 0a 72 65 74 }..public.function.count().{.ret
41580 75 72 6e 20 24 74 68 69 73 2d 3e 6e 65 78 74 52 75 6c 65 49 64 3b 0a 7d 0a 0a 70 75 62 6c 69 63 urn.$this->nextRuleId;.}..public
415a0 20 66 75 6e 63 74 69 6f 6e 20 72 75 6c 65 42 79 49 64 28 24 69 64 29 0a 7b 0a 72 65 74 75 72 6e .function.ruleById($id).{.return
415c0 20 24 74 68 69 73 2d 3e 72 75 6c 65 42 79 49 64 5b 24 69 64 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 .$this->ruleById[$id];.}..public
415e0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 75 6c 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 .function.getRules().{.return.$t
41600 68 69 73 2d 3e 72 75 6c 65 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 his->rules;.}..public.function.g
41620 65 74 49 74 65 72 61 74 6f 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 75 6c 65 53 65 etIterator().{.return.new.RuleSe
41640 74 49 74 65 72 61 74 6f 72 28 24 74 68 69 73 2d 3e 67 65 74 52 75 6c 65 73 28 29 29 3b 0a 7d 0a tIterator($this->getRules());.}.
41660 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 72 46 6f 72 28 .public.function.getIteratorFor(
41680 24 74 79 70 65 73 29 0a 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 74 79 70 65 73 29 29 $types).{.if.(!is_array($types))
416a0 20 7b 0a 24 74 79 70 65 73 20 3d 20 61 72 72 61 79 28 24 74 79 70 65 73 29 3b 0a 7d 0a 0a 24 61 .{.$types.=.array($types);.}..$a
416c0 6c 6c 52 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 52 75 6c 65 73 28 29 3b 0a 24 72 75 llRules.=.$this->getRules();.$ru
416e0 6c 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 79 70 65 73 20 les.=.array();..foreach.($types.
41700 61 73 20 24 74 79 70 65 29 20 7b 0a 24 72 75 6c 65 73 5b 24 74 79 70 65 5d 20 3d 20 24 61 6c 6c as.$type).{.$rules[$type].=.$all
41720 52 75 6c 65 73 5b 24 74 79 70 65 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 75 6c 65 Rules[$type];.}..return.new.Rule
41740 53 65 74 49 74 65 72 61 74 6f 72 28 24 72 75 6c 65 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 SetIterator($rules);.}..public.f
41760 75 6e 63 74 69 6f 6e 20 67 65 74 49 74 65 72 61 74 6f 72 57 69 74 68 6f 75 74 28 24 74 79 70 65 unction.getIteratorWithout($type
41780 73 29 0a 7b 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 s).{.if.(!is_array($types)).{.$t
417a0 79 70 65 73 20 3d 20 61 72 72 61 79 28 24 74 79 70 65 73 29 3b 0a 7d 0a 0a 24 72 75 6c 65 73 20 ypes.=.array($types);.}..$rules.
417c0 3d 20 24 74 68 69 73 2d 3e 67 65 74 52 75 6c 65 73 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 =.$this->getRules();..foreach.($
417e0 74 79 70 65 73 20 61 73 20 24 74 79 70 65 29 20 7b 0a 75 6e 73 65 74 28 24 72 75 6c 65 73 5b 24 types.as.$type).{.unset($rules[$
41800 74 79 70 65 5d 29 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 type]);.}..return.new.RuleSetIte
41820 72 61 74 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 rator($rules);.}..public.functio
41840 6e 20 67 65 74 54 79 70 65 73 28 29 0a 7b 0a 24 74 79 70 65 73 20 3d 20 73 65 6c 66 3a 3a 24 74 n.getTypes().{.$types.=.self::$t
41860 79 70 65 73 3b 0a 75 6e 73 65 74 28 24 74 79 70 65 73 5b 32 35 35 5d 29 3b 0a 0a 72 65 74 75 72 ypes;.unset($types[255]);..retur
41880 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 79 70 65 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 n.array_keys($types);.}..public.
418a0 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 74 61 69 6e 73 45 71 75 61 6c 28 24 72 75 6c 65 29 0a 7b 0a function.containsEqual($rule).{.
418c0 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 5b 24 72 75 if.(isset($this->rulesByHash[$ru
418e0 6c 65 2d 3e 67 65 74 48 61 73 68 28 29 5d 29 29 20 7b 0a 24 70 6f 74 65 6e 74 69 61 6c 44 75 70 le->getHash()])).{.$potentialDup
41900 6c 69 63 61 74 65 73 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 5b 24 72 75 licates.=.$this->rulesByHash[$ru
41920 6c 65 2d 3e 67 65 74 48 61 73 68 28 29 5d 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 74 65 6e 74 le->getHash()];.foreach.($potent
41940 69 61 6c 44 75 70 6c 69 63 61 74 65 73 20 61 73 20 24 70 6f 74 65 6e 74 69 61 6c 44 75 70 6c 69 ialDuplicates.as.$potentialDupli
41960 63 61 74 65 29 20 7b 0a 69 66 20 28 24 72 75 6c 65 2d 3e 65 71 75 61 6c 73 28 24 70 6f 74 65 6e cate).{.if.($rule->equals($poten
41980 74 69 61 6c 44 75 70 6c 69 63 61 74 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d tialDuplicate)).{.return.true;.}
419a0 0a 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 66 75 .}.}..return.false;.}..public.fu
419c0 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 50 6f 6f 6c 20 24 70 6f 6f nction.getPrettyString(Pool.$poo
419e0 6c 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 73 74 72 69 6e 67 20 3d 20 22 5c 6e 22 3b 0a 66 6f 72 65 l.=.null).{.$string.=."\n";.fore
41a00 61 63 68 20 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 72 ach.($this->rules.as.$type.=>.$r
41a20 75 6c 65 73 29 20 7b 0a 24 73 74 72 69 6e 67 20 2e 3d 20 73 74 72 5f 70 61 64 28 73 65 6c 66 3a ules).{.$string..=.str_pad(self:
41a40 3a 24 74 79 70 65 73 5b 24 74 79 70 65 5d 2c 20 38 2c 20 27 20 27 29 20 2e 20 22 3a 20 22 3b 0a :$types[$type],.8,.'.')...":.";.
41a60 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 0a 24 73 74 72 foreach.($rules.as.$rule).{.$str
41a80 69 6e 67 20 2e 3d 20 28 24 70 6f 6f 6c 20 3f 20 24 72 75 6c 65 2d 3e 67 65 74 50 72 65 74 74 79 ing..=.($pool.?.$rule->getPretty
41aa0 53 74 72 69 6e 67 28 24 70 6f 6f 6c 29 20 3a 20 24 72 75 6c 65 29 2e 22 5c 6e 22 3b 0a 7d 0a 24 String($pool).:.$rule)."\n";.}.$
41ac0 73 74 72 69 6e 67 20 2e 3d 20 22 5c 6e 5c 6e 22 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 72 string..=."\n\n";.}..return.$str
41ae0 69 6e 67 3b 0a 7d 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 ing;.}..public.function.__toStri
41b00 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 53 74 ng().{.return.$this->getPrettySt
41b20 72 69 6e 67 28 6e 75 6c 6c 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ring(null);.}.}.<?php...........
41b40 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 65 .namespace.Composer\DependencyRe
41b60 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 61 solver;..use.Composer\Package\Pa
41b80 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
41ba0 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\
41bc0 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 0a Repository\PlatformRepository;..
41be0 0a 0a 0a 63 6c 61 73 73 20 52 75 6c 65 53 65 74 47 65 6e 65 72 61 74 6f 72 0a 7b 0a 70 72 6f 74 ...class.RuleSetGenerator.{.prot
41c00 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 70 6f 6f 6c 3b 0a ected.$policy;.protected.$pool;.
41c20 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6a 6f 62 protected.$rules;.protected.$job
41c40 73 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 72 6f 74 s;.protected.$installedMap;.prot
41c60 65 63 74 65 64 20 24 77 68 69 74 65 6c 69 73 74 65 64 4d 61 70 3b 0a 70 72 6f 74 65 63 74 65 64 ected.$whitelistedMap;.protected
41c80 20 24 61 64 64 65 64 4d 61 70 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 .$addedMap;..public.function.__c
41ca0 6f 6e 73 74 72 75 63 74 28 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 20 24 70 6f 6c 69 63 79 onstruct(PolicyInterface.$policy
41cc0 2c 20 50 6f 6f 6c 20 24 70 6f 6f 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 20 3d 20 ,.Pool.$pool).{.$this->policy.=.
41ce0 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 6f 6f 6c 3b 0a 7d 0a $policy;.$this->pool.=.$pool;.}.
41d00 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 6e 63 74 69 6f ...............protected.functio
41d20 6e 20 63 72 65 61 74 65 52 65 71 75 69 72 65 52 75 6c 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 n.createRequireRule(PackageInter
41d40 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 61 72 72 61 79 20 24 70 72 6f 76 69 64 65 72 73 2c face.$package,.array.$providers,
41d60 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 6c 29 0a 7b 0a .$reason,.$reasonData.=.null).{.
41d80 24 6c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 28 2d 24 70 61 63 6b 61 67 65 2d 3e 69 64 29 $literals.=.array(-$package->id)
41da0 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 72 6f 76 69 64 65 72 73 20 61 73 20 24 70 72 6f 76 69 ;..foreach.($providers.as.$provi
41dc0 64 65 72 29 20 7b 0a 0a 20 69 66 20 28 24 70 72 6f 76 69 64 65 72 20 3d 3d 3d 20 24 70 61 63 6b der).{...if.($provider.===.$pack
41de0 61 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 24 6c 69 74 65 72 61 6c 73 5b age).{.return.null;.}.$literals[
41e00 5d 20 3d 20 24 70 72 6f 76 69 64 65 72 2d 3e 69 64 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 ].=.$provider->id;.}..return.new
41e20 20 52 75 6c 65 28 24 6c 69 74 65 72 61 6c 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f .Rule($literals,.$reason,.$reaso
41e40 6e 44 61 74 61 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 nData);.}..............protected
41e60 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 49 6e 73 74 61 6c 6c 4f 6e 65 4f 66 52 75 6c 65 .function.createInstallOneOfRule
41e80 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6a 6f 62 29 (array.$packages,.$reason,.$job)
41ea0 0a 7b 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 .{.$literals.=.array();.foreach.
41ec0 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 6c 69 74 65 72 ($packages.as.$package).{.$liter
41ee0 61 6c 73 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 69 64 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 als[].=.$package->id;.}..return.
41f00 6e 65 77 20 52 75 6c 65 28 24 6c 69 74 65 72 61 6c 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6a 6f new.Rule($literals,.$reason,.$jo
41f20 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);.}......
41f40 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
41f60 52 65 6d 6f 76 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 RemoveRule(PackageInterface.$pac
41f80 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6a 6f 62 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 kage,.$reason,.$job).{.return.ne
41fa0 77 20 52 75 6c 65 28 61 72 72 61 79 28 2d 24 70 61 63 6b 61 67 65 2d 3e 69 64 29 2c 20 24 72 65 w.Rule(array(-$package->id),.$re
41fc0 61 73 6f 6e 2c 20 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 29 ason,.$job['packageName'],.$job)
41fe0 3b 0a 7d 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 6e ;.}................protected.fun
42000 63 74 69 6f 6e 20 63 72 65 61 74 65 43 6f 6e 66 6c 69 63 74 52 75 6c 65 28 50 61 63 6b 61 67 65 ction.createConflictRule(Package
42020 49 6e 74 65 72 66 61 63 65 20 24 69 73 73 75 65 72 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 Interface.$issuer,.PackageInterf
42040 61 63 65 20 24 70 72 6f 76 69 64 65 72 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f 6e 44 ace.$provider,.$reason,.$reasonD
42060 61 74 61 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 69 66 20 28 24 69 73 73 75 65 72 20 3d 3d 3d 20 ata.=.null).{...if.($issuer.===.
42080 24 70 72 6f 76 69 64 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 72 65 74 $provider).{.return.null;.}..ret
420a0 75 72 6e 20 6e 65 77 20 52 75 6c 65 28 61 72 72 61 79 28 2d 24 69 73 73 75 65 72 2d 3e 69 64 2c urn.new.Rule(array(-$issuer->id,
420c0 20 2d 24 70 72 6f 76 69 64 65 72 2d 3e 69 64 29 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 .-$provider->id),.$reason,.$reas
420e0 6f 6e 44 61 74 61 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 onData);.}...........private.fun
42100 63 74 69 6f 6e 20 61 64 64 52 75 6c 65 28 24 74 79 70 65 2c 20 52 75 6c 65 20 24 6e 65 77 52 75 ction.addRule($type,.Rule.$newRu
42120 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 24 6e 65 77 52 75 6c 65 20 7c 7c 20 24 74 le.=.null).{.if.(!$newRule.||.$t
42140 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 63 6f 6e 74 61 69 6e 73 45 71 75 61 6c 28 24 6e 65 77 52 75 his->rules->containsEqual($newRu
42160 6c 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 75 6c 65 73 2d 3e le)).{.return;.}..$this->rules->
42180 61 64 64 28 24 6e 65 77 52 75 6c 65 2c 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 add($newRule,.$type);.}..protect
421a0 65 64 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 74 65 6c 69 73 74 46 72 6f 6d 50 61 63 6b 61 67 65 ed.function.whitelistFromPackage
421c0 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 77 (PackageInterface.$package).{.$w
421e0 6f 72 6b 51 75 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 orkQueue.=.new.\SplQueue;.$workQ
42200 75 65 75 65 2d 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 ueue->enqueue($package);..while.
42220 28 21 24 77 6f 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 (!$workQueue->isEmpty()).{.$pack
42240 61 67 65 20 3d 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 age.=.$workQueue->dequeue();.if.
42260 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 65 64 4d 61 70 5b 24 70 61 (isset($this->whitelistedMap[$pa
42280 63 6b 61 67 65 2d 3e 69 64 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 74 68 69 ckage->id])).{.continue;.}..$thi
422a0 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 5d 20 s->whitelistedMap[$package->id].
422c0 3d 20 74 72 75 65 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 =.true;..foreach.($package->getR
422e0 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 73 73 69 62 6c 65 52 equires().as.$link).{.$possibleR
42300 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 50 72 6f 76 69 equires.=.$this->pool->whatProvi
42320 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 6e 6b 2d 3e 67 des($link->getTarget(),.$link->g
42340 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 2c 20 74 72 75 65 29 3b 0a 0a 66 6f 72 65 61 63 68 20 etConstraint(),.true);..foreach.
42360 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 20 ($possibleRequires.as.$require).
42380 7b 0a 24 77 6f 72 6b 51 75 65 75 65 2d 3e 65 6e 71 75 65 75 65 28 24 72 65 71 75 69 72 65 29 3b {.$workQueue->enqueue($require);
423a0 0a 7d 0a 7d 0a 0a 24 6f 62 73 6f 6c 65 74 65 50 72 6f 76 69 64 65 72 73 20 3d 20 24 74 68 69 73 .}.}..$obsoleteProviders.=.$this
423c0 2d 3e 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 67 65 2d 3e 67 ->pool->whatProvides($package->g
423e0 65 74 4e 61 6d 65 28 29 2c 20 6e 75 6c 6c 2c 20 74 72 75 65 29 3b 0a 0a 66 6f 72 65 61 63 68 20 etName(),.null,.true);..foreach.
42400 28 24 6f 62 73 6f 6c 65 74 65 50 72 6f 76 69 64 65 72 73 20 61 73 20 24 70 72 6f 76 69 64 65 72 ($obsoleteProviders.as.$provider
42420 29 20 7b 0a 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 ).{.if.($provider.===.$package).
42440 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 28 24 70 61 63 6b 61 67 65 20 69 6e 73 {.continue;.}..if.(($package.ins
42460 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 26 26 20 24 70 61 63 6b 61 67 tanceof.AliasPackage).&&.$packag
42480 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 29 20 7b e->getAliasOf().===.$provider).{
424a0 0a 24 77 6f 72 6b 51 75 65 75 65 2d 3e 65 6e 71 75 65 75 65 28 24 70 72 6f 76 69 64 65 72 29 3b .$workQueue->enqueue($provider);
424c0 0a 7d 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 6e 20 61 64 64 .}.}.}.}..protected.function.add
424e0 52 75 6c 65 73 46 6f 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 RulesForPackage(PackageInterface
42500 20 24 70 61 63 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 0a .$package,.$ignorePlatformReqs).
42520 7b 0a 24 77 6f 72 6b 51 75 65 75 65 20 3d 20 6e 65 77 20 5c 53 70 6c 51 75 65 75 65 3b 0a 24 77 {.$workQueue.=.new.\SplQueue;.$w
42540 6f 72 6b 51 75 65 75 65 2d 3e 65 6e 71 75 65 75 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 77 68 orkQueue->enqueue($package);..wh
42560 69 6c 65 20 28 21 24 77 6f 72 6b 51 75 65 75 65 2d 3e 69 73 45 6d 70 74 79 28 29 29 20 7b 0a 24 ile.(!$workQueue->isEmpty()).{.$
42580 70 61 63 6b 61 67 65 20 3d 20 24 77 6f 72 6b 51 75 65 75 65 2d 3e 64 65 71 75 65 75 65 28 29 3b package.=.$workQueue->dequeue();
425a0 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 64 64 65 64 4d 61 70 5b 24 70 61 63 6b .if.(isset($this->addedMap[$pack
425c0 61 67 65 2d 3e 69 64 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 age->id])).{.continue;.}..$this-
425e0 3e 61 64 64 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 >addedMap[$package->id].=.true;.
42600 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 28 .foreach.($package->getRequires(
42620 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 ).as.$link).{.if.($ignorePlatfor
42640 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 70 6f mReqs.&&.preg_match(PlatformRepo
42660 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 2c 20 sitory::PLATFORM_PACKAGE_REGEX,.
42680 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b $link->getTarget())).{.continue;
426a0 0a 7d 0a 0a 24 70 6f 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 .}..$possibleRequires.=.$this->p
426c0 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 74 54 61 72 67 ool->whatProvides($link->getTarg
426e0 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 29 29 3b 0a 0a et(),.$link->getConstraint());..
42700 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 59 50 45 5f 50 41 43 $this->addRule(RuleSet::TYPE_PAC
42720 4b 41 47 45 2c 20 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 52 65 71 75 69 KAGE,.$rule.=.$this->createRequi
42740 72 65 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 reRule($package,.$possibleRequir
42760 65 73 2c 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 52 45 51 55 49 52 45 53 2c es,.Rule::RULE_PACKAGE_REQUIRES,
42780 20 24 6c 69 6e 6b 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 .$link));..foreach.($possibleReq
427a0 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 65 75 65 2d uires.as.$require).{.$workQueue-
427c0 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 66 6f 72 65 61 63 68 >enqueue($require);.}.}..foreach
427e0 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
42800 69 6e 6b 29 20 7b 0a 24 70 6f 73 73 69 62 6c 65 43 6f 6e 66 6c 69 63 74 73 20 3d 20 24 74 68 69 ink).{.$possibleConflicts.=.$thi
42820 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 2d 3e 67 65 74 s->pool->whatProvides($link->get
42840 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 29 Target(),.$link->getConstraint()
42860 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 73 73 69 62 6c 65 43 6f 6e 66 6c 69 63 74 73 20 );..foreach.($possibleConflicts.
42880 61 73 20 24 63 6f 6e 66 6c 69 63 74 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 52 as.$conflict).{.$this->addRule(R
428a0 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 2c 20 24 74 68 69 73 2d 3e 63 72 65 uleSet::TYPE_PACKAGE,.$this->cre
428c0 61 74 65 43 6f 6e 66 6c 69 63 74 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 24 63 6f 6e 66 6c ateConflictRule($package,.$confl
428e0 69 63 74 2c 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 43 4f 4e 46 4c 49 43 54 ict,.Rule::RULE_PACKAGE_CONFLICT
42900 2c 20 24 6c 69 6e 6b 29 29 3b 0a 7d 0a 7d 0a 0a 0a 20 24 69 73 49 6e 73 74 61 6c 6c 65 64 20 3d ,.$link));.}.}....$isInstalled.=
42920 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 24 70 61 63 .(isset($this->installedMap[$pac
42940 6b 61 67 65 2d 3e 69 64 5d 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d kage->id]));..foreach.($package-
42960 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 6f 62 73 6f >getReplaces().as.$link).{.$obso
42980 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 68 61 leteProviders.=.$this->pool->wha
429a0 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 6c tProvides($link->getTarget(),.$l
429c0 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 20 ink->getConstraint());..foreach.
429e0 28 24 6f 62 73 6f 6c 65 74 65 50 72 6f 76 69 64 65 72 73 20 61 73 20 24 70 72 6f 76 69 64 65 72 ($obsoleteProviders.as.$provider
42a00 29 20 7b 0a 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 ).{.if.($provider.===.$package).
42a20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 62 73 6f 6c {.continue;.}..if.(!$this->obsol
42a40 65 74 65 49 6d 70 6f 73 73 69 62 6c 65 46 6f 72 41 6c 69 61 73 28 24 70 61 63 6b 61 67 65 2c 20 eteImpossibleForAlias($package,.
42a60 24 70 72 6f 76 69 64 65 72 29 29 20 7b 0a 24 72 65 61 73 6f 6e 20 3d 20 28 24 69 73 49 6e 73 74 $provider)).{.$reason.=.($isInst
42a80 61 6c 6c 65 64 29 20 3f 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 49 4e 53 54 41 4c 4c 45 44 5f 50 41 alled).?.Rule::RULE_INSTALLED_PA
42aa0 43 4b 41 47 45 5f 4f 42 53 4f 4c 45 54 45 53 20 3a 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 50 41 43 CKAGE_OBSOLETES.:.Rule::RULE_PAC
42ac0 4b 41 47 45 5f 4f 42 53 4f 4c 45 54 45 53 3b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 52 KAGE_OBSOLETES;.$this->addRule(R
42ae0 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 2c 20 24 74 68 69 73 2d 3e 63 72 65 uleSet::TYPE_PACKAGE,.$this->cre
42b00 61 74 65 43 6f 6e 66 6c 69 63 74 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 76 69 ateConflictRule($package,.$provi
42b20 64 65 72 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6c 69 6e 6b 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 6f der,.$reason,.$link));.}.}.}..$o
42b40 62 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 bsoleteProviders.=.$this->pool->
42b60 77 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 whatProvides($package->getName()
42b80 2c 20 6e 75 6c 6c 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6f 62 73 6f 6c 65 74 65 50 72 6f 76 ,.null);..foreach.($obsoleteProv
42ba0 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 70 72 6f 76 69 iders.as.$provider).{.if.($provi
42bc0 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 65 3b 0a 7d 0a der.===.$package).{.continue;.}.
42be0 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 6c 69 61 73 50 .if.(($package.instanceof.AliasP
42c00 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 61 73 4f 66 28 ackage).&&.$package->getAliasOf(
42c20 29 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c ).===.$provider).{.$this->addRul
42c40 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 6c 65 20 3d e(RuleSet::TYPE_PACKAGE,.$rule.=
42c60 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 61 63 6b 61 .$this->createRequireRule($packa
42c80 67 65 2c 20 61 72 72 61 79 28 24 70 72 6f 76 69 64 65 72 29 2c 20 52 75 6c 65 3a 3a 52 55 4c 45 ge,.array($provider),.Rule::RULE
42ca0 5f 50 41 43 4b 41 47 45 5f 41 4c 49 41 53 2c 20 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d 20 65 6c _PACKAGE_ALIAS,.$package));.}.el
42cc0 73 65 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 69 62 6c 65 seif.(!$this->obsoleteImpossible
42ce0 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 29 29 20 7b ForAlias($package,.$provider)).{
42d00 0a 24 72 65 61 73 6f 6e 20 3d 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 .$reason.=.($package->getName().
42d20 3d 3d 20 24 70 72 6f 76 69 64 65 72 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 3f 20 52 75 6c 65 3a ==.$provider->getName()).?.Rule:
42d40 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 53 41 4d 45 5f 4e 41 4d 45 20 3a 20 52 75 6c 65 3a 3a :RULE_PACKAGE_SAME_NAME.:.Rule::
42d60 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 54 45 53 3b RULE_PACKAGE_IMPLICIT_OBSOLETES;
42d80 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 59 50 45 5f 50 41 .$this->addRule(RuleSet::TYPE_PA
42da0 43 4b 41 47 45 2c 20 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 43 6f 6e 66 CKAGE,.$rule.=.$this->createConf
42dc0 6c 69 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 lictRule($package,.$provider,.$r
42de0 65 61 73 6f 6e 2c 20 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 70 72 6f 74 eason,.$package));.}.}.}.}..prot
42e00 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6f 62 73 6f 6c 65 74 65 49 6d 70 6f 73 73 69 62 6c ected.function.obsoleteImpossibl
42e20 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 29 0a 7b eForAlias($package,.$provider).{
42e40 0a 24 70 61 63 6b 61 67 65 49 73 41 6c 69 61 73 20 3d 20 24 70 61 63 6b 61 67 65 20 69 6e 73 74 .$packageIsAlias.=.$package.inst
42e60 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 24 70 72 6f 76 69 64 65 72 49 73 anceof.AliasPackage;.$providerIs
42e80 41 6c 69 61 73 20 3d 20 24 70 72 6f 76 69 64 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 Alias.=.$provider.instanceof.Ali
42ea0 61 73 50 61 63 6b 61 67 65 3b 0a 0a 24 69 6d 70 6f 73 73 69 62 6c 65 20 3d 20 28 0a 28 24 70 61 asPackage;..$impossible.=.(.($pa
42ec0 63 6b 61 67 65 49 73 41 6c 69 61 73 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 ckageIsAlias.&&.$package->getAli
42ee0 61 73 4f 66 28 29 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 29 20 7c 7c 0a 28 24 70 72 6f 76 69 asOf().===.$provider).||.($provi
42f00 64 65 72 49 73 41 6c 69 61 73 20 26 26 20 24 70 72 6f 76 69 64 65 72 2d 3e 67 65 74 41 6c 69 61 derIsAlias.&&.$provider->getAlia
42f20 73 4f 66 28 29 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7c 7c 0a 28 24 70 61 63 6b 61 67 65 sOf().===.$package).||.($package
42f40 49 73 41 6c 69 61 73 20 26 26 20 24 70 72 6f 76 69 64 65 72 49 73 41 6c 69 61 73 20 26 26 20 24 IsAlias.&&.$providerIsAlias.&&.$
42f60 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 20 24 70 61 63 6b provider->getAliasOf().===.$pack
42f80 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 29 0a 29 3b 0a 0a 72 65 74 75 72 6e 20 24 69 age->getAliasOf()).);..return.$i
42fa0 6d 70 6f 73 73 69 62 6c 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e mpossible;.}..protected.function
42fc0 20 77 68 69 74 65 6c 69 73 74 46 72 6f 6d 4a 6f 62 73 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 .whitelistFromJobs().{.foreach.(
42fe0 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 69 74 63 68 20 28 24 $this->jobs.as.$job).{.switch.($
43000 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 3a 0a 24 70 job['cmd']).{.case.'install':.$p
43020 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 72 6f 76 69 ackages.=.$this->pool->whatProvi
43040 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
43060 6f 6e 73 74 72 61 69 6e 74 27 5d 2c 20 74 72 75 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 onstraint'],.true);.foreach.($pa
43080 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 68 69 ckages.as.$package).{.$this->whi
430a0 74 65 6c 69 73 74 46 72 6f 6d 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 62 telistFromPackage($package);.}.b
430c0 72 65 61 6b 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 6e 20 reak;.}.}.}..protected.function.
430e0 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 6f 72 6d 52 addRulesForJobs($ignorePlatformR
43100 65 71 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6a 6f 62 73 20 61 73 20 24 eqs).{.foreach.($this->jobs.as.$
43120 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 5d 29 20 7b 0a 63 61 job).{.switch.($job['cmd']).{.ca
43140 73 65 20 27 69 6e 73 74 61 6c 6c 27 3a 0a 69 66 20 28 21 24 6a 6f 62 5b 27 66 69 78 65 64 27 5d se.'install':.if.(!$job['fixed']
43160 20 26 26 20 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 20 26 26 20 70 72 65 67 5f .&&.$ignorePlatformReqs.&&.preg_
43180 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
431a0 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 58 2c 20 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e RM_PACKAGE_REGEX,.$job['packageN
431c0 61 6d 65 27 5d 29 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 73 ame'])).{.continue;.}..$packages
431e0 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
43200 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
43220 6e 74 27 5d 29 3b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 nt']);.if.($packages).{.foreach.
43240 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 21 69 ($packages.as.$package).{.if.(!i
43260 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 6b 61 67 sset($this->installedMap[$packag
43280 65 2d 3e 69 64 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 73 46 6f 72 50 61 63 e->id])).{.$this->addRulesForPac
432a0 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2c 20 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 kage($package,.$ignorePlatformRe
432c0 71 73 29 3b 0a 7d 0a 7d 0a 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 49 qs);.}.}..$rule.=.$this->createI
432e0 6e 73 74 61 6c 6c 4f 6e 65 4f 66 52 75 6c 65 28 24 70 61 63 6b 61 67 65 73 2c 20 52 75 6c 65 3a nstallOneOfRule($packages,.Rule:
43300 3a 52 55 4c 45 5f 4a 4f 42 5f 49 4e 53 54 41 4c 4c 2c 20 24 6a 6f 62 29 3b 0a 24 74 68 69 73 2d :RULE_JOB_INSTALL,.$job);.$this-
43320 3e 61 64 64 52 75 6c 65 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4a 4f 42 2c 20 24 72 75 6c >addRule(RuleSet::TYPE_JOB,.$rul
43340 65 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 72 65 6d 6f 76 65 27 3a 0a 0a 20 0a 20 e);.}.break;.case.'remove':.....
43360 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 72 6f $packages.=.$this->pool->whatPro
43380 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 62 5b vides($job['packageName'],.$job[
433a0 27 63 6f 6e 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 'constraint']);.foreach.($packag
433c0 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d es.as.$package).{.$rule.=.$this-
433e0 3e 63 72 65 61 74 65 52 65 6d 6f 76 65 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 52 75 6c 65 >createRemoveRule($package,.Rule
43400 3a 3a 52 55 4c 45 5f 4a 4f 42 5f 52 45 4d 4f 56 45 2c 20 24 6a 6f 62 29 3b 0a 24 74 68 69 73 2d ::RULE_JOB_REMOVE,.$job);.$this-
43420 3e 61 64 64 52 75 6c 65 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4a 4f 42 2c 20 24 72 75 6c >addRule(RuleSet::TYPE_JOB,.$rul
43440 65 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 e);.}.break;.}.}.}..public.funct
43460 69 6f 6e 20 67 65 74 52 75 6c 65 73 46 6f 72 28 24 6a 6f 62 73 2c 20 24 69 6e 73 74 61 6c 6c 65 ion.getRulesFor($jobs,.$installe
43480 64 4d 61 70 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 6c 73 dMap,.$ignorePlatformReqs.=.fals
434a0 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 20 3d 20 24 6a 6f 62 73 3b 0a 24 74 68 69 73 2d e).{.$this->jobs.=.$jobs;.$this-
434c0 3e 72 75 6c 65 73 20 3d 20 6e 65 77 20 52 75 6c 65 53 65 74 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 >rules.=.new.RuleSet;.$this->ins
434e0 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 24 74 68 69 talledMap.=.$installedMap;..$thi
43500 73 2d 3e 77 68 69 74 65 6c 69 73 74 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 s->whitelistedMap.=.array();.for
43520 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 20 61 73 20 24 70 61 each.($this->installedMap.as.$pa
43540 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 6d 50 61 63 ckage).{.$this->whitelistFromPac
43560 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 kage($package);.}.$this->whiteli
43580 73 74 46 72 6f 6d 4a 6f 62 73 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 73 65 74 57 stFromJobs();..$this->pool->setW
435a0 68 69 74 65 6c 69 73 74 28 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 65 64 4d 61 70 29 3b hitelist($this->whitelistedMap);
435c0 0a 0a 24 74 68 69 73 2d 3e 61 64 64 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 ..$this->addedMap.=.array();.for
435e0 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 20 61 73 20 24 70 61 each.($this->installedMap.as.$pa
43600 63 6b 61 67 65 29 20 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 ckage).{.$this->addRulesForPacka
43620 67 65 28 24 70 61 63 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 ge($package,.$ignorePlatformReqs
43640 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 73 46 6f 72 4a 6f 62 73 28 24 69 67 );.}..$this->addRulesForJobs($ig
43660 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 norePlatformReqs);..return.$this
43680 2d 3e 72 75 6c 65 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 ->rules;.}.}.<?php............na
436a0 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 6c mespace.Composer\DependencyResol
436c0 76 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6c 65 53 65 74 49 74 65 72 61 74 6f 72 20 69 ver;.....class.RuleSetIterator.i
436e0 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 74 65 72 61 74 6f 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 mplements.\Iterator.{.protected.
43700 24 72 75 6c 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 79 70 65 73 3b 0a 0a 70 72 6f 74 65 $rules;.protected.$types;..prote
43720 63 74 65 64 20 24 63 75 72 72 65 6e 74 4f 66 66 73 65 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 cted.$currentOffset;.protected.$
43740 63 75 72 72 65 6e 74 54 79 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 75 72 72 65 6e 74 54 currentType;.protected.$currentT
43760 79 70 65 4f 66 66 73 65 74 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f ypeOffset;..public.function.__co
43780 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 72 75 6c 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 nstruct(array.$rules).{.$this->r
437a0 75 6c 65 73 20 3d 20 24 72 75 6c 65 73 3b 0a 24 74 68 69 73 2d 3e 74 79 70 65 73 20 3d 20 61 72 ules.=.$rules;.$this->types.=.ar
437c0 72 61 79 5f 6b 65 79 73 28 24 72 75 6c 65 73 29 3b 0a 73 6f 72 74 28 24 74 68 69 73 2d 3e 74 79 ray_keys($rules);.sort($this->ty
437e0 70 65 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 pes);..$this->rewind();.}..publi
43800 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
43820 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 65 5d 5b 24 his->rules[$this->currentType][$
43840 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 this->currentOffset];.}..public.
43860 66 75 6e 63 74 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 function.key().{.return.$this->c
43880 75 72 72 65 6e 74 54 79 70 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e urrentType;.}..public.function.n
438a0 65 78 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 2b 2b 3b 0a ext().{.$this->currentOffset++;.
438c0 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 68 69 73 2d 3e .if.(!isset($this->rules[$this->
438e0 63 75 72 72 65 6e 74 54 79 70 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 currentType])).{.return;.}..if.(
43900 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 20 3e 3d 20 73 69 7a 65 6f 66 28 24 $this->currentOffset.>=.sizeof($
43920 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 65 5d 29 this->rules[$this->currentType])
43940 29 20 7b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 0a 64 ).{.$this->currentOffset.=.0;..d
43960 6f 20 7b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 2b 2b 3b 0a o.{.$this->currentTypeOffset++;.
43980 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 79 70 65 73 5b 24 74 68 69 73 2d 3e .if.(!isset($this->types[$this->
439a0 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 75 currentTypeOffset])).{.$this->cu
439c0 72 72 65 6e 74 54 79 70 65 20 3d 20 2d 31 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 74 68 69 73 2d rrentType.=.-1;.break;.}..$this-
439e0 3e 63 75 72 72 65 6e 74 54 79 70 65 20 3d 20 24 74 68 69 73 2d 3e 74 79 70 65 73 5b 24 74 68 69 >currentType.=.$this->types[$thi
43a00 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 5d 3b 0a 7d 20 77 68 69 6c 65 20 28 s->currentTypeOffset];.}.while.(
43a20 69 73 73 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 isset($this->types[$this->curren
43a40 74 54 79 70 65 4f 66 66 73 65 74 5d 29 20 26 26 20 21 73 69 7a 65 6f 66 28 24 74 68 69 73 2d 3e tTypeOffset]).&&.!sizeof($this->
43a60 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 29 29 3b 0a 7d 0a 7d rules[$this->currentType]));.}.}
43a80 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b 0a 24 74 68 ..public.function.rewind().{.$th
43aa0 69 73 2d 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 0a 24 74 68 69 73 2d 3e 63 is->currentOffset.=.0;..$this->c
43ac0 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 20 3d 20 2d 31 3b 0a 24 74 68 69 73 2d 3e 63 75 urrentTypeOffset.=.-1;.$this->cu
43ae0 72 72 65 6e 74 54 79 70 65 20 3d 20 2d 31 3b 0a 0a 64 6f 20 7b 0a 24 74 68 69 73 2d 3e 63 75 72 rrentType.=.-1;..do.{.$this->cur
43b00 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 65 74 28 24 74 rentTypeOffset++;..if.(!isset($t
43b20 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 70 65 4f 66 66 his->types[$this->currentTypeOff
43b40 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 20 3d 20 2d 31 set])).{.$this->currentType.=.-1
43b60 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 79 70 65 20 3d ;.break;.}..$this->currentType.=
43b80 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 74 54 79 70 65 .$this->types[$this->currentType
43ba0 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 69 73 2d 3e 74 Offset];.}.while.(isset($this->t
43bc0 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 29 20 ypes[$this->currentTypeOffset]).
43be0 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 69 73 2d 3e 63 &&.!sizeof($this->rules[$this->c
43c00 75 72 72 65 6e 74 54 79 70 65 5d 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f urrentType]));.}..public.functio
43c20 6e 20 76 61 6c 69 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e n.valid().{.return.isset($this->
43c40 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 29 0a 26 26 20 69 73 rules[$this->currentType]).&&.is
43c60 73 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 set($this->rules[$this->currentT
43c80 79 70 65 5d 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 5d 29 3b 0a 7d 0a 7d ype][$this->currentOffset]);.}.}
43ca0 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
43cc0 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;........
43ce0 0a 0a 63 6c 61 73 73 20 52 75 6c 65 57 61 74 63 68 43 68 61 69 6e 20 65 78 74 65 6e 64 73 20 5c ..class.RuleWatchChain.extends.\
43d00 53 70 6c 44 6f 75 62 6c 79 4c 69 6e 6b 65 64 4c 69 73 74 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 SplDoublyLinkedList.{.protected.
43d20 24 6f 66 66 73 65 74 20 3d 20 30 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 $offset.=.0;.......public.functi
43d40 6f 6e 20 73 65 65 6b 28 24 6f 66 66 73 65 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 77 69 6e 64 on.seek($offset).{.$this->rewind
43d60 28 29 3b 0a 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 24 69 20 3c 20 24 6f 66 66 73 65 74 3b 20 24 ();.for.($i.=.0;.$i.<.$offset;.$
43d80 69 2b 2b 2c 20 24 74 68 69 73 2d 3e 6e 65 78 74 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a i++,.$this->next());.}..........
43da0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 28 29 0a 7b 0a 24 6f 66 66 73 public.function.remove().{.$offs
43dc0 65 74 20 3d 20 24 74 68 69 73 2d 3e 6b 65 79 28 29 3b 0a 24 74 68 69 73 2d 3e 6f 66 66 73 65 74 et.=.$this->key();.$this->offset
43de0 55 6e 73 65 74 28 24 6f 66 66 73 65 74 29 3b 0a 24 74 68 69 73 2d 3e 73 65 65 6b 28 24 6f 66 66 Unset($offset);.$this->seek($off
43e00 73 65 74 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 set);.}.}.<?php............names
43e20 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
43e40 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6c 65 57 61 74 63 68 47 72 61 70 ;............class.RuleWatchGrap
43e60 68 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 77 61 74 63 68 43 68 61 69 6e 73 20 3d 20 61 72 72 h.{.protected.$watchChains.=.arr
43e80 61 79 28 29 3b 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 ay();..............public.functi
43ea0 6f 6e 20 69 6e 73 65 72 74 28 52 75 6c 65 57 61 74 63 68 4e 6f 64 65 20 24 6e 6f 64 65 29 0a 7b on.insert(RuleWatchNode.$node).{
43ec0 0a 69 66 20 28 24 6e 6f 64 65 2d 3e 67 65 74 52 75 6c 65 28 29 2d 3e 69 73 41 73 73 65 72 74 69 .if.($node->getRule()->isAsserti
43ee0 6f 6e 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 61 72 72 61 on()).{.return;.}..foreach.(arra
43f00 79 28 24 6e 6f 64 65 2d 3e 77 61 74 63 68 31 2c 20 24 6e 6f 64 65 2d 3e 77 61 74 63 68 32 29 20 y($node->watch1,.$node->watch2).
43f20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d as.$literal).{.if.(!isset($this-
43f40 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 6c 69 74 65 72 61 6c 5d 29 29 20 7b 0a 24 74 68 69 73 >watchChains[$literal])).{.$this
43f60 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 6c 69 74 65 72 61 6c 5d 20 3d 20 6e 65 77 20 52 75 ->watchChains[$literal].=.new.Ru
43f80 6c 65 57 61 74 63 68 43 68 61 69 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 leWatchChain;.}..$this->watchCha
43fa0 69 6e 73 5b 24 6c 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 ins[$literal]->unshift($node);.}
43fc0 0a 7d 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 62 6c 69 .}.........................publi
43fe0 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 70 61 67 61 74 65 4c 69 74 65 72 61 6c 28 24 64 65 63 c.function.propagateLiteral($dec
44000 69 64 65 64 4c 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 2c 20 24 64 65 63 69 73 69 6f 6e 73 29 idedLiteral,.$level,.$decisions)
44020 0a 7b 0a 0a 20 0a 20 0a 20 24 6c 69 74 65 72 61 6c 20 3d 20 2d 24 64 65 63 69 64 65 64 4c 69 74 .{.......$literal.=.-$decidedLit
44040 65 72 61 6c 3b 0a 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 eral;..if.(!isset($this->watchCh
44060 61 69 6e 73 5b 24 6c 69 74 65 72 61 6c 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a ains[$literal])).{.return.null;.
44080 7d 0a 0a 24 63 68 61 69 6e 20 3d 20 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 }..$chain.=.$this->watchChains[$
440a0 6c 69 74 65 72 61 6c 5d 3b 0a 0a 24 63 68 61 69 6e 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 77 68 69 literal];..$chain->rewind();.whi
440c0 6c 65 20 28 24 63 68 61 69 6e 2d 3e 76 61 6c 69 64 28 29 29 20 7b 0a 24 6e 6f 64 65 20 3d 20 24 le.($chain->valid()).{.$node.=.$
440e0 63 68 61 69 6e 2d 3e 63 75 72 72 65 6e 74 28 29 3b 0a 24 6f 74 68 65 72 57 61 74 63 68 20 3d 20 chain->current();.$otherWatch.=.
44100 24 6e 6f 64 65 2d 3e 67 65 74 4f 74 68 65 72 57 61 74 63 68 28 24 6c 69 74 65 72 61 6c 29 3b 0a $node->getOtherWatch($literal);.
44120 0a 69 66 20 28 21 24 6e 6f 64 65 2d 3e 67 65 74 52 75 6c 65 28 29 2d 3e 69 73 44 69 73 61 62 6c .if.(!$node->getRule()->isDisabl
44140 65 64 28 29 20 26 26 20 21 24 64 65 63 69 73 69 6f 6e 73 2d 3e 73 61 74 69 73 66 79 28 24 6f 74 ed().&&.!$decisions->satisfy($ot
44160 68 65 72 57 61 74 63 68 29 29 20 7b 0a 24 72 75 6c 65 4c 69 74 65 72 61 6c 73 20 3d 20 24 6e 6f herWatch)).{.$ruleLiterals.=.$no
44180 64 65 2d 3e 67 65 74 52 75 6c 65 28 29 2d 3e 6c 69 74 65 72 61 6c 73 3b 0a 0a 24 61 6c 74 65 72 de->getRule()->literals;..$alter
441a0 6e 61 74 69 76 65 4c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 72 nativeLiterals.=.array_filter($r
441c0 75 6c 65 4c 69 74 65 72 61 6c 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 72 75 6c 65 4c 69 74 65 uleLiterals,.function.($ruleLite
441e0 72 61 6c 29 20 75 73 65 20 28 24 6c 69 74 65 72 61 6c 2c 20 24 6f 74 68 65 72 57 61 74 63 68 2c ral).use.($literal,.$otherWatch,
44200 20 24 64 65 63 69 73 69 6f 6e 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 6c 69 74 65 72 61 6c 20 21 .$decisions).{.return.$literal.!
44220 3d 3d 20 24 72 75 6c 65 4c 69 74 65 72 61 6c 20 26 26 0a 24 6f 74 68 65 72 57 61 74 63 68 20 21 ==.$ruleLiteral.&&.$otherWatch.!
44240 3d 3d 20 24 72 75 6c 65 4c 69 74 65 72 61 6c 20 26 26 0a 21 24 64 65 63 69 73 69 6f 6e 73 2d 3e ==.$ruleLiteral.&&.!$decisions->
44260 63 6f 6e 66 6c 69 63 74 28 24 72 75 6c 65 4c 69 74 65 72 61 6c 29 3b 0a 7d 29 3b 0a 0a 69 66 20 conflict($ruleLiteral);.});..if.
44280 28 24 61 6c 74 65 72 6e 61 74 69 76 65 4c 69 74 65 72 61 6c 73 29 20 7b 0a 72 65 73 65 74 28 24 ($alternativeLiterals).{.reset($
442a0 61 6c 74 65 72 6e 61 74 69 76 65 4c 69 74 65 72 61 6c 73 29 3b 0a 24 74 68 69 73 2d 3e 6d 6f 76 alternativeLiterals);.$this->mov
442c0 65 57 61 74 63 68 28 24 6c 69 74 65 72 61 6c 2c 20 63 75 72 72 65 6e 74 28 24 61 6c 74 65 72 6e eWatch($literal,.current($altern
442e0 61 74 69 76 65 4c 69 74 65 72 61 6c 73 29 2c 20 24 6e 6f 64 65 29 3b 0a 63 6f 6e 74 69 6e 75 65 ativeLiterals),.$node);.continue
44300 3b 0a 7d 0a 0a 69 66 20 28 24 64 65 63 69 73 69 6f 6e 73 2d 3e 63 6f 6e 66 6c 69 63 74 28 24 6f ;.}..if.($decisions->conflict($o
44320 74 68 65 72 57 61 74 63 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6e 6f 64 65 2d 3e 67 65 74 52 therWatch)).{.return.$node->getR
44340 75 6c 65 28 29 3b 0a 7d 0a 0a 24 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 28 24 6f 74 ule();.}..$decisions->decide($ot
44360 68 65 72 57 61 74 63 68 2c 20 24 6c 65 76 65 6c 2c 20 24 6e 6f 64 65 2d 3e 67 65 74 52 75 6c 65 herWatch,.$level,.$node->getRule
44380 28 29 29 3b 0a 7d 0a 0a 24 63 68 61 69 6e 2d 3e 6e 65 78 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 ());.}..$chain->next();.}..retur
443a0 6e 20 6e 75 6c 6c 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 75 n.null;.}...........protected.fu
443c0 6e 63 74 69 6f 6e 20 6d 6f 76 65 57 61 74 63 68 28 24 66 72 6f 6d 4c 69 74 65 72 61 6c 2c 20 24 nction.moveWatch($fromLiteral,.$
443e0 74 6f 4c 69 74 65 72 61 6c 2c 20 24 6e 6f 64 65 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 toLiteral,.$node).{.if.(!isset($
44400 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 74 6f 4c 69 74 65 72 61 6c 5d 29 29 20 this->watchChains[$toLiteral])).
44420 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 74 6f 4c 69 74 65 72 61 6c 5d {.$this->watchChains[$toLiteral]
44440 20 3d 20 6e 65 77 20 52 75 6c 65 57 61 74 63 68 43 68 61 69 6e 3b 0a 7d 0a 0a 24 6e 6f 64 65 2d .=.new.RuleWatchChain;.}..$node-
44460 3e 6d 6f 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 >moveWatch($fromLiteral,.$toLite
44480 72 61 6c 29 3b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 66 72 6f 6d 4c 69 ral);.$this->watchChains[$fromLi
444a0 74 65 72 61 6c 5d 2d 3e 72 65 6d 6f 76 65 28 29 3b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 teral]->remove();.$this->watchCh
444c0 61 69 6e 73 5b 24 74 6f 4c 69 74 65 72 61 6c 5d 2d 3e 75 6e 73 68 69 66 74 28 24 6e 6f 64 65 29 ains[$toLiteral]->unshift($node)
444e0 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
44500 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 0a .Composer\DependencyResolver;...
44520 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6c 65 57 61 74 63 68 4e 6f 64 65 0a 7b 0a 70 75 62 6c ......class.RuleWatchNode.{.publ
44540 69 63 20 24 77 61 74 63 68 31 3b 0a 70 75 62 6c 69 63 20 24 77 61 74 63 68 32 3b 0a 0a 70 72 6f ic.$watch1;.public.$watch2;..pro
44560 74 65 63 74 65 64 20 24 72 75 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 tected.$rule;.......public.funct
44580 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 75 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e ion.__construct($rule).{.$this->
445a0 72 75 6c 65 20 3d 20 24 72 75 6c 65 3b 0a 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 72 75 6c 65 rule.=.$rule;..$literals.=.$rule
445c0 2d 3e 6c 69 74 65 72 61 6c 73 3b 0a 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 31 20 3d 20 63 6f 75 ->literals;..$this->watch1.=.cou
445e0 6e 74 28 24 6c 69 74 65 72 61 6c 73 29 20 3e 20 30 20 3f 20 24 6c 69 74 65 72 61 6c 73 5b 30 5d nt($literals).>.0.?.$literals[0]
44600 20 3a 20 30 3b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 32 20 3d 20 63 6f 75 6e 74 28 24 6c 69 74 .:.0;.$this->watch2.=.count($lit
44620 65 72 61 6c 73 29 20 3e 20 31 20 3f 20 24 6c 69 74 65 72 61 6c 73 5b 31 5d 20 3a 20 30 3b 0a 7d erals).>.1.?.$literals[1].:.0;.}
44640 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 77 61 74 63 68 32 ..........public.function.watch2
44660 4f 6e 48 69 67 68 65 73 74 28 44 65 63 69 73 69 6f 6e 73 20 24 64 65 63 69 73 69 6f 6e 73 29 0a OnHighest(Decisions.$decisions).
44680 7b 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 2d 3e 6c 69 74 65 72 {.$literals.=.$this->rule->liter
446a0 61 6c 73 3b 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 6c 69 74 65 72 61 6c 73 29 20 3c 20 33 als;....if.(count($literals).<.3
446c0 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 77 61 74 63 68 4c 65 76 65 6c 20 3d 20 30 3b 0a ).{.return;.}..$watchLevel.=.0;.
446e0 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 29 .foreach.($literals.as.$literal)
44700 20 7b 0a 24 6c 65 76 65 6c 20 3d 20 24 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e .{.$level.=.$decisions->decision
44720 4c 65 76 65 6c 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3e 20 24 Level($literal);..if.($level.>.$
44740 77 61 74 63 68 4c 65 76 65 6c 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 32 20 3d 20 24 6c watchLevel).{.$this->watch2.=.$l
44760 69 74 65 72 61 6c 3b 0a 24 77 61 74 63 68 4c 65 76 65 6c 20 3d 20 24 6c 65 76 65 6c 3b 0a 7d 0a iteral;.$watchLevel.=.$level;.}.
44780 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 67 65 74 52 75 6c }.}.......public.function.getRul
447a0 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 3b 0a 7d 0a 0a 0a 0a 0a e().{.return.$this->rule;.}.....
447c0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 74 68 65 72 57 61 74 63 68 ...public.function.getOtherWatch
447e0 28 24 6c 69 74 65 72 61 6c 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 61 74 63 68 31 20 3d ($literal).{.if.($this->watch1.=
44800 3d 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 77 61 74 63 =.$literal).{.return.$this->watc
44820 68 32 3b 0a 7d 20 65 6c 73 65 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 77 61 74 63 68 h2;.}.else.{.return.$this->watch
44840 31 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 6d 6f 1;.}.}........public.function.mo
44860 76 65 57 61 74 63 68 28 24 66 72 6f 6d 2c 20 24 74 6f 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d veWatch($from,.$to).{.if.($this-
44880 3e 77 61 74 63 68 31 20 3d 3d 20 24 66 72 6f 6d 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 >watch1.==.$from).{.$this->watch
448a0 31 20 3d 20 24 74 6f 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 32 20 1.=.$to;.}.else.{.$this->watch2.
448c0 3d 20 24 74 6f 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 =.$to;.}.}.}.<?php............na
448e0 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 6c mespace.Composer\DependencyResol
44900 76 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 52 65 ver;..use.Composer\Repository\Re
44920 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\
44940 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 0a Repository\PlatformRepository;..
44960 0a 0a 0a 63 6c 61 73 73 20 53 6f 6c 76 65 72 0a 7b 0a 63 6f 6e 73 74 20 42 52 41 4e 43 48 5f 4c ...class.Solver.{.const.BRANCH_L
44980 49 54 45 52 41 4c 53 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 42 52 41 4e 43 48 5f 4c 45 56 45 4c 20 ITERALS.=.0;.const.BRANCH_LEVEL.
449a0 3d 20 31 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f 6c 69 63 79 3b 0a 0a 70 72 6f 74 65 =.1;...protected.$policy;..prote
449c0 63 74 65 64 20 24 70 6f 6f 6c 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 6c 6c 65 cted.$pool;..protected.$installe
449e0 64 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 d;..protected.$rules;..protected
44a00 20 24 72 75 6c 65 53 65 74 47 65 6e 65 72 61 74 6f 72 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 .$ruleSetGenerator;..protected.$
44a20 6a 6f 62 73 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 75 70 64 61 74 65 4d 61 70 20 3d 20 61 jobs;...protected.$updateMap.=.a
44a40 72 72 61 79 28 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 77 61 74 63 68 47 72 61 70 68 3b 0a rray();..protected.$watchGraph;.
44a60 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 63 69 73 69 6f 6e 73 3b 0a 0a 70 72 6f 74 65 63 74 65 .protected.$decisions;..protecte
44a80 64 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 d.$installedMap;...protected.$pr
44aa0 6f 70 61 67 61 74 65 49 6e 64 65 78 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 opagateIndex;..protected.$branch
44ac0 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 62 6c 65 es.=.array();..protected.$proble
44ae0 6d 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 65 61 72 6e 65 ms.=.array();..protected.$learne
44b00 64 50 6f 6f 6c 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 65 61 dPool.=.array();..protected.$lea
44b20 72 6e 65 64 57 68 79 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 rnedWhy.=.array();.......public.
44b40 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 79 49 6e 74 65 72 function.__construct(PolicyInter
44b60 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 52 65 70 6f 73 69 face.$policy,.Pool.$pool,.Reposi
44b80 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 29 0a 7b 0a 24 74 68 69 toryInterface.$installed).{.$thi
44ba0 73 2d 3e 70 6f 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 s->policy.=.$policy;.$this->pool
44bc0 20 3d 20 24 70 6f 6f 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 20 3d 20 24 69 6e .=.$pool;.$this->installed.=.$in
44be0 73 74 61 6c 6c 65 64 3b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 53 65 74 47 65 6e 65 72 61 74 6f 72 stalled;.$this->ruleSetGenerator
44c00 20 3d 20 6e 65 77 20 52 75 6c 65 53 65 74 47 65 6e 65 72 61 74 6f 72 28 24 70 6f 6c 69 63 79 2c .=.new.RuleSetGenerator($policy,
44c20 20 24 70 6f 6f 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 67 .$pool);.}.....public.function.g
44c40 65 74 52 75 6c 65 53 65 74 53 69 7a 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 etRuleSetSize().{.return.count($
44c60 74 68 69 73 2d 3e 72 75 6c 65 73 29 3b 0a 7d 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 this->rules);.}....private.funct
44c80 69 6f 6e 20 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 ion.makeAssertionRuleDecisions()
44ca0 0a 7b 0a 24 64 65 63 69 73 69 6f 6e 53 74 61 72 74 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d .{.$decisionStart.=.count($this-
44cc0 3e 64 65 63 69 73 69 6f 6e 73 29 20 2d 20 31 3b 0a 0a 24 72 75 6c 65 73 43 6f 75 6e 74 20 3d 20 >decisions).-.1;..$rulesCount.=.
44ce0 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 29 3b 0a 66 6f 72 20 28 24 72 75 6c 65 49 count($this->rules);.for.($ruleI
44d00 6e 64 65 78 20 3d 20 30 3b 20 24 72 75 6c 65 49 6e 64 65 78 20 3c 20 24 72 75 6c 65 73 43 6f 75 ndex.=.0;.$ruleIndex.<.$rulesCou
44d20 6e 74 3b 20 24 72 75 6c 65 49 6e 64 65 78 2b 2b 29 20 7b 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 nt;.$ruleIndex++).{.$rule.=.$thi
44d40 73 2d 3e 72 75 6c 65 73 2d 3e 72 75 6c 65 42 79 49 64 5b 24 72 75 6c 65 49 6e 64 65 78 5d 3b 0a s->rules->ruleById[$ruleIndex];.
44d60 0a 69 66 20 28 21 24 72 75 6c 65 2d 3e 69 73 41 73 73 65 72 74 69 6f 6e 28 29 20 7c 7c 20 24 72 .if.(!$rule->isAssertion().||.$r
44d80 75 6c 65 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d ule->isDisabled()).{.continue;.}
44da0 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 73 3b 0a 24 ..$literals.=.$rule->literals;.$
44dc0 6c 69 74 65 72 61 6c 20 3d 20 24 6c 69 74 65 72 61 6c 73 5b 30 5d 3b 0a 0a 69 66 20 28 21 24 74 literal.=.$literals[0];..if.(!$t
44de0 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 64 28 61 62 73 28 24 6c 69 74 his->decisions->decided(abs($lit
44e00 65 72 61 6c 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 eral))).{.$this->decisions->deci
44e20 64 65 28 24 6c 69 74 65 72 61 6c 2c 20 31 2c 20 24 72 75 6c 65 29 3b 0a 63 6f 6e 74 69 6e 75 65 de($literal,.1,.$rule);.continue
44e40 3b 0a 7d 0a 0a 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 ;.}..if.($this->decisions->satis
44e60 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 0a 0a 20 69 fy($literal)).{.continue;.}....i
44e80 66 20 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 20 3d 3d 3d 20 24 72 75 f.(RuleSet::TYPE_LEARNED.===.$ru
44ea0 6c 65 2d 3e 67 65 74 54 79 70 65 28 29 29 20 7b 0a 24 72 75 6c 65 2d 3e 64 69 73 61 62 6c 65 28 le->getType()).{.$rule->disable(
44ec0 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6f 6e 66 6c 69 63 74 20 3d 20 24 74 68 69 );.continue;.}..$conflict.=.$thi
44ee0 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e 52 75 6c 65 28 24 6c 69 74 65 s->decisions->decisionRule($lite
44f00 72 61 6c 29 3b 0a 0a 69 66 20 28 24 63 6f 6e 66 6c 69 63 74 20 26 26 20 52 75 6c 65 53 65 74 3a ral);..if.($conflict.&&.RuleSet:
44f20 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 20 3d 3d 3d 20 24 63 6f 6e 66 6c 69 63 74 2d 3e 67 65 74 :TYPE_PACKAGE.===.$conflict->get
44f40 54 79 70 65 28 29 29 20 7b 0a 24 70 72 6f 62 6c 65 6d 20 3d 20 6e 65 77 20 50 72 6f 62 6c 65 6d Type()).{.$problem.=.new.Problem
44f60 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 29 3b 0a 0a 24 70 72 6f 62 6c 65 6d 2d 3e 61 64 64 52 75 6c ($this->pool);..$problem->addRul
44f80 65 28 24 72 75 6c 65 29 3b 0a 24 70 72 6f 62 6c 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 63 6f 6e e($rule);.$problem->addRule($con
44fa0 66 6c 69 63 74 29 3b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 50 72 6f 62 6c 65 6d 28 24 72 flict);.$this->disableProblem($r
44fc0 75 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 5b 5d 20 3d 20 24 70 72 6f 62 6c ule);.$this->problems[].=.$probl
44fe0 65 6d 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 24 70 72 6f 62 6c 65 6d 20 3d 20 6e 65 em;.continue;.}....$problem.=.ne
45000 77 20 50 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 w.Problem($this->pool);.$problem
45020 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
45040 75 6c 65 28 24 63 6f 6e 66 6c 69 63 74 29 3b 0a 0a 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 24 74 ule($conflict);......foreach.($t
45060 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 75 6c 65 53 his->rules->getIteratorFor(RuleS
45080 65 74 3a 3a 54 59 50 45 5f 4a 4f 42 29 20 61 73 20 24 61 73 73 65 72 74 52 75 6c 65 29 20 7b 0a et::TYPE_JOB).as.$assertRule).{.
450a0 69 66 20 28 24 61 73 73 65 72 74 52 75 6c 65 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 20 7c 7c if.($assertRule->isDisabled().||
450c0 20 21 24 61 73 73 65 72 74 52 75 6c 65 2d 3e 69 73 41 73 73 65 72 74 69 6f 6e 28 29 29 20 7b 0a .!$assertRule->isAssertion()).{.
450e0 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 61 73 73 65 72 74 52 75 6c 65 4c 69 74 65 72 61 6c 73 continue;.}..$assertRuleLiterals
45100 20 3d 20 24 61 73 73 65 72 74 52 75 6c 65 2d 3e 6c 69 74 65 72 61 6c 73 3b 0a 24 61 73 73 65 72 .=.$assertRule->literals;.$asser
45120 74 52 75 6c 65 4c 69 74 65 72 61 6c 20 3d 20 24 61 73 73 65 72 74 52 75 6c 65 4c 69 74 65 72 61 tRuleLiteral.=.$assertRuleLitera
45140 6c 73 5b 30 5d 3b 0a 0a 69 66 20 28 61 62 73 28 24 6c 69 74 65 72 61 6c 29 20 21 3d 3d 20 61 62 ls[0];..if.(abs($literal).!==.ab
45160 73 28 24 61 73 73 65 72 74 52 75 6c 65 4c 69 74 65 72 61 6c 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 s($assertRuleLiteral)).{.continu
45180 65 3b 0a 7d 0a 0a 24 70 72 6f 62 6c 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 61 73 73 65 72 74 52 e;.}..$problem->addRule($assertR
451a0 75 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 50 72 6f 62 6c 65 6d 28 24 61 73 73 ule);.$this->disableProblem($ass
451c0 65 72 74 52 75 6c 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 5b 5d 20 3d 20 ertRule);.}.$this->problems[].=.
451e0 24 70 72 6f 62 6c 65 6d 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 72 65 73 $problem;..$this->decisions->res
45200 65 74 54 6f 4f 66 66 73 65 74 28 24 64 65 63 69 73 69 6f 6e 53 74 61 72 74 29 3b 0a 24 72 75 6c etToOffset($decisionStart);.$rul
45220 65 49 6e 64 65 78 20 3d 20 2d 31 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 eIndex.=.-1;.}.}..protected.func
45240 74 69 6f 6e 20 73 65 74 75 70 49 6e 73 74 61 6c 6c 65 64 4d 61 70 28 29 0a 7b 0a 24 74 68 69 73 tion.setupInstalledMap().{.$this
45260 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 ->installedMap.=.array();.foreac
45280 68 20 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 h.($this->installed->getPackages
452a0 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c ().as.$package).{.$this->install
452c0 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a edMap[$package->id].=.$package;.
452e0 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 63 68 65 63 6b }.}.....protected.function.check
45300 46 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 ForRootRequireProblems($ignorePl
45320 61 74 66 6f 72 6d 52 65 71 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6a 6f atformReqs).{.foreach.($this->jo
45340 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'
45360 5d 29 20 7b 0a 63 61 73 65 20 27 75 70 64 61 74 65 27 3a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 ]).{.case.'update':.$packages.=.
45380 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 27 $this->pool->whatProvides($job['
453a0 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 27 packageName'],.$job['constraint'
453c0 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 63 6b 61 ]);.foreach.($packages.as.$packa
453e0 67 65 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 65 64 ge).{.if.(isset($this->installed
45400 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 75 70 64 Map[$package->id])).{.$this->upd
45420 61 74 65 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 7d 0a 7d ateMap[$package->id].=.true;.}.}
45440 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 75 70 64 61 74 65 2d 61 6c 6c 27 3a 0a 66 6f 72 65 .break;..case.'update-all':.fore
45460 61 63 68 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 ach.($this->installedMap.as.$pac
45480 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 kage).{.$this->updateMap[$packag
454a0 65 2d 3e 69 64 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 69 e->id].=.true;.}.break;..case.'i
454c0 6e 73 74 61 6c 6c 27 3a 0a 69 66 20 28 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 73 nstall':.if.($ignorePlatformReqs
454e0 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 70 6f 73 69 74 6f 72 .&&.preg_match(PlatformRepositor
45500 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 2c 20 24 6a 6f 62 5b y::PLATFORM_PACKAGE_REGEX,.$job[
45520 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 29 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 69 66 20 'packageName'])).{.break;.}..if.
45540 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 6a 6f 62 (!$this->pool->whatProvides($job
45560 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 6e ['packageName'],.$job['constrain
45580 74 27 5d 29 29 20 7b 0a 24 70 72 6f 62 6c 65 6d 20 3d 20 6e 65 77 20 50 72 6f 62 6c 65 6d 28 24 t'])).{.$problem.=.new.Problem($
455a0 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 6c 65 28 6e this->pool);.$problem->addRule(n
455c0 65 77 20 52 75 6c 65 28 61 72 72 61 79 28 29 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 24 6a 6f ew.Rule(array(),.null,.null,.$jo
455e0 62 29 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 5b 5d 20 3d 20 24 70 72 6f 62 6c 65 b));.$this->problems[].=.$proble
45600 6d 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 m;.}.break;.}.}.}.......public.f
45620 75 6e 63 74 69 6f 6e 20 73 6f 6c 76 65 28 52 65 71 75 65 73 74 20 24 72 65 71 75 65 73 74 2c 20 unction.solve(Request.$request,.
45640 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).{.$
45660 74 68 69 73 2d 3e 6a 6f 62 73 20 3d 20 24 72 65 71 75 65 73 74 2d 3e 67 65 74 4a 6f 62 73 28 29 this->jobs.=.$request->getJobs()
45680 3b 0a 0a 24 74 68 69 73 2d 3e 73 65 74 75 70 49 6e 73 74 61 6c 6c 65 64 4d 61 70 28 29 3b 0a 24 ;..$this->setupInstalledMap();.$
456a0 74 68 69 73 2d 3e 72 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 53 65 74 47 65 6e 65 this->rules.=.$this->ruleSetGene
456c0 72 61 74 6f 72 2d 3e 67 65 74 52 75 6c 65 73 46 6f 72 28 24 74 68 69 73 2d 3e 6a 6f 62 73 2c 20 rator->getRulesFor($this->jobs,.
456e0 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 69 67 6e 6f 72 65 50 6c 61 74 $this->installedMap,.$ignorePlat
45700 66 6f 72 6d 52 65 71 73 29 3b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 46 6f 72 52 6f 6f 74 52 65 formReqs);.$this->checkForRootRe
45720 71 75 69 72 65 50 72 6f 62 6c 65 6d 73 28 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d 52 65 71 quireProblems($ignorePlatformReq
45740 73 29 3b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 20 3d 20 6e 65 77 20 44 65 63 69 73 s);.$this->decisions.=.new.Decis
45760 69 6f 6e 73 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 29 3b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 47 ions($this->pool);.$this->watchG
45780 72 61 70 68 20 3d 20 6e 65 77 20 52 75 6c 65 57 61 74 63 68 47 72 61 70 68 3b 0a 0a 66 6f 72 65 raph.=.new.RuleWatchGraph;..fore
457a0 61 63 68 20 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 61 73 20 24 72 75 6c 65 29 20 7b 0a 24 74 ach.($this->rules.as.$rule).{.$t
457c0 68 69 73 2d 3e 77 61 74 63 68 47 72 61 70 68 2d 3e 69 6e 73 65 72 74 28 6e 65 77 20 52 75 6c 65 his->watchGraph->insert(new.Rule
457e0 57 61 74 63 68 4e 6f 64 65 28 24 72 75 6c 65 29 29 3b 0a 7d 0a 0a 0a 24 74 68 69 73 2d 3e 6d 61 WatchNode($rule));.}...$this->ma
45800 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 0a 24 74 68 keAssertionRuleDecisions();..$th
45820 69 73 2d 3e 72 75 6e 53 61 74 28 74 72 75 65 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 is->runSat(true);....foreach.($t
45840 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 65 49 64 20 his->installedMap.as.$packageId.
45860 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 69 6f 6e 73 =>.$void).{.if.($this->decisions
45880 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 74 68 69 73 ->undecided($packageId)).{.$this
458a0 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 65 49 64 2c ->decisions->decide(-$packageId,
458c0 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 72 6f 62 6c .1,.null);.}.}..if.($this->probl
458e0 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 65 6d 73 45 ems).{.throw.new.SolverProblemsE
45900 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 68 69 73 2d xception($this->problems,.$this-
45920 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 69 6f 6e 20 >installedMap);.}..$transaction.
45940 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 69 63 79 2c =.new.Transaction($this->policy,
45960 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 65 64 4d 61 .$this->pool,.$this->installedMa
45980 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 6e 20 24 74 p,.$this->decisions);..return.$t
459a0 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 0a 7d 0a 0a ransaction->getOperations();.}..
459c0 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 70 72 6f 70 .........protected.function.prop
459e0 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 2d 3e 64 65 agate($level).{.while.($this->de
45a00 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 70 72 6f 70 cisions->validOffset($this->prop
45a20 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 74 68 69 73 agateIndex)).{.$decision.=.$this
45a40 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 3e 70 72 6f ->decisions->atOffset($this->pro
45a60 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 74 68 69 73 pagateIndex);..$conflict.=.$this
45a80 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 61 6c 28 0a ->watchGraph->propagateLiteral(.
45aa0 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 4e 5f 4c 49 $decision[Decisions::DECISION_LI
45ac0 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 69 6f 6e 73 TERAL],.$level,.$this->decisions
45ae0 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 3b 0a 0a 69 .);..$this->propagateIndex++;..i
45b00 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 6c 69 63 74 f.($conflict).{.return.$conflict
45b20 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 70 72 69 76 ;.}.}..return.null;.}.......priv
45b40 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 7b 0a 77 68 ate.function.revert($level).{.wh
45b60 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 70 74 79 28 ile.(!$this->decisions->isEmpty(
45b80 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 69 6f 6e 73 )).{.$literal.=.$this->decisions
45ba0 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 3e 64 65 63 ->lastLiteral();..if.($this->dec
45bc0 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 20 7b 0a 62 isions->undecided($literal)).{.b
45be0 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 68 69 73 2d reak;.}..$decisionLevel.=.$this-
45c00 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 69 74 65 72 >decisions->decisionLevel($liter
45c20 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 24 6c 65 76 al);..if.($decisionLevel.<=.$lev
45c40 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 69 6f 6e 73 el).{.break;.}..$this->decisions
45c60 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 67 61 74 65 ->revertLast();.$this->propagate
45c80 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 6e 73 29 3b Index.=.count($this->decisions);
45ca0 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 6e 63 68 65 .}..while.(!empty($this->branche
45cc0 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 24 74 68 69 s).&&.$this->branches[count($thi
45ce0 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 43 48 5f 4c s->branches).-.1][self::BRANCH_L
45d00 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 28 24 74 68 EVEL].>=.$level).{.array_pop($th
45d20 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 0a 0a 0a 0a is->branches);.}.}..............
45d40 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 72 6f 70 61 .......private.function.setPropa
45d60 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 24 64 69 73 gateLearn($level,.$literal,.$dis
45d80 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 76 65 6c 2b ableRules,.Rule.$rule).{.$level+
45da0 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 28 24 6c 69 +;..$this->decisions->decide($li
45dc0 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 65 20 28 74 teral,.$level,.$rule);..while.(t
45de0 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 61 74 65 28 rue).{.$rule.=.$this->propagate(
45e00 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 6b 3b 0a 7d $level);..if.(!$rule).{.break;.}
45e20 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 24 74 68 69 ..if.($level.==.1).{.return.$thi
45e40 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 24 64 69 73 s->analyzeUnsolvable($rule,.$dis
45e60 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 4c 69 74 65 ableRules);.}....list($learnLite
45e80 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 68 79 29 20 ral,.$newLevel,.$newRule,.$why).
45ea0 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 6c 65 29 3b =.$this->analyze($level,.$rule);
45ec0 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 4c 65 76 65 ..if.($newLevel.<=.0.||.$newLeve
45ee0 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 76 65 72 42 l.>=.$level).{.throw.new.SolverB
45f00 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 72 74 20 74 ugException(."Trying.to.revert.t
45f20 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 4c 65 76 65 o.invalid.level.".(int).$newLeve
45f40 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 6c 2e 22 2e l.".from.level.".(int).$level.".
45f60 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 74 68 72 6f ".);.}.elseif.(!$newRule).{.thro
45f80 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 6f 20 72 75 w.new.SolverBugException(."No.ru
45fa0 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 67 20 24 72 le.was.learned.from.analyzing.$r
45fc0 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 24 6c 65 76 ule.at.level.$level.".);.}..$lev
45fe0 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 72 74 28 24 el.=.$newLevel;..$this->revert($
46000 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 6e 65 77 52 level);..$this->rules->add($newR
46020 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 0a 0a 24 74 ule,.RuleSet::TYPE_LEARNED);..$t
46040 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 61 73 68 28 his->learnedWhy[spl_object_hash(
46060 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 65 20 3d 20 $newRule)].=.$why;..$ruleNode.=.
46080 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 0a 24 72 75 new.RuleWatchNode($newRule);.$ru
460a0 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 73 2d 3e 64 leNode->watch2OnHighest($this->d
460c0 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 2d 3e 69 6e ecisions);.$this->watchGraph->in
460e0 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 69 73 69 6f sert($ruleNode);..$this->decisio
46100 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 65 76 65 6c ns->decide($learnLiteral,.$level
46120 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 6c 3b 0a 7d ,.$newRule);.}..return.$level;.}
46140 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 6c 65 63 74 .........private.function.select
46160 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 63 69 73 69 AndInstall($level,.array.$decisi
46180 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 20 24 72 75 onQueue,.$disableRules,.Rule.$ru
461a0 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 6f 6c 69 63 le).{...$literals.=.$this->polic
461c0 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 74 68 69 73 y->selectPreferredPackages($this
461e0 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 64 65 ->pool,.$this->installedMap,.$de
46200 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 72 65 64 50 cisionQueue,.$rule->getRequiredP
46220 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 20 3d 20 61 ackage());..$selectedLiteral.=.a
46240 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 20 28 63 6f rray_shift($literals);....if.(co
46260 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 6e 63 68 65 unt($literals)).{.$this->branche
46280 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 6c 29 3b 0a s[].=.array($literals,.$level);.
462a0 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 65 4c 65 61 }..return.$this->setPropagateLea
462c0 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 20 24 64 69 rn($level,.$selectedLiteral,.$di
462e0 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 70 72 6f 74 sableRules,.$rule);.}.......prot
46300 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 6c 2c 20 52 ected.function.analyze($level,.R
46320 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 20 24 72 75 ule.$rule).{.$analyzedRule.=.$ru
46340 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 3b 0a 24 6c le;.$ruleLevel.=.1;.$num.=.0;.$l
46360 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 6c 65 61 72 1num.=.0;.$seen.=.array();.$lear
46380 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 24 64 65 63 nedLiterals.=.array(null);..$dec
463a0 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 69 6f 6e 73 isionId.=.count($this->decisions
463c0 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 72 72 61 79 );..$this->learnedPool[].=.array
463e0 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 65 61 72 6e ();..while.(true).{.$this->learn
46400 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 6f 6f 6c 29 edPool[count($this->learnedPool)
46420 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 72 75 6c 65 .-.1][].=.$rule;..foreach.($rule
46440 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 69 66 20 28 ->literals.as.$literal).{...if.(
46460 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 69 74 65 72 $this->decisions->satisfy($liter
46480 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 74 28 24 73 al)).{.continue;.}..if.(isset($s
464a0 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 6e 75 65 3b een[abs($literal)])).{.continue;
464c0 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 75 65 3b 0a .}.$seen[abs($literal)].=.true;.
464e0 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 73 69 6f 6e .$l.=.$this->decisions->decision
46500 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 24 6c 29 20 Level($literal);..if.(1.===.$l).
46520 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 20 3d 3d 3d {.$l1num++;.}.elseif.($level.===
46540 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 65 61 72 6e .$l).{.$num++;.}.else.{...$learn
46560 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 20 28 24 6c edLiterals[].=.$literal;..if.($l
46580 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 3d 20 24 6c .>.$ruleLevel).{.$ruleLevel.=.$l
465a0 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 69 6c 65 20 ;.}.}.}..$l1retry.=.true;.while.
465c0 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 65 3b 0a 0a ($l1retry).{.$l1retry.=.false;..
465e0 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 62 72 65 61 if.(!$num.&&.!--$l1num).{...brea
46600 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 64 65 63 69 k.2;.}..while.(true).{.if.($deci
46620 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 76 65 72 42 sionId.<=.0).{.throw.new.SolverB
46640 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 64 20 64 65 ugException(."Reached.invalid.de
46660 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 6c 6f 6f 6b cision.id.$decisionId.while.look
46680 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 72 61 6c 20 ing.through.$rule.for.a.literal.
466a0 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 20 24 61 6e present.in.the.analyzed.rule.$an
466c0 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 49 64 2d 2d alyzedRule.".);.}..$decisionId--
466e0 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 6f 6e 73 2d ;..$decision.=.$this->decisions-
46700 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 65 72 61 6c >atOffset($decisionId);.$literal
46720 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 53 49 4f 4e .=.$decision[Decisions::DECISION
46740 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 61 62 73 28 _LITERAL];..if.(isset($seen[abs(
46760 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 6e 73 65 74 $literal)])).{.break;.}.}..unset
46780 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 28 24 6e 75 ($seen[abs($literal)]);..if.($nu
467a0 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 64 4c 69 74 m.&&.0.===.--$num).{.$learnedLit
467c0 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 69 66 20 28 erals[0].=.-abs($literal);..if.(
467e0 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 63 68 20 28 !$l1num).{.break.2;.}..foreach.(
46800 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 65 61 72 6e $learnedLiterals.as.$i.=>.$learn
46820 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 0a 75 6e 73 edLiteral).{.if.($i.!==.0).{.uns
46840 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 29 5d 29 3b et($seen[abs($learnedLiteral)]);
46860 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 74 72 75 65 .}.}...$l1num++;.$l1retry.=.true
46880 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 63 69 73 69 ;.}.}..$decision.=.$this->decisi
468a0 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 72 75 6c ons->atOffset($decisionId);.$rul
468c0 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 49 53 49 4f e.=.$decision[Decisions::DECISIO
468e0 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 74 68 69 73 N_REASON];.}..$why.=.count($this
46900 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 65 61 72 6e ->learnedPool).-.1;..if.(!$learn
46920 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 6f 6c 76 65 edLiterals[0]).{.throw.new.Solve
46940 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 20 61 20 6c rBugException(."Did.not.find.a.l
46960 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 20 72 75 6c earnable.literal.in.analyzed.rul
46980 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 52 75 6c 65 e.$analyzedRule.".);.}..$newRule
469a0 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 2c 20 52 75 .=.new.Rule($learnedLiterals,.Ru
469c0 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 74 75 72 6e le::RULE_LEARNED,.$why);..return
469e0 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 24 72 75 6c .array($learnedLiterals[0],.$rul
46a00 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 0a 0a 0a 0a eLevel,.$newRule,.$why);.}......
46a20 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 6c 76 61 62 private.function.analyzeUnsolvab
46a40 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 65 20 24 63 leRule(Problem.$problem,.Rule.$c
46a60 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 6a 65 63 74 onflictRule).{.$why.=.spl_object
46a80 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 63 6f 6e 66 _hash($conflictRule);..if.($conf
46aa0 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 65 74 3a 3a lictRule->getType().==.RuleSet::
46ac0 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 3d 20 24 74 TYPE_LEARNED).{.$learnedWhy.=.$t
46ae0 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 6c 65 6d 52 his->learnedWhy[$why];.$problemR
46b00 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 65 61 72 6e ules.=.$this->learnedPool[$learn
46b20 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 6c 65 73 20 edWhy];..foreach.($problemRules.
46b40 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 61 6c 79 7a as.$problemRule).{.$this->analyz
46b60 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 72 6f 62 6c eUnsolvableRule($problem,.$probl
46b80 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 63 6f 6e 66 emRule);.}..return;.}..if.($conf
46ba0 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 65 74 3a 3a lictRule->getType().==.RuleSet::
46bc0 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 0a 24 70 72 TYPE_PACKAGE).{...return;.}..$pr
46be0 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 65 6d 2d 3e oblem->nextSection();.$problem->
46c00 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 0a 0a 0a 0a addRule($conflictRule);.}.......
46c20 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 6c 76 61 62 private.function.analyzeUnsolvab
46c40 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 62 6c 65 52 le(Rule.$conflictRule,.$disableR
46c60 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 65 6d 28 24 ules).{.$problem.=.new.Problem($
46c80 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 6c 65 28 24 this->pool);.$problem->addRule($
46ca0 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 7a 65 55 6e conflictRule);..$this->analyzeUn
46cc0 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 6c 69 63 74 solvableRule($problem,.$conflict
46ce0 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 24 70 72 6f Rule);..$this->problems[].=.$pro
46d00 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 65 72 61 6c blem;..$seen.=.array();.$literal
46d20 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 0a 0a 66 6f s.=.$conflictRule->literals;..fo
46d40 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).{.
46d60 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 73 66 79 28 ..if.($this->decisions->satisfy(
46d80 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 65 6e 5b 61 $literal)).{.continue;.}.$seen[a
46da0 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 65 61 63 68 bs($literal)].=.true;.}..foreach
46dc0 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 69 6f 6e 29 .($this->decisions.as.$decision)
46de0 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 73 69 6f 6e .{.$literal.=.$decision[Decision
46e00 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 28 21 69 73 s::DECISION_LITERAL];....if.(!is
46e20 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 0a 63 6f 6e set($seen[abs($literal)])).{.con
46e40 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 65 63 69 73 tinue;.}..$why.=.$decision[Decis
46e60 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 6f 62 6c 65 ions::DECISION_REASON];..$proble
46e80 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 6c 79 7a 65 m->addRule($why);.$this->analyze
46ea0 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 79 29 3b 0a UnsolvableRule($problem,.$why);.
46ec0 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 0a 0a 66 6f .$literals.=.$why->literals;..fo
46ee0 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).{.
46f00 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 73 66 79 28 ..if.($this->decisions->satisfy(
46f20 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 65 6e 5b 61 $literal)).{.continue;.}.$seen[a
46f40 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 66 20 28 24 bs($literal)].=.true;.}.}..if.($
46f60 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 69 73 2d 3e disableRules).{.foreach.($this->
46f80 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 6d 73 29 20 problems[count($this->problems).
46fa0 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 73 61 62 6c -.1].as.$reason).{.$this->disabl
46fc0 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 0a 0a 24 74 eProblem($reason['rule']);.}..$t
46fe0 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 31 3b 0a 7d his->resetSolver();..return.1;.}
47000 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 6e 63 74 69 ..return.0;.}.....private.functi
47020 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 0a 7b 0a 24 on.disableProblem(Rule.$why).{.$
47040 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 24 6a 6f 62 job.=.$why->getJob();..if.(!$job
47060 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 3b 0a 7d 0a ).{.$why->disable();..return;.}.
47080 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 24 72 75 6c ...foreach.($this->rules.as.$rul
470a0 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 74 4a 6f 62 e).{..if.($job.===.$rule->getJob
470c0 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 7d 0a 0a 70 ()).{.$rule->disable();.}.}.}..p
470e0 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 29 0a 7b 0a rivate.function.resetSolver().{.
47100 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 24 74 68 69 $this->decisions->reset();..$thi
47120 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 2d 3e 62 72 s->propagateIndex.=.0;.$this->br
47140 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 61 62 6c 65 anches.=.array();..$this->enable
47160 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 2d 3e 6d 61 DisableLearnedRules();.$this->ma
47180 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 7d 0a 0a 0a keAssertionRuleDecisions();.}...
471a0 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 65 44 69 73 ......private.function.enableDis
471c0 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 20 28 24 74 ableLearnedRules().{.foreach.($t
471e0 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 75 6c 65 53 his->rules->getIteratorFor(RuleS
47200 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 7b 0a 24 77 et::TYPE_LEARNED).as.$rule).{.$w
47220 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 62 6a 65 63 hy.=.$this->learnedWhy[spl_objec
47240 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 73 20 3d 20 t_hash($rule)];.$problemRules.=.
47260 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 66 6f 75 6e $this->learnedPool[$why];..$foun
47280 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 24 70 72 6f dDisabled.=.false;.foreach.($pro
472a0 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 0a 69 66 20 blemRules.as.$problemRule).{.if.
472c0 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 20 7b 0a 24 ($problemRule->isDisabled()).{.$
472e0 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 0a 7d 0a 7d foundDisabled.=.true;.break;.}.}
47300 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 65 2d 3e 69 ..if.($foundDisabled.&&.$rule->i
47320 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 28 29 3b 0a sEnabled()).{.$rule->disable();.
47340 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 20 24 72 75 }.elseif.(!$foundDisabled.&&.$ru
47360 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 6e 61 62 6c le->isDisabled()).{.$rule->enabl
47380 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 69 6f 6e 20 e();.}.}.}.....private.function.
473a0 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 0a 7b 0a 24 runSat($disableRules.=.true).{.$
473c0 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 0a 0a 0a 0a this->propagateIndex.=.0;.......
473e0 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 29 3b 0a 24 .....$decisionQueue.=.array();.$
47400 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 72 61 79 28 decisionSupplementQueue.=.array(
47420 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 29 3b 0a 0a );....$disableRules.=.array();..
47440 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 6c 65 76 65 $level.=.1;.$systemLevel.=.$leve
47460 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 68 69 6c 65 l.+.1;.$installedPos.=.0;..while
47480 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 7b 0a 24 63 .(true).{.if.(1.===.$level).{.$c
474a0 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 74 65 28 24 onflictRule.=.$this->propagate($
474c0 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 63 74 52 75 level);.if.(null.!==.$conflictRu
474e0 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 6c 76 61 62 le).{.if.($this->analyzeUnsolvab
47500 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 6c 65 73 29 le($conflictRule,.$disableRules)
47520 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 0a 0a 0a 20 ).{.continue;.}..return;.}.}....
47540 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 0a 24 69 74 if.($level.<.$systemLevel).{.$it
47560 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 65 72 61 74 erator.=.$this->rules->getIterat
47580 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 72 65 61 63 orFor(RuleSet::TYPE_JOB);.foreac
475a0 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 28 24 72 75 h.($iterator.as.$rule).{.if.($ru
475c0 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 51 75 65 75 le->isEnabled()).{.$decisionQueu
475e0 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 3d 20 74 72 e.=.array();.$noneSatisfied.=.tr
47600 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 73 20 61 73 ue;..foreach.($rule->literals.as
47620 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 73 69 6f 6e .$literal).{.if.($this->decision
47640 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 65 53 61 74 s->satisfy($literal)).{.$noneSat
47660 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 28 24 6c 69 isfied.=.false;.break;.}.if.($li
47680 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 73 2d 3e 75 teral.>.0.&&.$this->decisions->u
476a0 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 69 6f 6e 51 ndecided($literal)).{.$decisionQ
476c0 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 24 6e 6f 6e ueue[].=.$literal;.}.}..if.($non
476e0 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 6e 51 75 65 eSatisfied.&&.count($decisionQue
47700 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 69 6e 73 74 ue)).{.....if.(count($this->inst
47720 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 65 4d 61 70 alled).!=.count($this->updateMap
47740 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 0a 66 6f 72 )).{.$prunedQueue.=.array();.for
47760 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 65 72 61 6c each.($decisionQueue.as.$literal
47780 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 65 64 4d 61 ).{.if.(isset($this->installedMa
477a0 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 51 75 65 75 p[abs($literal)])).{.$prunedQueu
477c0 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 68 69 73 2d e[].=.$literal;.if.(isset($this-
477e0 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 7b 0a 24 70 >updateMap[abs($literal)])).{.$p
47800 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 0a 62 72 65 runedQueue.=.$decisionQueue;.bre
47820 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 70 72 75 6e ak;.}.}.}.$decisionQueue.=.$prun
47840 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 66 69 65 64 edQueue;.}.}..if.($noneSatisfied
47860 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 0a 24 6f 4c .&&.count($decisionQueue)).{.$oL
47880 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 73 2d 3e 73 evel.=.$level;.$level.=.$this->s
478a0 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 69 73 69 6f electAndInstall($level,.$decisio
478c0 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 29 3b 0a 0a nQueue,.$disableRules,.$rule);..
478e0 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 7d 0a 69 66 if.(0.===.$level).{.return;.}.if
47900 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 3b 0a 7d 0a .($level.<=.$oLevel).{.break;.}.
47920 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 20 2b 20 31 }.}.}..$systemLevel.=.$level.+.1
47940 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 24 69 74 65 ;....$iterator->next();.if.($ite
47960 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 7d 0a 7d 0a rator->valid()).{.continue;.}.}.
47980 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 7b 0a 24 73 .if.($level.<.$systemLevel).{.$s
479a0 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 28 24 69 20 ystemLevel.=.$level;.}..for.($i.
479c0 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 73 2d 3e 72 =.0,.$n.=.0;.$n.<.count($this->r
479e0 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 3d 3d 20 63 ules);.$i++,.$n++).{.if.($i.==.c
47a00 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 3b 0a 7d 0a ount($this->rules)).{.$i.=.0;.}.
47a20 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 79 49 64 5b .$rule.=.$this->rules->ruleById[
47a40 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 72 61 6c 73 $i];.$literals.=.$rule->literals
47a60 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 7b 0a 63 6f ;..if.($rule->isDisabled()).{.co
47a80 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 61 72 72 61 ntinue;.}..$decisionQueue.=.arra
47aa0 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 6c 69 74 65 y();..............foreach.($lite
47ac0 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 65 72 61 6c rals.as.$literal).{.if.($literal
47ae0 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 6e 73 2d 3e .<=.0).{.if.(!$this->decisions->
47b00 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 29 29 20 7b decidedInstall(abs($literal))).{
47b20 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 20 28 24 74 .continue.2;...}.}.else.{.if.($t
47b40 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 6c 6c 28 61 his->decisions->decidedInstall(a
47b60 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 20 0a 20 7d bs($literal))).{.continue.2;...}
47b80 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 69 64 65 64 .if.($this->decisions->undecided
47ba0 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 51 75 65 75 (abs($literal))).{.$decisionQueu
47bc0 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 28 63 6f 75 e[].=.$literal;.}.}.}....if.(cou
47be0 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 6e 74 69 6e nt($decisionQueue).<.2).{.contin
47c00 75 65 3b 0a 7d 0a 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 ue;.}..$oLevel.=.$level;.$level.
47c20 3d 20 24 74 68 69 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 =.$this->selectAndInstall($level
47c40 2c 20 24 64 65 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 ,.$decisionQueue,.$disableRules,
47c60 20 24 72 75 6c 65 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 .$rule);..if.(0.===.$level).{.re
47c80 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 24 6e 20 3d 20 2d 31 3b 0a 7d 0a 0a 69 66 20 28 24 6c 65 76 65 turn;.}....$n.=.-1;.}..if.($leve
47ca0 6c 20 3c 20 24 73 79 73 74 65 6d 4c 65 76 65 6c 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a l.<.$systemLevel).{.continue;.}.
47cc0 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 29 20 7b ...if.(count($this->branches)).{
47ce0 0a 24 6c 61 73 74 4c 69 74 65 72 61 6c 20 3d 20 6e 75 6c 6c 3b 0a 24 6c 61 73 74 4c 65 76 65 6c .$lastLiteral.=.null;.$lastLevel
47d00 20 3d 20 6e 75 6c 6c 3b 0a 24 6c 61 73 74 42 72 61 6e 63 68 49 6e 64 65 78 20 3d 20 30 3b 0a 24 .=.null;.$lastBranchIndex.=.0;.$
47d20 6c 61 73 74 42 72 61 6e 63 68 4f 66 66 73 65 74 20 3d 20 30 3b 0a 24 6c 20 3d 20 30 3b 0a 0a 66 lastBranchOffset.=.0;.$l.=.0;..f
47d40 6f 72 20 28 24 69 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 or.($i.=.count($this->branches).
47d60 2d 20 31 3b 20 24 69 20 3e 3d 20 30 3b 20 24 69 2d 2d 29 20 7b 0a 6c 69 73 74 28 24 6c 69 74 65 -.1;.$i.>=.0;.$i--).{.list($lite
47d80 72 61 6c 73 2c 20 24 6c 29 20 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 24 69 5d 3b rals,.$l).=.$this->branches[$i];
47da0 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 6f 66 66 73 65 74 20 ..foreach.($literals.as.$offset.
47dc0 3d 3e 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 6c 69 74 65 72 61 6c 20 26 26 20 24 =>.$literal).{.if.($literal.&&.$
47de0 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 73 2d literal.>.0.&&.$this->decisions-
47e00 3e 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c 28 24 6c 69 74 65 72 61 6c 29 20 3e 20 24 6c 20 2b 20 >decisionLevel($literal).>.$l.+.
47e20 31 29 20 7b 0a 24 6c 61 73 74 4c 69 74 65 72 61 6c 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 24 6c 1).{.$lastLiteral.=.$literal;.$l
47e40 61 73 74 42 72 61 6e 63 68 49 6e 64 65 78 20 3d 20 24 69 3b 0a 24 6c 61 73 74 42 72 61 6e 63 68 astBranchIndex.=.$i;.$lastBranch
47e60 4f 66 66 73 65 74 20 3d 20 24 6f 66 66 73 65 74 3b 0a 24 6c 61 73 74 4c 65 76 65 6c 20 3d 20 24 Offset.=.$offset;.$lastLevel.=.$
47e80 6c 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6c 61 73 74 4c 69 74 65 72 61 6c 29 20 7b 0a 75 6e l;.}.}.}..if.($lastLiteral).{.un
47ea0 73 65 74 28 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 24 6c 61 73 74 42 72 61 6e 63 68 49 set($this->branches[$lastBranchI
47ec0 6e 64 65 78 5d 5b 73 65 6c 66 3a 3a 42 52 41 4e 43 48 5f 4c 49 54 45 52 41 4c 53 5d 5b 24 6c 61 ndex][self::BRANCH_LITERALS][$la
47ee0 73 74 42 72 61 6e 63 68 4f 66 66 73 65 74 5d 29 3b 0a 0a 24 6c 65 76 65 6c 20 3d 20 24 6c 61 73 stBranchOffset]);..$level.=.$las
47f00 74 4c 65 76 65 6c 3b 0a 24 74 68 69 73 2d 3e 72 65 76 65 72 74 28 24 6c 65 76 65 6c 29 3b 0a 0a tLevel;.$this->revert($level);..
47f20 24 77 68 79 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 6c 61 73 74 52 65 61 $why.=.$this->decisions->lastRea
47f40 73 6f 6e 28 29 3b 0a 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 son();..$oLevel.=.$level;.$level
47f60 20 3d 20 24 74 68 69 73 2d 3e 73 65 74 50 72 6f 70 61 67 61 74 65 4c 65 61 72 6e 28 24 6c 65 76 .=.$this->setPropagateLearn($lev
47f80 65 6c 2c 20 24 6c 61 73 74 4c 69 74 65 72 61 6c 2c 20 24 64 69 73 61 62 6c 65 52 75 6c 65 73 2c el,.$lastLiteral,.$disableRules,
47fa0 20 24 77 68 79 29 3b 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3d 3d 20 30 29 20 7b 0a 72 65 74 75 .$why);..if.($level.==.0).{.retu
47fc0 72 6e 3b 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 7d 0a 0a 62 72 65 61 6b 3b 0a 7d 0a 7d rn;.}..continue;.}.}..break;.}.}
47fe0 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
48000 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 63 mposer\DependencyResolver;.....c
48020 6c 61 73 73 20 53 6f 6c 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 lass.SolverBugException.extends.
48040 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 \RuntimeException.{.public.funct
48060 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 70 61 72 65 ion.__construct($message).{.pare
48080 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 0a 24 6d 65 73 73 61 67 65 2e 22 5c 6e 54 68 69 nt::__construct(.$message."\nThi
480a0 73 20 65 78 63 65 70 74 69 6f 6e 20 77 61 73 20 6d 6f 73 74 20 6c 69 6b 65 6c 79 20 63 61 75 73 s.exception.was.most.likely.caus
480c0 65 64 20 62 79 20 61 20 62 75 67 20 69 6e 20 43 6f 6d 70 6f 73 65 72 2e 5c 6e 22 2e 0a 22 50 6c ed.by.a.bug.in.Composer.\n".."Pl
480e0 65 61 73 65 20 72 65 70 6f 72 74 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 79 6f 75 20 72 61 6e 2c ease.report.the.command.you.ran,
48100 20 74 68 65 20 65 78 61 63 74 20 65 72 72 6f 72 20 79 6f 75 20 72 65 63 65 69 76 65 64 2c 20 61 .the.exact.error.you.received,.a
48120 6e 64 20 79 6f 75 72 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 6f 6e 20 68 74 74 70 73 3a 2f nd.your.composer.json.on.https:/
48140 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 63 6f 6d 70 6f 73 65 72 2f 63 6f 6d 70 6f 73 65 72 2f 69 73 /github.com/composer/composer/is
48160 73 75 65 73 20 2d 20 74 68 61 6e 6b 20 79 6f 75 21 5c 6e 22 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 sues.-.thank.you!\n");.}.}.<?php
48180 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
481a0 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
481c0 76 65 72 50 72 6f 62 6c 65 6d 73 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 verProblemsException.extends.\Ru
481e0 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 62 ntimeException.{.protected.$prob
48200 6c 65 6d 73 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 0a lems;.protected.$installedMap;..
48220 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
48240 79 20 24 70 72 6f 62 6c 65 6d 73 2c 20 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 y.$problems,.array.$installedMap
48260 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 20 3d 20 24 70 72 6f 62 6c 65 6d 73 3b ).{.$this->problems.=.$problems;
48280 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 61 6c 6c 65 .$this->installedMap.=.$installe
482a0 64 4d 61 70 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 74 68 69 73 dMap;..parent::__construct($this
482c0 2d 3e 63 72 65 61 74 65 4d 65 73 73 61 67 65 28 29 2c 20 32 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 ->createMessage(),.2);.}..protec
482e0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 4d 65 73 73 61 67 65 28 29 0a 7b 0a 24 ted.function.createMessage().{.$
48300 74 65 78 74 20 3d 20 22 5c 6e 22 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f text.=."\n";.foreach.($this->pro
48320 62 6c 65 6d 73 20 61 73 20 24 69 20 3d 3e 20 24 70 72 6f 62 6c 65 6d 29 20 7b 0a 24 74 65 78 74 blems.as.$i.=>.$problem).{.$text
48340 20 2e 3d 20 22 20 20 50 72 6f 62 6c 65 6d 20 22 2e 28 24 69 20 2b 20 31 29 2e 24 70 72 6f 62 6c ..=."..Problem.".($i.+.1).$probl
48360 65 6d 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 69 6e 73 74 61 em->getPrettyString($this->insta
48380 6c 6c 65 64 4d 61 70 29 2e 22 5c 6e 22 3b 0a 7d 0a 0a 69 66 20 28 73 74 72 70 6f 73 28 24 74 65 lledMap)."\n";.}..if.(strpos($te
483a0 78 74 2c 20 27 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 27 29 20 7c 7c 20 73 74 72 xt,.'could.not.be.found').||.str
483c0 70 6f 73 28 24 74 65 78 74 2c 20 27 6e 6f 20 6d 61 74 63 68 69 6e 67 20 70 61 63 6b 61 67 65 20 pos($text,.'no.matching.package.
483e0 66 6f 75 6e 64 27 29 29 20 7b 0a 24 74 65 78 74 20 2e 3d 20 22 5c 6e 50 6f 74 65 6e 74 69 61 6c found')).{.$text..=."\nPotential
48400 20 63 61 75 73 65 73 3a 5c 6e 20 2d 20 41 20 74 79 70 6f 20 69 6e 20 74 68 65 20 70 61 63 6b 61 .causes:\n.-.A.typo.in.the.packa
48420 67 65 20 6e 61 6d 65 5c 6e 20 2d 20 54 68 65 20 70 61 63 6b 61 67 65 20 69 73 20 6e 6f 74 20 61 ge.name\n.-.The.package.is.not.a
48440 76 61 69 6c 61 62 6c 65 20 69 6e 20 61 20 73 74 61 62 6c 65 2d 65 6e 6f 75 67 68 20 76 65 72 73 vailable.in.a.stable-enough.vers
48460 69 6f 6e 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 79 6f 75 72 20 6d 69 6e 69 6d 75 6d 2d 73 74 ion.according.to.your.minimum-st
48480 61 62 69 6c 69 74 79 20 73 65 74 74 69 6e 67 5c 6e 20 20 20 73 65 65 20 3c 68 74 74 70 73 3a 2f ability.setting\n...see.<https:/
484a0 2f 67 72 6f 75 70 73 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f 64 2f 74 6f 70 69 63 2f 63 6f 6d 70 6f /groups.google.com/d/topic/compo
484c0 73 65 72 2d 64 65 76 2f 5f 67 33 41 53 65 49 46 6c 72 63 2f 64 69 73 63 75 73 73 69 6f 6e 3e 20 ser-dev/_g3ASeIFlrc/discussion>.
484e0 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 70 73 for.more.details.\n\nRead.<https
48500 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/
48520 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 72 20 troubleshooting.md>.for.further.
48540 63 6f 6d 6d 6f 6e 20 70 72 6f 62 6c 65 6d 73 2e 22 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 65 common.problems.";.}..return.$te
48560 78 74 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 62 6c 65 xt;.}..public.function.getProble
48580 6d 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 3b 0a 7d ms().{.return.$this->problems;.}
485a0 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
485c0 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 20 mposer\DependencyResolver;..use.
485e0 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 0a Composer\Package\AliasPackage;..
48600 0a 0a 0a 63 6c 61 73 73 20 54 72 61 6e 73 61 63 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 ...class.Transaction.{.protected
48620 20 24 70 6f 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 .$policy;.protected.$pool;.prote
48640 63 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 64 cted.$installedMap;.protected.$d
48660 65 63 69 73 69 6f 6e 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 72 61 6e 73 61 63 74 69 6f 6e ecisions;.protected.$transaction
48680 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($
486a0 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 70 2c 20 24 64 policy,.$pool,.$installedMap,.$d
486c0 65 63 69 73 69 6f 6e 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 20 3d 20 24 70 6f 6c ecisions).{.$this->policy.=.$pol
486e0 69 63 79 3b 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 2d icy;.$this->pool.=.$pool;.$this-
48700 3e 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 24 >installedMap.=.$installedMap;.$
48720 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 20 3d 20 24 64 65 63 69 73 69 6f 6e 73 3b 0a 24 74 this->decisions.=.$decisions;.$t
48740 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 his->transaction.=.array();.}..p
48760 75 62 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 ublic.function.getOperations().{
48780 0a 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d 61 70 20 3d 20 24 74 68 69 73 2d .$installMeansUpdateMap.=.$this-
487a0 3e 66 69 6e 64 55 70 64 61 74 65 73 28 29 3b 0a 0a 24 75 70 64 61 74 65 4d 61 70 20 3d 20 61 72 >findUpdates();..$updateMap.=.ar
487c0 72 61 79 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 75 ray();.$installMap.=.array();.$u
487e0 6e 69 6e 73 74 61 6c 6c 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 ninstallMap.=.array();..foreach.
48800 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 65 63 69 ($this->decisions.as.$i.=>.$deci
48820 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 44 65 63 sion).{.$literal.=.$decision[Dec
48840 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 65 61 73 isions::DECISION_LITERAL];.$reas
48860 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 49 53 49 on.=.$decision[Decisions::DECISI
48880 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 70 ON_REASON];..$package.=.$this->p
488a0 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 3b ool->literalToPackage($literal);
488c0 0a 0a 0a 20 69 66 20 28 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 29 20 3d 3d 20 28 69 73 73 65 74 ....if.(($literal.>.0).==.(isset
488e0 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 6b 61 67 65 2d 3e 69 ($this->installedMap[$package->i
48900 64 5d 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 6c 69 74 65 72 61 d]))).{.continue;.}..if.($litera
48920 6c 20 3e 20 30 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 l.>.0).{.if.(isset($installMeans
48940 55 70 64 61 74 65 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 20 26 26 20 21 24 70 UpdateMap[abs($literal)]).&&.!$p
48960 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 20 ackage.instanceof.AliasPackage).
48980 7b 0a 24 73 6f 75 72 63 65 20 3d 20 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d {.$source.=.$installMeansUpdateM
489a0 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 3b 0a 0a 24 75 70 64 61 74 65 4d 61 70 5b 24 ap[abs($literal)];..$updateMap[$
489c0 70 61 63 6b 61 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 package->id].=.array(.'package'.
489e0 3d 3e 20 24 70 61 63 6b 61 67 65 2c 0a 27 73 6f 75 72 63 65 27 20 3d 3e 20 24 73 6f 75 72 63 65 =>.$package,.'source'.=>.$source
48a00 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 0a 20 75 6e 73 ,.'reason'.=>.$reason,.);....uns
48a20 65 74 28 24 69 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 et($installMeansUpdateMap[abs($l
48a40 69 74 65 72 61 6c 29 5d 29 3b 0a 24 69 67 6e 6f 72 65 52 65 6d 6f 76 65 5b 24 73 6f 75 72 63 65 iteral)]);.$ignoreRemove[$source
48a60 2d 3e 69 64 5d 20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6e 73 74 61 6c 6c 4d ->id].=.true;.}.else.{.$installM
48a80 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 0a 27 70 61 63 6b 61 ap[$package->id].=.array(.'packa
48aa0 67 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2c 0a 27 72 65 61 73 6f 6e 27 20 3d 3e 20 24 72 65 ge'.=>.$package,.'reason'.=>.$re
48ac0 61 73 6f 6e 2c 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e ason,.);.}.}.}..foreach.($this->
48ae0 64 65 63 69 73 69 6f 6e 73 20 61 73 20 24 69 20 3d 3e 20 24 64 65 63 69 73 69 6f 6e 29 20 7b 0a decisions.as.$i.=>.$decision).{.
48b00 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 73 69 6f 6e 73 3a 3a $literal.=.$decision[Decisions::
48b20 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b 0a 24 72 65 61 73 6f 6e 20 3d 20 24 64 65 DECISION_LITERAL];.$reason.=.$de
48b40 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 52 45 41 53 4f cision[Decisions::DECISION_REASO
48b60 4e 5d 3b 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 N];.$package.=.$this->pool->lite
48b80 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 20 28 24 6c 69 ralToPackage($literal);..if.($li
48ba0 74 65 72 61 6c 20 3c 3d 20 30 20 26 26 0a 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 teral.<=.0.&&.isset($this->insta
48bc0 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 29 20 26 26 0a 21 69 73 73 65 74 lledMap[$package->id]).&&.!isset
48be0 28 24 69 67 6e 6f 72 65 52 65 6d 6f 76 65 5b 24 70 61 63 6b 61 67 65 2d 3e 69 64 5d 29 29 20 7b ($ignoreRemove[$package->id])).{
48c00 0a 24 75 6e 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 .$uninstallMap[$package->id].=.a
48c20 72 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 rray(.'package'.=>.$package,.'re
48c40 61 73 6f 6e 27 20 3d 3e 20 24 72 65 61 73 6f 6e 2c 0a 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d ason'.=>.$reason,.);.}.}..$this-
48c60 3e 74 72 61 6e 73 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 >transactionFromMaps($installMap
48c80 2c 20 24 75 70 64 61 74 65 4d 61 70 2c 20 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 29 3b 0a 0a 72 ,.$updateMap,.$uninstallMap);..r
48ca0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 3b 0a 7d 0a 0a 70 72 6f eturn.$this->transaction;.}..pro
48cc0 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 74 72 61 6e 73 61 63 74 69 6f 6e 46 72 6f 6d 4d tected.function.transactionFromM
48ce0 61 70 73 28 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 aps($installMap,.$updateMap,.$un
48d00 69 6e 73 74 61 6c 6c 4d 61 70 29 0a 7b 0a 24 71 75 65 75 65 20 3d 20 61 72 72 61 79 5f 6d 61 70 installMap).{.$queue.=.array_map
48d20 28 66 75 6e 63 74 69 6f 6e 20 28 24 6f 70 65 72 61 74 69 6f 6e 29 20 7b 0a 72 65 74 75 72 6e 20 (function.($operation).{.return.
48d40 24 6f 70 65 72 61 74 69 6f 6e 5b 27 70 61 63 6b 61 67 65 27 5d 3b 0a 7d 2c 0a 24 74 68 69 73 2d $operation['package'];.},.$this-
48d60 3e 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 70 2c 20 24 >findRootPackages($installMap,.$
48d80 75 70 64 61 74 65 4d 61 70 29 0a 29 3b 0a 0a 24 76 69 73 69 74 65 64 20 3d 20 61 72 72 61 79 28 updateMap).);..$visited.=.array(
48da0 29 3b 0a 0a 77 68 69 6c 65 20 28 21 65 6d 70 74 79 28 24 71 75 65 75 65 29 29 20 7b 0a 24 70 61 );..while.(!empty($queue)).{.$pa
48dc0 63 6b 61 67 65 20 3d 20 61 72 72 61 79 5f 70 6f 70 28 24 71 75 65 75 65 29 3b 0a 24 70 61 63 6b ckage.=.array_pop($queue);.$pack
48de0 61 67 65 49 64 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 69 64 3b 0a 0a 69 66 20 28 21 69 73 73 65 ageId.=.$package->id;..if.(!isse
48e00 74 28 24 76 69 73 69 74 65 64 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 29 20 7b 0a 61 72 72 61 79 t($visited[$packageId])).{.array
48e20 5f 70 75 73 68 28 24 71 75 65 75 65 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 69 66 20 28 24 70 _push($queue,.$package);..if.($p
48e40 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 20 ackage.instanceof.AliasPackage).
48e60 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 65 2d 3e 67 {.array_push($queue,.$package->g
48e80 65 74 41 6c 69 61 73 4f 66 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 65 61 63 68 20 28 etAliasOf());.}.else.{.foreach.(
48ea0 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 6b $package->getRequires().as.$link
48ec0 29 20 7b 0a 24 70 6f 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 ).{.$possibleRequires.=.$this->p
48ee0 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 74 54 61 72 67 ool->whatProvides($link->getTarg
48f00 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 29 29 3b 0a 0a et(),.$link->getConstraint());..
48f20 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 24 72 foreach.($possibleRequires.as.$r
48f40 65 71 75 69 72 65 29 20 7b 0a 61 72 72 61 79 5f 70 75 73 68 28 24 71 75 65 75 65 2c 20 24 72 65 equire).{.array_push($queue,.$re
48f60 71 75 69 72 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 76 69 73 69 74 65 64 5b 24 70 61 63 6b 61 67 65 quire);.}.}.}..$visited[$package
48f80 2d 3e 69 64 5d 20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 69 73 73 65 74 ->id].=.true;.}.else.{.if.(isset
48fa0 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 29 20 7b 0a 24 74 68 ($installMap[$packageId])).{.$th
48fc0 69 73 2d 3e 69 6e 73 74 61 6c 6c 28 0a 24 69 6e 73 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 67 is->install(.$installMap[$packag
48fe0 65 49 64 5d 5b 27 70 61 63 6b 61 67 65 27 5d 2c 0a 24 69 6e 73 74 61 6c 6c 4d 61 70 5b 24 70 61 eId]['package'],.$installMap[$pa
49000 63 6b 61 67 65 49 64 5d 5b 27 72 65 61 73 6f 6e 27 5d 0a 29 3b 0a 75 6e 73 65 74 28 24 69 6e 73 ckageId]['reason'].);.unset($ins
49020 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 3b 0a 7d 0a 69 66 20 28 69 73 73 65 tallMap[$packageId]);.}.if.(isse
49040 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 29 20 7b 0a 24 74 68 t($updateMap[$packageId])).{.$th
49060 69 73 2d 3e 75 70 64 61 74 65 28 0a 24 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 is->update(.$updateMap[$packageI
49080 64 5d 5b 27 73 6f 75 72 63 65 27 5d 2c 0a 24 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 d]['source'],.$updateMap[$packag
490a0 65 49 64 5d 5b 27 70 61 63 6b 61 67 65 27 5d 2c 0a 24 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 eId]['package'],.$updateMap[$pac
490c0 6b 61 67 65 49 64 5d 5b 27 72 65 61 73 6f 6e 27 5d 0a 29 3b 0a 75 6e 73 65 74 28 24 75 70 64 61 kageId]['reason'].);.unset($upda
490e0 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 teMap[$packageId]);.}.}.}..forea
49100 63 68 20 28 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 20 61 73 20 24 75 6e 69 6e 73 74 61 6c 6c 29 ch.($uninstallMap.as.$uninstall)
49120 20 7b 0a 24 74 68 69 73 2d 3e 75 6e 69 6e 73 74 61 6c 6c 28 24 75 6e 69 6e 73 74 61 6c 6c 5b 27 .{.$this->uninstall($uninstall['
49140 70 61 63 6b 61 67 65 27 5d 2c 20 24 75 6e 69 6e 73 74 61 6c 6c 5b 27 72 65 61 73 6f 6e 27 5d 29 package'],.$uninstall['reason'])
49160 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 69 6e 64 52 6f ;.}.}..protected.function.findRo
49180 6f 74 50 61 63 6b 61 67 65 73 28 24 69 6e 73 74 61 6c 6c 4d 61 70 2c 20 24 75 70 64 61 74 65 4d otPackages($installMap,.$updateM
491a0 61 70 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 69 6e 73 74 61 6c 6c 4d 61 70 20 2b 20 ap).{.$packages.=.$installMap.+.
491c0 24 75 70 64 61 74 65 4d 61 70 3b 0a 24 72 6f 6f 74 73 20 3d 20 24 70 61 63 6b 61 67 65 73 3b 0a $updateMap;.$roots.=.$packages;.
491e0 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 49 .foreach.($packages.as.$packageI
49200 64 20 3d 3e 20 24 6f 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 d.=>.$operation).{.$package.=.$o
49220 70 65 72 61 74 69 6f 6e 5b 27 70 61 63 6b 61 67 65 27 5d 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 peration['package'];..if.(!isset
49240 28 24 72 6f 6f 74 73 5b 24 70 61 63 6b 61 67 65 49 64 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 ($roots[$packageId])).{.continue
49260 3b 0a 7d 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 71 75 69 ;.}..foreach.($package->getRequi
49280 72 65 73 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 res().as.$link).{.$possibleRequi
492a0 72 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 73 28 res.=.$this->pool->whatProvides(
492c0 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 6f $link->getTarget(),.$link->getCo
492e0 6e 73 74 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 nstraint());..foreach.($possible
49300 52 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 75 6e 73 65 74 28 24 72 Requires.as.$require).{.unset($r
49320 6f 6f 74 73 5b 24 72 65 71 75 69 72 65 2d 3e 69 64 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 oots[$require->id]);.}.}.}..retu
49340 72 6e 20 24 72 6f 6f 74 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e rn.$roots;.}..protected.function
49360 20 66 69 6e 64 55 70 64 61 74 65 73 28 29 0a 7b 0a 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 .findUpdates().{.$installMeansUp
49380 64 61 74 65 4d 61 70 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 dateMap.=.array();..foreach.($th
493a0 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 65 63 69 73 69 6f 6e is->decisions.as.$i.=>.$decision
493c0 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 73 69 6f ).{.$literal.=.$decision[Decisio
493e0 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b 0a 24 70 61 63 6b 61 67 65 20 ns::DECISION_LITERAL];.$package.
49400 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 28 =.$this->pool->literalToPackage(
49420 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 $literal);..if.($package.instanc
49440 65 6f 66 20 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 eof.AliasPackage).{.continue;.}.
49460 0a 0a 20 69 66 20 28 24 6c 69 74 65 72 61 6c 20 3c 3d 20 30 20 26 26 20 69 73 73 65 74 28 24 74 ...if.($literal.<=.0.&&.isset($t
49480 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 29 his->installedMap[$package->id])
494a0 29 20 7b 0a 24 75 70 64 61 74 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 2d 3e 66 69 ).{.$updates.=.$this->policy->fi
494c0 6e 64 55 70 64 61 74 65 50 61 63 6b 61 67 65 73 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 74 ndUpdatePackages($this->pool,.$t
494e0 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 24 his->installedMap,.$package);..$
49500 6c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e 69 64 29 3b 0a literals.=.array($package->id);.
49520 0a 66 6f 72 65 61 63 68 20 28 24 75 70 64 61 74 65 73 20 61 73 20 24 75 70 64 61 74 65 29 20 7b .foreach.($updates.as.$update).{
49540 0a 24 6c 69 74 65 72 61 6c 73 5b 5d 20 3d 20 24 75 70 64 61 74 65 2d 3e 69 64 3b 0a 7d 0a 0a 66 .$literals[].=.$update->id;.}..f
49560 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 75 70 64 61 74 65 4c 69 74 65 oreach.($literals.as.$updateLite
49580 72 61 6c 29 20 7b 0a 69 66 20 28 24 75 70 64 61 74 65 4c 69 74 65 72 61 6c 20 21 3d 3d 20 24 6c ral).{.if.($updateLiteral.!==.$l
495a0 69 74 65 72 61 6c 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d 61 70 iteral).{.$installMeansUpdateMap
495c0 5b 61 62 73 28 24 75 70 64 61 74 65 4c 69 74 65 72 61 6c 29 5d 20 3d 20 24 70 61 63 6b 61 67 65 [abs($updateLiteral)].=.$package
495e0 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 ;.}.}.}.}..return.$installMeansU
49600 70 64 61 74 65 4d 61 70 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 pdateMap;.}..protected.function.
49620 69 6e 73 74 61 6c 6c 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 69 66 20 install($package,.$reason).{.if.
49640 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 6b 61 67 ($package.instanceof.AliasPackag
49660 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 72 6b 41 6c 69 61 73 49 6e 73 74 e).{.return.$this->markAliasInst
49680 61 6c 6c 65 64 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 0a 24 74 68 alled($package,.$reason);.}..$th
496a0 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 77 20 4f 70 65 72 61 74 69 6f is->transaction[].=.new.Operatio
496c0 6e 5c 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 n\InstallOperation($package,.$re
496e0 61 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 75 70 64 ason);.}..protected.function.upd
49700 61 74 65 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 24 74 68 69 73 ate($from,.$to,.$reason).{.$this
49720 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 77 20 4f 70 65 72 61 74 69 6f 6e 5c ->transaction[].=.new.Operation\
49740 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 72 65 61 UpdateOperation($from,.$to,.$rea
49760 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 75 6e 69 6e son);.}..protected.function.unin
49780 73 74 61 6c 6c 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 69 66 20 28 24 stall($package,.$reason).{.if.($
497a0 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)
497c0 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 .{.return.$this->markAliasUninst
497e0 61 6c 6c 65 64 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 0a 24 74 68 alled($package,.$reason);.}..$th
49800 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 77 20 4f 70 65 72 61 74 69 6f is->transaction[].=.new.Operatio
49820 6e 5c 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 24 n\UninstallOperation($package,.$
49840 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 63 74 69 6f 6e 20 6d reason);.}..protected.function.m
49860 61 72 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 arkAliasInstalled($package,.$rea
49880 73 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 son).{.$this->transaction[].=.ne
498a0 77 20 4f 70 65 72 61 74 69 6f 6e 5c 4d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 4f 70 w.Operation\MarkAliasInstalledOp
498c0 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 0a 70 eration($package,.$reason);.}..p
498e0 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 rotected.function.markAliasUnins
49900 74 61 6c 6c 65 64 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 24 74 68 69 talled($package,.$reason).{.$thi
49920 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 77 20 4f 70 65 72 61 74 69 6f 6e s->transaction[].=.new.Operation
49940 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 74 69 6f 6e 28 24 \MarkAliasUninstalledOperation($
49960 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a package,.$reason);.}.}.<?php....
49980 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 6c ........namespace.Composer\Downl
499a0 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 63 oader;..use.Composer\Package\Pac
499c0 6b 61 67 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 kageInterface;.use.Symfony\Compo
499e0 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 0a 0a 61 62 73 74 nent\Finder\Finder;.........abst
49a00 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 64 65 72 20 65 78 74 ract.class.ArchiveDownloader.ext
49a20 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 70 75 62 6c 69 63 20 ends.FileDownloader.{....public.
49a40 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 49 6e 74 65 72 66 61 function.download(PackageInterfa
49a60 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 6d 70 6f 72 61 72 79 ce.$package,.$path).{.$temporary
49a80 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 27 76 65 6e 64 6f 72 Dir.=.$this->config->get('vendor
49aa0 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 72 28 6d 64 35 28 75 -dir').'/composer/'.substr(md5(u
49ac0 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 24 72 65 74 72 69 65 niqid('',.true)),.0,.8);.$retrie
49ae0 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 24 66 69 6c s.=.3;.while.($retries--).{.$fil
49b00 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 24 70 61 63 6b 61 67 eName.=.parent::download($packag
49b20 65 2c 20 24 70 61 74 68 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 e,.$path);..if.($this->io->isVer
49b40 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 6f 72 28 bose()).{.$this->io->writeError(
49b60 27 20 20 20 20 45 78 74 72 61 63 74 69 6e 67 20 61 72 63 68 69 76 65 27 29 3b 0a 7d 0a 0a 74 72 '....Extracting.archive');.}..tr
49b80 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 44 69 72 y.{.$this->filesystem->ensureDir
49ba0 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 74 72 79 ectoryExists($temporaryDir);.try
49bc0 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 24 74 65 .{.$this->extract($fileName,.$te
49be0 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 69 6f 6e mporaryDir);.}.catch.(\Exception
49c00 20 24 65 29 20 7b 0a 0a 20 70 61 72 65 6e 74 3a 3a 63 6c 65 61 72 43 61 63 68 65 28 24 70 61 63 .$e).{...parent::clearCache($pac
49c20 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 24 74 68 69 73 kage,.$path);.throw.$e;.}..$this
49c40 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 61 6d 65 29 3b ->filesystem->unlink($fileName);
49c60 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 6f 6c 64 65 72 ..$contentDir.=.$this->getFolder
49c80 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 69 66 20 28 31 Content($temporaryDir);....if.(1
49ca0 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 69 73 5f 64 69 .===.count($contentDir).&&.is_di
49cc0 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 6f 6e 74 65 6e r(reset($contentDir))).{.$conten
49ce0 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 65 6e 74 28 28 tDir.=.$this->getFolderContent((
49d00 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 3b 0a 7d 0a 0a string).reset($contentDir));.}..
49d20 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 66 69 6c 65 29 ..foreach.($contentDir.as.$file)
49d40 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 24 74 68 69 73 .{.$file.=.(string).$file;.$this
49d60 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 20 24 70 61 74 ->filesystem->rename($file,.$pat
49d80 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 0a 7d 0a 0a 24 h...'/'...basename($file));.}..$
49da0 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
49dc0 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 2d 3e 66 69 6c y($temporaryDir);.if.($this->fil
49de0 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 63 6f 6e 66 69 esystem->isDirEmpty($this->confi
49e00 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 6f 73 65 72 2f g->get('vendor-dir').'/composer/
49e20 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 6d 6f 76 65 44 ')).{.$this->filesystem->removeD
49e40 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 6e irectory($this->config->get('ven
49e60 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 69 66 20 28 24 dor-dir').'/composer/');.}.if.($
49e80 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 79 28 24 74 68 this->filesystem->isDirEmpty($th
49ea0 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 27 29 29 29 20 is->config->get('vendor-dir'))).
49ec0 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 44 69 72 65 63 {.$this->filesystem->removeDirec
49ee0 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 6e 64 6f 72 2d tory($this->config->get('vendor-
49f00 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 6f 6e 20 24 65 dir'));.}.}.catch.(\Exception.$e
49f20 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 6d 6f 76 65 44 ).{...$this->filesystem->removeD
49f40 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 65 73 79 73 74 irectory($path);.$this->filesyst
49f60 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 61 72 79 44 69 em->removeDirectory($temporaryDi
49f80 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 6e 73 74 61 6e r);....if.($retries.&&.$e.instan
49fa0 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 69 6f 6e 20 26 ceof.\UnexpectedValueException.&
49fc0 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 29 20 26 26 20 &.class_exists('ZipArchive').&&.
49fe0 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 76 65 3a 3a 45 $e->getCode().===.\ZipArchive::E
4a000 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 73 44 65 62 75 R_NOZIP).{.if.($this->io->isDebu
4a020 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 28 27 20 20 g()).{.$this->io->writeError('..
4a040 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 65 74 4d 65 73 ..Invalid.zip.file.('.$e->getMes
4a060 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 20 65 6c 73 65 sage().'),.retrying...');.}.else
4a080 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 49 6e .{.$this->io->writeError('....In
4a0a0 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 27 29 3b 0a 7d valid.zip.file,.retrying...');.}
4a0c0 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 7d 0a 0a 74 68 .usleep(500000);.continue;.}..th
4a0e0 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 3e 69 6f 2d 3e row.$e;.}..break;.}..$this->io->
4a100 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 63 74 65 64 20 writeError('');.}.....protected.
4a120 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 65 function.getFileName(PackageInte
4a140 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 20 rface.$package,.$path).{.return.
4a160 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 70 6c 5f 6f 62 rtrim($path.'/'.md5($path.spl_ob
4a180 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 74 68 69 6e 66 ject_hash($package)).'.'.pathinf
4a1a0 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 73 74 55 72 6c o(parse_url($package->getDistUrl
4a1c0 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 5f 45 58 54 45 (),.PHP_URL_PATH),.PATHINFO_EXTE
4a1e0 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 65 64 20 66 75 NSION),.'.');.}.....protected.fu
4a200 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 74 65 72 66 61 nction.processUrl(PackageInterfa
4a220 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 61 63 6b 61 67 ce.$package,.$url).{.if.($packag
4a240 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 72 70 6f 73 28 e->getDistReference().&&.strpos(
4a260 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 70 72 65 67 5f $url,.'github.com')).{.if.(preg_
4a280 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 3f 67 69 74 68 match('{^https?://(?:www\.)?gith
4a2a0 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 70 7c 74 61 72 ub\.com/([^/]+)/([^/]+)/(zip|tar
4a2c0 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 68 29 29 20 7b )ball/(.+)$}i',.$url,.$match)).{
4a2e0 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 2e 63 6f ...$url.=.'https://api.github.co
4a300 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 24 6d 61 m/repos/'...$match[1]...'/'..$ma
4a320 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 61 6c 6c tch[2]...'/'...$match[3]...'ball
4a340 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 63 65 28 /'...$package->getDistReference(
4a360 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 74 52 65 );.}.elseif.($package->getDistRe
4a380 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 74 70 73 ference().&&.preg_match('{^https
4a3a0 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 5b 5e 2f 5d 2b ?://(?:www\.)?github\.com/([^/]+
4a3c0 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 74 61 72 29 28 )/([^/]+)/archive/.+\.(zip|tar)(
4a3e0 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 29 20 7b 0a 0a ?:\.gz)?$}i',.$url,.$match)).{..
4a400 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 2e 63 6f 6d 2f .$url.=.'https://api.github.com/
4a420 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 24 6d 61 74 63 repos/'...$match[1]...'/'..$matc
4a440 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 61 6c 6c 2f 27 h[2]...'/'...$match[3]...'ball/'
4a460 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 63 65 28 29 3b ...$package->getDistReference();
4a480 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 74 52 65 66 65 .}.elseif.($package->getDistRefe
4a4a0 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 74 70 73 3f 3a rence().&&.preg_match('{^https?:
4a4c0 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 5e 2f 5d 2b 29 //api\.github\.com/repos/([^/]+)
4a4e0 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 2b 29 3f 24 7d /([^/]+)/(zip|tar)ball(?:/.+)?$}
4a500 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 20 3d 20 27 68 i',.$url,.$match)).{...$url.=.'h
4a520 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 27 20 2e 20 ttps://api.github.com/repos/'...
4a540 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 2e 20 27 2f 27 $match[1]...'/'..$match[2]...'/'
4a560 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 61 63 6b 61 67 ...$match[3]...'ball/'...$packag
4a580 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 65 6c 73 65 69 e->getDistReference();.}.}.elsei
4a5a0 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 63 65 28 29 20 f.($package->getDistReference().
4a5c0 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 6f 72 67 27 29 &&.strpos($url,.'bitbucket.org')
4a5e0 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 3f 3a 2f 2f 28 ).{.if.(preg_match('{^https?://(
4a600 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 2f 5d 2b 29 2f ?:www\.)?bitbucket\.org/([^/]+)/
4a620 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 2e 67 7a 7c 74 ([^/]+)/get/(.+)\.(zip|tar\.gz|t
4a640 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 29 20 7b 0a 0a ar\.bz2)$}i',.$url,.$match)).{..
4a660 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 6f 72 67 2f 27 .$url.=.'https://bitbucket.org/'
4a680 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 2e 20 ...$match[1]...'/'..$match[2]...
4a6a0 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 52 65 66 65 72 '/get/'...$package->getDistRefer
4a6c0 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 0a 7d 0a 0a 72 ence()...'.'...$match[4];.}.}..r
4a6e0 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 61 63 6b 61 67 eturn.parent::processUrl($packag
4a700 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 63 74 20 70 72 e,.$url);.}..........abstract.pr
4a720 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 65 2c 20 otected.function.extract($file,.
4a740 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 74 69 6f 6e 20 $path);........private.function.
4a760 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 69 6e 64 65 72 getFolderContent($dir).{.$finder
4a780 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 53 28 .=.Finder::create().->ignoreVCS(
4a7a0 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 0a 2d false).->ignoreDotFiles(false).-
4a7c0 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 20 69 74 >depth(0).->in($dir);..return.it
4a7e0 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 0a 7d 0a 3c 3f erator_to_array($finder);.}.}.<?
4a800 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
4a820 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 6b r\Downloader;..use.Composer\Pack
4a840 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 74 65 age\PackageInterface;.......inte
4a860 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 0a 7b 0a 0a 0a rface.ChangeReportInterface.{...
4a880 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 61 6c 43 68 61 .....public.function.getLocalCha
4a8a0 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 20 nges(PackageInterface.$package,.
4a8c0 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 6e 61 6d 65 73 $path);.}.<?php............names
4a8e0 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
4a900 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
4a920 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
4a940 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 0a 0a 0a se.Composer\Util\Filesystem;....
4a960 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 70 72 69 76 61 ...class.DownloadManager.{.priva
4a980 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 20 3d 20 66 61 te.$io;.private.$preferDist.=.fa
4a9a0 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 3d 20 66 61 6c lse;.private.$preferSource.=.fal
4a9c0 73 65 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 73 79 73 74 65 6d 3b 0a 70 72 69 76 61 74 65 se;.private.$filesystem;.private
4a9e0 20 24 64 6f 77 6e 6c 6f 61 64 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a .$downloaders.=.array();........
4aa00 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
4aa20 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 66 61 nterface.$io,.$preferSource.=.fa
4aa40 6c 73 65 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 20 6e 75 lse,.Filesystem.$filesystem.=.nu
4aa60 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 3e 70 72 ll).{.$this->io.=.$io;.$this->pr
4aa80 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 24 74 68 69 eferSource.=.$preferSource;.$thi
4aaa0 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 3a 20 6e s->filesystem.=.$filesystem.?:.n
4aac0 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ew.Filesystem();.}........public
4aae0 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 66 65 72 53 6f 75 72 63 65 28 24 70 72 65 66 65 .function.setPreferSource($prefe
4ab00 72 53 6f 75 72 63 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 rSource).{.$this->preferSource.=
4ab20 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 69 73 3b 0a 7d .$preferSource;..return.$this;.}
4ab40 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 72 65 66 65 ........public.function.setPrefe
4ab60 72 44 69 73 74 28 24 70 72 65 66 65 72 44 69 73 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 66 rDist($preferDist).{.$this->pref
4ab80 65 72 44 69 73 74 20 3d 20 24 70 72 65 66 65 72 44 69 73 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 erDist.=.$preferDist;..return.$t
4aba0 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 73 his;.}.........public.function.s
4abc0 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 65 73 73 etOutputProgress($outputProgress
4abe0 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 72 73 20 ).{.foreach.($this->downloaders.
4ac00 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 2d 3e 73 as.$downloader).{.$downloader->s
4ac20 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 65 73 73 etOutputProgress($outputProgress
4ac40 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 0a 70 75 );.}..return.$this;.}.........pu
4ac60 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 74 79 70 blic.function.setDownloader($typ
4ac80 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 6f 61 64 e,.DownloaderInterface.$download
4aca0 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 65 29 3b er).{.$type.=.strtolower($type);
4acc0 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 24 64 6f .$this->downloaders[$type].=.$do
4ace0 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 0a 0a 0a wnloader;..return.$this;.}......
4ad00 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 64 65 72 ...public.function.getDownloader
4ad20 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 24 74 79 ($type).{.$type.=.strtolower($ty
4ad40 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 61 64 65 pe);.if.(!isset($this->downloade
4ad60 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 6c 69 64 rs[$type])).{.throw.new.\Invalid
4ad80 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 6b 6e 6f ArgumentException(sprintf('Unkno
4ada0 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 61 62 6c wn.downloader.type:.%s..Availabl
4adc0 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 28 27 2c e.types:.%s.',.$type,.implode(',
4ade0 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 64 65 72 .',.array_keys($this->downloader
4ae00 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 6f 61 64 s))));.}..return.$this->download
4ae20 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 63 20 66 ers[$type];.}...........public.f
4ae40 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 6c 6c 65 unction.getDownloaderForInstalle
4ae60 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
4ae80 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 70 61 63 ge).{.$installationSource.=.$pac
4aea0 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();..
4aec0 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 65 2d 3e if.('metapackage'.===.$package->
4aee0 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 64 69 73 getType()).{.return;.}..if.('dis
4af00 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 0a 24 64 t'.===.$installationSource).{.$d
4af20 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 64 65 72 ownloader.=.$this->getDownloader
4af40 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 65 6c 73 ($package->getDistType());.}.els
4af60 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 6f 6e 53 eif.('source'.===.$installationS
4af80 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 3e 67 65 ource).{.$downloader.=.$this->ge
4afa0 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 63 65 54 tDownloader($package->getSourceT
4afc0 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 6e 76 61 ype());.}.else.{.throw.new.\Inva
4afe0 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 65 20 27 lidArgumentException(.'Package.'
4b000 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 73 74 61 .$package.'.seems.not.been.insta
4b020 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 74 61 6c lled.properly'.);.}..if.($instal
4b040 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 3e 67 65 lationSource.!==.$downloader->ge
4b060 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 77 20 6e tInstallationSource()).{.throw.n
4b080 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 44 6f 77 ew.\LogicException(sprintf(.'Dow
4b0a0 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 6e 6c 6f nloader."%s".is.a.%s.type.downlo
4b0c0 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 6f 77 6e ader.and.can.not.be.used.to.down
4b0e0 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 65 72 29 load.%s',.get_class($downloader)
4b100 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 6e 53 6f ,.$downloader->getInstallationSo
4b120 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 29 3b 0a urce(),.$installationSource.));.
4b140 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 0a 0a 0a }..return.$downloader;.}........
4b160 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 50 61 63 ....public.function.download(Pac
4b180 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 65 74 44 kageInterface.$package,.$targetD
4b1a0 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 70 72 65 ir,.$preferSource.=.null).{.$pre
4b1c0 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 6f 75 72 ferSource.=.null.!==.$preferSour
4b1e0 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 72 65 66 ce.?.$preferSource.:.$this->pref
4b200 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 61 67 65 erSource;.$sourceType.=.$package
4b220 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 3d 20 24 ->getSourceType();.$distType.=.$
4b240 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 72 63 65 package->getDistType();..$source
4b260 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 20 7b 0a s.=.array();.if.($sourceType).{.
4b280 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 24 64 69 $sources[].=.'source';.}.if.($di
4b2a0 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 3b 0a 7d stType).{.$sources[].=.'dist';.}
4b2c0 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 77 20 6e ..if.(empty($sources)).{.throw.n
4b2e0 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 50 61 ew.\InvalidArgumentException('Pa
4b300 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 61 20 73 ckage.'.$package.'.must.have.a.s
4b320 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 0a 69 66 ource.or.dist.specified');.}..if
4b340 20 28 28 21 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 20 7c 7c 20 24 74 68 69 73 2d 3e .((!$package->isDev().||.$this->
4b360 70 72 65 66 65 72 44 69 73 74 29 20 26 26 20 21 24 70 72 65 66 65 72 53 6f 75 72 63 65 29 20 7b preferDist).&&.!$preferSource).{
4b380 0a 24 73 6f 75 72 63 65 73 20 3d 20 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 73 6f 75 72 63 .$sources.=.array_reverse($sourc
4b3a0 65 73 29 3b 0a 7d 0a 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 es);.}..$this->filesystem->ensur
4b3c0 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 74 61 72 67 65 74 44 69 72 29 3b 0a 0a 66 eDirectoryExists($targetDir);..f
4b3e0 6f 72 65 61 63 68 20 28 24 73 6f 75 72 63 65 73 20 61 73 20 24 69 20 3d 3e 20 24 73 6f 75 72 63 oreach.($sources.as.$i.=>.$sourc
4b400 65 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d e).{.if.(isset($e)).{.$this->io-
4b420 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 4e 6f 77 20 74 72 >writeError('....<warning>Now.tr
4b440 79 69 6e 67 20 74 6f 20 64 6f 77 6e 6c 6f 61 64 20 66 72 6f 6d 20 27 20 2e 20 24 73 6f 75 72 63 ying.to.download.from.'...$sourc
4b460 65 20 2e 20 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 2d 3e 73 e...'</warning>');.}.$package->s
4b480 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 24 73 6f 75 72 63 65 29 3b 0a 74 etInstallationSource($source);.t
4b4a0 72 79 20 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 6f 77 ry.{.$downloader.=.$this->getDow
4b4c0 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 70 61 63 6b nloaderForInstalledPackage($pack
4b4e0 61 67 65 29 3b 0a 69 66 20 28 24 64 6f 77 6e 6c 6f 61 64 65 72 29 20 7b 0a 24 64 6f 77 6e 6c 6f age);.if.($downloader).{.$downlo
4b500 61 64 65 72 2d 3e 64 6f 77 6e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 2c 20 24 74 61 72 67 65 74 ader->download($package,.$target
4b520 44 69 72 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 Dir);.}.break;.}.catch.(\Runtime
4b540 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 69 20 3d 3d 3d 20 63 6f 75 6e 74 Exception.$e).{.if.($i.===.count
4b560 28 24 73 6f 75 72 63 65 73 29 20 2d 20 31 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 24 ($sources).-.1).{.throw.$e;.}..$
4b580 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 0a 27 20 20 20 20 3c 77 61 72 6e this->io->writeError(.'....<warn
4b5a0 69 6e 67 3e 46 61 69 6c 65 64 20 74 6f 20 64 6f 77 6e 6c 6f 61 64 20 27 2e 0a 24 70 61 63 6b 61 ing>Failed.to.download.'..$packa
4b5c0 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 0a 27 20 66 72 6f 6d 20 27 20 2e 20 ge->getPrettyName()..'.from.'...
4b5e0 24 73 6f 75 72 63 65 20 2e 20 27 3a 20 27 2e 0a 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 $source...':.'..$e->getMessage()
4b600 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a .'</warning>'.);.}.}.}..........
4b620 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 63 6b 61 67 65 49 .public.function.update(PackageI
4b640 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 72 66 nterface.$initial,.PackageInterf
4b660 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 74 61 72 67 65 74 44 69 72 29 0a 7b 0a 24 64 6f 77 6e ace.$target,.$targetDir).{.$down
4b680 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 64 65 72 46 6f 72 loader.=.$this->getDownloaderFor
4b6a0 49 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c 29 3b 0a 69 66 20 28 InstalledPackage($initial);.if.(
4b6c0 21 24 64 6f 77 6e 6c 6f 61 64 65 72 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 69 6e 73 74 !$downloader).{.return;.}..$inst
4b6e0 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 20 3d 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 49 6e allationSource.=.$initial->getIn
4b700 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 3b 0a 0a 69 66 20 28 27 64 69 73 74 27 20 stallationSource();..if.('dist'.
4b720 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 0a 24 69 6e 69 74 ===.$installationSource).{.$init
4b740 69 61 6c 54 79 70 65 20 3d 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 ialType.=.$initial->getDistType(
4b760 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 74 44 69 73 );.$targetType.=.$target->getDis
4b780 74 54 79 70 65 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6e 69 74 69 61 6c 54 79 70 65 20 3d tType();.}.else.{.$initialType.=
4b7a0 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 24 74 61 72 .$initial->getSourceType();.$tar
4b7c0 67 65 74 54 79 70 65 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 getType.=.$target->getSourceType
4b7e0 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 61 72 67 65 74 2d 3e 69 73 44 65 76 28 29 20 26 26 ();.}....if.($target->isDev().&&
4b800 20 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 72 63 65 29 .'dist'.===.$installationSource)
4b820 20 7b 0a 24 64 6f 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 .{.$downloader->remove($initial,
4b840 20 24 74 61 72 67 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 .$targetDir);.$this->download($t
4b860 61 72 67 65 74 2c 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 arget,.$targetDir);..return;.}..
4b880 69 66 20 28 24 69 6e 69 74 69 61 6c 54 79 70 65 20 3d 3d 3d 20 24 74 61 72 67 65 74 54 79 70 65 if.($initialType.===.$targetType
4b8a0 29 20 7b 0a 24 74 61 72 67 65 74 2d 3e 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 ).{.$target->setInstallationSour
4b8c0 63 65 28 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 29 3b 0a 24 64 6f 77 6e 6c 6f ce($installationSource);.$downlo
4b8e0 61 64 65 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 ader->update($initial,.$target,.
4b900 24 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 $targetDir);.}.else.{.$downloade
4b920 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 65 74 44 69 72 29 3b r->remove($initial,.$targetDir);
4b940 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 20 24 74 61 72 67 65 .$this->download($target,.$targe
4b960 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 6c 6c 61 74 69 6f 6e tDir,.'source'.===.$installation
4b980 53 6f 75 72 63 65 29 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 Source);.}.}........public.funct
4b9a0 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 20 24 70 61 63 ion.remove(PackageInterface.$pac
4b9c0 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 61 64 65 72 20 kage,.$targetDir).{.$downloader.
4b9e0 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 73 74 61 6c 6c =.$this->getDownloaderForInstall
4ba00 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 6f 77 6e 6c 6f edPackage($package);.if.($downlo
4ba20 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 28 24 70 61 63 ader).{.$downloader->remove($pac
4ba40 6b 61 67 65 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a kage,.$targetDir);.}.}.}.<?php..
4ba60 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
4ba80 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
4baa0 61 63 6b 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 ackageInterface;........interfac
4bac0 65 20 44 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 e.DownloaderInterface.{......pub
4bae0 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 53 6f 75 72 lic.function.getInstallationSour
4bb00 63 65 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 64 6f 77 ce();........public.function.dow
4bb20 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 2c nload(PackageInterface.$package,
4bb40 20 24 70 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 .$path);.........public.function
4bb60 20 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 .update(PackageInterface.$initia
4bb80 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 2c 20 24 70 61 l,.PackageInterface.$target,.$pa
4bba0 74 68 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 72 65 6d 6f th);........public.function.remo
4bbc0 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
4bbe0 61 74 68 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 ath);........public.function.set
4bc00 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 65 73 73 29 3b OutputProgress($outputProgress);
4bc20 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
4bc40 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
4bc60 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 65 3b 0a 75 73 65 \Config;.use.Composer\Cache;.use
4bc80 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 5c .Composer\Factory;.use.Composer\
4bca0 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 63 IO\IOInterface;.use.Composer\Pac
4bcc0 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
4bce0 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
4bd00 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
4bd20 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\
4bd40 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 55 74 EventDispatcher;.use.Composer\Ut
4bd60 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 74 69 6c il\Filesystem;.use.Composer\Util
4bd80 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 0a 63 6c 61 73 \RemoteFilesystem;..........clas
4bda0 73 20 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 44 6f 77 6e s.FileDownloader.implements.Down
4bdc0 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b loaderInterface.{.protected.$io;
4bde0 0a 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 72 .protected.$config;.protected.$r
4be00 66 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 66 69 6c 65 73 79 73 74 65 6d 3b 0a 70 72 6f 74 65 fs;.protected.$filesystem;.prote
4be20 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 75 74 70 75 74 50 72 cted.$cache;.protected.$outputPr
4be40 6f 67 72 65 73 73 20 3d 20 74 72 75 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ogress.=.true;............public
4be60 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 61 63 .function.__construct(IOInterfac
4be80 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
4bea0 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,.
4bec0 43 61 63 68 65 20 24 63 61 63 68 65 20 3d 20 6e 75 6c 6c 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 Cache.$cache.=.null,.RemoteFiles
4bee0 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 ystem.$rfs.=.null,.Filesystem.$f
4bf00 69 6c 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 ilesystem.=.null).{.$this->io.=.
4bf20 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
4bf40 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 69 73 his->eventDispatcher.=.$eventDis
4bf60 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 20 3f 3a 20 46 61 patcher;.$this->rfs.=.$rfs.?:.Fa
4bf80 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 24 74 ctory::createRemoteFilesystem($t
4bfa0 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 66 69 6c 65 73 79 his->io,.$config);.$this->filesy
4bfc0 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 73 79 stem.=.$filesystem.?:.new.Filesy
4bfe0 73 74 65 6d 28 29 3b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 24 63 61 63 68 65 3b 0a 0a stem();.$this->cache.=.$cache;..
4c000 69 66 20 28 24 74 68 69 73 2d 3e 63 61 63 68 65 20 26 26 20 24 74 68 69 73 2d 3e 63 61 63 68 65 if.($this->cache.&&.$this->cache
4c020 2d 3e 67 63 49 73 4e 65 63 65 73 73 61 72 79 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 61 63 68 ->gcIsNecessary()).{.$this->cach
4c040 65 2d 3e 67 63 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 66 69 6c 65 73 2d e->gc($config->get('cache-files-
4c060 74 74 6c 27 29 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 66 69 6c 65 73 ttl'),.$config->get('cache-files
4c080 2d 6d 61 78 73 69 7a 65 27 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 -maxsize'));.}.}.....public.func
4c0a0 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 72 tion.getInstallationSource().{.r
4c0c0 65 74 75 72 6e 20 27 64 69 73 74 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 eturn.'dist';.}.....public.funct
4c0e0 69 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 ion.download(PackageInterface.$p
4c100 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 2d 3e ackage,.$path).{.if.(!$package->
4c120 67 65 74 44 69 73 74 55 72 6c 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c getDistUrl()).{.throw.new.\Inval
4c140 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 67 69 76 65 6e 20 70 idArgumentException('The.given.p
4c160 61 63 6b 61 67 65 20 69 73 20 6d 69 73 73 69 6e 67 20 75 72 6c 20 69 6e 66 6f 72 6d 61 74 69 6f ackage.is.missing.url.informatio
4c180 6e 27 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 28 22 20 n');.}..$this->io->writeError(".
4c1a0 20 2d 20 49 6e 73 74 61 6c 6c 69 6e 67 20 3c 69 6e 66 6f 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 .-.Installing.<info>"...$package
4c1c0 2d 3e 67 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 ->getName()..."</info>.(<comment
4c1e0 3e 22 20 2e 20 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 >"...$package->getFullPrettyVers
4c200 69 6f 6e 28 29 20 2e 20 22 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 22 29 3b 0a 0a 24 75 72 6c 73 20 3d ion()..."</comment>)");..$urls.=
4c220 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 73 28 29 3b 0a 77 68 69 6c 65 20 .$package->getDistUrls();.while.
4c240 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 74 72 ($url.=.array_shift($urls)).{.tr
4c260 79 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f 44 6f 77 6e 6c 6f 61 64 28 24 70 61 y.{.return.$this->doDownload($pa
4c280 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 ckage,.$path,.$url);.}.catch.(\E
4c2a0 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 xception.$e).{.if.($this->io->is
4c2c0 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
4c2e0 28 27 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 46 61 69 ('');.$this->io->writeError('Fai
4c300 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 24 65 2d 3e 67 led:.['.get_class($e).'].'.$e->g
4c320 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 29 3b etCode().':.'.$e->getMessage());
4c340 0a 7d 20 65 6c 73 65 69 66 20 28 63 6f 75 6e 74 28 24 75 72 6c 73 29 29 20 7b 0a 24 74 68 69 73 .}.elseif.(count($urls)).{.$this
4c360 2d 3e 69 6f 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 ->io->writeError('');.$this->io-
4c380 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 46 61 69 6c 65 64 2c 20 74 72 79 69 6e 67 20 >writeError('....Failed,.trying.
4c3a0 74 68 65 20 6e 65 78 74 20 55 52 4c 20 28 27 2e 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 2e 27 3a the.next.URL.('.$e->getCode().':
4c3c0 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 27 29 3b 0a 7d 0a 0a 69 66 20 .'.$e->getMessage().')');.}..if.
4c3e0 28 21 63 6f 75 6e 74 28 24 75 72 6c 73 29 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a (!count($urls)).{.throw.$e;.}.}.
4c400 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 27 27 29 3b 0a 7d 0a }..$this->io->writeError('');.}.
4c420 0a 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
4c440 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,
4c460 20 24 75 72 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6d 70 74 .$url).{.$this->filesystem->empt
4c480 79 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 0a 24 66 69 6c 65 4e 61 6d 65 20 3d 20 yDirectory($path);..$fileName.=.
4c4a0 24 74 68 69 73 2d 3e 67 65 74 46 69 6c 65 4e 61 6d 65 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 $this->getFileName($package,.$pa
4c4c0 74 68 29 3b 0a 0a 24 70 72 6f 63 65 73 73 65 64 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f th);..$processedUrl.=.$this->pro
4c4e0 63 65 73 73 55 72 6c 28 24 70 61 63 6b 61 67 65 2c 20 24 75 72 6c 29 3b 0a 24 68 6f 73 74 6e 61 cessUrl($package,.$url);.$hostna
4c500 6d 65 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 70 72 6f 63 65 73 73 65 64 55 72 6c 2c 20 50 48 me.=.parse_url($processedUrl,.PH
4c520 50 5f 55 52 4c 5f 48 4f 53 54 29 3b 0a 0a 24 70 72 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 P_URL_HOST);..$preFileDownloadEv
4c540 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
4c560 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,.
4c580 24 74 68 69 73 2d 3e 72 66 73 2c 20 24 70 72 6f 63 65 73 73 65 64 55 72 6c 29 3b 0a 69 66 20 28 $this->rfs,.$processedUrl);.if.(
4c5a0 24 74 68 69 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 $this->eventDispatcher).{.$this-
4c5c0 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 28 24 70 72 65 46 >eventDispatcher->dispatch($preF
4c5e0 69 6c 65 44 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 ileDownloadEvent->getName(),.$pr
4c600 65 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 45 76 65 6e 74 29 3b 0a 7d 0a 24 72 66 73 20 3d 20 24 70 eFileDownloadEvent);.}.$rfs.=.$p
4c620 72 65 46 69 6c 65 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 reFileDownloadEvent->getRemoteFi
4c640 6c 65 73 79 73 74 65 6d 28 29 3b 0a 0a 74 72 79 20 7b 0a 24 63 68 65 63 6b 73 75 6d 20 3d 20 24 lesystem();..try.{.$checksum.=.$
4c660 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 73 75 6d 28 29 3b 0a package->getDistSha1Checksum();.
4c680 24 63 61 63 68 65 4b 65 79 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 61 63 68 65 4b 65 79 28 24 $cacheKey.=.$this->getCacheKey($
4c6a0 70 61 63 6b 61 67 65 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 package);....if.(!$this->cache.|
4c6c0 7c 20 28 24 63 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 |.($checksum.&&.$checksum.!==.$t
4c6e0 68 69 73 2d 3e 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 his->cache->sha1($cacheKey)).||.
4c700 21 24 74 68 69 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 !$this->cache->copyTo($cacheKey,
4c720 20 24 66 69 6c 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 .$fileName)).{.if.(!$this->outpu
4c740 74 50 72 6f 67 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 tProgress).{.$this->io->writeErr
4c760 6f 72 28 27 20 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 or('....Downloading');.}....$ret
4c780 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
4c7a0 72 79 20 7b 0a 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 ry.{.$rfs->copy($hostname,.$proc
4c7c0 65 73 73 65 64 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 essedUrl,.$fileName,.$this->outp
4c7e0 75 74 50 72 6f 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 utProgress,.$package->getTranspo
4c800 72 74 4f 70 74 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 rtOptions());.break;.}.catch.(Tr
4c820 61 6e 73 70 6f 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 ansportException.$e).{...if.((0.
4c840 21 3d 3d 20 24 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 !==.$e->getCode().&&.!in_array($
4c860 65 2d 3e 67 65 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 e->getCode(),.array(500,.502,.50
4c880 33 2c 20 35 30 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 3,.504))).||.!$retries).{.throw.
4c8a0 24 65 3b 0a 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 $e;.}.if.($this->io->isVerbose()
4c8c0 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 44 ).{.$this->io->writeError('....D
4c8e0 6f 77 6e 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 29 3b 0a 7d ownload.failed,.retrying...');.}
4c900 0a 75 73 6c 65 65 70 28 35 30 30 30 30 30 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d .usleep(500000);.}.}..if.($this-
4c920 3e 63 61 63 68 65 29 20 7b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 63 6f 70 79 46 72 6f 6d >cache).{.$this->cache->copyFrom
4c940 28 24 63 61 63 68 65 4b 65 79 2c 20 24 66 69 6c 65 4e 61 6d 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 ($cacheKey,.$fileName);.}.}.else
4c960 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 4c 6f .{.$this->io->writeError('....Lo
4c980 61 64 69 6e 67 20 66 72 6f 6d 20 63 61 63 68 65 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 66 69 6c 65 ading.from.cache');.}..if.(!file
4c9a0 5f 65 78 69 73 74 73 28 24 66 69 6c 65 4e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 _exists($fileName)).{.throw.new.
4c9c0 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 75 72 6c 2e 27 \UnexpectedValueException($url.'
4c9e0 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 73 61 76 65 64 20 74 6f 20 27 2e 24 66 69 6c 65 4e 61 .could.not.be.saved.to.'.$fileNa
4ca00 6d 65 2e 27 2c 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 27 0a 2e 27 20 64 69 72 65 63 74 6f 72 me.',.make.sure.the'..'.director
4ca20 79 20 69 73 20 77 72 69 74 61 62 6c 65 20 61 6e 64 20 79 6f 75 20 68 61 76 65 20 69 6e 74 65 72 y.is.writable.and.you.have.inter
4ca40 6e 65 74 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 63 68 65 63 net.connectivity');.}..if.($chec
4ca60 6b 73 75 6d 20 26 26 20 68 61 73 68 5f 66 69 6c 65 28 27 73 68 61 31 27 2c 20 24 66 69 6c 65 4e ksum.&&.hash_file('sha1',.$fileN
4ca80 61 6d 65 29 20 21 3d 3d 20 24 63 68 65 63 6b 73 75 6d 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 ame).!==.$checksum).{.throw.new.
4caa0 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 54 68 65 20 63 \UnexpectedValueException('The.c
4cac0 68 65 63 6b 73 75 6d 20 76 65 72 69 66 69 63 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 66 69 6c 65 hecksum.verification.of.the.file
4cae0 20 66 61 69 6c 65 64 20 28 64 6f 77 6e 6c 6f 61 64 65 64 20 66 72 6f 6d 20 27 2e 24 75 72 6c 2e .failed.(downloaded.from.'.$url.
4cb00 27 29 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 ')');.}.}.catch.(\Exception.$e).
4cb20 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 6d 6f 76 65 44 69 72 {...$this->filesystem->removeDir
4cb40 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 63 6c 65 61 72 43 61 63 68 65 ectory($path);.$this->clearCache
4cb60 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a ($package,.$path);.throw.$e;.}..
4cb80 72 65 74 75 72 6e 20 24 66 69 6c 65 4e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 return.$fileName;.}.....public.f
4cba0 75 6e 63 74 69 6f 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 unction.setOutputProgress($outpu
4cbc0 74 50 72 6f 67 72 65 73 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 50 72 6f 67 72 65 tProgress).{.$this->outputProgre
4cbe0 73 73 20 3d 20 24 6f 75 74 70 75 74 50 72 6f 67 72 65 73 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 ss.=.$outputProgress;..return.$t
4cc00 68 69 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 6c 65 61 72 his;.}..protected.function.clear
4cc20 43 61 63 68 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 Cache(PackageInterface.$package,
4cc40 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 61 63 68 65 29 20 7b 0a 24 66 .$path).{.if.($this->cache).{.$f
4cc60 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 70 61 ileName.=.$this->getFileName($pa
4cc80 63 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 6d ckage,.$path);.$this->cache->rem
4cca0 6f 76 65 28 24 74 68 69 73 2d 3e 67 65 74 43 61 63 68 65 4b 65 79 28 24 70 61 63 6b 61 67 65 29 ove($this->getCacheKey($package)
4ccc0 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 70 64 61 74 );.}.}.....public.function.updat
4cce0 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
4cd00 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 0a 7b 0a kageInterface.$target,.$path).{.
4cd20 24 74 68 69 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 $this->remove($initial,.$path);.
4cd40 24 74 68 69 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 $this->download($target,.$path);
4cd60 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 76 65 28 50 61 .}.....public.function.remove(Pa
4cd80 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).
4cda0 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 2d 20 52 65 6d {.$this->io->writeError("..-.Rem
4cdc0 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 65 74 4e 61 6d oving.<info>"...$package->getNam
4cde0 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 2e 20 24 70 61 e()..."</info>.(<comment>"...$pa
4ce00 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 20 2e 20 ckage->getFullPrettyVersion()...
4ce20 22 3c 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 "</comment>)");.if.(!$this->file
4ce40 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 74 68 29 29 20 system->removeDirectory($path)).
4ce60 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 43 {.throw.new.\RuntimeException('C
4ce80 6f 75 6c 64 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 ould.not.completely.delete.'.$pa
4cea0 74 68 2e 27 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 th.',.aborting.');.}.}.........p
4cec0 72 6f 74 65 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 rotected.function.getFileName(Pa
4cee0 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).
4cf00 7b 0a 72 65 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 {.return.$path.'/'.pathinfo(pars
4cf20 65 5f 75 72 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 e_url($package->getDistUrl(),.PH
4cf40 50 5f 55 52 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 P_URL_PATH),.PATHINFO_BASENAME);
4cf60 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 70 .}..........protected.function.p
4cf80 72 6f 63 65 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 rocessUrl(PackageInterface.$pack
4cfa0 61 67 65 2c 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 age,.$url).{.if.(!extension_load
4cfc0 65 64 28 27 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 ed('openssl').&&.0.===.strpos($u
4cfe0 72 6c 2c 20 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 rl,.'https:')).{.throw.new.\Runt
4d000 69 6d 65 45 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 imeException('You.must.enable.th
4d020 65 20 6f 70 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 e.openssl.extension.to.download.
4d040 66 69 6c 65 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 files.via.https');.}..return.$ur
4d060 6c 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 43 61 63 68 65 4b l;.}..private.function.getCacheK
4d080 65 79 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 ey(PackageInterface.$package).{.
4d0a0 69 66 20 28 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 if.(preg_match('{^[a-f0-9]{40}$}
4d0c0 27 2c 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 28 29 29 ',.$package->getDistReference())
4d0e0 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 ).{.return.$package->getName().'
4d100 2f 27 2e 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 2e /'.$package->getDistReference().
4d120 27 2e 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 0a '.'.$package->getDistType();.}..
4d140 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 2f 27 2e 24 return.$package->getName().'/'.$
4d160 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2e 27 2d 27 2e 24 70 61 63 6b 61 package->getVersion().'-'.$packa
4d180 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 2e 27 2e 27 2e 24 70 61 63 6b ge->getDistReference().'.'.$pack
4d1a0 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 3f 70 68 70 0a 0a 0a age->getDistType();.}.}.<?php...
4d1c0 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
4d1e0 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 79 73 74 65 6d 45 78 loader;.......class.FilesystemEx
4d200 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 6e 0a 7b 0a 70 75 62 ception.extends.\Exception.{.pub
4d220 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
4d240 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 74 69 6f 6e 20 24 70 e.=.'',.$code.=.0,.\Exception.$p
4d260 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 3a 5f 5f 63 6f 6e 73 revious.=.null).{.parent::__cons
4d280 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 6f 6e 3a 20 5c 6e 22 truct("Filesystem.exception:.\n"
4d2a0 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 75 73 29 3b 0a 7d 0a .$message,.$code,.$previous);.}.
4d2c0 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
4d2e0 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 5c poser\Downloader;..use.Composer\
4d300 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
4d320 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.
4d340 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
4d360 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.
4d380 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 20 43 6f Composer\Util\Filesystem;.use.Co
4d3a0 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 6f 77 6e mposer\Config;.....class.GitDown
4d3c0 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 7b 0a 70 loader.extends.VcsDownloader.{.p
4d3e0 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 3d 20 66 61 6c 73 rivate.$hasStashedChanges.=.fals
4d400 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 61 6e 67 65 73 20 e;.private.$hasDiscardedChanges.
4d420 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 0a 0a 70 75 62 6c =.false;.private.$gitUtil;..publ
4d440 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
4d460 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 6f 63 65 73 73 ace.$io,.Config.$config,.Process
4d480 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 46 69 6c 65 73 79 Executor.$process.=.null,.Filesy
4d4a0 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 3a 5f 5f 63 6f 6e stem.$fs.=.null).{.parent::__con
4d4c0 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 65 73 73 2c 20 24 struct($io,.$config,.$process,.$
4d4e0 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 47 69 74 55 74 69 fs);.$this->gitUtil.=.new.GitUti
4d500 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 2c 20 24 74 68 69 l($this->io,.$this->config,.$thi
4d520 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 74 65 6d 29 3b 0a s->process,.$this->filesystem);.
4d540 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 77 6e 6c 6f 61 64 }.....public.function.doDownload
4d560 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
4d580 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 6e 76 28 29 3b 0a h,.$url).{.GitUtil::cleanEnv();.
4d5a0 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 74 68 28 24 70 61 $path.=.$this->normalizePath($pa
4d5c0 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 53 6f 75 72 63 65 th);..$ref.=.$package->getSource
4d5e0 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 24 66 6c 61 67 20 3d 20 64 65 66 69 6e 65 64 28 27 50 48 Reference();.$flag.=.defined('PH
4d600 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 4d 41 4a 4f 52 27 29 20 3f 20 27 2f 44 20 P_WINDOWS_VERSION_MAJOR').?.'/D.
4d620 27 20 3a 20 27 27 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 67 69 74 20 63 6c 6f 6e 65 20 2d 2d '.:.'';.$command.=.'git.clone.--
4d640 6e 6f 2d 63 68 65 63 6b 6f 75 74 20 25 73 20 25 73 20 26 26 20 63 64 20 27 2e 24 66 6c 61 67 2e no-checkout.%s.%s.&&.cd.'.$flag.
4d660 27 25 32 24 73 20 26 26 20 67 69 74 20 72 65 6d 6f 74 65 20 61 64 64 20 63 6f 6d 70 6f 73 65 72 '%2$s.&&.git.remote.add.composer
4d680 20 25 31 24 73 20 26 26 20 67 69 74 20 66 65 74 63 68 20 63 6f 6d 70 6f 73 65 72 27 3b 0a 24 74 .%1$s.&&.git.fetch.composer';.$t
4d6a0 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 43 6c 6f 6e 69 6e 67 his->io->writeError("....Cloning
4d6c0 20 22 2e 24 72 65 66 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 20 3d 20 66 75 .".$ref);..$commandCallable.=.fu
4d6e0 6e 63 74 69 6f 6e 20 28 24 75 72 6c 29 20 75 73 65 20 28 24 72 65 66 2c 20 24 70 61 74 68 2c 20 nction.($url).use.($ref,.$path,.
4d700 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 24 63 6f 6d 6d $command).{.return.sprintf($comm
4d720 61 6e 64 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 and,.ProcessExecutor::escape($ur
4d740 6c 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 65 28 24 70 61 74 l),.ProcessExecutor::escape($pat
4d760 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 65 28 24 72 65 66 h),.ProcessExecutor::escape($ref
4d780 29 29 3b 0a 7d 3b 0a 0a 24 74 68 69 73 2d 3e 67 69 74 55 74 69 6c 2d 3e 72 75 6e 43 6f 6d 6d 61 ));.};..$this->gitUtil->runComma
4d7a0 6e 64 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 24 75 72 6c 2c 20 24 70 61 74 68 nd($commandCallable,.$url,.$path
4d7c0 2c 20 74 72 75 65 29 3b 0a 69 66 20 28 24 75 72 6c 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e ,.true);.if.($url.!==.$package->
4d7e0 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 29 20 7b 0a 24 75 72 6c 20 3d 20 24 70 61 63 6b 61 67 getSourceUrl()).{.$url.=.$packag
4d800 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 e->getSourceUrl();.$this->proces
4d820 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 67 69 74 20 72 65 6d 6f 74 65 20 73 s->execute(sprintf('git.remote.s
4d840 65 74 2d 75 72 6c 20 6f 72 69 67 69 6e 20 25 73 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 et-url.origin.%s',.ProcessExecut
4d860 6f 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 or::escape($url)),.$output,.$pat
4d880 68 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 73 65 74 50 75 73 68 55 72 6c 28 24 70 61 74 68 2c 20 24 h);.}.$this->setPushUrl($path,.$
4d8a0 75 72 6c 29 3b 0a 0a 69 66 20 28 24 6e 65 77 52 65 66 20 3d 20 24 74 68 69 73 2d 3e 75 70 64 61 url);..if.($newRef.=.$this->upda
4d8c0 74 65 54 6f 43 6f 6d 6d 69 74 28 24 70 61 74 68 2c 20 24 72 65 66 2c 20 24 70 61 63 6b 61 67 65 teToCommit($path,.$ref,.$package
4d8e0 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e ->getPrettyVersion(),.$package->
4d900 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 29 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 getReleaseDate())).{.if.($packag
4d920 65 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 70 61 63 6b 61 e->getDistReference().===.$packa
4d940 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 20 7b 0a 24 70 61 63 ge->getSourceReference()).{.$pac
4d960 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 24 6e 65 77 52 65 66 29 3b kage->setDistReference($newRef);
4d980 0a 7d 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(
4d9a0 24 6e 65 77 52 65 66 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 $newRef);.}.}.....public.functio
4d9c0 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 69 6e 69 n.doUpdate(PackageInterface.$ini
4d9e0 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 2c 20 tial,.PackageInterface.$target,.
4da00 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 6e 76 $path,.$url).{.GitUtil::cleanEnv
4da20 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 74 68 ();.$path.=.$this->normalizePath
4da40 28 24 70 61 74 68 29 3b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 70 61 74 68 2e 27 2f 2e 67 69 ($path);.if.(!is_dir($path.'/.gi
4da60 74 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 69 t')).{.throw.new.\RuntimeExcepti
4da80 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
4daa0 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
4dac0 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
4dae0 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
4db00 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
4db20 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
4db40 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
4db60 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
4db80 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
4dba0 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.=.
4dbc0 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).{
4dbe0 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
4dc00 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
4dc20 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
4dc40 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
4dc60 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
4dc80 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
4dca0 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()
4dcc0 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
4dce0 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
4dd00 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
4dd20 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
4dd40 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
4dd60 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
4dd80 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).
4dda0 7b 0a 47 69 74 55 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 {.GitUtil::cleanEnv();.$path.=.$
4ddc0 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.(
4dde0 21 69 73 5f 64 69 72 28 24 70 61 74 68 2e 27 2f 2e 67 69 74 27 29 29 20 7b 0a 72 65 74 75 72 6e !is_dir($path.'/.git')).{.return
4de00 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 67 69 74 20 73 74 61 74 75 73 20 2d 2d 70 6f ;.}..$command.=.'git.status.--po
4de20 72 63 65 6c 61 69 6e 20 2d 2d 75 6e 74 72 61 63 6b 65 64 2d 66 69 6c 65 73 3d 6e 6f 27 3b 0a 69 rcelain.--untracked-files=no';.i
4de40 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 65 f.(0.!==.$this->process->execute
4de60 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 68 ($command,.$output,.$path)).{.th
4de80 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
4dea0 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 5c d.to.execute.'...$command..."\n\
4dec0 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 74 n"...$this->process->getErrorOut
4dee0 70 75 74 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 20 put());.}..return.trim($output).
4df00 3f 3a 20 6e 75 6c 6c 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 ?:.null;.}.....protected.functio
4df20 6e 20 63 6c 65 61 6e 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 n.cleanChanges(PackageInterface.
4df40 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 70 64 61 74 65 29 0a 7b 0a 47 69 74 55 $package,.$path,.$update).{.GitU
4df60 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->
4df80 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 63 68 61 6e normalizePath($path);.if.(!$chan
4dfa0 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 61 6c 43 68 61 6e 67 65 73 28 24 70 61 ges.=.$this->getLocalChanges($pa
4dfc0 63 6b 61 67 65 2c 20 24 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 ckage,.$path)).{.return;.}..if.(
4dfe0 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 29 29 20 7b 0a 24 !$this->io->isInteractive()).{.$
4e000 64 69 73 63 61 72 64 43 68 61 6e 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e discardChanges.=.$this->config->
4e020 67 65 74 28 27 64 69 73 63 61 72 64 2d 63 68 61 6e 67 65 73 27 29 3b 0a 69 66 20 28 74 72 75 65 get('discard-changes');.if.(true
4e040 20 3d 3d 3d 20 24 64 69 73 63 61 72 64 43 68 61 6e 67 65 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 .===.$discardChanges).{.return.$
4e060 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 29 3b 0a 7d 0a 69 this->discardChanges($path);.}.i
4e080 66 20 28 27 73 74 61 73 68 27 20 3d 3d 3d 20 24 64 69 73 63 61 72 64 43 68 61 6e 67 65 73 29 20 f.('stash'.===.$discardChanges).
4e0a0 7b 0a 69 66 20 28 21 24 75 70 64 61 74 65 29 20 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a {.if.(!$update).{.return.parent:
4e0c0 3a 63 6c 65 61 6e 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 :cleanChanges($package,.$path,.$
4e0e0 75 70 64 61 74 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 73 68 43 update);.}..return.$this->stashC
4e100 68 61 6e 67 65 73 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 hanges($path);.}..return.parent:
4e120 3a 63 6c 65 61 6e 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 :cleanChanges($package,.$path,.$
4e140 75 70 64 61 74 65 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 update);.}..$changes.=.array_map
4e160 28 66 75 6e 63 74 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 (function.($elem).{.return.'....
4e180 27 2e 24 65 6c 65 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 '.$elem;.},.preg_split('{\s*\r?\
4e1a0 6e 5c 73 2a 7d 27 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 n\s*}',.$changes));.$this->io->w
4e1c0 72 69 74 65 45 72 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 riteError('....<error>The.packag
4e1e0 65 20 68 61 73 20 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 e.has.modified.files:</error>');
4e200 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 5f 73 6c 69 .$this->io->writeError(array_sli
4e220 63 65 28 24 63 68 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 ce($changes,.0,.10));.if.(count(
4e240 24 63 68 61 6e 67 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 $changes).>.10).{.$this->io->wri
4e260 74 65 45 72 72 6f 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 teError('....<info>'.count($chan
4e280 67 65 73 29 20 2d 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 ges).-.10...'.more.files.modifie
4e2a0 64 2c 20 63 68 6f 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 d,.choose."v".to.view.the.full.l
4e2c0 69 73 74 3c 2f 69 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 ist</info>');.}..while.(true).{.
4e2e0 73 77 69 74 63 68 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 switch.($this->io->ask('....<inf
4e300 6f 3e 44 69 73 63 61 72 64 20 63 68 61 6e 67 65 73 20 5b 79 2c 6e 2c 76 2c 64 2c 27 2e 28 24 75 o>Discard.changes.[y,n,v,d,'.($u
4e320 70 64 61 74 65 20 3f 20 27 73 2c 27 20 3a 20 27 27 29 2e 27 3f 5d 3f 3c 2f 69 6e 66 6f 3e 20 27 pdate.?.'s,'.:.'').'?]?</info>.'
4e340 2c 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 ,.'?')).{.case.'y':.$this->disca
4e360 72 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 rdChanges($path);.break.2;..case
4e380 20 27 73 27 3a 0a 69 66 20 28 21 24 75 70 64 61 74 65 29 20 7b 0a 67 6f 74 6f 20 68 65 6c 70 3b .'s':.if.(!$update).{.goto.help;
4e3a0 0a 7d 0a 0a 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 .}..$this->stashChanges($path);.
4e3c0 62 72 65 61 6b 20 32 3b 0a 0a 63 61 73 65 20 27 6e 27 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 break.2;..case.'n':.throw.new.\R
4e3e0 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 55 70 64 61 74 65 20 61 62 6f 72 74 65 64 27 untimeException('Update.aborted'
4e400 29 3b 0a 0a 63 61 73 65 20 27 76 27 3a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 );..case.'v':.$this->io->writeEr
4e420 72 6f 72 28 24 63 68 61 6e 67 65 73 29 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 64 27 3a ror($changes);.break;..case.'d':
4e440 0a 24 74 68 69 73 2d 3e 76 69 65 77 44 69 66 66 28 24 70 61 74 68 29 3b 0a 62 72 65 61 6b 3b 0a .$this->viewDiff($path);.break;.
4e460 0a 63 61 73 65 20 27 3f 27 3a 0a 64 65 66 61 75 6c 74 3a 0a 68 65 6c 70 3a 0a 24 74 68 69 73 2d .case.'?':.default:.help:.$this-
4e480 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 20 >io->writeError(array(.'....y.-.
4e4a0 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 2e discard.changes.and.apply.the.'.
4e4c0 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 6c ($update.?.'update'.:.'uninstall
4e4e0 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 74 '),.'....n.-.abort.the.'.($updat
4e500 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 6e e.?.'update'.:.'uninstall').'.an
4e520 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 20 d.let.you.manually.clean.things.
4e540 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 65 up',.'....v.-.view.modified.file
4e560 73 27 2c 0a 27 20 20 20 20 64 20 2d 20 76 69 65 77 20 6c 6f 63 61 6c 20 6d 6f 64 69 66 69 63 61 s',.'....d.-.view.local.modifica
4e580 74 69 6f 6e 73 20 28 64 69 66 66 29 27 2c 0a 29 29 3b 0a 69 66 20 28 24 75 70 64 61 74 65 29 20 tions.(diff)',.));.if.($update).
4e5a0 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 73 20 2d {.$this->io->writeError('....s.-
4e5c0 20 73 74 61 73 68 20 63 68 61 6e 67 65 73 20 61 6e 64 20 74 72 79 20 74 6f 20 72 65 61 70 70 6c .stash.changes.and.try.to.reappl
4e5e0 79 20 74 68 65 6d 20 61 66 74 65 72 20 74 68 65 20 75 70 64 61 74 65 27 29 3b 0a 7d 0a 24 74 68 y.them.after.the.update');.}.$th
4e600 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 3f 20 2d 20 70 72 69 6e is->io->writeError('....?.-.prin
4e620 74 20 68 65 6c 70 27 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 t.help');.break;.}.}.}.....prote
4e640 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 70 70 6c 79 43 68 61 6e 67 65 73 28 24 70 61 cted.function.reapplyChanges($pa
4e660 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 50 61 th).{.$path.=.$this->normalizePa
4e680 74 68 28 24 70 61 74 68 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 53 74 61 73 68 65 64 th($path);.if.($this->hasStashed
4e6a0 43 68 61 6e 67 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 68 61 73 53 74 61 73 68 65 64 43 68 61 6e Changes).{.$this->hasStashedChan
4e6c0 67 65 73 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 ges.=.false;.$this->io->writeErr
4e6e0 6f 72 28 27 20 20 20 20 3c 69 6e 66 6f 3e 52 65 2d 61 70 70 6c 79 69 6e 67 20 73 74 61 73 68 65 or('....<info>Re-applying.stashe
4e700 64 20 63 68 61 6e 67 65 73 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 d.changes</info>');.if.(0.!==.$t
4e720 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 68 his->process->execute('git.stash
4e740 20 70 6f 70 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 77 20 .pop',.$output,.$path)).{.throw.
4e760 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 22 46 61 69 6c 65 64 20 74 6f new.\RuntimeException("Failed.to
4e780 20 61 70 70 6c 79 20 73 74 61 73 68 65 64 20 63 68 61 6e 67 65 73 3a 5c 6e 5c 6e 22 2e 24 74 68 .apply.stashed.changes:\n\n".$th
4e7a0 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 0a is->process->getErrorOutput());.
4e7c0 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 68 61 73 44 69 73 63 61 72 64 65 64 43 68 61 6e 67 65 73 20 }.}..$this->hasDiscardedChanges.
4e7e0 3d 20 66 61 6c 73 65 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 =.false;.}............protected.
4e800 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 54 6f 43 6f 6d 6d 69 74 28 24 70 61 74 68 2c 20 24 function.updateToCommit($path,.$
4e820 72 65 66 65 72 65 6e 63 65 2c 20 24 62 72 61 6e 63 68 2c 20 24 64 61 74 65 29 0a 7b 0a 24 66 6f reference,.$branch,.$date).{.$fo
4e840 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 68 61 73 44 69 73 63 61 72 64 65 64 43 68 61 6e 67 65 73 rce.=.$this->hasDiscardedChanges
4e860 20 7c 7c 20 24 74 68 69 73 2d 3e 68 61 73 53 74 61 73 68 65 64 43 68 61 6e 67 65 73 20 3f 20 27 .||.$this->hasStashedChanges.?.'
4e880 2d 66 20 27 20 3a 20 27 27 3b 0a 0a 0a 20 0a 20 0a 20 0a 20 0a 20 24 74 65 6d 70 6c 61 74 65 20 -f.'.:.'';............$template.
4e8a0 3d 20 27 67 69 74 20 63 68 65 63 6b 6f 75 74 20 27 2e 24 66 6f 72 63 65 2e 27 25 73 20 2d 2d 20 =.'git.checkout.'.$force.'%s.--.
4e8c0 26 26 20 67 69 74 20 72 65 73 65 74 20 2d 2d 68 61 72 64 20 25 31 24 73 20 2d 2d 27 3b 0a 24 62 &&.git.reset.--hard.%1$s.--';.$b
4e8e0 72 61 6e 63 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 3f 3a 5e 64 65 76 2d 7c ranch.=.preg_replace('{(?:^dev-|
4e900 28 3f 3a 5c 2e 78 29 3f 2d 64 65 76 24 29 7d 69 27 2c 20 27 27 2c 20 24 62 72 61 6e 63 68 29 3b (?:\.x)?-dev$)}i',.'',.$branch);
4e920 0a 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 ..$branches.=.null;.if.(0.===.$t
4e940 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
4e960 68 20 2d 72 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 63 h.-r',.$output,.$path)).{.$branc
4e980 68 65 73 20 3d 20 24 6f 75 74 70 75 74 3b 0a 7d 0a 0a 0a 20 24 67 69 74 52 65 66 20 3d 20 24 72 hes.=.$output;.}....$gitRef.=.$r
4e9a0 65 66 65 72 65 6e 63 65 3b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d eference;.if.(!preg_match('{^[a-
4e9c0 66 30 2d 39 5d 7b 34 30 7d 24 7d 27 2c 20 24 72 65 66 65 72 65 6e 63 65 29 0a 26 26 20 24 62 72 f0-9]{40}$}',.$reference).&&.$br
4e9e0 61 6e 63 68 65 73 0a 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2b 63 6f 6d 70 6f anches.&&.preg_match('{^\s+compo
4ea00 73 65 72 2f 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 72 65 66 65 72 65 6e 63 65 29 2e 27 24 7d ser/'.preg_quote($reference).'$}
4ea20 6d 27 2c 20 24 62 72 61 6e 63 68 65 73 29 0a 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 m',.$branches).).{.$command.=.sp
4ea40 72 69 6e 74 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 rintf('git.checkout.'.$force.'-B
4ea60 20 25 73 20 25 73 20 2d 2d 20 26 26 20 67 69 74 20 72 65 73 65 74 20 2d 2d 68 61 72 64 20 25 32 .%s.%s.--.&&.git.reset.--hard.%2
4ea80 24 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(
4eaa0 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
4eac0 65 28 27 63 6f 6d 70 6f 73 65 72 2f 27 2e 24 72 65 66 65 72 65 6e 63 65 29 29 3b 0a 69 66 20 28 e('composer/'.$reference));.if.(
4eae0 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 63 0.===.$this->process->execute($c
4eb00 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 75 72 ommand,.$output,.$path)).{.retur
4eb20 6e 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d 66 n;.}.}....if.(preg_match('{^[a-f
4eb40 30 2d 39 5d 7b 34 30 7d 24 7d 27 2c 20 24 72 65 66 65 72 65 6e 63 65 29 29 20 7b 0a 0a 20 69 66 0-9]{40}$}',.$reference)).{...if
4eb60 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2b 63 6f 6d 70 6f 73 65 72 2f 27 2e 70 .(!preg_match('{^\s+composer/'.p
4eb80 72 65 67 5f 71 75 6f 74 65 28 24 62 72 61 6e 63 68 29 2e 27 24 7d 6d 27 2c 20 24 62 72 61 6e 63 reg_quote($branch).'$}m',.$branc
4eba0 68 65 73 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2b 63 6f 6d 70 6f 73 65 hes).&&.preg_match('{^\s+compose
4ebc0 72 2f 76 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 62 72 61 6e 63 68 29 2e 27 24 7d 6d 27 2c 20 r/v'.preg_quote($branch).'$}m',.
4ebe0 24 62 72 61 6e 63 68 65 73 29 29 20 7b 0a 24 62 72 61 6e 63 68 20 3d 20 27 76 27 20 2e 20 24 62 $branches)).{.$branch.=.'v'...$b
4ec00 72 61 6e 63 68 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 27 67 69 ranch;.}..$command.=.sprintf('gi
4ec20 74 20 63 68 65 63 6b 6f 75 74 20 25 73 20 2d 2d 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 t.checkout.%s.--',.ProcessExecut
4ec40 6f 72 3a 3a 65 73 63 61 70 65 28 24 62 72 61 6e 63 68 29 29 3b 0a 24 66 61 6c 6c 62 61 63 6b 43 or::escape($branch));.$fallbackC
4ec60 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 6b 6f 75 74 20 27 ommand.=.sprintf('git.checkout.'
4ec80 2e 24 66 6f 72 63 65 2e 27 2d 42 20 25 73 20 25 73 20 2d 2d 27 2c 20 50 72 6f 63 65 73 73 45 78 .$force.'-B.%s.%s.--',.ProcessEx
4eca0 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 73 73 ecutor::escape($branch),.Process
4ecc0 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 62 72 Executor::escape('composer/'.$br
4ece0 61 6e 63 68 29 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 anch));.if.(0.===.$this->process
4ed00 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
4ed20 74 68 29 0a 7c 7c 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 th).||.0.===.$this->process->exe
4ed40 63 75 74 65 28 24 66 61 6c 6c 62 61 63 6b 43 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 2c 20 cute($fallbackCommand,.$output,.
4ed60 24 70 61 74 68 29 0a 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 $path).).{.$command.=.sprintf('g
4ed80 69 74 20 72 65 73 65 74 20 2d 2d 68 61 72 64 20 25 73 20 2d 2d 27 2c 20 50 72 6f 63 65 73 73 45 it.reset.--hard.%s.--',.ProcessE
4eda0 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 72 65 66 65 72 65 6e 63 65 29 29 3b 0a 69 66 xecutor::escape($reference));.if
4edc0 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(
4ede0 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
4ee00 75 72 6e 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 24 urn;.}.}.}..$command.=.sprintf($
4ee20 74 65 6d 70 6c 61 74 65 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 template,.ProcessExecutor::escap
4ee40 65 28 24 67 69 74 52 65 66 29 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 e($gitRef));.if.(0.===.$this->pr
4ee60 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
4ee80 2c 20 24 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c ,.$path)).{.return;.}....if.(fal
4eea0 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 se.!==.strpos($this->process->ge
4eec0 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c 20 24 72 65 66 65 72 65 6e 63 65 29 29 20 7b 0a 24 tErrorOutput(),.$reference)).{.$
4eee0 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 72 6e 69 this->io->writeError('....<warni
4ef00 6e 67 3e 27 2e 24 72 65 66 65 72 65 6e 63 65 2e 27 20 69 73 20 67 6f 6e 65 20 28 68 69 73 74 6f ng>'.$reference.'.is.gone.(histo
4ef20 72 79 20 77 61 73 20 72 65 77 72 69 74 74 65 6e 3f 29 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a ry.was.rewritten?)</warning>');.
4ef40 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 27 }..throw.new.\RuntimeException('
4ef60 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 47 69 74 55 74 69 6c 3a 3a 73 Failed.to.execute.'...GitUtil::s
4ef80 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 20 2e 20 anitizeUrl($command)..."\n\n"...
4efa0 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 28 29 $this->process->getErrorOutput()
4efc0 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 74 50 75 73 68 );.}..protected.function.setPush
4efe0 55 72 6c 28 24 70 61 74 68 2c 20 24 75 72 6c 29 0a 7b 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 Url($path,.$url).{...if.(preg_ma
4f000 74 63 68 28 27 7b 5e 28 3f 3a 68 74 74 70 73 3f 7c 67 69 74 29 3a 2f 2f 27 2e 47 69 74 55 74 69 tch('{^(?:https?|git)://'.GitUti
4f020 6c 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 l::getGitHubDomainsRegex($this->
4f040 63 6f 6e 66 69 67 29 2e 27 2f 28 5b 5e 2f 5d 2b 29 2f 28 5b 5e 2f 5d 2b 3f 29 28 3f 3a 5c 2e 67 config).'/([^/]+)/([^/]+?)(?:\.g
4f060 69 74 29 3f 24 7d 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 70 72 6f 74 6f it)?$}',.$url,.$match)).{.$proto
4f080 63 6f 6c 73 20 3d 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 cols.=.$this->config->get('githu
4f0a0 62 2d 70 72 6f 74 6f 63 6f 6c 73 27 29 3b 0a 24 70 75 73 68 55 72 6c 20 3d 20 27 67 69 74 40 27 b-protocols');.$pushUrl.=.'git@'
4f0c0 2e 24 6d 61 74 63 68 5b 31 5d 2e 27 3a 27 2e 24 6d 61 74 63 68 5b 32 5d 2e 27 2f 27 2e 24 6d 61 .$match[1].':'.$match[2].'/'.$ma
4f0e0 74 63 68 5b 33 5d 2e 27 2e 67 69 74 27 3b 0a 69 66 20 28 24 70 72 6f 74 6f 63 6f 6c 73 5b 30 5d tch[3].'.git';.if.($protocols[0]
4f100 20 21 3d 3d 20 27 67 69 74 27 29 20 7b 0a 24 70 75 73 68 55 72 6c 20 3d 20 27 68 74 74 70 73 3a .!==.'git').{.$pushUrl.=.'https:
4f120 2f 2f 27 20 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 //'...$match[1]...'/'.$match[2].
4f140 27 2f 27 2e 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 '/'.$match[3].'.git';.}.$cmd.=.s
4f160 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 2d 2d 70 75 73 printf('git.remote.set-url.--pus
4f180 68 20 6f 72 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 h.origin.%s',.ProcessExecutor::e
4f1a0 73 63 61 70 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 scape($pushUrl));.$this->process
4f1c0 2d 3e 65 78 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 ->execute($cmd,.$ignoredOutput,.
4f1e0 24 70 61 74 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 $path);.}.}.....protected.functi
4f200 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,
4f220 20 24 74 6f 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 .$toReference,.$path).{.$path.=.
4f240 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 24 63 6f $this->normalizePath($path);.$co
4f260 6d 6d 61 6e 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 mmand.=.sprintf('git.log.%s..%s.
4f280 2d 2d 70 72 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 --pretty=format:"%%h.-.%%an:.%%s
4f2a0 22 27 2c 20 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 "',.$fromReference,.$toReference
4f2c0 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 65 73 73 2d 3e 65 78 );..if.(0.!==.$this->process->ex
4f2e0 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 74 68 29 29 ecute($command,.$output,.$path))
4f300 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('
4f320 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..
4f340 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
4f360 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 74 70 75 74 3b 0a orOutput());.}..return.$output;.
4f380 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 64 69 73 63 61 72 }......protected.function.discar
4f3a0 64 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 74 68 69 73 2d dChanges($path).{.$path.=.$this-
4f3c0 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 30 20 21 3d 3d >normalizePath($path);.if.(0.!==
4f3e0 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 72 65 .$this->process->execute('git.re
4f400 73 65 74 20 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 set.--hard',.$output,.$path)).{.
4f420 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 43 6f 75 throw.new.\RuntimeException("Cou
4f440 6c 64 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 ld.not.reset.changes\n\n:".$this
4f460 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());.}.
4f480 0a 24 74 68 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 .$this->hasDiscardedChanges.=.tr
4f4a0 75 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 69 6f 6e 20 73 74 ue;.}......protected.function.st
4f4c0 61 73 68 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 74 68 69 ashChanges($path).{.$path.=.$thi
4f4e0 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 30 20 21 s->normalizePath($path);.if.(0.!
4f500 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.
4f520 73 74 61 73 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 stash.--include-untracked',.$out
4f540 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 69 6d put,.$path)).{.throw.new.\Runtim
4f560 65 45 78 63 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 eException("Could.not.stash.chan
4f580 67 65 73 5c 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 ges\n\n:".$this->process->getErr
4f5a0 6f 72 4f 75 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 orOutput());.}..$this->hasStashe
4f5c0 64 43 68 61 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 dChanges.=.true;.}......protecte
4f5e0 64 20 66 75 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 d.function.viewDiff($path).{.$pa
4f600 74 68 20 3d 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 th.=.$this->normalizePath($path)
4f620 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
4f640 75 74 65 28 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 ute('git.diff.HEAD',.$output,.$p
4f660 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
4f680 69 6f 6e 28 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 ion("Could.not.view.diff\n\n:".$
4f6a0 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 29 this->process->getErrorOutput())
4f6c0 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 28 24 6f 75 74 70 ;.}..$this->io->writeError($outp
4f6e0 75 74 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 6e 6f 72 6d 61 ut);.}..protected.function.norma
4f700 6c 69 7a 65 50 61 74 68 28 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 lizePath($path).{.if.(defined('P
4f720 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 4d 41 4a 4f 52 27 29 20 26 26 20 73 74 HP_WINDOWS_VERSION_MAJOR').&&.st
4f740 72 6c 65 6e 28 24 70 61 74 68 29 20 3e 20 30 29 20 7b 0a 24 62 61 73 65 50 61 74 68 20 3d 20 24 rlen($path).>.0).{.$basePath.=.$
4f760 70 61 74 68 3b 0a 24 72 65 6d 6f 76 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 77 68 69 6c 65 path;.$removed.=.array();..while
4f780 20 28 21 69 73 5f 64 69 72 28 24 62 61 73 65 50 61 74 68 29 20 26 26 20 24 62 61 73 65 50 61 74 .(!is_dir($basePath).&&.$basePat
4f7a0 68 20 21 3d 3d 20 27 5c 5c 27 29 20 7b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 72 65 6d h.!==.'\\').{.array_unshift($rem
4f7c0 6f 76 65 64 2c 20 62 61 73 65 6e 61 6d 65 28 24 62 61 73 65 50 61 74 68 29 29 3b 0a 24 62 61 73 oved,.basename($basePath));.$bas
4f7e0 65 50 61 74 68 20 3d 20 64 69 72 6e 61 6d 65 28 24 62 61 73 65 50 61 74 68 29 3b 0a 7d 0a 0a 69 ePath.=.dirname($basePath);.}..i
4f800 66 20 28 24 62 61 73 65 50 61 74 68 20 3d 3d 3d 20 27 5c 5c 27 29 20 7b 0a 72 65 74 75 72 6e 20 f.($basePath.===.'\\').{.return.
4f820 24 70 61 74 68 3b 0a 7d 0a 0a 24 70 61 74 68 20 3d 20 72 74 72 69 6d 28 72 65 61 6c 70 61 74 68 $path;.}..$path.=.rtrim(realpath
4f840 28 24 62 61 73 65 50 61 74 68 29 20 2e 20 27 2f 27 20 2e 20 69 6d 70 6c 6f 64 65 28 27 2f 27 2c ($basePath)...'/'...implode('/',
4f860 20 24 72 65 6d 6f 76 65 64 29 2c 20 27 2f 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 74 .$removed),.'/');.}..return.$pat
4f880 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 63 h;.}.}.<?php............namespac
4f8a0 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 6d 70 e.Composer\Downloader;..use.Comp
4f8c0 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 65 3b oser\Config;.use.Composer\Cache;
4f8e0 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
4f900 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 50 61 63 6b entDispatcher;.use.Composer\Pack
4f920 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
4f940 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 20 43 6f 6d er\Util\ProcessExecutor;.use.Com
4f960 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 73 65 poser\Util\RemoteFilesystem;.use
4f980 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 0a .Composer\IO\IOInterface;.......
4f9a0 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 73 20 41 72 63 class.GzipDownloader.extends.Arc
4f9c0 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 24 70 72 6f 63 hiveDownloader.{.protected.$proc
4f9e0 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 73 74 72 75 63 ess;..public.function.__construc
4fa00 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
4fa20 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
4fa40 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,
4fa60 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
4fa80 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 0a ,.RemoteFilesystem.$rfs.=.null).
4faa0 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 20 3f 3a 20 6e {.$this->process.=.$process.?:.n
4fac0 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 72 65 6e 74 3a ew.ProcessExecutor($io);.parent:
4fae0 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 65 76 65 6e :__construct($io,.$config,.$even
4fb00 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 0a 7d 0a 0a 70 tDispatcher,.$cache,.$rfs);.}..p
4fb20 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 65 2c rotected.function.extract($file,
4fb40 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 20 24 70 61 74 .$path).{.$targetFilepath.=.$pat
4fb60 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 61 73 65 6e 61 h...DIRECTORY_SEPARATOR...basena
4fb80 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 0a 20 69 66 20 me(substr($file,.0,.-3));....if.
4fba0 28 21 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 4f 4e 5f 42 (!defined('PHP_WINDOWS_VERSION_B
4fbc0 55 49 4c 44 27 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 67 7a 69 70 20 2d 63 64 20 27 UILD')).{.$command.=.'gzip.-cd.'
4fbe0 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
4fc00 29 20 2e 20 27 20 3e 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 )...'.>.'...ProcessExecutor::esc
4fc20 61 70 65 28 24 74 61 72 67 65 74 46 69 6c 65 70 61 74 68 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d ape($targetFilepath);..if.(0.===
4fc40 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 61 6e .$this->process->execute($comman
4fc60 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 72 6e 3b 0a 7d 0a d,.$ignoredOutput)).{.return;.}.
4fc80 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 6f 20 65 78 65 63 .$processError.=.'Failed.to.exec
4fca0 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 2e 20 24 74 68 69 ute.'...$command..."\n\n"...$thi
4fcc0 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 3b 0a 74 68 s->process->getErrorOutput();.th
4fce0 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 70 72 6f 63 65 row.new.\RuntimeException($proce
4fd00 73 73 45 72 72 6f 72 29 3b 0a 7d 0a 0a 0a 20 24 61 72 63 68 69 76 65 46 69 6c 65 20 3d 20 67 7a ssError);.}....$archiveFile.=.gz
4fd20 6f 70 65 6e 28 24 66 69 6c 65 2c 20 27 72 62 27 29 3b 0a 24 74 61 72 67 65 74 46 69 6c 65 20 3d open($file,.'rb');.$targetFile.=
4fd40 20 66 6f 70 65 6e 28 24 74 61 72 67 65 74 46 69 6c 65 70 61 74 68 2c 20 27 77 62 27 29 3b 0a 77 .fopen($targetFilepath,.'wb');.w
4fd60 68 69 6c 65 20 28 24 73 74 72 69 6e 67 20 3d 20 67 7a 72 65 61 64 28 24 61 72 63 68 69 76 65 46 hile.($string.=.gzread($archiveF
4fd80 69 6c 65 2c 20 34 30 39 36 29 29 20 7b 0a 66 77 72 69 74 65 28 24 74 61 72 67 65 74 46 69 6c 65 ile,.4096)).{.fwrite($targetFile
4fda0 2c 20 24 73 74 72 69 6e 67 2c 20 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 29 29 3b 0a 7d 0a 67 ,.$string,.strlen($string));.}.g
4fdc0 7a 63 6c 6f 73 65 28 24 61 72 63 68 69 76 65 46 69 6c 65 29 3b 0a 66 63 6c 6f 73 65 28 24 74 61 zclose($archiveFile);.fclose($ta
4fde0 72 67 65 74 46 69 6c 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 rgetFile);.}.....protected.funct
4fe00 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 65 72 66 61 63 65 ion.getFileName(PackageInterface
4fe20 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 20 24 70 61 74 68 .$package,.$path).{.return.$path
4fe40 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 61 63 6b 61 67 65 .'/'.pathinfo(parse_url($package
4fe60 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 54 48 29 2c 20 50 ->getDistUrl(),.PHP_URL_PATH),.P
4fe80 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 68 70 0a 0a 0a 0a ATHINFO_BASENAME);.}.}.<?php....
4fea0 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 6c ........namespace.Composer\Downl
4fec0 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 63 oader;..use.Composer\Package\Pac
4fee0 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 6c kageInterface;.use.Composer\Util
4ff00 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 44 6f \ProcessExecutor;.....class.HgDo
4ff20 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 7b wnloader.extends.VcsDownloader.{
4ff40 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 28 50 ....public.function.doDownload(P
4ff60 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,
4ff80 20 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 75 74 6f 72 3a .$url).{.$url.=.ProcessExecutor:
4ffa0 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 65 :escape($url);.$ref.=.ProcessExe
4ffc0 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 63 cutor::escape($package->getSourc
4ffe0 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 45 eReference());.$this->io->writeE
50000 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 65 rror("....Cloning.".$package->ge
50020 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 20 tSourceReference());.$command.=.
50040 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 20 sprintf('hg.clone.%s.%s',.$url,.
50060 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 3b ProcessExecutor::escape($path));
50080 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 75 .if.(0.!==.$this->process->execu
500a0 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 0a te($command,.$ignoredOutput)).{.
500c0 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
500e0 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..."\
50100 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
50120 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 27 utput());.}.$command.=.sprintf('
50140 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 69 hg.up.%s',.$ref);.if.(0.!==.$thi
50160 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 69 s->process->execute($command,.$i
50180 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 20 gnoredOutput,.realpath($path))).
501a0 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 46 {.throw.new.\RuntimeException('F
501c0 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 20 ailed.to.execute.'...$command...
501e0 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 6f "\n\n"...$this->process->getErro
50200 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 74 rOutput());.}.}.....public.funct
50220 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 69 ion.doUpdate(PackageInterface.$i
50240 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 74 nitial,.PackageInterface.$target
50260 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 0a 7b 0a 24 75 72 6c 20 3d 20 50 72 6f 63 65 73 73 45 ,.$path,.$url).{.$url.=.ProcessE
50280 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
502a0 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
502c0 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-
502e0 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.".$
50300 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());..
50320 69 66 20 28 21 69 73 5f 64 69 72 28 24 70 61 74 68 2e 27 2f 2e 68 67 27 29 29 20 7b 0a 74 68 72 if.(!is_dir($path.'/.hg')).{.thr
50340 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 2e 68 ow.new.\RuntimeException('The..h
50360 67 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 6d 69 73 73 69 6e 67 20 66 72 6f 6d 20 27 2e 24 70 g.directory.is.missing.from.'.$p
50380 61 74 68 2e 27 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 ath.',.see.https://getcomposer.o
503a0 72 67 2f 63 6f 6d 6d 69 74 2d 64 65 70 73 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 rg/commit-deps.for.more.informat
503c0 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 27 68 67 ion');.}..$command.=.sprintf('hg
503e0 20 70 75 6c 6c 20 25 73 20 26 26 20 68 67 20 75 70 20 25 73 27 2c 20 24 75 72 6c 2c 20 24 72 65 .pull.%s.&&.hg.up.%s',.$url,.$re
50400 66 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 78 f);.if.(0.!==.$this->process->ex
50420 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 2c 20 ecute($command,.$ignoredOutput,.
50440 72 65 61 6c 70 61 74 68 28 24 70 61 74 68 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 realpath($path))).{.throw.new.\R
50460 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
50480 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 2e 20 24 74 68 69 73 te.'...$command..."\n\n"...$this
504a0 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());.}.
504c0 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 61 6c 43 68 }.....public.function.getLocalCh
504e0 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,
50500 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 70 61 74 68 2e 27 2f 2e 68 .$path).{.if.(!is_dir($path.'/.h
50520 67 27 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 g')).{.return;.}..$this->process
50540 2d 3e 65 78 65 63 75 74 65 28 27 68 67 20 73 74 27 2c 20 24 6f 75 74 70 75 74 2c 20 72 65 61 6c ->execute('hg.st',.$output,.real
50560 70 61 74 68 28 24 70 61 74 68 29 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 69 6d 28 24 6f 75 74 70 path($path));..return.trim($outp
50580 75 74 29 20 3f 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e ut).?:.null;.}.....protected.fun
505a0 63 74 69 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 ction.getCommitLogs($fromReferen
505c0 63 65 2c 20 24 74 6f 52 65 66 65 72 65 6e 63 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 63 6f 6d 6d ce,.$toReference,.$path).{.$comm
505e0 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 27 68 67 20 6c 6f 67 20 2d 72 20 25 73 3a 25 73 20 2d and.=.sprintf('hg.log.-r.%s:%s.-
50600 2d 73 74 79 6c 65 20 63 6f 6d 70 61 63 74 27 2c 20 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c -style.compact',.$fromReference,
50620 20 24 74 6f 52 65 66 65 72 65 6e 63 65 29 3b 0a 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 .$toReference);..if.(0.!==.$this
50640 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 75 ->process->execute($command,.$ou
50660 74 70 75 74 2c 20 72 65 61 6c 70 61 74 68 28 24 70 61 74 68 29 29 29 20 7b 0a 74 68 72 6f 77 20 tput,.realpath($path))).{.throw.
50680 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 64 20 74 6f new.\RuntimeException('Failed.to
506a0 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 2e .execute.'...$command..."\n\n"..
506c0 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 28 .$this->process->getErrorOutput(
506e0 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 7d 0a 3c 3f 70 68 70 ));.}..return.$output;.}.}.<?php
50700 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
50720 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 6b 61 67 65 ownloader;..use.Composer\Package
50740 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 66 6f 6e 79 5c 43 \PackageInterface;.use.Symfony\C
50760 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 69 6f 6e 5c 49 4f omponent\Filesystem\Exception\IO
50780 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 74 Exception;.use.Symfony\Component
507a0 5c 46 69 6c 65 73 79 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 \Filesystem\Filesystem;........c
507c0 6c 61 73 73 20 50 61 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 lass.PathDownloader.extends.File
507e0 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 Downloader.{....public.function.
50800 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 63 6b 61 download(PackageInterface.$packa
50820 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 66 69 6c 65 53 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 ge,.$path).{.$fileSystem.=.new.F
50840 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e ilesystem();.$this->filesystem->
50860 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 0a 24 74 68 69 73 2d 3e removeDirectory($path);..$this->
50880 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 0a 27 20 20 2d 20 49 6e 73 io->writeError(sprintf(.'..-.Ins
508a0 74 61 6c 6c 69 6e 67 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e talling.<info>%s</info>.(<commen
508c0 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 27 2c 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e t>%s</comment>)',.$package->getN
508e0 61 6d 65 28 29 2c 0a 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 ame(),.$package->getFullPrettyVe
50900 72 73 69 6f 6e 28 29 0a 29 29 3b 0a 0a 24 75 72 6c 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 rsion().));..$url.=.$package->ge
50920 74 44 69 73 74 55 72 6c 28 29 3b 0a 24 72 65 61 6c 55 72 6c 20 3d 20 72 65 61 6c 70 61 74 68 28 tDistUrl();.$realUrl.=.realpath(
50940 24 75 72 6c 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 61 6c 55 72 6c 20 7c 7c $url);.if.(false.===.$realUrl.||
50960 20 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 72 65 61 6c 55 72 6c 29 20 7c 7c 20 21 69 73 5f 64 .!file_exists($realUrl).||.!is_d
50980 69 72 28 24 72 65 61 6c 55 72 6c 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 ir($realUrl)).{.throw.new.\Runti
509a0 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 50 61 74 68 20 22 25 73 22 20 meException(sprintf(.'Path."%s".
509c0 69 73 20 6e 6f 74 20 66 6f 75 6e 64 27 2c 0a 24 75 72 6c 0a 29 29 3b 0a 7d 0a 0a 74 72 79 20 7b is.not.found',.$url.));.}..try.{
509e0 0a 24 73 68 6f 72 74 65 73 74 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 .$shortestPath.=.$this->filesyst
50a00 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 24 70 61 74 68 2c 20 24 72 65 61 em->findShortestPath($path,.$rea
50a20 6c 55 72 6c 29 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 lUrl);.$fileSystem->symlink($sho
50a40 72 74 65 73 74 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 rtestPath,.$path);.$this->io->wr
50a60 69 74 65 45 72 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 iteError(sprintf('....Symlinked.
50a80 66 72 6f 6d 20 25 73 27 2c 20 24 75 72 6c 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 49 4f 45 78 63 from.%s',.$url));.}.catch.(IOExc
50aa0 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 66 69 6c 65 53 79 73 74 65 6d 2d 3e 6d 69 72 72 6f 72 eption.$e).{.$fileSystem->mirror
50ac0 28 24 72 65 61 6c 55 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 ($realUrl,.$path);.$this->io->wr
50ae0 69 74 65 45 72 72 6f 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 iteError(sprintf('....Mirrored.f
50b00 72 6f 6d 20 25 73 27 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 rom.%s',.$url));.}..$this->io->w
50b20 72 69 74 65 45 72 72 6f 72 28 27 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a riteError('');.}.}.<?php........
50b40 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 61 64 65 ....namespace.Composer\Downloade
50b60 72 3b 0a 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 r;..use.Composer\Util\Filesystem
50b80 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 65 61 72 50 61 63 6b 61 67 65 45 78 74 ;...........class.PearPackageExt
50ba0 72 61 63 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 72 6f 6c 65 73 57 69 ractor.{.private.static.$rolesWi
50bc0 74 68 6f 75 74 50 61 63 6b 61 67 65 4e 61 6d 65 50 72 65 66 69 78 20 3d 20 61 72 72 61 79 28 27 thoutPackageNamePrefix.=.array('
50be0 70 68 70 27 2c 20 27 73 63 72 69 70 74 27 2c 20 27 77 77 77 27 29 3b 0a 0a 70 72 69 76 61 74 65 php',.'script',.'www');..private
50c00 20 24 66 69 6c 65 73 79 73 74 65 6d 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 3b 0a 0a 70 75 .$filesystem;.private.$file;..pu
50c20 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 69 6c 65 29 blic.function.__construct($file)
50c40 0a 7b 0a 69 66 20 28 21 69 73 5f 66 69 6c 65 28 24 66 69 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 .{.if.(!is_file($file)).{.throw.
50c60 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 50 new.\UnexpectedValueException('P
50c80 45 41 52 20 70 61 63 6b 61 67 65 20 66 69 6c 65 20 69 73 20 6e 6f 74 20 66 6f 75 6e 64 20 61 74 EAR.package.file.is.not.found.at
50ca0 20 27 2e 24 66 69 6c 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 .'.$file);.}..$this->filesystem.
50cc0 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 3e 66 69 6c 65 20 =.new.Filesystem();.$this->file.
50ce0 3d 20 24 66 69 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 =.$file;.}...........public.func
50d00 74 69 6f 6e 20 65 78 74 72 61 63 74 54 6f 28 24 74 61 72 67 65 74 2c 20 61 72 72 61 79 20 24 72 tion.extractTo($target,.array.$r
50d20 6f 6c 65 73 20 3d 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 oles.=.array('php'.=>.'/',.'scri
50d40 70 74 27 20 3d 3e 20 27 2f 62 69 6e 27 29 2c 20 24 76 61 72 73 20 3d 20 61 72 72 61 79 28 29 29 pt'.=>.'/bin'),.$vars.=.array())
50d60 0a 7b 0a 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 20 3d 20 24 74 61 72 67 65 74 2e 27 2f 74 .{.$extractionPath.=.$target.'/t
50d80 61 72 62 61 6c 6c 27 3b 0a 0a 74 72 79 20 7b 0a 24 61 72 63 68 69 76 65 20 3d 20 6e 65 77 20 5c arball';..try.{.$archive.=.new.\
50da0 50 68 61 72 44 61 74 61 28 24 74 68 69 73 2d 3e 66 69 6c 65 29 3b 0a 24 61 72 63 68 69 76 65 2d PharData($this->file);.$archive-
50dc0 3e 65 78 74 72 61 63 74 54 6f 28 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 2c 20 6e 75 6c 6c >extractTo($extractionPath,.null
50de0 2c 20 74 72 75 65 29 3b 0a 0a 69 66 20 28 21 69 73 5f 66 69 6c 65 28 24 74 68 69 73 2d 3e 63 6f ,.true);..if.(!is_file($this->co
50e00 6d 62 69 6e 65 28 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 2c 20 27 2f 70 61 63 6b 61 67 65 mbine($extractionPath,.'/package
50e20 2e 78 6d 6c 27 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 .xml'))).{.throw.new.\RuntimeExc
50e40 65 70 74 69 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 49 74 eption('Invalid.PEAR.package..It
50e60 20 6d 75 73 74 20 63 6f 6e 74 61 69 6e 20 70 61 63 6b 61 67 65 2e 78 6d 6c 20 66 69 6c 65 2e 27 .must.contain.package.xml.file.'
50e80 29 3b 0a 7d 0a 0a 24 66 69 6c 65 43 6f 70 79 41 63 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e );.}..$fileCopyActions.=.$this->
50ea0 62 75 69 6c 64 43 6f 70 79 41 63 74 69 6f 6e 73 28 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 buildCopyActions($extractionPath
50ec0 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 63 6f 70 79 46 69 6c ,.$roles,.$vars);.$this->copyFil
50ee0 65 73 28 24 66 69 6c 65 43 6f 70 79 41 63 74 69 6f 6e 73 2c 20 24 65 78 74 72 61 63 74 69 6f 6e es($fileCopyActions,.$extraction
50f00 50 61 74 68 2c 20 24 74 61 72 67 65 74 2c 20 24 72 6f 6c 65 73 2c 20 24 76 61 72 73 29 3b 0a 24 Path,.$target,.$roles,.$vars);.$
50f20 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
50f40 79 28 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 y($extractionPath);.}.catch.(\Ex
50f60 63 65 70 74 69 6f 6e 20 24 65 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 ception.$exception).{.throw.new.
50f80 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 73 70 72 69 6e 74 \UnexpectedValueException(sprint
50fa0 66 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 74 72 61 63 74 20 50 45 41 52 20 70 61 63 6b 61 67 f('Failed.to.extract.PEAR.packag
50fc0 65 20 25 73 20 74 6f 20 25 73 2e 20 52 65 61 73 6f 6e 3a 20 25 73 27 2c 20 24 74 68 69 73 2d 3e e.%s.to.%s..Reason:.%s',.$this->
50fe0 66 69 6c 65 2c 20 24 74 61 72 67 65 74 2c 20 24 65 78 63 65 70 74 69 6f 6e 2d 3e 67 65 74 4d 65 file,.$target,.$exception->getMe
51000 73 73 61 67 65 28 29 29 2c 20 30 2c 20 24 65 78 63 65 70 74 69 6f 6e 29 3b 0a 7d 0a 7d 0a 0a 0a ssage()),.0,.$exception);.}.}...
51020 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 63 6f 70 79 46 69 6c ........private.function.copyFil
51040 65 73 28 24 66 69 6c 65 73 2c 20 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 2c 20 24 72 6f es($files,.$source,.$target,.$ro
51060 6c 65 73 2c 20 24 76 61 72 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6c 65 73 20 61 73 les,.$vars).{.foreach.($files.as
51080 20 24 66 69 6c 65 29 20 7b 0a 24 66 72 6f 6d 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 .$file).{.$from.=.$this->combine
510a0 28 24 73 6f 75 72 63 65 2c 20 24 66 69 6c 65 5b 27 66 72 6f 6d 27 5d 29 3b 0a 24 74 6f 20 3d 20 ($source,.$file['from']);.$to.=.
510c0 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 74 61 72 67 65 74 2c 20 24 72 6f 6c 65 73 5b 24 $this->combine($target,.$roles[$
510e0 66 69 6c 65 5b 27 72 6f 6c 65 27 5d 5d 29 3b 0a 24 74 6f 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d file['role']]);.$to.=.$this->com
51100 62 69 6e 65 28 24 74 6f 2c 20 24 66 69 6c 65 5b 27 74 6f 27 5d 29 3b 0a 24 74 61 73 6b 73 20 3d bine($to,.$file['to']);.$tasks.=
51120 20 24 66 69 6c 65 5b 27 74 61 73 6b 73 27 5d 3b 0a 24 74 68 69 73 2d 3e 63 6f 70 79 46 69 6c 65 .$file['tasks'];.$this->copyFile
51140 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 74 61 73 6b 73 2c 20 24 76 61 72 73 29 3b 0a 7d 0a 7d ($from,.$to,.$tasks,.$vars);.}.}
51160 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 46 69 6c 65 28 24 66 72 6f ..private.function.copyFile($fro
51180 6d 2c 20 24 74 6f 2c 20 24 74 61 73 6b 73 2c 20 24 76 61 72 73 29 0a 7b 0a 69 66 20 28 21 69 73 m,.$to,.$tasks,.$vars).{.if.(!is
511a0 5f 66 69 6c 65 28 24 66 72 6f 6d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 _file($from)).{.throw.new.\Runti
511c0 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 50 45 41 52 20 70 61 63 6b 61 67 meException('Invalid.PEAR.packag
511e0 65 2e 20 70 61 63 6b 61 67 65 2e 78 6d 6c 20 64 65 66 69 6e 65 73 20 66 69 6c 65 20 74 68 61 74 e..package.xml.defines.file.that
51200 20 69 73 20 6e 6f 74 20 6c 6f 63 61 74 65 64 20 69 6e 73 69 64 65 20 74 61 72 62 61 6c 6c 2e 27 .is.not.located.inside.tarball.'
51220 29 3b 0a 7d 0a 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 44 );.}..$this->filesystem->ensureD
51240 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 6f 29 29 3b 0a 0a 69 irectoryExists(dirname($to));..i
51260 66 20 28 30 20 3d 3d 20 63 6f 75 6e 74 28 24 74 61 73 6b 73 29 29 20 7b 0a 24 63 6f 70 69 65 64 f.(0.==.count($tasks)).{.$copied
51280 20 3d 20 63 6f 70 79 28 24 66 72 6f 6d 2c 20 24 74 6f 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 .=.copy($from,.$to);.}.else.{.$c
512a0 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 24 66 72 6f 6d ontent.=.file_get_contents($from
512c0 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 29 3b 0a 66 6f 72 65 );.$replacements.=.array();.fore
512e0 61 63 68 20 28 24 74 61 73 6b 73 20 61 73 20 24 74 61 73 6b 29 20 7b 0a 24 70 61 74 74 65 72 6e ach.($tasks.as.$task).{.$pattern
51300 20 3d 20 24 74 61 73 6b 5b 27 66 72 6f 6d 27 5d 3b 0a 24 76 61 72 4e 61 6d 65 20 3d 20 24 74 61 .=.$task['from'];.$varName.=.$ta
51320 73 6b 5b 27 74 6f 27 5d 3b 0a 69 66 20 28 69 73 73 65 74 28 24 76 61 72 73 5b 24 76 61 72 4e 61 sk['to'];.if.(isset($vars[$varNa
51340 6d 65 5d 29 29 20 7b 0a 69 66 20 28 24 76 61 72 4e 61 6d 65 20 3d 3d 3d 20 27 70 68 70 5f 62 69 me])).{.if.($varName.===.'php_bi
51360 6e 27 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 74 6f 2c 20 27 2e 62 61 n'.&&.false.===.strpos($to,.'.ba
51380 74 27 29 29 20 7b 0a 24 72 65 70 6c 61 63 65 6d 65 6e 74 73 5b 24 70 61 74 74 65 72 6e 5d 20 3d t')).{.$replacements[$pattern].=
513a0 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5c 2e 62 61 74 24 7d 27 2c 20 27 27 2c 20 24 76 .preg_replace('{\.bat$}',.'',.$v
513c0 61 72 73 5b 24 76 61 72 4e 61 6d 65 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 70 6c 61 63 ars[$varName]);.}.else.{.$replac
513e0 65 6d 65 6e 74 73 5b 24 70 61 74 74 65 72 6e 5d 20 3d 20 24 76 61 72 73 5b 24 76 61 72 4e 61 6d ements[$pattern].=.$vars[$varNam
51400 65 5d 3b 0a 7d 0a 7d 0a 7d 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 73 74 72 74 72 28 24 63 6f 6e 74 e];.}.}.}.$content.=.strtr($cont
51420 65 6e 74 2c 20 24 72 65 70 6c 61 63 65 6d 65 6e 74 73 29 3b 0a 0a 24 63 6f 70 69 65 64 20 3d 20 ent,.$replacements);..$copied.=.
51440 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 6f 2c 20 24 63 6f 6e 74 65 6e 74 29 file_put_contents($to,.$content)
51460 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 63 6f 70 69 65 64 29 20 7b 0a 74 68 ;.}..if.(false.===.$copied).{.th
51480 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 74 row.new.\RuntimeException(sprint
514a0 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 6f 70 79 20 25 73 20 74 6f 20 25 73 27 2c 20 24 66 72 f('Failed.to.copy.%s.to.%s',.$fr
514c0 6f 6d 2c 20 24 74 6f 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 om,.$to));.}.}............privat
514e0 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 43 6f 70 79 41 63 74 69 6f 6e 73 28 24 73 6f 75 e.function.buildCopyActions($sou
51500 72 63 65 2c 20 61 72 72 61 79 20 24 72 6f 6c 65 73 2c 20 24 76 61 72 73 29 0a 7b 0a 0a 24 70 61 rce,.array.$roles,.$vars).{..$pa
51520 63 6b 61 67 65 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 66 69 ckage.=.simplexml_load_string(fi
51540 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 le_get_contents($this->combine($
51560 73 6f 75 72 63 65 2c 20 27 70 61 63 6b 61 67 65 2e 78 6d 6c 27 29 29 29 3b 0a 69 66 20 28 66 61 source,.'package.xml')));.if.(fa
51580 6c 73 65 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 lse.===.$package).{.throw.new.\R
515a0 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 64 65 66 69 6e 69 74 untimeException('Package.definit
515c0 69 6f 6e 20 66 69 6c 65 20 69 73 20 6e 6f 74 20 76 61 6c 69 64 2e 27 29 3b 0a 7d 0a 0a 24 70 61 ion.file.is.not.valid.');.}..$pa
515e0 63 6b 61 67 65 53 63 68 65 6d 61 56 65 72 73 69 6f 6e 20 3d 20 24 70 61 63 6b 61 67 65 5b 27 76 ckageSchemaVersion.=.$package['v
51600 65 72 73 69 6f 6e 27 5d 3b 0a 69 66 20 28 27 31 2e 30 27 20 3d 3d 20 24 70 61 63 6b 61 67 65 53 ersion'];.if.('1.0'.==.$packageS
51620 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 20 3d 20 24 70 61 63 chemaVersion).{.$children.=.$pac
51640 6b 61 67 65 2d 3e 72 65 6c 65 61 73 65 2d 3e 66 69 6c 65 6c 69 73 74 2d 3e 63 68 69 6c 64 72 65 kage->release->filelist->childre
51660 6e 28 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 n();.$packageName.=.(string).$pa
51680 63 6b 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 ckage->name;.$packageVersion.=.(
516a0 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 2d 3e 72 65 6c 65 61 73 65 2d 3e 76 65 72 73 69 string).$package->release->versi
516c0 6f 6e 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 on;.$sourceDir.=.$packageName...
516e0 27 2d 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 '-'...$packageVersion;.$result.=
51700 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 31 30 28 24 63 68 69 6c 64 .$this->buildSourceList10($child
51720 72 65 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 ren,.$roles,.$sourceDir,.'',.nul
51740 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 32 2e 30 l,.$packageName);.}.elseif.('2.0
51760 27 20 3d 3d 20 24 70 61 63 6b 61 67 65 53 63 68 65 6d 61 56 65 72 73 69 6f 6e 20 7c 7c 20 27 32 '.==.$packageSchemaVersion.||.'2
51780 2e 31 27 20 3d 3d 20 24 70 61 63 6b 61 67 65 53 63 68 65 6d 61 56 65 72 73 69 6f 6e 29 20 7b 0a .1'.==.$packageSchemaVersion).{.
517a0 24 63 68 69 6c 64 72 65 6e 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 63 6f 6e 74 65 6e 74 73 2d 3e $children.=.$package->contents->
517c0 63 68 69 6c 64 72 65 6e 28 29 3b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 children();.$packageName.=.(stri
517e0 6e 67 29 20 24 70 61 63 6b 61 67 65 2d 3e 6e 61 6d 65 3b 0a 24 70 61 63 6b 61 67 65 56 65 72 73 ng).$package->name;.$packageVers
51800 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 2d 3e 76 65 72 73 69 6f 6e ion.=.(string).$package->version
51820 2d 3e 72 65 6c 65 61 73 65 3b 0a 24 73 6f 75 72 63 65 44 69 72 20 3d 20 24 70 61 63 6b 61 67 65 ->release;.$sourceDir.=.$package
51840 4e 61 6d 65 20 2e 20 27 2d 27 20 2e 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 3b 0a 24 72 Name...'-'...$packageVersion;.$r
51860 65 73 75 6c 74 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 30 esult.=.$this->buildSourceList20
51880 28 24 63 68 69 6c 64 72 65 6e 2c 20 24 72 6f 6c 65 73 2c 20 24 73 6f 75 72 63 65 44 69 72 2c 20 ($children,.$roles,.$sourceDir,.
518a0 27 27 2c 20 6e 75 6c 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 0a 24 6e 61 6d 65 73 '',.null,.$packageName);..$names
518c0 70 61 63 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 paces.=.$package->getNamespaces(
518e0 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 68 4e 61 6d 65 73 70 );.$package->registerXPathNamesp
51900 61 63 65 28 27 6e 73 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 73 5b 27 27 5d 29 3b 0a 24 72 65 6c ace('ns',.$namespaces['']);.$rel
51920 65 61 73 65 4e 6f 64 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 78 70 61 74 68 28 27 6e 73 3a easeNodes.=.$package->xpath('ns:
51940 70 68 70 72 65 6c 65 61 73 65 27 29 3b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 79 52 65 6c 65 61 73 phprelease');.$this->applyReleas
51960 65 28 24 72 65 73 75 6c 74 2c 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 73 2c 20 24 76 61 72 73 29 e($result,.$releaseNodes,.$vars)
51980 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 6d 65 45 78 63 ;.}.else.{.throw.new.\RuntimeExc
519a0 65 70 74 69 6f 6e 28 27 55 6e 73 75 70 70 6f 72 74 65 64 20 73 63 68 65 6d 61 20 76 65 72 73 69 eption('Unsupported.schema.versi
519c0 6f 6e 20 6f 66 20 70 61 63 6b 61 67 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 66 69 6c 65 2e 27 29 on.of.package.definition.file.')
519e0 3b 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 61 74 65 20 ;.}..return.$result;.}..private.
51a00 66 75 6e 63 74 69 6f 6e 20 61 70 70 6c 79 52 65 6c 65 61 73 65 28 26 24 61 63 74 69 6f 6e 73 2c function.applyRelease(&$actions,
51a20 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 73 2c 20 24 76 61 72 73 29 0a 7b 0a 66 6f 72 65 61 63 68 .$releaseNodes,.$vars).{.foreach
51a40 20 28 24 72 65 6c 65 61 73 65 4e 6f 64 65 73 20 61 73 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 29 .($releaseNodes.as.$releaseNode)
51a60 20 7b 0a 24 72 65 71 75 69 72 65 64 4f 73 20 3d 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 69 .{.$requiredOs.=.$releaseNode->i
51a80 6e 73 74 61 6c 6c 63 6f 6e 64 69 74 69 6f 6e 73 20 26 26 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 nstallconditions.&&.$releaseNode
51aa0 2d 3e 69 6e 73 74 61 6c 6c 63 6f 6e 64 69 74 69 6f 6e 73 2d 3e 6f 73 20 26 26 20 24 72 65 6c 65 ->installconditions->os.&&.$rele
51ac0 61 73 65 4e 6f 64 65 2d 3e 69 6e 73 74 61 6c 6c 63 6f 6e 64 69 74 69 6f 6e 73 2d 3e 6f 73 2d 3e aseNode->installconditions->os->
51ae0 6e 61 6d 65 20 3f 20 28 73 74 72 69 6e 67 29 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 69 6e name.?.(string).$releaseNode->in
51b00 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 3a 20 27 27 3b 0a stallconditions->os->name.:.'';.
51b20 69 66 20 28 24 72 65 71 75 69 72 65 64 4f 73 20 26 26 20 24 76 61 72 73 5b 27 6f 73 27 5d 20 21 if.($requiredOs.&&.$vars['os'].!
51b40 3d 20 24 72 65 71 75 69 72 65 64 4f 73 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 =.$requiredOs).{.continue;.}..if
51b60 20 28 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 66 69 6c 65 6c 69 73 74 29 20 7b 0a 66 6f 72 65 .($releaseNode->filelist).{.fore
51b80 61 63 68 20 28 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 66 69 6c 65 6c 69 73 74 2d 3e 63 68 69 ach.($releaseNode->filelist->chi
51ba0 6c 64 72 65 6e 28 29 20 61 73 20 24 61 63 74 69 6f 6e 29 20 7b 0a 69 66 20 28 27 69 6e 73 74 61 ldren().as.$action).{.if.('insta
51bc0 6c 6c 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 ll'.==.$action->getName()).{.$na
51be0 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 24 me.=.(string).$action['name'];.$
51c00 61 73 20 3d 20 28 73 74 72 69 6e 67 29 20 24 61 63 74 69 6f 6e 5b 27 61 73 27 5d 3b 0a 69 66 20 as.=.(string).$action['as'];.if.
51c20 28 69 73 73 65 74 28 24 61 63 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 61 63 74 69 (isset($actions[$name])).{.$acti
51c40 6f 6e 73 5b 24 6e 61 6d 65 5d 5b 27 74 6f 27 5d 20 3d 20 24 61 73 3b 0a 7d 0a 7d 20 65 6c 73 65 ons[$name]['to'].=.$as;.}.}.else
51c60 69 66 20 28 27 69 67 6e 6f 72 65 27 20 3d 3d 20 24 61 63 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 if.('ignore'.==.$action->getName
51c80 28 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 61 63 74 69 6f 6e 5b 27 ()).{.$name.=.(string).$action['
51ca0 6e 61 6d 65 27 5d 3b 0a 75 6e 73 65 74 28 24 61 63 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 29 3b 0a name'];.unset($actions[$name]);.
51cc0 7d 20 65 6c 73 65 20 7b 0a 0a 20 7d 0a 7d 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 70 72 69 }.else.{...}.}.}.break;.}.}..pri
51ce0 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 31 30 28 vate.function.buildSourceList10(
51d00 24 63 68 69 6c 64 72 65 6e 2c 20 24 74 61 72 67 65 74 52 6f 6c 65 73 2c 20 24 73 6f 75 72 63 65 $children,.$targetRoles,.$source
51d20 2c 20 24 74 61 72 67 65 74 2c 20 24 72 6f 6c 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a ,.$target,.$role,.$packageName).
51d40 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 {.$result.=.array();....foreach.
51d60 28 24 63 68 69 6c 64 72 65 6e 20 61 73 20 24 63 68 69 6c 64 29 20 7b 0a 0a 69 66 20 28 24 63 68 ($children.as.$child).{..if.($ch
51d80 69 6c 64 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 20 27 64 69 72 27 29 20 7b 0a 24 64 69 72 53 ild->getName().==.'dir').{.$dirS
51da0 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 65 2c 20 ource.=.$this->combine($source,.
51dc0 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 64 69 72 54 61 (string).$child['name']);.$dirTa
51de0 72 67 65 74 20 3d 20 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 rget.=.$child['baseinstalldir'].
51e00 3f 3a 20 24 74 61 72 67 65 74 3b 0a 24 64 69 72 52 6f 6c 65 20 3d 20 24 63 68 69 6c 64 5b 27 72 ?:.$target;.$dirRole.=.$child['r
51e20 6f 6c 65 27 5d 20 3f 3a 20 24 72 6f 6c 65 3b 0a 24 64 69 72 46 69 6c 65 73 20 3d 20 24 74 68 69 ole'].?:.$role;.$dirFiles.=.$thi
51e40 73 2d 3e 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 31 30 28 24 63 68 69 6c 64 2d 3e 63 68 69 s->buildSourceList10($child->chi
51e60 6c 64 72 65 6e 28 29 2c 20 24 74 61 72 67 65 74 52 6f 6c 65 73 2c 20 24 64 69 72 53 6f 75 72 63 ldren(),.$targetRoles,.$dirSourc
51e80 65 2c 20 24 64 69 72 54 61 72 67 65 74 2c 20 24 64 69 72 52 6f 6c 65 2c 20 24 70 61 63 6b 61 67 e,.$dirTarget,.$dirRole,.$packag
51ea0 65 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 72 67 65 28 24 72 eName);.$result.=.array_merge($r
51ec0 65 73 75 6c 74 2c 20 24 64 69 72 46 69 6c 65 73 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 63 68 esult,.$dirFiles);.}.elseif.($ch
51ee0 69 6c 64 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 20 27 66 69 6c 65 27 29 20 7b 0a 24 66 69 6c ild->getName().==.'file').{.$fil
51f00 65 52 6f 6c 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 72 6f 6c 65 27 5d 20 eRole.=.(string).$child['role'].
51f20 3f 3a 20 24 72 6f 6c 65 3b 0a 69 66 20 28 69 73 73 65 74 28 24 74 61 72 67 65 74 52 6f 6c 65 73 ?:.$role;.if.(isset($targetRoles
51f40 5b 24 66 69 6c 65 52 6f 6c 65 5d 29 29 20 7b 0a 24 66 69 6c 65 4e 61 6d 65 20 3d 20 28 73 74 72 [$fileRole])).{.$fileName.=.(str
51f60 69 6e 67 29 20 28 24 63 68 69 6c 64 5b 27 6e 61 6d 65 27 5d 20 3f 3a 20 24 63 68 69 6c 64 5b 30 ing).($child['name'].?:.$child[0
51f80 5d 29 3b 20 0a 20 24 66 69 6c 65 53 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 ]);...$fileSource.=.$this->combi
51fa0 6e 65 28 24 73 6f 75 72 63 65 2c 20 24 66 69 6c 65 4e 61 6d 65 29 3b 0a 24 66 69 6c 65 54 61 72 ne($source,.$fileName);.$fileTar
51fc0 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 67 29 20 24 63 get.=.$this->combine((string).$c
51fe0 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
52000 74 2c 20 24 66 69 6c 65 4e 61 6d 65 29 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 66 69 t,.$fileName);.if.(!in_array($fi
52020 6c 65 52 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 leRole,.self::$rolesWithoutPacka
52040 67 65 4e 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 geNamePrefix)).{.$fileTarget.=.$
52060 70 61 63 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 packageName...'/'...$fileTarget;
52080 0a 7d 0a 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 .}.$result[(string).$child['name
520a0 27 5d 5d 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 ']].=.array('from'.=>.$fileSourc
520c0 65 2c 20 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 e,.'to'.=>.$fileTarget,.'role'.=
520e0 3e 20 24 66 69 6c 65 52 6f 6c 65 2c 20 27 74 61 73 6b 73 27 20 3d 3e 20 61 72 72 61 79 28 29 29 >.$fileRole,.'tasks'.=>.array())
52100 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
52120 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 32 30 28 24 ate.function.buildSourceList20($
52140 63 68 69 6c 64 72 65 6e 2c 20 24 74 61 72 67 65 74 52 6f 6c 65 73 2c 20 24 73 6f 75 72 63 65 2c children,.$targetRoles,.$source,
52160 20 24 74 61 72 67 65 74 2c 20 24 72 6f 6c 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b .$target,.$role,.$packageName).{
52180 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 .$result.=.array();....foreach.(
521a0 24 63 68 69 6c 64 72 65 6e 20 61 73 20 24 63 68 69 6c 64 29 20 7b 0a 0a 69 66 20 28 27 64 69 72 $children.as.$child).{..if.('dir
521c0 27 20 3d 3d 20 24 63 68 69 6c 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 64 69 72 53 6f '.==.$child->getName()).{.$dirSo
521e0 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 65 2c 20 24 urce.=.$this->combine($source,.$
52200 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 68 child['name']);.$dirTarget.=.$ch
52220 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 74 ild['baseinstalldir'].?:.$target
52240 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 24 ;.$dirRole.=.$child['role'].?:.$
52260 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 6f role;.$dirFiles.=.$this->buildSo
52280 75 72 63 65 4c 69 73 74 32 30 28 24 63 68 69 6c 64 2d 3e 63 68 69 6c 64 72 65 6e 28 29 2c 20 24 urceList20($child->children(),.$
522a0 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 72 targetRoles,.$dirSource,.$dirTar
522c0 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 72 get,.$dirRole,.$packageName);.$r
522e0 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 69 esult.=.array_merge($result,.$di
52300 72 46 69 6c 65 73 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 66 69 6c 65 27 20 3d 3d 20 24 63 68 rFiles);.}.elseif.('file'.==.$ch
52320 69 6c 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 66 69 6c 65 52 6f 6c 65 20 3d 20 28 73 ild->getName()).{.$fileRole.=.(s
52340 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 0a tring).$child['role'].?:.$role;.
52360 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 65 if.(isset($targetRoles[$fileRole
52380 5d 29 29 20 7b 0a 24 66 69 6c 65 53 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 ])).{.$fileSource.=.$this->combi
523a0 6e 65 28 24 73 6f 75 72 63 65 2c 20 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 6e 61 6d ne($source,.(string).$child['nam
523c0 65 27 5d 29 3b 0a 24 66 69 6c 65 54 61 72 67 65 74 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 e']);.$fileTarget.=.$this->combi
523e0 6e 65 28 28 73 74 72 69 6e 67 29 20 28 24 63 68 69 6c 64 5b 27 62 61 73 65 69 6e 73 74 61 6c 6c ne((string).($child['baseinstall
52400 64 69 72 27 5d 20 3f 3a 20 24 74 61 72 67 65 74 29 2c 20 28 73 74 72 69 6e 67 29 20 24 63 68 69 dir'].?:.$target),.(string).$chi
52420 6c 64 5b 27 6e 61 6d 65 27 5d 29 3b 0a 24 66 69 6c 65 54 61 73 6b 73 20 3d 20 61 72 72 61 79 28 ld['name']);.$fileTasks.=.array(
52440 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 68 69 6c 64 2d 3e 63 68 69 6c 64 72 65 6e 28 27 68 74 );.foreach.($child->children('ht
52460 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 74 61 73 6b 73 2d 31 2e 30 27 tp://pear.php.net/dtd/tasks-1.0'
52480 29 20 61 73 20 24 74 61 73 6b 4e 6f 64 65 29 20 7b 0a 69 66 20 28 27 72 65 70 6c 61 63 65 27 20 ).as.$taskNode).{.if.('replace'.
524a0 3d 3d 20 24 74 61 73 6b 4e 6f 64 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 66 69 6c 65 ==.$taskNode->getName()).{.$file
524c0 54 61 73 6b 73 5b 5d 20 3d 20 61 72 72 61 79 28 27 66 72 6f 6d 27 20 3d 3e 20 28 73 74 72 69 6e Tasks[].=.array('from'.=>.(strin
524e0 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 29 2d 3e 66 72 6f 6d g).$taskNode->attributes()->from
52500 2c 20 27 74 6f 27 20 3d 3e 20 28 73 74 72 69 6e 67 29 20 24 74 61 73 6b 4e 6f 64 65 2d 3e 61 74 ,.'to'.=>.(string).$taskNode->at
52520 74 72 69 62 75 74 65 73 28 29 2d 3e 74 6f 29 3b 0a 7d 0a 7d 0a 69 66 20 28 21 69 6e 5f 61 72 72 tributes()->to);.}.}.if.(!in_arr
52540 61 79 28 24 66 69 6c 65 52 6f 6c 65 2c 20 73 65 6c 66 3a 3a 24 72 6f 6c 65 73 57 69 74 68 6f 75 ay($fileRole,.self::$rolesWithou
52560 74 50 61 63 6b 61 67 65 4e 61 6d 65 50 72 65 66 69 78 29 29 20 7b 0a 24 66 69 6c 65 54 61 72 67 tPackageNamePrefix)).{.$fileTarg
52580 65 74 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 2e 20 27 2f 27 20 2e 20 24 66 69 6c 65 54 et.=.$packageName...'/'...$fileT
525a0 61 72 67 65 74 3b 0a 7d 0a 24 72 65 73 75 6c 74 5b 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 arget;.}.$result[(string).$child
525c0 5b 27 6e 61 6d 65 27 5d 5d 20 3d 20 61 72 72 61 79 28 27 66 72 6f 6d 27 20 3d 3e 20 24 66 69 6c ['name']].=.array('from'.=>.$fil
525e0 65 53 6f 75 72 63 65 2c 20 27 74 6f 27 20 3d 3e 20 24 66 69 6c 65 54 61 72 67 65 74 2c 20 27 72 eSource,.'to'.=>.$fileTarget,.'r
52600 6f 6c 65 27 20 3d 3e 20 24 66 69 6c 65 52 6f 6c 65 2c 20 27 74 61 73 6b 73 27 20 3d 3e 20 24 66 ole'.=>.$fileRole,.'tasks'.=>.$f
52620 69 6c 65 54 61 73 6b 73 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 ileTasks);.}.}.}..return.$result
52640 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 62 69 6e 65 28 24 6c ;.}..private.function.combine($l
52660 65 66 74 2c 20 24 72 69 67 68 74 29 0a 7b 0a 72 65 74 75 72 6e 20 72 74 72 69 6d 28 24 6c 65 66 eft,.$right).{.return.rtrim($lef
52680 74 2c 20 27 2f 27 29 20 2e 20 27 2f 27 20 2e 20 6c 74 72 69 6d 28 24 72 69 67 68 74 2c 20 27 2f t,.'/')...'/'...ltrim($right,.'/
526a0 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 70 61 ');.}.}.<?php............namespa
526c0 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 6d ce.Composer\Downloader;..use.Com
526e0 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 0a poser\Package\PackageInterface;.
52700 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 52 65 70 6f 73 use.Composer\Repository\VcsRepos
52720 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 65 72 66 6f 72 63 itory;.use.Composer\Util\Perforc
52740 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 65 72 66 6f 72 63 65 44 6f 77 6e 6c 6f 61 64 65 72 20 e;.....class.PerforceDownloader.
52760 65 78 74 65 6e 64 73 20 56 63 73 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 extends.VcsDownloader.{.protecte
52780 64 20 24 70 65 72 66 6f 72 63 65 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e d.$perforce;.....public.function
527a0 20 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 .doDownload(PackageInterface.$pa
527c0 63 6b 61 67 65 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 0a 7b 0a 24 72 65 66 20 3d 20 24 70 61 ckage,.$path,.$url).{.$ref.=.$pa
527e0 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 3b 0a 24 6c 61 ckage->getSourceReference();.$la
52800 62 65 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 61 62 65 6c 46 72 6f 6d 53 6f 75 72 63 65 52 bel.=.$this->getLabelFromSourceR
52820 65 66 65 72 65 6e 63 65 28 24 72 65 66 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 eference($ref);..$this->io->writ
52840 65 45 72 72 6f 72 28 27 20 20 20 20 43 6c 6f 6e 69 6e 67 20 27 20 2e 20 24 72 65 66 29 3b 0a 24 eError('....Cloning.'...$ref);.$
52860 74 68 69 73 2d 3e 69 6e 69 74 50 65 72 66 6f 72 63 65 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 this->initPerforce($package,.$pa
52880 74 68 2c 20 24 75 72 6c 29 3b 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 73 65 74 53 th,.$url);.$this->perforce->setS
528a0 74 72 65 61 6d 28 24 72 65 66 29 3b 0a 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 63 65 2d 3e 70 34 tream($ref);.$this->perforce->p4
528c0 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 70 65 72 66 6f 72 63 Login($this->io);.$this->perforc
528e0 65 2d 3e 77 72 69 74 65 50 34 43 6c 69 65 6e 74 53 70 65 63 28 29 3b 0a 24 74 68 69 73 2d 3e 70 e->writeP4ClientSpec();.$this->p
52900 65 72 66 6f 72 63 65 2d 3e 63 6f 6e 6e 65 63 74 43 6c 69 65 6e 74 28 29 3b 0a 24 74 68 69 73 2d erforce->connectClient();.$this-
52920 3e 70 65 72 66 6f 72 63 65 2d 3e 73 79 6e 63 43 6f 64 65 42 61 73 65 28 24 6c 61 62 65 6c 29 3b >perforce->syncCodeBase($label);
52940 0a 24 74 68 69 73 2d 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 .$this->perforce->cleanupClientS
52960 70 65 63 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 4c 61 pec();.}..private.function.getLa
52980 62 65 6c 46 72 6f 6d 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 24 72 65 66 29 0a 7b 0a 24 belFromSourceReference($ref).{.$
529a0 70 6f 73 20 3d 20 73 74 72 70 6f 73 28 24 72 65 66 2c 20 27 40 27 29 3b 0a 69 66 20 28 66 61 6c pos.=.strpos($ref,.'@');.if.(fal
529c0 73 65 20 21 3d 3d 20 24 70 6f 73 29 20 7b 0a 72 65 74 75 72 6e 20 73 75 62 73 74 72 28 24 72 65 se.!==.$pos).{.return.substr($re
529e0 66 2c 20 24 70 6f 73 20 2b 20 31 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a f,.$pos.+.1);.}..return.null;.}.
52a00 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 50 65 72 66 6f 72 63 65 28 24 70 .public.function.initPerforce($p
52a20 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
52a40 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
52a60 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
52a80 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
52aa0 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.=
52ac0 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
52ae0 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.=
52b00 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
52b20 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
52b40 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
52b60 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);.}
52b80 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
52ba0 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
52bc0 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(
52be0 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
52c00 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
52c20 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
52c40 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,
52c60 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
52c80 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
52ca0 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->
52cc0 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.
52ce0 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
52d00 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
52d20 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
52d40 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
52d60 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.=
52d80 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(
52da0 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);..
52dc0 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
52de0 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).{.
52e00 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 7d $this->perforce.=.$perforce;.}.}
52e20 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
52e40 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 73 20 50 68 61 oser\Downloader;.......class.Pha
52e60 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 44 6f 77 6e 6c rDownloader.extends.ArchiveDownl
52e80 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 6f 6e 20 65 78 oader.{....protected.function.ex
52ea0 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 63 68 69 76 65 tract($file,.$path).{...$archive
52ec0 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 76 65 2d 3e 65 .=.new.\Phar($file);.$archive->e
52ee0 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 3b 0a 0a 0a 0a xtractTo($path,.null,.true);....
52f00 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 73 70 61 63 65 ..}.}.<?php............namespace
52f20 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 6d 70 6f .Composer\Downloader;..use.Compo
52f40 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 65 3b 0a ser\Config;.use.Composer\Cache;.
52f60 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 65 use.Composer\EventDispatcher\Eve
52f80 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 55 74 69 6c 5c ntDispatcher;.use.Composer\Util\
52fa0 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
52fc0 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 65 il\RemoteFilesystem;.use.Compose
52fe0 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 65 r\IO\IOInterface;.use.RarArchive
53000 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 78 ;.........class.RarDownloader.ex
53020 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 63 tends.ArchiveDownloader.{.protec
53040 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 5f ted.$process;..public.function._
53060 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 66 _construct(IOInterface.$io,.Conf
53080 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 65 ig.$config,.EventDispatcher.$eve
530a0 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 68 ntDispatcher.=.null,.Cache.$cach
530c0 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 65 e.=.null,.ProcessExecutor.$proce
530e0 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 73 ss.=.null,.RemoteFilesystem.$rfs
53100 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 6f .=.null).{.$this->process.=.$pro
53120 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 29 cess.?:.new.ProcessExecutor($io)
53140 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 66 ;.parent::__construct($io,.$conf
53160 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 72 ig,.$eventDispatcher,.$cache,.$r
53180 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 61 fs);.}..protected.function.extra
531a0 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 72 ct($file,.$path).{.$processError
531c0 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 20 69 66 20 28 21 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 .=.null;....if.(!defined('PHP_WI
531e0 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e NDOWS_VERSION_BUILD')).{.$comman
53200 64 20 3d 20 27 75 6e 72 61 72 20 78 20 27 20 2e 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 d.=.'unrar.x.'...ProcessExecutor
53220 3a 3a 65 73 63 61 70 65 28 24 66 69 6c 65 29 20 2e 20 27 20 27 20 2e 20 50 72 6f 63 65 73 73 45 ::escape($file)...'.'...ProcessE
53240 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 70 61 74 68 29 20 2e 20 27 20 26 26 20 63 68 xecutor::escape($path)...'.&&.ch
53260 6d 6f 64 20 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 mod.-R.u+w.'...ProcessExecutor::
53280 65 73 63 61 70 65 28 24 70 61 74 68 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d escape($path);..if.(0.===.$this-
532a0 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 69 67 6e >process->execute($command,.$ign
532c0 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 72 6f 63 65 oredOutput)).{.return;.}..$proce
532e0 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 20 27 20 2e ssError.=.'Failed.to.execute.'..
53300 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 72 6f 63 .$command..."\n\n"...$this->proc
53320 65 73 73 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 28 21 63 ess->getErrorOutput();.}..if.(!c
53340 6c 61 73 73 5f 65 78 69 73 74 73 28 27 52 61 72 41 72 63 68 69 76 65 27 29 29 20 7b 0a 0a 20 24 lass_exists('RarArchive')).{...$
53360 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 66 69 6c 65 28 29 3b iniPath.=.php_ini_loaded_file();
53380 0a 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 3d 20 ..if.($iniPath).{.$iniMessage.=.
533a0 27 54 68 65 20 70 68 70 2e 69 6e 69 20 75 73 65 64 20 62 79 20 79 6f 75 72 20 63 6f 6d 6d 61 6e 'The.php.ini.used.by.your.comman
533c0 64 2d 6c 69 6e 65 20 50 48 50 20 69 73 3a 20 27 20 2e 20 24 69 6e 69 50 61 74 68 3b 0a 7d 20 65 d-line.PHP.is:.'...$iniPath;.}.e
533e0 6c 73 65 20 7b 0a 24 69 6e 69 4d 65 73 73 61 67 65 20 3d 20 27 41 20 70 68 70 2e 69 6e 69 20 66 lse.{.$iniMessage.=.'A.php.ini.f
53400 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 61 76 ile.does.not.exist..You.will.hav
53420 65 20 74 6f 20 63 72 65 61 74 65 20 6f 6e 65 2e 27 3b 0a 7d 0a 0a 24 65 72 72 6f 72 20 3d 20 22 e.to.create.one.';.}..$error.=."
53440 43 6f 75 6c 64 20 6e 6f 74 20 64 65 63 6f 6d 70 72 65 73 73 20 74 68 65 20 61 72 63 68 69 76 65 Could.not.decompress.the.archive
53460 2c 20 65 6e 61 62 6c 65 20 74 68 65 20 50 48 50 20 72 61 72 20 65 78 74 65 6e 73 69 6f 6e 20 6f ,.enable.the.PHP.rar.extension.o
53480 72 20 69 6e 73 74 61 6c 6c 20 75 6e 72 61 72 2e 5c 6e 22 0a 2e 20 24 69 6e 69 4d 65 73 73 61 67 r.install.unrar.\n"...$iniMessag
534a0 65 20 2e 20 22 5c 6e 22 20 2e 20 24 70 72 6f 63 65 73 73 45 72 72 6f 72 3b 0a 0a 69 66 20 28 21 e..."\n"...$processError;..if.(!
534c0 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 4f 4e 5f 42 55 49 defined('PHP_WINDOWS_VERSION_BUI
534e0 4c 44 27 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 65 63 6f LD')).{.$error.=."Could.not.deco
53500 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
53520 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 73 73 61 HP.rar.extension.\n"...$iniMessa
53540 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 70 74 69 ge;.}..throw.new.\RuntimeExcepti
53560 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 52 61 72 on($error);.}..$rarArchive.=.Rar
53580 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 6c 73 65 Archive::open($file);..if.(false
535a0 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 20 5c 55 .===.$rarArchive).{.throw.new.\U
535c0 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 64 20 6e nexpectedValueException('Could.n
535e0 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 65 29 3b ot.open.RAR.archive:.'...$file);
53600 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 65 74 45 .}..$entries.=.$rarArchive->getE
53620 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 72 69 65 ntries();..if.(false.===.$entrie
53640 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 69 6f 6e s).{.throw.new.\RuntimeException
53660 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 69 76 65 ('Could.not.retrieve.RAR.archive
53680 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 69 65 73 .entries');.}..foreach.($entries
536a0 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 65 6e 74 .as.$entry).{.if.(false.===.$ent
536c0 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 65 77 20 ry->extract($path)).{.throw.new.
536e0 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 65 78 74 \RuntimeException('Could.not.ext
53700 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 65 2d 3e ract.entry');.}.}..$rarArchive->
53720 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 0a 6e 61 close();.}.}.<?php............na
53740 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 75 73 mespace.Composer\Downloader;..us
53760 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
53780 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 20 53 76 ace;.use.Composer\Util\Svn.as.Sv
537a0 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 79 5c 56 nUtil;.use.Composer\Repository\V
537c0 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 6f 77 6e csRepository;......class.SvnDown
537e0 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 7b 0a 70 loader.extends.VcsDownloader.{.p
53800 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 75 rotected.$cacheCredentials.=.tru
53820 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 6f 61 e;.....public.function.doDownloa
53840 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 61 d(PackageInterface.$package,.$pa
53860 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 28 29 3b th,.$url).{.SvnUtil::cleanEnv();
53880 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 66 65 72 .$ref.=.$package->getSourceRefer
538a0 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 74 52 65 ence();..$repo.=.$package->getRe
538c0 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 65 6f 66 pository();.if.($repo.instanceof
538e0 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 20 .VcsRepository).{.$repoConfig.=.
53900 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 72 72 61 $repo->getRepoConfig();.if.(arra
53920 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 6e 74 69 y_key_exists('svn-cache-credenti
53940 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 63 61 63 als',.$repoConfig)).{.$this->cac
53960 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 6f 6e 66 heCredentials.=.(bool).$repoConf
53980 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 7d 0a 7d ig['svn-cache-credentials'];.}.}
539a0 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 43 68 65 ..$this->io->writeError("....Che
539c0 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 63 65 52 cking.out.".$package->getSourceR
539e0 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 75 72 6c eference());.$this->execute($url
53a00 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 24 75 72 ,."svn.co",.sprintf("%s/%s",.$ur
53a20 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 0a 70 75 l,.$ref),.null,.$path);.}.....pu
53a40 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 65 49 6e blic.function.doUpdate(PackageIn
53a60 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 72 66 61 terface.$initial,.PackageInterfa
53a80 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 6e 55 74 ce.$target,.$path,.$url).{.SvnUt
53aa0 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 74 2d 3e il::cleanEnv();.$ref.=.$target->
53ac0 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 69 73 5f 64 getSourceReference();..if.(!is_d
53ae0 69 72 28 24 70 61 74 68 2e 27 2f 2e 73 76 6e 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c ir($path.'/.svn')).{.throw.new.\
53b00 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 2e 73 76 6e 20 64 69 72 65 63 RuntimeException('The..svn.direc
53b20 74 6f 72 79 20 69 73 20 6d 69 73 73 69 6e 67 20 66 72 6f 6d 20 27 2e 24 70 61 74 68 2e 27 2c 20 tory.is.missing.from.'.$path.',.
53b40 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 67 2f 63 6f 6d 6d see.https://getcomposer.org/comm
53b60 69 74 2d 64 65 70 73 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 3b 0a it-deps.for.more.information');.
53b80 7d 0a 0a 24 66 6c 61 67 73 20 3d 20 22 22 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d }..$flags.=."";.if.(0.===.$this-
53ba0 3e 70 72 6f 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 >process->execute('svn.--version
53bc0 27 2c 20 24 6f 75 74 70 75 74 29 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b ',.$output)).{.if.(preg_match('{
53be0 28 5c 64 2b 28 3f 3a 5c 2e 5c 64 2b 29 2b 29 7d 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 6d 61 74 (\d+(?:\.\d+)+)}',.$output,.$mat
53c00 63 68 29 20 26 26 20 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 24 6d 61 74 63 68 5b 31 5d ch).&&.version_compare($match[1]
53c20 2c 20 27 31 2e 37 2e 30 27 2c 20 27 3e 3d 27 29 29 20 7b 0a 24 66 6c 61 67 73 20 2e 3d 20 27 20 ,.'1.7.0',.'>=')).{.$flags..=.'.
53c40 2d 2d 69 67 6e 6f 72 65 2d 61 6e 63 65 73 74 72 79 27 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e --ignore-ancestry';.}.}..$this->
53c60 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 75 74 io->writeError("....Checking.out
53c80 20 22 20 2e 20 24 72 65 66 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 24 75 72 6c 2c ."...$ref);.$this->execute($url,
53ca0 20 22 73 76 6e 20 73 77 69 74 63 68 22 20 2e 20 24 66 6c 61 67 73 2c 20 73 70 72 69 6e 74 66 28 ."svn.switch"...$flags,.sprintf(
53cc0 22 25 73 2f 25 73 22 2c 20 24 75 72 6c 2c 20 24 72 65 66 29 2c 20 24 70 61 74 68 29 3b 0a 7d 0a "%s/%s",.$url,.$ref),.$path);.}.
53ce0 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 61 6c 43 68 61 6e ....public.function.getLocalChan
53d00 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 20 24 ges(PackageInterface.$package,.$
53d20 70 61 74 68 29 0a 7b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 70 61 74 68 2e 27 2f 2e 73 76 6e path).{.if.(!is_dir($path.'/.svn
53d40 27 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 ')).{.return;.}..$this->process-
53d60 3e 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 >execute('svn.status.--ignore-ex
53d80 74 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 ternals',.$output,.$path);..retu
53da0 72 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 rn.preg_match('{^.*[^X.].+}m',.$
53dc0 6f 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 output).?.$output.:.null;.}.....
53de0 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 65 63 .........protected.function.exec
53e00 75 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 ute($baseUrl,.$command,.$url,.$c
53e20 77 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 wd.=.null,.$path.=.null).{.$util
53e40 20 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 .=.new.SvnUtil($baseUrl,.$this->
53e60 69 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 io,.$this->config);.$util->setCa
53e80 63 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 cheCredentials($this->cacheCrede
53ea0 6e 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 ntials);.try.{.return.$util->exe
53ec0 63 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 cute($command,.$url,.$cwd,.$path
53ee0 2c 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 ,.$this->io->isVerbose());.}.cat
53f00 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 74 68 72 6f ch.(\RuntimeException.$e).{.thro
53f20 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 50 61 63 6b 61 67 w.new.\RuntimeException(.'Packag
53f40 65 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 e.could.not.be.downloaded,.'.$e-
53f60 3e 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 >getMessage().);.}.}.....protect
53f80 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
53fa0 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
53fc0 74 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 te).{.if.(!$changes.=.$this->get
53fe0 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 7b LocalChanges($package,.$path)).{
54000 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 6e .return;.}..if.(!$this->io->isIn
54020 74 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 teractive()).{.if.(true.===.$thi
54040 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 61 6e 67 65 73 27 s->config->get('discard-changes'
54060 29 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 )).{.return.$this->discardChange
54080 73 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 s($path);.}..return.parent::clea
540a0 6e 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 nChanges($package,.$path,.$updat
540c0 65 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 e);.}..$changes.=.array_map(func
540e0 74 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 tion.($elem).{.return.'....'.$el
54100 65 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 em;.},.preg_split('{\s*\r?\n\s*}
54120 27 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 ',.$changes));.$this->io->writeE
54140 72 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 rror('....<error>The.package.has
54160 20 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 .modified.files:</error>');.$thi
54180 73 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 s->io->writeError(array_slice($c
541a0 68 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 hanges,.0,.10));.if.(count($chan
541c0 67 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 ges).>.10).{.$this->io->writeErr
541e0 6f 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 or('....<info>'.count($changes).
54200 2d 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 -.10...'.more.files.modified,.ch
54220 6f 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 oose."v".to.view.the.full.list</
54240 69 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 info>');.}..while.(true).{.switc
54260 68 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 h.($this->io->ask('....<info>Dis
54280 63 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 card.changes.[y,n,v,?]?</info>.'
542a0 2c 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 ,.'?')).{.case.'y':.$this->disca
542c0 72 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 rdChanges($path);.break.2;..case
542e0 20 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 .'n':.throw.new.\RuntimeExceptio
54300 6e 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 n('Update.aborted');..case.'v':.
54320 24 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 $this->io->writeError($changes);
54340 0a 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 .break;..case.'?':.default:.$thi
54360 73 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 s->io->writeError(array(.'....y.
54380 2d 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 -.discard.changes.and.apply.the.
543a0 27 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 '.($update.?.'update'.:.'uninsta
543c0 6c 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 ll'),.'....n.-.abort.the.'.($upd
543e0 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 6c 27 29 2e 27 20 ate.?.'update'.:.'uninstall').'.
54400 61 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 and.let.you.manually.clean.thing
54420 73 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 s.up',.'....v.-.view.modified.fi
54440 6c 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 les',.'....?.-.print.help',.));.
54460 62 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 break;.}.}.}.....protected.funct
54480 69 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 ion.getCommitLogs($fromReference
544a0 2c 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 ,.$toReference,.$path).{.if.(pre
544c0 67 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 g_match('{.*@(\d+)$}',.$fromRefe
544e0 72 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 rence).&&.preg_match('{.*@(\d+)$
54500 7d 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 }',.$toReference)).{...$fromRevi
54520 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+)$}
54540 27 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 ',.'$1',.$fromReference);.$toRev
54560 69 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 ision.=.preg_replace('{.*@(\d+)$
54580 7d 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 }',.'$1',.$toReference);..$comma
545a0 6e 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 nd.=.sprintf('svn.log.-r%s:%s.--
545c0 69 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 incremental',.$fromRevision,.$to
545e0 52 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 Revision);..if.(0.!==.$this->pro
54600 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 2c cess->execute($command,.$output,
54620 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
54640 65 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 eption(.'Failed.to.execute.'...$
54660 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 72 6f 63 65 73 command..."\n\n"...$this->proces
54680 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 7d 20 65 6c 73 65 20 s->getErrorOutput().);.}.}.else.
546a0 7b 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 {.$output.=."Could.not.retrieve.
546c0 63 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 changes.between.$fromReference.a
546e0 6e 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 nd.$toReference.due.to.missing.r
54700 65 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 evision.information";.}..return.
54720 24 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 $output;.}..protected.function.d
54740 69 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 iscardChanges($path).{.if.(0.!==
54760 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 73 76 6e 20 72 65 .$this->process->execute('svn.re
54780 76 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 vert.-R..',.$output,.$path)).{.t
547a0 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 43 6f 75 6c hrow.new.\RuntimeException("Coul
547c0 64 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 d.not.reset.changes\n\n:".$this-
547e0 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 7d >process->getErrorOutput());.}.}
54800 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
54820 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 73 20 54 mposer\Downloader;.......class.T
54840 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 44 6f 77 6e arDownloader.extends.ArchiveDown
54860 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 6f 6e 20 65 loader.{....protected.function.e
54880 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 63 68 69 76 xtract($file,.$path).{...$archiv
548a0 65 20 3d 20 6e 65 77 20 5c 50 68 61 72 44 61 74 61 28 24 66 69 6c 65 29 3b 0a 24 61 72 63 68 69 e.=.new.\PharData($file);.$archi
548c0 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)
548e0 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
54900 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 63 6c 61 73 73 20 .Composer\Downloader;.....class.
54920 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 TransportException.extends.\Runt
54940 69 6d 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 68 65 61 64 65 72 imeException.{.protected.$header
54960 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 73 70 6f 6e 73 65 3b 0a 0a 70 75 62 6c 69 63 20 s;.protected.$response;..public.
54980 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 65 61 64 65 72 73 28 24 68 65 61 64 65 72 73 29 0a 7b 0a function.setHeaders($headers).{.
549a0 24 74 68 69 73 2d 3e 68 65 61 64 65 72 73 20 3d 20 24 68 65 61 64 65 72 73 3b 0a 7d 0a 0a 70 75 $this->headers.=.$headers;.}..pu
549c0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 61 64 65 72 73 28 29 0a 7b 0a 72 65 74 blic.function.getHeaders().{.ret
549e0 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 61 64 65 72 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 urn.$this->headers;.}..public.fu
54a00 6e 63 74 69 6f 6e 20 73 65 74 52 65 73 70 6f 6e 73 65 28 24 72 65 73 70 6f 6e 73 65 29 0a 7b 0a nction.setResponse($response).{.
54a20 24 74 68 69 73 2d 3e 72 65 73 70 6f 6e 73 65 20 3d 20 24 72 65 73 70 6f 6e 73 65 3b 0a 7d 0a 0a $this->response.=.$response;.}..
54a40 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 73 70 6f 6e 73 65 28 29 0a 7b 0a public.function.getResponse().{.
54a60 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 73 70 6f 6e 73 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 return.$this->response;.}.}.<?ph
54a80 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\
54aa0 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 67 Downloader;..use.Composer\Config
54ac0 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
54ae0 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 72 6f 63 65 terface;.use.Composer\Util\Proce
54b00 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 49 4f 5c 49 4f 49 6e ssExecutor;.use.Composer\IO\IOIn
54b20 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 46 69 6c 65 73 terface;.use.Composer\Util\Files
54b40 79 73 74 65 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 ystem;.....abstract.class.VcsDow
54b60 6e 6c 6f 61 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 nloader.implements.DownloaderInt
54b80 65 72 66 61 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 erface,.ChangeReportInterface.{.
54ba0 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 64 20 24 63 6f 6e 66 .protected.$io;..protected.$conf
54bc0 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 0a 70 72 6f 74 65 63 ig;..protected.$process;..protec
54be0 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 74 69 6f ted.$filesystem;..public.functio
54c00 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 20 43 n.__construct(IOInterface.$io,.C
54c20 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 63 75 74 6f 72 20 24 onfig.$config,.ProcessExecutor.$
54c40 70 72 6f 63 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 process.=.null,.Filesystem.$fs.=
54c60 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-
54c80 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 70 72 6f 63 65 73 >config.=.$config;.$this->proces
54ca0 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
54cc0 74 6f 72 28 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 tor($io);.$this->filesystem.=.$f
54ce0 73 20 3f 3a 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 s.?:.new.Filesystem($this->proce
54d00 73 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 67 65 74 49 6e ss);.}.....public.function.getIn
54d20 73 74 61 6c 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 stallationSource().{.return.'sou
54d40 72 63 65 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 64 6f 77 6e rce';.}.....public.function.down
54d60 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,.
54d80 24 70 61 74 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 $path).{.if.(!$package->getSourc
54da0 65 52 65 66 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 eReference()).{.throw.new.\Inval
54dc0 69 64 41 72 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 idArgumentException('Package.'.$
54de0 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 69 73 20 6d 69 package->getPrettyName().'.is.mi
54e00 73 73 69 6e 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 ssing.reference.information');.}
54e20 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 2d 20 49 6e 73 ..$this->io->writeError("..-.Ins
54e40 74 61 6c 6c 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 talling.<info>"...$package->getN
54e60 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 2e 20 24 ame()..."</info>.(<comment>"...$
54e80 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 20 package->getFullPrettyVersion().
54ea0 2e 20 22 3c 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 .."</comment>)");.$this->filesys
54ec0 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 24 75 72 tem->emptyDirectory($path);..$ur
54ee0 6c 73 20 3d 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 ls.=.$package->getSourceUrls();.
54f00 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 24 75 72 6c 73 29 while.($url.=.array_shift($urls)
54f20 29 20 7b 0a 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 ).{.try.{.if.(Filesystem::isLoca
54f40 6c 50 61 74 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 lPath($url)).{.$url.=.realpath($
54f60 75 72 6c 29 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 url);.}.$this->doDownload($packa
54f80 67 65 2c 20 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 ge,.$path,.$url);.break;.}.catch
54fa0 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f .(\Exception.$e).{.if.($this->io
54fc0 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 69 74 65 45 ->isDebug()).{.$this->io->writeE
54fe0 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 29 2e 27 rror('Failed:.['.get_class($e).'
55000 5d 20 27 2e 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 ].'.$e->getMessage());.}.elseif.
55020 28 63 6f 75 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 (count($urls)).{.$this->io->writ
55040 65 45 72 72 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 eError('....Failed,.trying.the.n
55060 65 78 74 20 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 ext.URL');.}.if.(!count($urls)).
55080 7b 0a 74 68 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 {.throw.$e;.}.}.}..$this->io->wr
550a0 69 74 65 45 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 iteError('');.}.....public.funct
550c0 69 6f 6e 20 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 ion.update(PackageInterface.$ini
550e0 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 2c 20 tial,.PackageInterface.$target,.
55100 24 70 61 74 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 $path).{.if.(!$target->getSource
55120 52 65 66 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 Reference()).{.throw.new.\Invali
55140 64 41 72 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 74 dArgumentException('Package.'.$t
55160 61 72 67 65 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 arget->getPrettyName().'.is.miss
55180 69 6e 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 ing.reference.information');.}..
551a0 24 6e 61 6d 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 $name.=.$target->getName();.if.(
551c0 24 69 6e 69 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 $initial->getPrettyVersion().==.
551e0 24 74 61 72 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 $target->getPrettyVersion()).{.i
55200 66 20 28 24 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 f.($target->getSourceType().===.
55220 27 73 76 6e 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 'svn').{.$from.=.$initial->getSo
55240 75 72 63 65 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 urceReference();.$to.=.$target->
55260 67 65 74 53 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 getSourceReference();.}.else.{.$
55280 66 72 6f 6d 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 from.=.substr($initial->getSourc
552a0 65 52 65 66 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 eReference(),.0,.7);.$to.=.subst
552c0 72 28 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 r($target->getSourceReference(),
552e0 20 30 2c 20 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 .0,.7);.}.$name..=.'.'.$initial-
55300 3e 67 65 74 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 >getPrettyVersion();.}.else.{.$f
55320 72 6f 6d 20 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 rom.=.$initial->getFullPrettyVer
55340 73 69 6f 6e 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 sion();.$to.=.$target->getFullPr
55360 65 74 74 79 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 ettyVersion();.}..$this->io->wri
55380 74 65 45 72 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 teError("..-.Updating.<info>"...
553a0 24 6e 61 6d 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 $name..."</info>.(<comment>"...$
553c0 66 72 6f 6d 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 from..."</comment>.=>.<comment>"
553e0 20 2e 20 24 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 ...$to..."</comment>)");..$this-
55400 3e 63 6c 65 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 >cleanChanges($initial,.$path,.t
55420 72 75 65 29 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 rue);.$urls.=.$target->getSource
55440 55 72 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 Urls();.while.($url.=.array_shif
55460 74 28 24 75 72 6c 73 29 29 20 7b 0a 74 72 79 20 7b 0a 69 66 20 28 46 69 6c 65 73 79 73 74 65 6d t($urls)).{.try.{.if.(Filesystem
55480 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 72 65 ::isLocalPath($url)).{.$url.=.re
554a0 61 6c 70 61 74 68 28 24 75 72 6c 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 64 6f 55 70 64 61 74 65 28 alpath($url);.}.$this->doUpdate(
554c0 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 2c 20 24 75 72 6c 29 3b $initial,.$target,.$path,.$url);
554e0 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 24 65 29 20 .break;.}.catch.(\Exception.$e).
55500 7b 0a 69 66 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 {.if.($this->io->isDebug()).{.$t
55520 68 69 73 2d 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 his->io->writeError('Failed:.['.
55540 67 65 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 get_class($e).'].'.$e->getMessag
55560 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 6c 73 29 29 20 7b 0a e());.}.elseif.(count($urls)).{.
55580 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 6c 65 $this->io->writeError('....Faile
555a0 64 2c 20 74 72 79 69 6e 67 20 74 68 65 20 6e 65 78 74 20 55 52 4c 27 29 3b 0a 7d 20 65 6c 73 65 d,.trying.the.next.URL');.}.else
555c0 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 72 65 61 70 70 6c 79 43 68 61 6e 67 65 73 28 24 70 61 74 68 .{...$this->reapplyChanges($path
555e0 29 3b 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 61 70 );..throw.$e;.}.}.}..$this->reap
55600 70 6c 79 43 68 61 6e 67 65 73 28 24 70 61 74 68 29 3b 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d plyChanges($path);....if.($this-
55620 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 >io->isVerbose()).{.$message.=.'
55640 50 75 6c 6c 69 6e 67 20 69 6e 20 63 68 61 6e 67 65 73 3a 27 3b 0a 24 6c 6f 67 73 20 3d 20 24 74 Pulling.in.changes:';.$logs.=.$t
55660 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 69 74 4c 6f 67 73 28 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 his->getCommitLogs($initial->get
55680 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 2c 20 24 74 61 72 67 65 74 2d 3e 67 65 74 53 SourceReference(),.$target->getS
556a0 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 2c 20 24 70 61 74 68 29 3b 0a 0a 69 66 20 28 21 ourceReference(),.$path);..if.(!
556c0 74 72 69 6d 28 24 6c 6f 67 73 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 52 6f 6c 6c 69 trim($logs)).{.$message.=.'Rolli
556e0 6e 67 20 62 61 63 6b 20 63 68 61 6e 67 65 73 3a 27 3b 0a 24 6c 6f 67 73 20 3d 20 24 74 68 69 73 ng.back.changes:';.$logs.=.$this
55700 2d 3e 67 65 74 43 6f 6d 6d 69 74 4c 6f 67 73 28 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 ->getCommitLogs($target->getSour
55720 63 65 52 65 66 65 72 65 6e 63 65 28 29 2c 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 53 6f 75 72 ceReference(),.$initial->getSour
55740 63 65 52 65 66 65 72 65 6e 63 65 28 29 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 69 66 20 28 74 72 ceReference(),.$path);.}..if.(tr
55760 69 6d 28 24 6c 6f 67 73 29 29 20 7b 0a 24 6c 6f 67 73 20 3d 20 69 6d 70 6c 6f 64 65 28 22 5c 6e im($logs)).{.$logs.=.implode("\n
55780 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 6e 65 29 20 7b 0a ",.array_map(function.($line).{.
557a0 72 65 74 75 72 6e 20 27 20 20 20 20 20 20 27 20 2e 20 24 6c 69 6e 65 3b 0a 7d 2c 20 65 78 70 6c return.'......'...$line;.},.expl
557c0 6f 64 65 28 22 5c 6e 22 2c 20 24 6c 6f 67 73 29 29 29 3b 0a 0a 0a 20 24 6c 6f 67 73 20 3d 20 73 ode("\n",.$logs)));....$logs.=.s
557e0 74 72 5f 72 65 70 6c 61 63 65 28 27 3c 27 2c 20 27 5c 3c 27 2c 20 24 6c 6f 67 73 29 3b 0a 0a 24 tr_replace('<',.'\<',.$logs);..$
55800 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 27 2e 24 6d 65 73 this->io->writeError('....'.$mes
55820 73 61 67 65 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 24 6c 6f sage);.$this->io->writeError($lo
55840 67 73 29 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 gs);.}.}..$this->io->writeError(
55860 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 76 '');.}.....public.function.remov
55880 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 61 e(PackageInterface.$package,.$pa
558a0 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 2d th).{.$this->io->writeError("..-
558c0 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 65 .Removing.<info>"...$package->ge
558e0 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 2e tName()..."</info>.(<comment>"..
55900 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 20 .$package->getPrettyVersion()...
55920 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 6e "</comment>)");.$this->cleanChan
55940 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 20 ges($package,.$path,.false);.if.
55960 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 63 (!$this->filesystem->removeDirec
55980 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 6d tory($path)).{.throw.new.\Runtim
559a0 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 79 eException('Could.not.completely
559c0 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 0a .delete.'.$path.',.aborting.');.
559e0 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 70 }.}......public.function.setOutp
55a00 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 65 utProgress($outputProgress).{.re
55a20 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 65 turn.$this;.}...........protecte
55a40 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
55a60 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
55a80 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 6f e).{...if.(null.!==.$this->getLo
55aa0 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 74 calChanges($package,.$path)).{.t
55ac0 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 72 hrow.new.\RuntimeException('Sour
55ae0 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 75 ce.directory.'...$path...'.has.u
55b00 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 0a ncommitted.changes.');.}.}......
55b20 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 6e ..protected.function.reapplyChan
55b40 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 20 ges($path).{.}.........abstract.
55b60 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 61 protected.function.doDownload(Pa
55b80 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 20 ckageInterface.$package,.$path,.
55ba0 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 74 $url);..........abstract.protect
55bc0 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 65 ed.function.doUpdate(PackageInte
55be0 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 65 rface.$initial,.PackageInterface
55c00 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 0a .$target,.$path,.$url);.........
55c20 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 74 .abstract.protected.function.get
55c40 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 65 CommitLogs($fromReference,.$toRe
55c60 66 65 72 65 6e 63 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 ference,.$path);.}.<?php........
55c80 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 61 64 65 ....namespace.Composer\Downloade
55ca0 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 43 6f 6d r;..use.Composer\Config;.use.Com
55cc0 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 6e 74 44 poser\Cache;.use.Composer\EventD
55ce0 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
55d00 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
55d20 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
55d40 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
55d60 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 74 65 72 esystem;.use.Composer\IO\IOInter
55d80 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 65 72 20 face;........class.XzDownloader.
55da0 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 72 6f 74 extends.ArchiveDownloader.{.prot
55dc0 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 69 6f 6e ected.$process;..public.function
55de0 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 20 43 6f .__construct(IOInterface.$io,.Co
55e00 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 20 24 65 nfig.$config,.EventDispatcher.$e
55e20 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 24 63 61 ventDispatcher.=.null,.Cache.$ca
55e40 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 70 72 6f che.=.null,.ProcessExecutor.$pro
55e60 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 20 24 72 cess.=.null,.RemoteFilesystem.$r
55e80 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 20 24 70 fs.=.null).{.$this->process.=.$p
55ea0 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 24 69 rocess.?:.new.ProcessExecutor($i
55ec0 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 20 24 63 o);..parent::__construct($io,.$c
55ee0 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,
55f00 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 20 65 78 .$rfs);.}..protected.function.ex
55f20 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 64 20 3d tract($file,.$path).{.$command.=
55f40 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 72 3a 3a .'tar.-xJf.'...ProcessExecutor::
55f60 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 65 73 73 escape($file)...'.-C.'...Process
55f80 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 28 30 20 Executor::escape($path);..if.(0.
55fa0 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 63 6f 6d ===.$this->process->execute($com
55fc0 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 72 6e 3b mand,.$ignoredOutput)).{.return;
55fe0 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 6f 20 65 .}..$processError.=.'Failed.to.e
56000 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 2e 20 24 xecute.'...$command..."\n\n"...$
56020 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 3b this->process->getErrorOutput();
56040 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 70 ..throw.new.\RuntimeException($p
56060 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 20 66 75 rocessError);.}.....protected.fu
56080 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 65 72 66 nction.getFileName(PackageInterf
560a0 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 20 24 70 ace.$package,.$path).{.return.$p
560c0 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 61 63 6b ath.'/'.pathinfo(parse_url($pack
560e0 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 54 48 29 age->getDistUrl(),.PHP_URL_PATH)
56100 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 68 70 0a ,.PATHINFO_BASENAME);.}.}.<?php.
56120 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 6f ...........namespace.Composer\Do
56140 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 67 3b 0a wnloader;..use.Composer\Config;.
56160 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 73 65 72 use.Composer\Cache;.use.Composer
56180 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 68 65 72 \EventDispatcher\EventDispatcher
561a0 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
561c0 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
561e0 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 74 65 72 esystem;.use.Composer\IO\IOInter
56200 66 61 63 65 3b 0a 75 73 65 20 5a 69 70 41 72 63 68 69 76 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 face;.use.ZipArchive;.....class.
56220 5a 69 70 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 44 6f 77 ZipDownloader.extends.ArchiveDow
56240 6e 6c 6f 61 64 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 0a 70 nloader.{.protected.$process;..p
56260 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
56280 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 45 76 65 6e erface.$io,.Config.$config,.Even
562a0 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 72 20 3d 20 6e tDispatcher.$eventDispatcher.=.n
562c0 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 20 50 72 6f 63 65 73 ull,.Cache.$cache.=.null,.Proces
562e0 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 65 6d 6f 74 sExecutor.$process.=.null,.Remot
56300 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 24 74 68 69 73 eFilesystem.$rfs.=.null).{.$this
56320 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
56340 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 essExecutor($io);.parent::__cons
56360 74 72 75 63 74 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 truct($io,.$config,.$eventDispat
56380 63 68 65 72 2c 20 24 63 61 63 68 65 2c 20 24 72 66 73 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 cher,.$cache,.$rfs);.}..protecte
563a0 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)
563c0 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 0a 20 69 66 20 28 .{.$processError.=.null;....if.(
563e0 21 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 4f 4e 5f 42 55 !defined('PHP_WINDOWS_VERSION_BU
56400 49 4c 44 27 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 75 6e 7a 69 70 20 27 2e 50 72 6f ILD')).{.$command.=.'unzip.'.Pro
56420 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 29 2e 27 20 2d 64 cessExecutor::escape($file).'.-d
56440 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 70 61 74 68 .'.ProcessExecutor::escape($path
56460 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 20 50 72 6f 63 65 73 )...'.&&.chmod.-R.u+w.'...Proces
56480 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 74 72 79 20 7b 0a sExecutor::escape($path);.try.{.
564a0 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 74 if.(0.===.$this->process->execut
564c0 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 0a 72 e($command,.$ignoredOutput)).{.r
564e0 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 6c 65 eturn;.}..$processError.=.'Faile
56500 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 5c d.to.execute.'...$command..."\n\
56520 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 74 n"...$this->process->getErrorOut
56540 70 75 74 28 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 put();.}.catch.(\Exception.$e).{
56560 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 6f 20 65 78 65 63 .$processError.=.'Failed.to.exec
56580 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 2e 20 24 65 2d 3e ute.'...$command..."\n\n"...$e->
565a0 67 65 74 4d 65 73 73 61 67 65 28 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 63 6c 61 73 73 5f 65 78 getMessage();.}.}..if.(!class_ex
565c0 69 73 74 73 28 27 5a 69 70 41 72 63 68 69 76 65 27 29 29 20 7b 0a 0a 20 24 69 6e 69 50 61 74 68 ists('ZipArchive')).{...$iniPath
565e0 20 3d 20 70 68 70 5f 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 .=.php_ini_loaded_file();..if.($
56600 69 6e 69 50 61 74 68 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 iniPath).{.$iniMessage.=.'The.ph
56620 70 2e 69 6e 69 20 75 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 p.ini.used.by.your.command-line.
56640 50 48 50 20 69 73 3a 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 PHP.is:.'...$iniPath;.}.else.{.$
56660 69 6e 69 4d 65 73 73 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 iniMessage.=.'A.php.ini.file.doe
56680 73 20 6e 6f 74 20 65 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 s.not.exist..You.will.have.to.cr
566a0 65 61 74 65 20 6f 6e 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 eate.one.';.}..$error.=."Could.n
566c0 6f 74 20 64 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 ot.decompress.the.archive,.enabl
566e0 65 20 74 68 65 20 50 48 50 20 7a 69 70 20 65 78 74 65 6e 73 69 6f 6e 20 6f 72 20 69 6e 73 74 61 e.the.PHP.zip.extension.or.insta
56700 6c 6c 20 75 6e 7a 69 70 2e 5c 6e 22 0a 2e 20 24 69 6e 69 4d 65 73 73 61 67 65 20 2e 20 22 5c 6e ll.unzip.\n"...$iniMessage..."\n
56720 22 20 2e 20 24 70 72 6f 63 65 73 73 45 72 72 6f 72 3b 0a 0a 69 66 20 28 21 64 65 66 69 6e 65 64 "...$processError;..if.(!defined
56740 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b ('PHP_WINDOWS_VERSION_BUILD')).{
56760 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 6d 70 72 65 73 73 20 .$error.=."Could.not.decompress.
56780 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 48 50 20 7a 69 70 20 the.archive,.enable.the.PHP.zip.
567a0 65 78 74 65 6e 73 69 6f 6e 2e 5c 6e 22 20 2e 20 24 69 6e 69 4d 65 73 73 61 67 65 3b 0a 7d 0a 0a extension.\n"...$iniMessage;.}..
567c0 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 65 72 72 throw.new.\RuntimeException($err
567e0 6f 72 29 3b 0a 7d 0a 0a 24 7a 69 70 41 72 63 68 69 76 65 20 3d 20 6e 65 77 20 5a 69 70 41 72 63 or);.}..$zipArchive.=.new.ZipArc
56800 68 69 76 65 28 29 3b 0a 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 28 24 72 65 74 76 61 6c 20 3d hive();..if.(true.!==.($retval.=
56820 20 24 7a 69 70 41 72 63 68 69 76 65 2d 3e 6f 70 65 6e 28 24 66 69 6c 65 29 29 29 20 7b 0a 74 68 .$zipArchive->open($file))).{.th
56840 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
56860 6e 28 72 74 72 69 6d 28 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 4d 65 73 73 61 67 65 28 24 n(rtrim($this->getErrorMessage($
56880 72 65 74 76 61 6c 2c 20 24 66 69 6c 65 29 2e 22 5c 6e 22 2e 24 70 72 6f 63 65 73 73 45 72 72 6f retval,.$file)."\n".$processErro
568a0 72 29 2c 20 24 72 65 74 76 61 6c 29 3b 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 24 7a r),.$retval);.}..if.(true.!==.$z
568c0 69 70 41 72 63 68 69 76 65 2d 3e 65 78 74 72 61 63 74 54 6f 28 24 70 61 74 68 29 29 20 7b 0a 74 ipArchive->extractTo($path)).{.t
568e0 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 54 68 65 72 hrow.new.\RuntimeException("Ther
56900 65 20 77 61 73 20 61 6e 20 65 72 72 6f 72 20 65 78 74 72 61 63 74 69 6e 67 20 74 68 65 20 5a 49 e.was.an.error.extracting.the.ZI
56920 50 20 66 69 6c 65 2e 20 43 6f 72 72 75 70 74 20 66 69 6c 65 3f 22 29 3b 0a 7d 0a 0a 24 7a 69 70 P.file..Corrupt.file?");.}..$zip
56940 41 72 63 68 69 76 65 2d 3e 63 6c 6f 73 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 Archive->close();.}.........prot
56960 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 4d 65 73 73 61 67 65 28 24 ected.function.getErrorMessage($
56980 72 65 74 76 61 6c 2c 20 24 66 69 6c 65 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 72 65 74 76 61 6c retval,.$file).{.switch.($retval
569a0 29 20 7b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 45 58 49 53 54 53 3a 0a ).{.case.ZipArchive::ER_EXISTS:.
569c0 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 46 69 6c 65 20 27 25 73 27 20 61 6c 72 65 61 64 return.sprintf("File.'%s'.alread
569e0 79 20 65 78 69 73 74 73 2e 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 y.exists.",.$file);.case.ZipArch
56a00 69 76 65 3a 3a 45 52 5f 49 4e 43 4f 4e 53 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 ive::ER_INCONS:.return.sprintf("
56a20 5a 69 70 20 61 72 63 68 69 76 65 20 27 25 73 27 20 69 73 20 69 6e 63 6f 6e 73 69 73 74 65 6e 74 Zip.archive.'%s'.is.inconsistent
56a40 2e 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 52 5f .",.$file);.case.ZipArchive::ER_
56a60 49 4e 56 41 4c 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 49 6e 76 61 6c 69 64 20 61 INVAL:.return.sprintf("Invalid.a
56a80 72 67 75 6d 65 6e 74 20 28 25 73 29 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 rgument.(%s)",.$file);.case.ZipA
56aa0 72 63 68 69 76 65 3a 3a 45 52 5f 4d 45 4d 4f 52 59 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 rchive::ER_MEMORY:.return.sprint
56ac0 66 28 22 4d 61 6c 6c 6f 63 20 66 61 69 6c 75 72 65 20 28 25 73 29 22 2c 20 24 66 69 6c 65 29 3b f("Malloc.failure.(%s)",.$file);
56ae0 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 4e 4f 45 4e 54 3a 0a 72 65 74 75 .case.ZipArchive::ER_NOENT:.retu
56b00 72 6e 20 73 70 72 69 6e 74 66 28 22 4e 6f 20 73 75 63 68 20 7a 69 70 20 66 69 6c 65 3a 20 27 25 rn.sprintf("No.such.zip.file:.'%
56b20 73 27 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 52 s'",.$file);.case.ZipArchive::ER
56b40 5f 4e 4f 5a 49 50 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 27 25 73 27 20 69 73 20 _NOZIP:.return.sprintf("'%s'.is.
56b60 6e 6f 74 20 61 20 7a 69 70 20 61 72 63 68 69 76 65 2e 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 not.a.zip.archive.",.$file);.cas
56b80 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 4f 50 45 4e 3a 0a 72 65 74 75 72 6e 20 73 70 e.ZipArchive::ER_OPEN:.return.sp
56ba0 72 69 6e 74 66 28 22 43 61 6e 27 74 20 6f 70 65 6e 20 7a 69 70 20 66 69 6c 65 3a 20 25 73 22 2c rintf("Can't.open.zip.file:.%s",
56bc0 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 52 45 41 .$file);.case.ZipArchive::ER_REA
56be0 44 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 5a 69 70 20 72 65 61 64 20 65 72 72 6f D:.return.sprintf("Zip.read.erro
56c00 72 20 28 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 r.(%s)",.$file);.case.ZipArchive
56c20 3a 3a 45 52 5f 53 45 45 4b 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 5a 69 70 20 73 ::ER_SEEK:.return.sprintf("Zip.s
56c40 65 65 6b 20 65 72 72 6f 72 20 28 25 73 29 22 2c 20 24 66 69 6c 65 29 3b 0a 64 65 66 61 75 6c 74 eek.error.(%s)",.$file);.default
56c60 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 27 25 73 27 20 69 73 20 6e 6f 74 20 61 20 :.return.sprintf("'%s'.is.not.a.
56c80 76 61 6c 69 64 20 7a 69 70 20 61 72 63 68 69 76 65 2c 20 67 6f 74 20 65 72 72 6f 72 20 63 6f 64 valid.zip.archive,.got.error.cod
56ca0 65 3a 20 25 73 22 2c 20 24 66 69 6c 65 2c 20 24 72 65 74 76 61 6c 29 3b 0a 7d 0a 7d 0a 7d 0a 3c e:.%s",.$file,.$retval);.}.}.}.<
56cc0 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
56ce0 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 63 6c 61 73 73 20 er\EventDispatcher;.......class.
56d00 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 61 6d 65 3b 0a 0a 0a 0a 0a Event.{....protected.$name;.....
56d20 70 72 6f 74 65 63 74 65 64 20 24 61 72 67 73 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 protected.$args;.....protected.$
56d40 66 6c 61 67 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 72 6f 70 61 67 61 74 69 6f 6e 53 flags;.....private.$propagationS
56d60 74 6f 70 70 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 topped.=.false;.........public.f
56d80 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 61 72 72 61 79 unction.__construct($name,.array
56da0 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 3d .$args.=.array(),.array.$flags.=
56dc0 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b .array()).{.$this->name.=.$name;
56de0 0a 24 74 68 69 73 2d 3e 61 72 67 73 20 3d 20 24 61 72 67 73 3b 0a 24 74 68 69 73 2d 3e 66 6c 61 .$this->args.=.$args;.$this->fla
56e00 67 73 20 3d 20 24 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 gs.=.$flags;.}.......public.func
56e20 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
56e40 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 67 65 74 ame;.}.......public.function.get
56e60 41 72 67 75 6d 65 6e 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 72 67 73 Arguments().{.return.$this->args
56e80 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 46 6c 61 ;.}.......public.function.getFla
56ea0 67 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 6c 61 67 73 3b 0a 7d 0a 0a 0a gs().{.return.$this->flags;.}...
56ec0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 50 72 6f 70 61 67 61 74 69 6f ....public.function.isPropagatio
56ee0 6e 53 74 6f 70 70 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 70 61 nStopped().{.return.$this->propa
56f00 67 61 74 69 6f 6e 53 74 6f 70 70 65 64 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 gationStopped;.}.....public.func
56f20 74 69 6f 6e 20 73 74 6f 70 50 72 6f 70 61 67 61 74 69 6f 6e 28 29 0a 7b 0a 24 74 68 69 73 2d 3e tion.stopPropagation().{.$this->
56f40 70 72 6f 70 61 67 61 74 69 6f 6e 53 74 6f 70 70 65 64 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c propagationStopped.=.true;.}.}.<
56f60 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
56f80 65 72 5c 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 er\EventDispatcher;..use.Compose
56fa0 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 72 r\DependencyResolver\PolicyInter
56fc0 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 73 face;.use.Composer\DependencyRes
56fe0 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 44 65 70 65 6e 64 65 olver\Pool;.use.Composer\Depende
57000 6e 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 ncyResolver\Request;.use.Compose
57020 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 3b 0a 75 73 65 20 r\Installer\InstallerEvent;.use.
57040 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 6d Composer\IO\IOInterface;.use.Com
57060 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 44 65 70 poser\Composer;.use.Composer\Dep
57080 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 4f 70 65 72 61 74 endencyResolver\Operation\Operat
570a0 69 6f 6e 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 ionInterface;.use.Composer\Repos
570c0 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 20 43 itory\CompositeRepository;.use.C
570e0 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 omposer\Script;.use.Composer\Scr
57100 69 70 74 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 53 ipt\CommandEvent;.use.Composer\S
57120 63 72 69 70 74 5c 50 61 63 6b 61 67 65 45 76 65 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 cript\PackageEvent;.use.Composer
57140 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 0a 0a \Util\ProcessExecutor;..........
57160 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 0a 7b 0a 70 72 6f .....class.EventDispatcher.{.pro
57180 74 65 63 74 65 64 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b tected.$composer;.protected.$io;
571a0 0a 70 72 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 70 .protected.$loader;.protected.$p
571c0 72 6f 63 65 73 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 69 73 74 65 6e 65 72 73 3b 0a 70 72 rocess;.protected.$listeners;.pr
571e0 69 76 61 74 65 20 24 65 76 65 6e 74 53 74 61 63 6b 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ivate.$eventStack;.........publi
57200 63 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 70 6f 73 65 72 20 c.function.__construct(Composer.
57220 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 2c 20 50 72 6f 63 $composer,.IOInterface.$io,.Proc
57240 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 0a 24 essExecutor.$process.=.null).{.$
57260 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 74 68 69 this->composer.=.$composer;.$thi
57280 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 s->io.=.$io;.$this->process.=.$p
572a0 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 24 69 rocess.?:.new.ProcessExecutor($i
572c0 6f 29 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 53 74 61 63 6b 20 3d 20 61 72 72 61 79 28 29 3b o);.$this->eventStack.=.array();
572e0 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 64 69 73 70 .}..........public.function.disp
57300 61 74 63 68 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 45 76 65 6e 74 20 24 65 76 65 6e 74 20 3d 20 atch($eventName,.Event.$event.=.
57320 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 20 24 65 76 65 6e 74 29 20 7b 0a 24 65 null).{.if.(null.==.$event).{.$e
57340 76 65 6e 74 20 3d 20 6e 65 77 20 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 29 3b 0a 7d 0a vent.=.new.Event($eventName);.}.
57360 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 24 65 76 65 6e 74 .return.$this->doDispatch($event
57380 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 20 );.}............public.function.
573a0 64 69 73 70 61 74 63 68 53 63 72 69 70 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 64 65 76 4d dispatchScript($eventName,.$devM
573c0 6f 64 65 20 3d 20 66 61 6c 73 65 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 41 72 67 73 20 3d 20 61 ode.=.false,.$additionalArgs.=.a
573e0 72 72 61 79 28 29 2c 20 24 66 6c 61 67 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 72 65 74 75 rray(),.$flags.=.array()).{.retu
57400 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 53 63 72 69 70 74 5c rn.$this->doDispatch(new.Script\
57420 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
57440 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 61 64 64 69 74 69 6f r,.$this->io,.$devMode,.$additio
57460 6e 61 6c 41 72 67 73 2c 20 24 66 6c 61 67 73 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a nalArgs,.$flags));.}............
57480 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 61 74 63 68 50 61 63 .....public.function.dispatchPac
574a0 6b 61 67 65 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 64 65 76 4d 6f 64 65 2c 20 kageEvent($eventName,.$devMode,.
574c0 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
574e0 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 6c ool,.CompositeRepository.$instal
57500 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 79 ledRepo,.Request.$request,.array
57520 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 65 .$operations,.OperationInterface
57540 20 24 6f 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f 44 .$operation).{.return.$this->doD
57560 69 73 70 61 74 63 68 28 6e 65 77 20 50 61 63 6b 61 67 65 45 76 65 6e 74 28 24 65 76 65 6e 74 4e ispatch(new.PackageEvent($eventN
57580 61 6d 65 2c 20 24 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 ame,.$this->composer,.$this->io,
575a0 20 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 .$devMode,.$policy,.$pool,.$inst
575c0 61 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 alledRepo,.$request,.$operations
575e0 2c 20 24 6f 70 65 72 61 74 69 6f 6e 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ,.$operation));.}...............
57600 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 70 61 74 63 68 49 6e 73 74 61 6c 6c .public.function.dispatchInstall
57620 65 72 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 64 65 76 4d 6f 64 65 2c 20 50 6f erEvent($eventName,.$devMode,.Po
57640 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 6f 6f licyInterface.$policy,.Pool.$poo
57660 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 6c 6c 65 l,.CompositeRepository.$installe
57680 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 79 20 24 dRepo,.Request.$request,.array.$
576a0 6f 70 65 72 61 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 operations.=.array()).{.return.$
576c0 74 68 69 73 2d 3e 64 6f 44 69 73 70 61 74 63 68 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 45 76 this->doDispatch(new.InstallerEv
576e0 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 72 2c ent($eventName,.$this->composer,
57700 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 20 24 .$this->io,.$devMode,.$policy,.$
57720 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 2c 20 pool,.$installedRepo,.$request,.
57740 24 6f 70 65 72 61 74 69 6f 6e 73 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 $operations));.}............prot
57760 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 44 69 73 70 61 74 63 68 28 45 76 65 6e 74 20 ected.function.doDispatch(Event.
57780 24 65 76 65 6e 74 29 0a 7b 0a 24 6c 69 73 74 65 6e 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 $event).{.$listeners.=.$this->ge
577a0 74 4c 69 73 74 65 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 tListeners($event);..$this->push
577c0 45 76 65 6e 74 28 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 Event($event);..$return.=.0;.for
577e0 65 61 63 68 20 28 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 each.($listeners.as.$callable).{
57800 0a 69 66 20 28 21 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 .if.(!is_string($callable).&&.is
57820 5f 63 61 6c 6c 61 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 _callable($callable)).{.$event.=
57840 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 63 74 65 64 45 76 65 .$this->checkListenerExpectedEve
57860 6e 74 28 24 63 61 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 nt($callable,.$event);.$return.=
57880 20 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 63 61 6c 6c 61 .false.===.call_user_func($calla
578a0 62 6c 65 2c 20 24 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 ble,.$event).?.1.:.0;.}.elseif.(
578c0 24 74 68 69 73 2d 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 $this->isComposerScript($callabl
578e0 65 29 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 e)).{.if.($this->io->isVerbose()
57900 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 69 6e 74 ).{.$this->io->writeError(sprint
57920 66 28 27 3e 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 f('>.%s:.%s',.$event->getName(),
57940 20 24 63 61 6c 6c 61 62 6c 65 29 29 3b 0a 7d 0a 24 73 63 72 69 70 74 4e 61 6d 65 20 3d 20 73 75 .$callable));.}.$scriptName.=.su
57960 62 73 74 72 28 24 63 61 6c 6c 61 62 6c 65 2c 20 31 29 3b 0a 24 61 72 67 73 20 3d 20 24 65 76 65 bstr($callable,.1);.$args.=.$eve
57980 6e 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 3b 0a 24 66 6c 61 67 73 20 3d 20 24 65 76 nt->getArguments();.$flags.=.$ev
579a0 65 6e 74 2d 3e 67 65 74 46 6c 61 67 73 28 29 3b 0a 24 72 65 74 75 72 6e 20 3d 20 24 74 68 69 73 ent->getFlags();.$return.=.$this
579c0 2d 3e 64 69 73 70 61 74 63 68 28 24 73 63 72 69 70 74 4e 61 6d 65 2c 20 6e 65 77 20 53 63 72 69 ->dispatch($scriptName,.new.Scri
579e0 70 74 5c 45 76 65 6e 74 28 24 73 63 72 69 70 74 4e 61 6d 65 2c 20 24 65 76 65 6e 74 2d 3e 67 65 pt\Event($scriptName,.$event->ge
57a00 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 24 65 tComposer(),.$event->getIO(),.$e
57a20 76 65 6e 74 2d 3e 69 73 44 65 76 4d 6f 64 65 28 29 2c 20 24 61 72 67 73 2c 20 24 66 6c 61 67 73 vent->isDevMode(),.$args,.$flags
57a40 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 69 73 50 68 70 53 63 72 69 70 74 ));.}.elseif.($this->isPhpScript
57a60 28 24 63 61 6c 6c 61 62 6c 65 29 29 20 7b 0a 24 63 6c 61 73 73 4e 61 6d 65 20 3d 20 73 75 62 73 ($callable)).{.$className.=.subs
57a80 74 72 28 24 63 61 6c 6c 61 62 6c 65 2c 20 30 2c 20 73 74 72 70 6f 73 28 24 63 61 6c 6c 61 62 6c tr($callable,.0,.strpos($callabl
57aa0 65 2c 20 27 3a 3a 27 29 29 3b 0a 24 6d 65 74 68 6f 64 4e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 e,.'::'));.$methodName.=.substr(
57ac0 24 63 61 6c 6c 61 62 6c 65 2c 20 73 74 72 70 6f 73 28 24 63 61 6c 6c 61 62 6c 65 2c 20 27 3a 3a $callable,.strpos($callable,.'::
57ae0 27 29 20 2b 20 32 29 3b 0a 0a 69 66 20 28 21 63 6c 61 73 73 5f 65 78 69 73 74 73 28 24 63 6c 61 ').+.2);..if.(!class_exists($cla
57b00 73 73 4e 61 6d 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 6f 72 ssName)).{.$this->io->writeError
57b20 28 27 3c 77 61 72 6e 69 6e 67 3e 43 6c 61 73 73 20 27 2e 24 63 6c 61 73 73 4e 61 6d 65 2e 27 20 ('<warning>Class.'.$className.'.
57b40 69 73 20 6e 6f 74 20 61 75 74 6f 6c 6f 61 64 61 62 6c 65 2c 20 63 61 6e 20 6e 6f 74 20 63 61 6c is.not.autoloadable,.can.not.cal
57b60 6c 20 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 l.'.$event->getName().'.script</
57b80 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 21 69 73 5f warning>');.continue;.}.if.(!is_
57ba0 63 61 6c 6c 61 62 6c 65 28 24 63 61 6c 6c 61 62 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f callable($callable)).{.$this->io
57bc0 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 4d 65 74 68 6f 64 20 27 2e ->writeError('<warning>Method.'.
57be0 24 63 61 6c 6c 61 62 6c 65 2e 27 20 69 73 20 6e 6f 74 20 63 61 6c 6c 61 62 6c 65 2c 20 63 61 6e $callable.'.is.not.callable,.can
57c00 20 6e 6f 74 20 63 61 6c 6c 20 27 2e 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 20 .not.call.'.$event->getName().'.
57c20 73 63 72 69 70 74 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 script</warning>');.continue;.}.
57c40 0a 74 72 79 20 7b 0a 24 72 65 74 75 72 6e 20 3d 20 66 61 6c 73 65 20 3d 3d 3d 20 24 74 68 69 73 .try.{.$return.=.false.===.$this
57c60 2d 3e 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 ->executeEventPhpScript($classNa
57c80 6d 65 2c 20 24 6d 65 74 68 6f 64 4e 61 6d 65 2c 20 24 65 76 65 6e 74 29 20 3f 20 31 20 3a 20 30 me,.$methodName,.$event).?.1.:.0
57ca0 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 6d 65 73 ;.}.catch.(\Exception.$e).{.$mes
57cc0 73 61 67 65 20 3d 20 22 53 63 72 69 70 74 20 25 73 20 68 61 6e 64 6c 69 6e 67 20 74 68 65 20 25 sage.=."Script.%s.handling.the.%
57ce0 73 20 65 76 65 6e 74 20 74 65 72 6d 69 6e 61 74 65 64 20 77 69 74 68 20 61 6e 20 65 78 63 65 70 s.event.terminated.with.an.excep
57d00 74 69 6f 6e 22 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 3c 65 tion";.$this->io->writeError('<e
57d20 72 72 6f 72 3e 27 2e 73 70 72 69 6e 74 66 28 24 6d 65 73 73 61 67 65 2c 20 24 63 61 6c 6c 61 62 rror>'.sprintf($message,.$callab
57d40 6c 65 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 2e 27 3c 2f 65 72 72 6f 72 3e le,.$event->getName()).'</error>
57d60 27 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 61 72 67 73 20 3d ');.throw.$e;.}.}.else.{.$args.=
57d80 20 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 61 72 72 61 79 5f 6d 61 70 28 61 72 72 61 79 28 27 43 .implode('.',.array_map(array('C
57da0 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 27 2c 20 27 omposer\Util\ProcessExecutor',.'
57dc0 65 73 63 61 70 65 27 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 escape'),.$event->getArguments()
57de0 29 29 3b 0a 24 65 78 65 63 20 3d 20 24 63 61 6c 6c 61 62 6c 65 20 2e 20 28 24 61 72 67 73 20 3d ));.$exec.=.$callable...($args.=
57e00 3d 3d 20 27 27 20 3f 20 27 27 20 3a 20 27 20 27 2e 24 61 72 67 73 29 3b 0a 69 66 20 28 24 74 68 ==.''.?.''.:.'.'.$args);.if.($th
57e20 69 73 2d 3e 69 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 is->io->isVerbose()).{.$this->io
57e40 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 20 25 73 27 2c ->writeError(sprintf('>.%s:.%s',
57e60 20 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 65 78 65 63 29 29 3b 0a 7d 20 65 .$event->getName(),.$exec));.}.e
57e80 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 73 70 72 69 lse.{.$this->io->writeError(spri
57ea0 6e 74 66 28 27 3e 20 25 73 27 2c 20 24 65 78 65 63 29 29 3b 0a 7d 0a 69 66 20 28 30 20 21 3d 3d ntf('>.%s',.$exec));.}.if.(0.!==
57ec0 20 28 24 65 78 69 74 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 .($exitCode.=.$this->process->ex
57ee0 65 63 75 74 65 28 24 65 78 65 63 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 ecute($exec))).{.$this->io->writ
57f00 65 45 72 72 6f 72 28 73 70 72 69 6e 74 66 28 27 3c 65 72 72 6f 72 3e 53 63 72 69 70 74 20 25 73 eError(sprintf('<error>Script.%s
57f20 20 68 61 6e 64 6c 69 6e 67 20 74 68 65 20 25 73 20 65 76 65 6e 74 20 72 65 74 75 72 6e 65 64 20 .handling.the.%s.event.returned.
57f40 77 69 74 68 20 61 6e 20 65 72 72 6f 72 3c 2f 65 72 72 6f 72 3e 27 2c 20 24 63 61 6c 6c 61 62 6c with.an.error</error>',.$callabl
57f60 65 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 0a 74 68 72 6f 77 20 6e e,.$event->getName()));..throw.n
57f80 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 45 72 72 6f 72 20 4f 75 74 70 ew.\RuntimeException('Error.Outp
57fa0 75 74 3a 20 27 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 ut:.'.$this->process->getErrorOu
57fc0 74 70 75 74 28 29 2c 20 24 65 78 69 74 43 6f 64 65 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 65 76 tput(),.$exitCode);.}.}..if.($ev
57fe0 65 6e 74 2d 3e 69 73 50 72 6f 70 61 67 61 74 69 6f 6e 53 74 6f 70 70 65 64 28 29 29 20 7b 0a 62 ent->isPropagationStopped()).{.b
58000 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 6f 70 45 76 65 6e 74 28 29 3b 0a 0a 72 reak;.}.}..$this->popEvent();..r
58020 65 74 75 72 6e 20 24 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 eturn.$return;.}.......protected
58040 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 45 76 65 6e 74 50 68 70 53 63 72 69 70 74 28 .function.executeEventPhpScript(
58060 24 63 6c 61 73 73 4e 61 6d 65 2c 20 24 6d 65 74 68 6f 64 4e 61 6d 65 2c 20 45 76 65 6e 74 20 24 $className,.$methodName,.Event.$
58080 65 76 65 6e 74 29 0a 7b 0a 24 65 76 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 4c 69 event).{.$event.=.$this->checkLi
580a0 73 74 65 6e 65 72 45 78 70 65 63 74 65 64 45 76 65 6e 74 28 61 72 72 61 79 28 24 63 6c 61 73 73 stenerExpectedEvent(array($class
580c0 4e 61 6d 65 2c 20 24 6d 65 74 68 6f 64 4e 61 6d 65 29 2c 20 24 65 76 65 6e 74 29 3b 0a 0a 69 66 Name,.$methodName),.$event);..if
580e0 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 74 68 69 .($this->io->isVerbose()).{.$thi
58100 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 3a s->io->writeError(sprintf('>.%s:
58120 20 25 73 3a 3a 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 6c .%s::%s',.$event->getName(),.$cl
58140 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 20 65 6c 73 65 20 7b assName,.$methodName));.}.else.{
58160 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 74 66 28 27 .$this->io->writeError(sprintf('
58180 3e 20 25 73 3a 3a 25 73 27 2c 20 24 63 6c 61 73 73 4e 61 6d 65 2c 20 24 6d 65 74 68 6f 64 4e 61 >.%s::%s',.$className,.$methodNa
581a0 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6c 61 73 73 4e 61 6d 65 3a 3a 24 6d 65 74 me));.}..return.$className::$met
581c0 68 6f 64 4e 61 6d 65 28 24 65 76 65 6e 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 hodName($event);.}.......protect
581e0 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 4c 69 73 74 65 6e 65 72 45 78 70 65 63 74 65 ed.function.checkListenerExpecte
58200 64 45 76 65 6e 74 28 24 74 61 72 67 65 74 2c 20 45 76 65 6e 74 20 24 65 76 65 6e 74 29 0a 7b 0a dEvent($target,.Event.$event).{.
58220 74 72 79 20 7b 0a 24 72 65 66 6c 65 63 74 65 64 20 3d 20 6e 65 77 20 5c 52 65 66 6c 65 63 74 69 try.{.$reflected.=.new.\Reflecti
58240 6f 6e 50 61 72 61 6d 65 74 65 72 28 24 74 61 72 67 65 74 2c 20 30 29 3b 0a 7d 20 63 61 74 63 68 onParameter($target,.0);.}.catch
58260 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 76 65 6e 74 .(\Exception.$e).{.return.$event
58280 3b 0a 7d 0a 0a 24 74 79 70 65 68 69 6e 74 20 3d 20 24 72 65 66 6c 65 63 74 65 64 2d 3e 67 65 74 ;.}..$typehint.=.$reflected->get
582a0 43 6c 61 73 73 28 29 3b 0a 0a 69 66 20 28 21 24 74 79 70 65 68 69 6e 74 20 69 6e 73 74 61 6e 63 Class();..if.(!$typehint.instanc
582c0 65 6f 66 20 5c 52 65 66 6c 65 63 74 69 6f 6e 43 6c 61 73 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 eof.\ReflectionClass).{.return.$
582e0 65 76 65 6e 74 3b 0a 7d 0a 0a 24 65 78 70 65 63 74 65 64 20 3d 20 24 74 79 70 65 68 69 6e 74 2d event;.}..$expected.=.$typehint-
58300 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 0a 0a 20 69 66 20 28 21 24 65 76 65 6e 74 20 69 6e 73 74 61 >getName();....if.(!$event.insta
58320 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 3d nceof.$expected.&&.$expected.===
58340 20 27 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 27 29 .'Composer\Script\CommandEvent')
58360 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 70 74 .{.$event.=.new.\Composer\Script
58380 5c 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 0a 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 \CommandEvent(.$event->getName()
583a0 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 74 2d ,.$event->getComposer(),.$event-
583c0 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 20 24 >getIO(),.$event->isDevMode(),.$
583e0 65 76 65 6e 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 0a 29 3b 0a 7d 0a 69 66 20 28 21 event->getArguments().);.}.if.(!
58400 24 65 76 65 6e 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 24 65 78 70 65 63 74 65 64 20 26 26 20 24 $event.instanceof.$expected.&&.$
58420 65 78 70 65 63 74 65 64 20 3d 3d 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 50 61 expected.===.'Composer\Script\Pa
58440 63 6b 61 67 65 45 76 65 6e 74 27 29 20 7b 0a 24 65 76 65 6e 74 20 3d 20 6e 65 77 20 5c 43 6f 6d ckageEvent').{.$event.=.new.\Com
58460 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 28 0a 24 65 76 65 6e poser\Script\PackageEvent(.$even
58480 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 43 6f 6d 70 6f 73 65 t->getName(),.$event->getCompose
584a0 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 65 6e 74 2d 3e 69 73 r(),.$event->getIO(),.$event->is
584c0 44 65 76 4d 6f 64 65 28 29 2c 0a 24 65 76 65 6e 74 2d 3e 67 65 74 50 6f 6c 69 63 79 28 29 2c 20 DevMode(),.$event->getPolicy(),.
584e0 24 65 76 65 6e 74 2d 3e 67 65 74 50 6f 6f 6c 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 49 6e $event->getPool(),.$event->getIn
58500 73 74 61 6c 6c 65 64 52 65 70 6f 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 52 65 71 75 65 73 stalledRepo(),.$event->getReques
58520 74 28 29 2c 0a 24 65 76 65 6e 74 2d 3e 67 65 74 4f 70 65 72 61 74 69 6f 6e 73 28 29 2c 20 24 65 t(),.$event->getOperations(),.$e
58540 76 65 6e 74 2d 3e 67 65 74 4f 70 65 72 61 74 69 6f 6e 28 29 0a 29 3b 0a 7d 0a 69 66 20 28 21 24 vent->getOperation().);.}.if.(!$
58560 65 76 65 6e 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 24 65 78 70 65 63 74 65 64 20 26 26 20 24 65 event.instanceof.$expected.&&.$e
58580 78 70 65 63 74 65 64 20 3d 3d 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 45 76 65 xpected.===.'Composer\Script\Eve
585a0 6e 74 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 nt').{.$event.=.new.\Composer\Sc
585c0 72 69 70 74 5c 45 76 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 ript\Event(.$event->getName(),.$
585e0 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 74 2d 3e 67 65 event->getComposer(),.$event->ge
58600 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 0a 24 65 76 65 tIO(),.$event->isDevMode(),.$eve
58620 6e 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 46 nt->getArguments(),.$event->getF
58640 6c 61 67 73 28 29 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 76 65 6e 74 3b 0a 7d 0a 0a 0a lags().);.}..return.$event;.}...
58660 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 61 64 64 4c 69 73 74 ......protected.function.addList
58680 65 6e 65 72 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 6c 69 73 74 65 6e 65 72 2c 20 24 70 72 69 ener($eventName,.$listener,.$pri
586a0 6f 72 69 74 79 20 3d 20 30 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 69 73 74 65 6e 65 72 73 5b 24 65 ority.=.0).{.$this->listeners[$e
586c0 76 65 6e 74 4e 61 6d 65 5d 5b 24 70 72 69 6f 72 69 74 79 5d 5b 5d 20 3d 20 24 6c 69 73 74 65 6e ventName][$priority][].=.$listen
586e0 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 74 69 6f 6e 20 61 64 er;.}.........public.function.ad
58700 64 53 75 62 73 63 72 69 62 65 72 28 45 76 65 6e 74 53 75 62 73 63 72 69 62 65 72 49 6e 74 65 72 dSubscriber(EventSubscriberInter
58720 66 61 63 65 20 24 73 75 62 73 63 72 69 62 65 72 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 73 75 face.$subscriber).{.foreach.($su
58740 62 73 63 72 69 62 65 72 2d 3e 67 65 74 53 75 62 73 63 72 69 62 65 64 45 76 65 6e 74 73 28 29 20 bscriber->getSubscribedEvents().
58760 61 73 20 24 65 76 65 6e 74 4e 61 6d 65 20 3d 3e 20 24 70 61 72 61 6d 73 29 20 7b 0a 69 66 20 28 as.$eventName.=>.$params).{.if.(
58780 69 73 5f 73 74 72 69 6e 67 28 24 70 61 72 61 6d 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 is_string($params)).{.$this->add
587a0 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 73 Listener($eventName,.array($subs
587c0 63 72 69 62 65 72 2c 20 24 70 61 72 61 6d 73 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f criber,.$params));.}.elseif.(is_
587e0 73 74 72 69 6e 67 28 24 70 61 72 61 6d 73 5b 30 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 string($params[0])).{.$this->add
58800 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 73 Listener($eventName,.array($subs
58820 63 72 69 62 65 72 2c 20 24 70 61 72 61 6d 73 5b 30 5d 29 2c 20 69 73 73 65 74 28 24 70 61 72 61 criber,.$params[0]),.isset($para
58840 6d 73 5b 31 5d 29 20 3f 20 24 70 61 72 61 6d 73 5b 31 5d 20 3a 20 30 29 3b 0a 7d 20 65 6c 73 65 ms[1]).?.$params[1].:.0);.}.else
58860 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 72 61 6d 73 20 61 73 20 24 6c 69 73 74 65 6e 65 72 .{.foreach.($params.as.$listener
58880 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 6e 74 4e 61 6d ).{.$this->addListener($eventNam
588a0 65 2c 20 61 72 72 61 79 28 24 73 75 62 73 63 72 69 62 65 72 2c 20 24 6c 69 73 74 65 6e 65 72 5b e,.array($subscriber,.$listener[
588c0 30 5d 29 2c 20 69 73 73 65 74 28 24 6c 69 73 74 65 6e 65 72 5b 31 5d 29 20 3f 20 24 6c 69 73 74 0]),.isset($listener[1]).?.$list
588e0 65 6e 65 72 5b 31 5d 20 3a 20 30 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f ener[1].:.0);.}.}.}.}........pro
58900 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 69 73 74 65 6e 65 72 73 28 45 76 65 tected.function.getListeners(Eve
58920 6e 74 20 24 65 76 65 6e 74 29 0a 7b 0a 24 73 63 72 69 70 74 4c 69 73 74 65 6e 65 72 73 20 3d 20 nt.$event).{.$scriptListeners.=.
58940 24 74 68 69 73 2d 3e 67 65 74 53 63 72 69 70 74 4c 69 73 74 65 6e 65 72 73 28 24 65 76 65 6e 74 $this->getScriptListeners($event
58960 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6c 69 73 74 65 6e 65 72 73 5b );..if.(!isset($this->listeners[
58980 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 30 5d 29 29 20 7b 0a 24 74 68 69 73 2d $event->getName()][0])).{.$this-
589a0 3e 6c 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 5b 30 5d >listeners[$event->getName()][0]
589c0 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 6b 72 73 6f 72 74 28 24 74 68 69 73 2d 3e 6c 69 73 74 .=.array();.}.krsort($this->list
589e0 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 0a 24 6c 69 73 eners[$event->getName()]);..$lis
58a00 74 65 6e 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 6c 69 73 74 65 6e 65 72 73 3b 0a 24 6c 69 73 74 teners.=.$this->listeners;.$list
58a20 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 20 3d 20 61 72 eners[$event->getName()][0].=.ar
58a40 72 61 79 5f 6d 65 72 67 65 28 24 6c 69 73 74 65 6e 65 72 73 5b 24 65 76 65 6e 74 2d 3e 67 65 74 ray_merge($listeners[$event->get
58a60 4e 61 6d 65 28 29 5d 5b 30 5d 2c 20 24 73 63 72 69 70 74 4c 69 73 74 65 6e 65 72 73 29 3b 0a 0a Name()][0],.$scriptListeners);..
58a80 72 65 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 return.call_user_func_array('arr
58aa0 61 79 5f 6d 65 72 67 65 27 2c 20 24 6c 69 73 74 65 6e 65 72 73 5b 24 65 76 65 6e 74 2d 3e 67 65 ay_merge',.$listeners[$event->ge
58ac0 74 4e 61 6d 65 28 29 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 tName()]);.}........public.funct
58ae0 69 6f 6e 20 68 61 73 45 76 65 6e 74 4c 69 73 74 65 6e 65 72 73 28 45 76 65 6e 74 20 24 65 76 65 ion.hasEventListeners(Event.$eve
58b00 6e 74 29 0a 7b 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 nt).{.$listeners.=.$this->getLis
58b20 74 65 6e 65 72 73 28 24 65 76 65 6e 74 29 3b 0a 0a 72 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 6c teners($event);..return.count($l
58b40 69 73 74 65 6e 65 72 73 29 20 3e 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 isteners).>.0;.}........protecte
58b60 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 63 72 69 70 74 4c 69 73 74 65 6e 65 72 73 28 45 76 d.function.getScriptListeners(Ev
58b80 65 6e 74 20 24 65 76 65 6e 74 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e ent.$event).{.$package.=.$this->
58ba0 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 73 63 72 69 70 74 73 composer->getPackage();.$scripts
58bc0 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 63 72 69 70 74 73 28 29 3b 0a 0a 69 66 20 28 .=.$package->getScripts();..if.(
58be0 65 6d 70 74 79 28 24 73 63 72 69 70 74 73 5b 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 empty($scripts[$event->getName()
58c00 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 69 66 20 28 24 74 68 ])).{.return.array();.}..if.($th
58c20 69 73 2d 3e 6c 6f 61 64 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 75 6e 72 is->loader).{.$this->loader->unr
58c40 65 67 69 73 74 65 72 28 29 3b 0a 7d 0a 0a 24 67 65 6e 65 72 61 74 6f 72 20 3d 20 24 74 68 69 73 egister();.}..$generator.=.$this
58c60 2d 3e 63 6f 6d 70 6f 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 ->composer->getAutoloadGenerator
58c80 28 29 3b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d ();.$packages.=.$this->composer-
58ca0 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 61 >getRepositoryManager()->getLoca
58cc0 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 2d 3e 67 65 74 43 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 lRepository()->getCanonicalPacka
58ce0 67 65 73 28 29 3b 0a 24 70 61 63 6b 61 67 65 4d 61 70 20 3d 20 24 67 65 6e 65 72 61 74 6f 72 2d ges();.$packageMap.=.$generator-
58d00 3e 62 75 69 6c 64 50 61 63 6b 61 67 65 4d 61 70 28 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 >buildPackageMap($this->composer
58d20 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 29 2c 20 24 70 61 63 ->getInstallationManager(),.$pac
58d40 6b 61 67 65 2c 20 24 70 61 63 6b 61 67 65 73 29 3b 0a 24 6d 61 70 20 3d 20 24 67 65 6e 65 72 61 kage,.$packages);.$map.=.$genera
58d60 74 6f 72 2d 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 28 24 70 61 63 6b 61 67 65 4d 61 70 2c tor->parseAutoloads($packageMap,
58d80 20 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 24 67 65 6e .$package);.$this->loader.=.$gen
58da0 65 72 61 74 6f 72 2d 3e 63 72 65 61 74 65 4c 6f 61 64 65 72 28 24 6d 61 70 29 3b 0a 24 74 68 69 erator->createLoader($map);.$thi
58dc0 73 2d 3e 6c 6f 61 64 65 72 2d 3e 72 65 67 69 73 74 65 72 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 s->loader->register();..return.$
58de0 73 63 72 69 70 74 73 5b 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 3b 0a 7d 0a 0a 0a scripts[$event->getName()];.}...
58e00 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 50 68 70 53 63 72 .....protected.function.isPhpScr
58e20 69 70 74 28 24 63 61 6c 6c 61 62 6c 65 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 3d 3d ipt($callable).{.return.false.==
58e40 3d 20 73 74 72 70 6f 73 28 24 63 61 6c 6c 61 62 6c 65 2c 20 27 20 27 29 20 26 26 20 66 61 6c 73 =.strpos($callable,.'.').&&.fals
58e60 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 63 61 6c 6c 61 62 6c 65 2c 20 27 3a 3a 27 29 3b 0a 7d e.!==.strpos($callable,.'::');.}
58e80 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 73 43 6f 6d ........protected.function.isCom
58ea0 70 6f 73 65 72 53 63 72 69 70 74 28 24 63 61 6c 6c 61 62 6c 65 29 0a 7b 0a 72 65 74 75 72 6e 20 poserScript($callable).{.return.
58ec0 27 40 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 63 61 6c 6c 61 62 6c 65 2c 20 30 2c 20 31 29 3b '@'.===.substr($callable,.0,.1);
58ee0 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 70 75 .}.........protected.function.pu
58f00 73 68 45 76 65 6e 74 28 45 76 65 6e 74 20 24 65 76 65 6e 74 29 0a 7b 0a 24 65 76 65 6e 74 4e 61 shEvent(Event.$event).{.$eventNa
58f20 6d 65 20 3d 20 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 69 66 20 28 69 6e 5f 61 me.=.$event->getName();.if.(in_a
58f40 72 72 61 79 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 65 76 65 6e 74 53 74 61 rray($eventName,.$this->eventSta
58f60 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 45 78 63 65 70 74 69 ck)).{.throw.new.\RuntimeExcepti
58f80 6f 6e 28 73 70 72 69 6e 74 66 28 22 43 69 72 63 75 6c 61 72 20 63 61 6c 6c 20 74 6f 20 73 63 72 on(sprintf("Circular.call.to.scr
58fa0 69 70 74 20 68 61 6e 64 6c 65 72 20 27 25 73 27 20 64 65 74 65 63 74 65 64 22 2c 20 24 65 76 65 ipt.handler.'%s'.detected",.$eve
58fc0 6e 74 4e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 70 75 73 68 28 24 ntName));.}..return.array_push($
58fe0 74 68 69 73 2d 3e 65 76 65 6e 74 53 74 61 63 6b 2c 20 24 65 76 65 6e 74 4e 61 6d 65 29 3b 0a 7d this->eventStack,.$eventName);.}
59000 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 6f 70 45 76 65 .......protected.function.popEve
59020 6e 74 28 29 0a 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 65 nt().{.return.array_pop($this->e
59040 76 65 6e 74 53 74 61 63 6b 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ventStack);.}.}.<?php...........
59060 0a 6e 61 6d 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 .namespace.Composer\EventDispatc
59080 68 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 45 76 65 6e her;..............interface.Even
590a0 74 53 75 62 73 63 72 69 62 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a tSubscriberInterface.{..........
590c0 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.
590e0 67 65 74 53 75 62 73 63 72 69 62 65 64 45 76 65 6e 74 73 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a getSubscribedEvents();.}.<?php..
59100 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 0a 75 ..........namespace.Composer;..u
59120 73 65 20 43 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 se.Composer\Config\JsonConfigSou
59140 72 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 65 3b rce;.use.Composer\Json\JsonFile;
59160 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
59180 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 75 73 65 e.Composer\Package\Archiver;.use
591a0 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
591c0 6e 47 75 65 73 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 nGuesser;.use.Composer\Repositor
591e0 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 73 65 y\RepositoryManager;.use.Compose
59200 72 5c 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 r\Repository\WritableRepositoryI
59220 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 46 69 6c 65 nterface;.use.Composer\Util\File
59240 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 50 72 6f 63 65 73 system;.use.Composer\Util\Proces
59260 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
59280 6f 74 65 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 oteFilesystem;.use.Symfony\Compo
592a0 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
592c0 6d 61 74 74 65 72 53 74 79 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 45 76 65 6e 74 44 matterStyle;.use.Composer\EventD
592e0 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
59300 6f 6d 70 6f 73 65 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 omposer\Autoload\AutoloadGenerat
59320 6f 72 3b 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 50 or;.use.Composer\Semver\VersionP
59340 61 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 arser;.use.Composer\Downloader\T
59360 72 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 ransportException;.use.Seld\Json
59380 4c 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 Lint\JsonParser;..........class.
593a0 46 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 Factory.{.....protected.static.f
593c0 75 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 unction.getHomeDir().{.$home.=.g
593e0 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 21 24 68 6f etenv('COMPOSER_HOME');.if.(!$ho
59400 6d 65 29 20 7b 0a 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 me).{.if.(defined('PHP_WINDOWS_V
59420 45 52 53 49 4f 4e 5f 4d 41 4a 4f 52 27 29 29 20 7b 0a 69 66 20 28 21 67 65 74 65 6e 76 28 27 41 ERSION_MAJOR')).{.if.(!getenv('A
59440 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
59460 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
59480 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.
594a0 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
594c0 63 74 6c 79 27 29 3b 0a 7d 0a 24 68 6f 6d 65 20 3d 20 73 74 72 74 72 28 67 65 74 65 6e 76 28 27 ctly');.}.$home.=.strtr(getenv('
594e0 41 50 50 44 41 54 41 27 29 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 20 2e 20 27 2f 43 6f 6d 70 6f 73 APPDATA'),.'\\',.'/')...'/Compos
59500 65 72 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 21 67 65 74 65 6e 76 28 27 48 4f 4d 45 27 er';.}.else.{.if.(!getenv('HOME'
59520 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
59540 28 27 54 68 65 20 48 4f 4d 45 20 6f 72 20 43 4f 4d 50 4f 53 45 52 5f 48 4f 4d 45 20 65 6e 76 69 ('The.HOME.or.COMPOSER_HOME.envi
59560 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 20 6d 75 73 74 20 62 65 20 73 65 74 20 66 6f 72 ronment.variable.must.be.set.for
59580 20 63 6f 6d 70 6f 73 65 72 20 74 6f 20 72 75 6e 20 63 6f 72 72 65 63 74 6c 79 27 29 3b 0a 7d 0a .composer.to.run.correctly');.}.
595a0 24 68 6f 6d 65 20 3d 20 72 74 72 69 6d 28 67 65 74 65 6e 76 28 27 48 4f 4d 45 27 29 2c 20 27 2f $home.=.rtrim(getenv('HOME'),.'/
595c0 27 29 20 2e 20 27 2f 2e 63 6f 6d 70 6f 73 65 72 27 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 ')...'/.composer';.}.}..return.$
595e0 68 6f 6d 65 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 home;.}......protected.static.fu
59600 6e 63 74 69 6f 6e 20 67 65 74 43 61 63 68 65 44 69 72 28 24 68 6f 6d 65 29 0a 7b 0a 24 63 61 63 nction.getCacheDir($home).{.$cac
59620 68 65 44 69 72 20 3d 20 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 43 41 43 48 45 5f 44 heDir.=.getenv('COMPOSER_CACHE_D
59640 49 52 27 29 3b 0a 69 66 20 28 21 24 63 61 63 68 65 44 69 72 29 20 7b 0a 69 66 20 28 64 65 66 69 IR');.if.(!$cacheDir).{.if.(defi
59660 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 4d 41 4a 4f 52 27 29 ned('PHP_WINDOWS_VERSION_MAJOR')
59680 29 20 7b 0a 69 66 20 28 24 63 61 63 68 65 44 69 72 20 3d 20 67 65 74 65 6e 76 28 27 4c 4f 43 41 ).{.if.($cacheDir.=.getenv('LOCA
596a0 4c 41 50 50 44 41 54 41 27 29 29 20 7b 0a 24 63 61 63 68 65 44 69 72 20 2e 3d 20 27 2f 43 6f 6d LAPPDATA')).{.$cacheDir..=.'/Com
596c0 70 6f 73 65 72 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 61 63 68 65 44 69 72 20 3d 20 24 68 6f poser';.}.else.{.$cacheDir.=.$ho
596e0 6d 65 20 2e 20 27 2f 63 61 63 68 65 27 3b 0a 7d 0a 24 63 61 63 68 65 44 69 72 20 3d 20 73 74 72 me...'/cache';.}.$cacheDir.=.str
59700 74 72 28 24 63 61 63 68 65 44 69 72 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 3b 0a 7d 20 65 6c 73 65 tr($cacheDir,.'\\',.'/');.}.else
59720 20 7b 0a 24 63 61 63 68 65 44 69 72 20 3d 20 24 68 6f 6d 65 2e 27 2f 63 61 63 68 65 27 3b 0a 7d .{.$cacheDir.=.$home.'/cache';.}
59740 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 61 63 68 65 44 69 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 .}..return.$cacheDir;.}......pub
59760 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 43 6f 6e 66 69 67 lic.static.function.createConfig
59780 28 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 63 77 64 20 3d 20 (IOInterface.$io.=.null,.$cwd.=.
597a0 6e 75 6c 6c 29 0a 7b 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 null).{.$cwd.=.$cwd.?:.getcwd();
597c0 0a 0a 0a 20 24 68 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 ....$home.=.self::getHomeDir();.
597e0 24 63 61 63 68 65 44 69 72 20 3d 20 73 65 6c 66 3a 3a 67 65 74 43 61 63 68 65 44 69 72 28 24 68 $cacheDir.=.self::getCacheDir($h
59800 6f 6d 65 29 3b 0a 0a 0a 20 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 24 68 6f 6d ome);........foreach.(array($hom
59820 65 2c 20 24 63 61 63 68 65 44 69 72 29 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 21 66 69 e,.$cacheDir).as.$dir).{.if.(!fi
59840 6c 65 5f 65 78 69 73 74 73 28 24 64 69 72 20 2e 20 27 2f 2e 68 74 61 63 63 65 73 73 27 29 29 20 le_exists($dir...'/.htaccess')).
59860 7b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 29 29 20 7b 0a 40 6d 6b 64 69 72 28 24 64 {.if.(!is_dir($dir)).{.@mkdir($d
59880 69 72 2c 20 30 37 37 37 2c 20 74 72 75 65 29 3b 0a 7d 0a 40 66 69 6c 65 5f 70 75 74 5f 63 6f 6e ir,.0777,.true);.}.@file_put_con
598a0 74 65 6e 74 73 28 24 64 69 72 20 2e 20 27 2f 2e 68 74 61 63 63 65 73 73 27 2c 20 27 44 65 6e 79 tents($dir...'/.htaccess',.'Deny
598c0 20 66 72 6f 6d 20 61 6c 6c 27 29 3b 0a 7d 0a 7d 0a 0a 24 63 6f 6e 66 69 67 20 3d 20 6e 65 77 20 .from.all');.}.}..$config.=.new.
598e0 43 6f 6e 66 69 67 28 74 72 75 65 2c 20 24 63 77 64 29 3b 0a 0a 0a 20 24 63 6f 6e 66 69 67 2d 3e Config(true,.$cwd);....$config->
59900 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 28 27 68 merge(array('config'.=>.array('h
59920 6f 6d 65 27 20 3d 3e 20 24 68 6f 6d 65 2c 20 27 63 61 63 68 65 2d 64 69 72 27 20 3d 3e 20 24 63 ome'.=>.$home,.'cache-dir'.=>.$c
59940 61 63 68 65 44 69 72 29 29 29 3b 0a 0a 0a 20 24 66 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 acheDir)));....$file.=.new.JsonF
59960 69 6c 65 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 2e 27 2f 63 6f 6e 66 69 ile($config->get('home').'/confi
59980 67 2e 6a 73 6f 6e 27 29 3b 0a 69 66 20 28 24 66 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b g.json');.if.($file->exists()).{
599a0 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 24 69 .if.($io.&&.$io->isDebug()).{.$i
599c0 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 4c 6f 61 64 69 6e 67 20 63 6f 6e 66 69 67 20 66 69 o->writeError('Loading.config.fi
599e0 6c 65 20 27 20 2e 20 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 29 3b 0a 7d 0a 24 63 6f 6e le.'...$file->getPath());.}.$con
59a00 66 69 67 2d 3e 6d 65 72 67 65 28 24 66 69 6c 65 2d 3e 72 65 61 64 28 29 29 3b 0a 7d 0a 24 63 6f fig->merge($file->read());.}.$co
59a20 6e 66 69 67 2d 3e 73 65 74 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 6e 65 77 20 4a 73 6f 6e 43 6f nfig->setConfigSource(new.JsonCo
59a40 6e 66 69 67 53 6f 75 72 63 65 28 24 66 69 6c 65 29 29 3b 0a 0a 0a 20 24 66 69 6c 65 20 3d 20 6e nfigSource($file));....$file.=.n
59a60 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 ew.JsonFile($config->get('home')
59a80 2e 27 2f 61 75 74 68 2e 6a 73 6f 6e 27 29 3b 0a 69 66 20 28 24 66 69 6c 65 2d 3e 65 78 69 73 74 .'/auth.json');.if.($file->exist
59aa0 73 28 29 29 20 7b 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 s()).{.if.($io.&&.$io->isDebug()
59ac0 29 20 7b 0a 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 63 6f 6e ).{.$io->writeError('Loading.con
59ae0 66 69 67 20 66 69 6c 65 20 27 20 2e 20 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 29 3b 0a fig.file.'...$file->getPath());.
59b00 7d 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 6e 66 69 67 27 20 }.$config->merge(array('config'.
59b20 3d 3e 20 24 66 69 6c 65 2d 3e 72 65 61 64 28 29 29 29 3b 0a 7d 0a 24 63 6f 6e 66 69 67 2d 3e 73 =>.$file->read()));.}.$config->s
59b40 65 74 41 75 74 68 43 6f 6e 66 69 67 53 6f 75 72 63 65 28 6e 65 77 20 4a 73 6f 6e 43 6f 6e 66 69 etAuthConfigSource(new.JsonConfi
59b60 67 53 6f 75 72 63 65 28 24 66 69 6c 65 2c 20 74 72 75 65 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 gSource($file,.true));..return.$
59b80 63 6f 6e 66 69 67 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 config;.}..public.static.functio
59ba0 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 74 72 69 n.getComposerFile().{.return.tri
59bc0 6d 28 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 27 29 29 20 3f 3a 20 27 2e 2f 63 6f 6d 70 m(getenv('COMPOSER')).?:.'./comp
59be0 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e oser.json';.}..public.static.fun
59c00 63 74 69 6f 6e 20 63 72 65 61 74 65 41 64 64 69 74 69 6f 6e 61 6c 53 74 79 6c 65 73 28 29 0a 7b ction.createAdditionalStyles().{
59c20 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 68 69 67 68 6c 69 67 68 74 27 20 3d 3e 20 6e 65 .return.array(.'highlight'.=>.ne
59c40 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 27 72 65 64 27 29 2c 0a 27 w.OutputFormatterStyle('red'),.'
59c60 77 61 72 6e 69 6e 67 27 20 3d 3e 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 warning'.=>.new.OutputFormatterS
59c80 74 79 6c 65 28 27 62 6c 61 63 6b 27 2c 20 27 79 65 6c 6c 6f 77 27 29 2c 0a 29 3b 0a 7d 0a 0a 70 tyle('black',.'yellow'),.);.}..p
59ca0 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 44 65 66 61 ublic.static.function.createDefa
59cc0 75 6c 74 52 65 70 6f 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 ultRepositories(IOInterface.$io.
59ce0 3d 20 6e 75 6c 6c 2c 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 =.null,.Config.$config.=.null,.R
59d00 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 24 72 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 epositoryManager.$rm.=.null).{.$
59d20 72 65 70 6f 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 21 24 63 6f 6e 66 69 67 29 20 repos.=.array();..if.(!$config).
59d40 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 73 74 61 74 69 63 3a 3a 63 72 65 61 74 65 43 6f 6e 66 69 67 {.$config.=.static::createConfig
59d60 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 21 24 69 6f 29 20 7b ($io);.}.if.(!$rm).{.if.(!$io).{
59d80 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
59da0 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 72 65 73 20 65 69 74 tion('This.function.requires.eit
59dc0 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 65 70 6f 73 69 74 6f her.an.IOInterface.or.a.Reposito
59de0 72 79 4d 61 6e 61 67 65 72 27 29 3b 0a 7d 0a 24 66 61 63 74 6f 72 79 20 3d 20 6e 65 77 20 73 74 ryManager');.}.$factory.=.new.st
59e00 61 74 69 63 3b 0a 24 72 6d 20 3d 20 24 66 61 63 74 6f 72 79 2d 3e 63 72 65 61 74 65 52 65 70 6f atic;.$rm.=.$factory->createRepo
59e20 73 69 74 6f 72 79 4d 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 sitoryManager($io,.$config,.null
59e40 2c 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 6d 28 24 ,.self::createRemoteFilesystem($
59e60 69 6f 2c 20 24 63 6f 6e 66 69 67 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 66 io,.$config));.}..foreach.($conf
59e80 69 67 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 20 61 73 20 24 69 6e 64 65 78 20 ig->getRepositories().as.$index.
59ea0 3d 3e 20 24 72 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 =>.$repo).{.if.(is_string($repo)
59ec0 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 78 ).{.throw.new.\UnexpectedValueEx
59ee0 63 65 70 74 69 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 ception('"repositories".should.b
59f00 65 20 61 6e 20 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 e.an.array.of.repository.definit
59f20 69 6f 6e 73 2c 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 ions,.only.a.single.repository.w
59f40 61 73 20 67 69 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 as.given');.}.if.(!is_array($rep
59f60 6f 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 o)).{.throw.new.\UnexpectedValue
59f80 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.
59fa0 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 73 68 6f 75 '".('.json_encode($repo).').shou
59fc0 6c 64 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 72 65 70 6f 29 ld.be.an.array,.'.gettype($repo)
59fe0 2e 27 20 67 69 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 .'.given');.}.if.(!isset($repo['
5a000 74 79 70 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 65 64 type'])).{.throw.new.\Unexpected
5a020 56 61 6c 75 65 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 ValueException('Repository."'.$i
5a040 6e 64 65 78 2e 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 ndex.'".('.json_encode($repo).')
5a060 20 6d 75 73 74 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 .must.have.a.type.defined');.}.$
5a080 6e 61 6d 65 20 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 name.=.is_int($index).&&.isset($
5a0a0 72 65 70 6f 5b 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 repo['url']).?.preg_replace('{^h
5a0c0 74 74 70 73 3f 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 ttps?://}i',.'',.$repo['url']).:
5a0e0 20 24 69 6e 64 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 .$index;.while.(isset($repos[$na
5a100 6d 65 5d 29 29 20 7b 0a 24 6e 61 6d 65 20 2e 3d 20 27 32 27 3b 0a 7d 0a 24 72 65 70 6f 73 5b 24 me])).{.$name..=.'2';.}.$repos[$
5a120 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 28 24 72 name].=.$rm->createRepository($r
5a140 65 70 6f 5b 27 74 79 70 65 27 5d 2c 20 24 72 65 70 6f 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 epo['type'],.$repo);.}..return.$
5a160 72 65 70 6f 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 repos;.}..............public.fun
5a180 63 74 69 6f 6e 20 63 72 65 61 74 65 43 6f 6d 70 6f 73 65 72 28 49 4f 49 6e 74 65 72 66 61 63 65 ction.createComposer(IOInterface
5a1a0 20 24 69 6f 2c 20 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c 2c 20 24 64 69 73 61 .$io,.$localConfig.=.null,.$disa
5a1c0 62 6c 65 50 6c 75 67 69 6e 73 20 3d 20 66 61 6c 73 65 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 2c blePlugins.=.false,.$cwd.=.null,
5a1e0 20 24 66 75 6c 6c 4c 6f 61 64 20 3d 20 74 72 75 65 29 0a 7b 0a 24 63 77 64 20 3d 20 24 63 77 64 .$fullLoad.=.true).{.$cwd.=.$cwd
5a200 20 3f 3a 20 67 65 74 63 77 64 28 29 3b 0a 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6c .?:.getcwd();....if.(null.===.$l
5a220 6f 63 61 6c 43 6f 6e 66 69 67 29 20 7b 0a 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 20 3d 20 73 74 61 ocalConfig).{.$localConfig.=.sta
5a240 74 69 63 3a 3a 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 29 3b 0a 7d 0a 0a 69 66 20 28 69 tic::getComposerFile();.}..if.(i
5a260 73 5f 73 74 72 69 6e 67 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 29 29 20 7b 0a 24 63 6f 6d 70 6f s_string($localConfig)).{.$compo
5a280 73 65 72 46 69 6c 65 20 3d 20 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 3b 0a 0a 24 66 69 6c 65 20 3d serFile.=.$localConfig;..$file.=
5a2a0 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 2c 20 6e 75 6c 6c .new.JsonFile($localConfig,.null
5a2c0 2c 20 24 69 6f 29 3b 0a 0a 69 66 20 28 21 24 66 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b ,.$io);..if.(!$file->exists()).{
5a2e0 0a 69 66 20 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 20 3d 3d 3d 20 27 2e 2f 63 6f 6d 70 6f 73 65 .if.($localConfig.===.'./compose
5a300 72 2e 6a 73 6f 6e 27 20 7c 7c 20 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 20 3d 3d 3d 20 27 63 6f 6d r.json'.||.$localConfig.===.'com
5a320 70 6f 73 65 72 2e 6a 73 6f 6e 27 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 43 6f 6d 70 6f poser.json').{.$message.=.'Compo
5a340 73 65 72 20 63 6f 75 6c 64 20 6e 6f 74 20 66 69 6e 64 20 61 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 ser.could.not.find.a.composer.js
5a360 6f 6e 20 66 69 6c 65 20 69 6e 20 27 2e 24 63 77 64 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6d 65 73 on.file.in.'.$cwd;.}.else.{.$mes
5a380 73 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 sage.=.'Composer.could.not.find.
5a3a0 74 68 65 20 63 6f 6e 66 69 67 20 66 69 6c 65 3a 20 27 2e 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 3b the.config.file:.'.$localConfig;
5a3c0 0a 7d 0a 24 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 3d 20 27 54 6f 20 69 6e 69 74 69 61 6c 69 7a .}.$instructions.=.'To.initializ
5a3e0 65 20 61 20 70 72 6f 6a 65 63 74 2c 20 70 6c 65 61 73 65 20 63 72 65 61 74 65 20 61 20 63 6f 6d e.a.project,.please.create.a.com
5a400 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 61 73 20 64 65 73 63 72 69 62 65 64 20 69 6e 20 poser.json.file.as.described.in.
5a420 74 68 65 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 20 22 47 65 the.https://getcomposer.org/."Ge
5a440 74 74 69 6e 67 20 53 74 61 72 74 65 64 22 20 73 65 63 74 69 6f 6e 27 3b 0a 74 68 72 6f 77 20 6e tting.Started".section';.throw.n
5a460 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 24 6d 65 ew.\InvalidArgumentException($me
5a480 73 73 61 67 65 2e 50 48 50 5f 45 4f 4c 2e 24 69 6e 73 74 72 75 63 74 69 6f 6e 73 29 3b 0a 7d 0a ssage.PHP_EOL.$instructions);.}.
5a4a0 0a 24 66 69 6c 65 2d 3e 76 61 6c 69 64 61 74 65 53 63 68 65 6d 61 28 4a 73 6f 6e 46 69 6c 65 3a .$file->validateSchema(JsonFile:
5a4c0 3a 4c 41 58 5f 53 43 48 45 4d 41 29 3b 0a 24 6a 73 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 :LAX_SCHEMA);.$jsonParser.=.new.
5a4e0 4a 73 6f 6e 50 61 72 73 65 72 3b 0a 74 72 79 20 7b 0a 24 6a 73 6f 6e 50 61 72 73 65 72 2d 3e 70 JsonParser;.try.{.$jsonParser->p
5a500 61 72 73 65 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6c 6f 63 61 6c 43 6f 6e arse(file_get_contents($localCon
5a520 66 69 67 29 2c 20 4a 73 6f 6e 50 61 72 73 65 72 3a 3a 44 45 54 45 43 54 5f 4b 45 59 5f 43 4f 4e fig),.JsonParser::DETECT_KEY_CON
5a540 46 4c 49 43 54 53 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 FLICTS);.}.catch.(\Seld\JsonLint
5a560 5c 44 75 70 6c 69 63 61 74 65 4b 65 79 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 64 65 \DuplicateKeyException.$e).{.$de
5a580 74 61 69 6c 73 20 3d 20 24 65 2d 3e 67 65 74 44 65 74 61 69 6c 73 28 29 3b 0a 24 69 6f 2d 3e 77 tails.=.$e->getDetails();.$io->w
5a5a0 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 4b 65 79 20 27 2e 24 64 65 74 61 69 riteError('<warning>Key.'.$detai
5a5c0 6c 73 5b 27 6b 65 79 27 5d 2e 27 20 69 73 20 61 20 64 75 70 6c 69 63 61 74 65 20 69 6e 20 27 2e ls['key'].'.is.a.duplicate.in.'.
5a5e0 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 2e 27 20 61 74 20 6c 69 6e 65 20 27 2e 24 64 65 74 61 69 6c $localConfig.'.at.line.'.$detail
5a600 73 5b 27 6c 69 6e 65 27 5d 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 24 6c 6f 63 s['line'].'</warning>');.}..$loc
5a620 61 6c 43 6f 6e 66 69 67 20 3d 20 24 66 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 7d 0a 0a 0a 20 24 alConfig.=.$file->read();.}....$
5a640 63 6f 6e 66 69 67 20 3d 20 73 74 61 74 69 63 3a 3a 63 72 65 61 74 65 43 6f 6e 66 69 67 28 24 69 config.=.static::createConfig($i
5a660 6f 2c 20 24 63 77 64 29 3b 0a 24 63 6f 6e 66 69 67 2d 3e 6d 65 72 67 65 28 24 6c 6f 63 61 6c 43 o,.$cwd);.$config->merge($localC
5a680 6f 6e 66 69 67 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 29 onfig);.if.(isset($composerFile)
5a6a0 29 20 7b 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 ).{.if.($io.&&.$io->isDebug()).{
5a6c0 0a 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 63 6f 6e 66 69 67 .$io->writeError('Loading.config
5a6e0 20 66 69 6c 65 20 27 20 2e 20 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 29 3b 0a 7d 0a 24 6c 6f 63 .file.'...$composerFile);.}.$loc
5a700 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 28 64 69 72 6e 61 6d alAuthFile.=.new.JsonFile(dirnam
5a720 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 29 20 2e 20 27 2f 61 e(realpath($composerFile))...'/a
5a740 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 68 46 69 6c 65 2d 3e uth.json');.if.($localAuthFile->
5a760 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 2d 3e 69 73 44 65 exists()).{.if.($io.&&.$io->isDe
5a780 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 4c 6f 61 64 69 6e bug()).{.$io->writeError('Loadin
5a7a0 67 20 63 6f 6e 66 69 67 20 66 69 6c 65 20 27 20 2e 20 24 6c 6f 63 61 6c 41 75 74 68 46 69 6c 65 g.config.file.'...$localAuthFile
5a7c0 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 65 28 61 ->getPath());.}.$config->merge(a
5a7e0 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 65 2d rray('config'.=>.$localAuthFile-
5a800 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 66 69 >read()));.$config->setAuthConfi
5a820 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 6c 6f gSource(new.JsonConfigSource($lo
5a840 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 64 6f calAuthFile,.true));.}.}..$vendo
5a860 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 72 27 rDir.=.$config->get('vendor-dir'
5a880 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 2d 64 );.$binDir.=.$config->get('bin-d
5a8a0 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 73 65 ir');....$composer.=.new.Compose
5a8c0 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 66 69 r();.$composer->setConfig($confi
5a8e0 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 6f 61 g);..if.($fullLoad).{...$io->loa
5a900 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 66 73 dConfiguration($config);.}..$rfs
5a920 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 6d 28 .=.self::createRemoteFilesystem(
5a940 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 3d 20 $io,.$config);....$dispatcher.=.
5a960 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 20 24 new.EventDispatcher($composer,.$
5a980 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 63 68 io);.$composer->setEventDispatch
5a9a0 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 24 74 68 69 73 2d er($dispatcher);....$rm.=.$this-
5a9c0 3e 63 72 65 61 74 65 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 >createRepositoryManager($io,.$c
5a9e0 6f 6e 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 onfig,.$dispatcher,.$rfs);.$comp
5aa00 6f 73 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 oser->setRepositoryManager($rm);
5aa20 0a 0a 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 ....$this->addLocalRepository($i
5aa40 6f 2c 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 o,.$rm,.$vendorDir);......if.(!$
5aa60 66 75 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 fullLoad.&&.!isset($localConfig[
5aa80 27 76 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 'version'])).{.$localConfig['ver
5aaa0 73 69 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 sion'].=.'1.0.0';.}....$parser.=
5aac0 20 6e 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 .new.VersionParser;.$guesser.=.n
5aae0 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 20 6e 65 77 20 50 ew.VersionGuesser($config,.new.P
5ab00 72 6f 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 rocessExecutor($io),.$parser);.$
5ab20 6c 6f 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 loader.=.new.Package\Loader\Root
5ab40 50 61 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 PackageLoader($rm,.$config,.$par
5ab60 73 65 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 ser,.$guesser);.$package.=.$load
5ab80 65 72 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 er->load($localConfig,.'Composer
5aba0 5c 50 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 \Package\RootPackage',.$cwd);.$c
5abc0 6f 6d 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 omposer->setPackage($package);..
5abe0 0a 20 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 ..$im.=.$this->createInstallatio
5ac00 6e 4d 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 nManager();.$composer->setInstal
5ac20 6c 61 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 lationManager($im);..if.($fullLo
5ac40 61 64 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 ad).{...$dm.=.$this->createDownl
5ac60 6f 61 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 oadManager($io,.$config,.$dispat
5ac80 63 68 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 cher,.$rfs);.$composer->setDownl
5aca0 6f 61 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 oadManager($dm);....$generator.=
5acc0 20 6e 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 .new.AutoloadGenerator($dispatch
5ace0 65 72 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 er,.$io);.$composer->setAutoload
5ad00 47 65 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 Generator($generator);.}....$thi
5ad20 73 2d 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 s->createDefaultInstallers($im,.
5ad40 24 63 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 $composer,.$io);..if.($fullLoad)
5ad60 20 7b 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 .{.$globalComposer.=.$this->crea
5ad80 74 65 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 teGlobalComposer($io,.$config,.$
5ada0 64 69 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 disablePlugins);.$pm.=.$this->cr
5adc0 65 61 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 eatePluginManager($io,.$composer
5ade0 2c 20 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 ,.$globalComposer,.$disablePlugi
5ae00 6e 73 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 ns);.$composer->setPluginManager
5ae20 28 24 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 ($pm);..$pm->loadInstalledPlugin
5ae40 73 28 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 s();......if.($rm->getLocalRepos
5ae60 69 74 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 itory()).{.$this->purgePackages(
5ae80 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 2c 20 24 69 6d 29 3b $rm->getLocalRepository(),.$im);
5aea0 0a 7d 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 .}.}....if.($fullLoad.&&.isset($
5aec0 63 6f 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 composerFile)).{.$lockFile.=."js
5aee0 6f 6e 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 on".===.pathinfo($composerFile,.
5af00 50 41 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 PATHINFO_EXTENSION).?.substr($co
5af20 6d 70 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 mposerFile,.0,.-4).'lock'.:.$com
5af40 70 6f 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 poserFile...'.lock';..$locker.=.
5af60 6e 65 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 new.Package\Locker($io,.new.Json
5af80 46 69 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 File($lockFile,.null,.$io),.$rm,
5afa0 20 24 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 .$im,.file_get_contents($compose
5afc0 72 46 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 rFile));.$composer->setLocker($l
5afe0 6f 63 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 ocker);.}..return.$composer;.}..
5b000 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
5b020 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f epositoryManager(IOInterface.$io
5b040 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 65 ,.Config.$config,.EventDispatche
5b060 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 52 65 6d 6f 74 r.$eventDispatcher.=.null,.Remot
5b080 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 24 72 6d 20 3d eFilesystem.$rfs.=.null).{.$rm.=
5b0a0 20 6e 65 77 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6e .new.RepositoryManager($io,.$con
5b0c0 66 69 67 2c 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 24 72 66 73 29 3b 0a 24 72 fig,.$eventDispatcher,.$rfs);.$r
5b0e0 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 63 6f 6d 70 6f 73 65 72 27 m->setRepositoryClass('composer'
5b100 2c 20 27 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 65 72 52 ,.'Composer\Repository\ComposerR
5b120 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 43 epository');.$rm->setRepositoryC
5b140 6c 61 73 73 28 27 76 63 73 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 lass('vcs',.'Composer\Repository
5b160 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 69 \VcsRepository');.$rm->setReposi
5b180 74 6f 72 79 43 6c 61 73 73 28 27 70 61 63 6b 61 67 65 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 toryClass('package',.'Composer\R
5b1a0 65 70 6f 73 69 74 6f 72 79 5c 50 61 63 6b 61 67 65 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 epository\PackageRepository');.$
5b1c0 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 61 72 27 2c 20 27 rm->setRepositoryClass('pear',.'
5b1e0 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 52 65 70 6f 73 69 74 6f Composer\Repository\PearReposito
5b200 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 67 ry');.$rm->setRepositoryClass('g
5b220 69 74 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 it',.'Composer\Repository\VcsRep
5b240 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 43 6c 61 ository');.$rm->setRepositoryCla
5b260 73 73 28 27 67 69 74 6c 61 62 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 ss('gitlab',.'Composer\Repositor
5b280 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
5b2a0 69 74 6f 72 79 43 6c 61 73 73 28 27 73 76 6e 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f itoryClass('svn',.'Composer\Repo
5b2c0 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 65 74 sitory\VcsRepository');.$rm->set
5b2e0 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 70 65 72 66 6f 72 63 65 27 2c 20 27 43 6f 6d RepositoryClass('perforce',.'Com
5b300 70 6f 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 poser\Repository\VcsRepository')
5b320 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 68 67 27 2c 20 ;.$rm->setRepositoryClass('hg',.
5b340 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 73 69 74 6f 'Composer\Repository\VcsReposito
5b360 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 61 ry');.$rm->setRepositoryClass('a
5b380 72 74 69 66 61 63 74 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 41 rtifact',.'Composer\Repository\A
5b3a0 72 74 69 66 61 63 74 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 rtifactRepository');.$rm->setRep
5b3c0 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 70 61 74 68 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 ositoryClass('path',.'Composer\R
5b3e0 65 70 6f 73 69 74 6f 72 79 5c 50 61 74 68 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 0a 72 65 74 epository\PathRepository');..ret
5b400 75 72 6e 20 24 72 6d 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 urn.$rm;.}......protected.functi
5b420 6f 6e 20 61 64 64 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 49 4f 49 6e 74 65 72 66 61 63 on.addLocalRepository(IOInterfac
5b440 65 20 24 69 6f 2c 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 24 72 6d 2c 20 24 76 e.$io,.RepositoryManager.$rm,.$v
5b460 65 6e 64 6f 72 44 69 72 29 0a 7b 0a 24 72 6d 2d 3e 73 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 endorDir).{.$rm->setLocalReposit
5b480 6f 72 79 28 6e 65 77 20 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 46 69 6c 65 ory(new.Repository\InstalledFile
5b4a0 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 6c 65 28 24 76 systemRepository(new.JsonFile($v
5b4c0 65 6e 64 6f 72 44 69 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2f 69 6e 73 74 61 6c 6c 65 64 2e 6a 73 endorDir.'/composer/installed.js
5b4e0 6f 6e 27 2c 20 6e 75 6c 6c 2c 20 24 69 6f 29 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 on',.null,.$io)));.}......protec
5b500 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 47 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 ted.function.createGlobalCompose
5b520 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 24 63 6f 6e 66 69 r(IOInterface.$io,.Config.$confi
5b540 67 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 0a 7b 0a 69 66 20 28 72 65 61 6c 70 61 g,.$disablePlugins).{.if.(realpa
5b560 74 68 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 29 20 3d 3d 3d 20 67 65 74 th($config->get('home')).===.get
5b580 63 77 64 28 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 cwd()).{.return;.}..$composer.=.
5b5a0 6e 75 6c 6c 3b 0a 74 72 79 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 73 65 6c 66 3a 3a 63 72 null;.try.{.$composer.=.self::cr
5b5c0 65 61 74 65 43 6f 6d 70 6f 73 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 eateComposer($io,.$config->get('
5b5e0 68 6f 6d 65 27 29 20 2e 20 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 2c 20 24 64 69 73 61 home')...'/composer.json',.$disa
5b600 62 6c 65 50 6c 75 67 69 6e 73 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 blePlugins,.$config->get('home')
5b620 2c 20 66 61 6c 73 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 ,.false);.}.catch.(\Exception.$e
5b640 29 20 7b 0a 69 66 20 28 24 69 6f 2d 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 ).{.if.($io->isDebug()).{.$io->w
5b660 72 69 74 65 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 riteError('Failed.to.initialize.
5b680 67 6c 6f 62 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 global.composer:.'.$e->getMessag
5b6a0 65 28 29 29 3b 0a 7d 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 e());.}.}..return.$composer;.}..
5b6c0 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 65 44 6f 77 6e ......public.function.createDown
5b6e0 6c 6f 61 64 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 loadManager(IOInterface.$io,.Con
5b700 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
5b720 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
5b740 73 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 63 61 63 68 65 20 3d 20 6e system.$rfs.=.null).{.$cache.=.n
5b760 75 6c 6c 3b 0a 69 66 20 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 63 68 65 2d 66 69 6c ull;.if.($config->get('cache-fil
5b780 65 73 2d 74 74 6c 27 29 20 3e 20 30 29 20 7b 0a 24 63 61 63 68 65 20 3d 20 6e 65 77 20 43 61 63 es-ttl').>.0).{.$cache.=.new.Cac
5b7a0 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 65 2d 66 69 6c 65 he($io,.$config->get('cache-file
5b7c0 73 2d 64 69 72 27 29 2c 20 27 61 2d 7a 30 2d 39 5f 2e 2f 27 29 3b 0a 7d 0a 0a 24 64 6d 20 3d 20 s-dir'),.'a-z0-9_./');.}..$dm.=.
5b7e0 6e 65 77 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 28 24 new.Downloader\DownloadManager($
5b800 69 6f 29 3b 0a 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 io);.switch.($config->get('prefe
5b820 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 24 rred-install')).{.case.'dist':.$
5b840 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 0a dm->setPreferDist(true);.break;.
5b860 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 75 case.'source':.$dm->setPreferSou
5b880 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 64 rce(true);.break;.case.'auto':.d
5b8a0 65 66 61 75 6c 74 3a 0a 0a 20 62 72 65 61 6b 3b 0a 7d 0a 0a 24 65 78 65 63 75 74 6f 72 20 3d 20 efault:...break;.}..$executor.=.
5b8c0 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 20 new.ProcessExecutor($io);.$fs.=.
5b8e0 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 2d new.Filesystem($executor);..$dm-
5b900 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 6f >setDownloader('git',.new.Downlo
5b920 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 2c ader\GitDownloader($io,.$config,
5b940 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 6c .$executor,.$fs));.$dm->setDownl
5b960 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 44 oader('svn',.new.Downloader\SvnD
5b980 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 6f ownloader($io,.$config,.$executo
5b9a0 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 67 r,.$fs));.$dm->setDownloader('hg
5b9c0 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 24 ',.new.Downloader\HgDownloader($
5b9e0 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 24 io,.$config,.$executor,.$fs));.$
5ba00 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 65 dm->setDownloader('perforce',.ne
5ba20 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 28 w.Downloader\PerforceDownloader(
5ba40 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 64 $io,.$config));.$dm->setDownload
5ba60 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 6e er('zip',.new.Downloader\ZipDown
5ba80 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 61 loader($io,.$config,.$eventDispa
5baa0 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 29 tcher,.$cache,.$executor,.$rfs))
5bac0 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 20 ;.$dm->setDownloader('rar',.new.
5bae0 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 63 Downloader\RarDownloader($io,.$c
5bb00 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,
5bb20 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 6e .$executor,.$rfs));.$dm->setDown
5bb40 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 72 loader('tar',.new.Downloader\Tar
5bb60 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
5bb80 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 3e ispatcher,.$cache,.$rfs));.$dm->
5bba0 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 6f setDownloader('gzip',.new.Downlo
5bbc0 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 67 ader\GzipDownloader($io,.$config
5bbe0 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 65 ,.$eventDispatcher,.$cache,.$exe
5bc00 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 65 cutor,.$rfs));.$dm->setDownloade
5bc20 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 61 r('xz',.new.Downloader\XzDownloa
5bc40 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 68 der($io,.$config,.$eventDispatch
5bc60 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 24 er,.$cache,.$executor,.$rfs));.$
5bc80 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 6f dm->setDownloader('phar',.new.Do
5bca0 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 6f wnloader\PharDownloader($io,.$co
5bcc0 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 20 nfig,.$eventDispatcher,.$cache,.
5bce0 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 65 $rfs));.$dm->setDownloader('file
5bd00 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 72 ',.new.Downloader\FileDownloader
5bd20 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 2c ($io,.$config,.$eventDispatcher,
5bd40 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 61 .$cache,.$rfs));.$dm->setDownloa
5bd60 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 44 der('path',.new.Downloader\PathD
5bd80 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 69 ownloader($io,.$config,.$eventDi
5bda0 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 72 spatcher,.$cache,.$rfs));..retur
5bdc0 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 63 n.$dm;.}.......public.function.c
5bde0 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 66 reateArchiveManager(Config.$conf
5be00 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 24 ig,.Downloader\DownloadManager.$
5be20 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 7b dm.=.null).{.if.(null.===.$dm).{
5be40 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 61 .$io.=.new.IO\NullIO();.$io->loa
5be60 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 24 dConfiguration($config);.$dm.=.$
5be80 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 2c this->createDownloadManager($io,
5bea0 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 72 .$config);.}..$am.=.new.Archiver
5bec0 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 72 \ArchiveManager($dm);.$am->addAr
5bee0 63 68 69 76 65 72 28 6e 65 77 20 41 72 63 68 69 76 65 72 5c 50 68 61 72 41 72 63 68 69 76 65 72 chiver(new.Archiver\PharArchiver
5bf00 29 3b 0a 0a 72 65 74 75 72 6e 20 24 61 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 );..return.$am;.}.........protec
5bf20 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 ted.function.createPluginManager
5bf40 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 72 20 24 63 6f 6d 70 (IOInterface.$io,.Composer.$comp
5bf60 6f 73 65 72 2c 20 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 oser,.Composer.$globalComposer.=
5bf80 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 29 0a .null,.$disablePlugins.=.false).
5bfa0 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 6c 75 67 69 6e 5c 50 6c 75 67 69 6e 4d 61 6e 61 67 65 {.return.new.Plugin\PluginManage
5bfc0 72 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 r($io,.$composer,.$globalCompose
5bfe0 72 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 r,.$disablePlugins);.}.....prote
5c000 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 74 69 6f 6e cted.function.createInstallation
5c020 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 6c 6c 65 72 Manager().{.return.new.Installer
5c040 5c 49 6e 73 74 61 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 \InstallationManager();.}.......
5c060 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 44 65 66 61 75 6c 74 protected.function.createDefault
5c080 49 6e 73 74 61 6c 6c 65 72 73 28 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f Installers(Installer\Installatio
5c0a0 6e 4d 61 6e 61 67 65 72 20 24 69 6d 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 nManager.$im,.Composer.$composer
5c0c0 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 24 69 6d 2d 3e 61 64 64 49 6e 73 ,.IOInterface.$io).{.$im->addIns
5c0e0 74 61 6c 6c 65 72 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 5c 4c 69 62 72 61 72 79 49 6e 73 74 taller(new.Installer\LibraryInst
5c100 61 6c 6c 65 72 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 6e 75 6c 6c 29 29 3b 0a 24 69 aller($io,.$composer,.null));.$i
5c120 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 72 5c 50 65 m->addInstaller(new.Installer\Pe
5c140 61 72 49 6e 73 74 61 6c 6c 65 72 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 27 70 65 61 arInstaller($io,.$composer,.'pea
5c160 72 2d 6c 69 62 72 61 72 79 27 29 29 3b 0a 24 69 6d 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 r-library'));.$im->addInstaller(
5c180 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 5c 50 6c 75 67 69 6e 49 6e 73 74 61 6c 6c 65 72 28 24 69 new.Installer\PluginInstaller($i
5c1a0 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 29 3b 0a 24 69 6d 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 o,.$composer));.$im->addInstalle
5c1c0 72 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 5c 4d 65 74 61 70 61 63 6b 61 67 65 49 6e 73 74 61 r(new.Installer\MetapackageInsta
5c1e0 6c 6c 65 72 28 24 69 6f 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e ller($io));.}......protected.fun
5c200 63 74 69 6f 6e 20 70 75 72 67 65 50 61 63 6b 61 67 65 73 28 57 72 69 74 61 62 6c 65 52 65 70 6f ction.purgePackages(WritableRepo
5c220 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 49 6e 73 74 61 6c 6c 65 72 sitoryInterface.$repo,.Installer
5c240 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 69 6d 29 0a 7b 0a 66 6f 72 65 \InstallationManager.$im).{.fore
5c260 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
5c280 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 21 24 69 6d 2d 3e 69 73 50 61 63 6b 61 67 65 49 6e 73 74 ckage).{.if.(!$im->isPackageInst
5c2a0 61 6c 6c 65 64 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 72 65 70 6f 2d alled($repo,.$package)).{.$repo-
5c2c0 3e 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a >removePackage($package);.}.}.}.
5c2e0 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 63 ........public.static.function.c
5c300 72 65 61 74 65 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 63 6f 6e 66 69 67 20 3d reate(IOInterface.$io,.$config.=
5c320 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 29 0a .null,.$disablePlugins.=.false).
5c340 7b 0a 24 66 61 63 74 6f 72 79 20 3d 20 6e 65 77 20 73 74 61 74 69 63 28 29 3b 0a 0a 72 65 74 75 {.$factory.=.new.static();..retu
5c360 72 6e 20 24 66 61 63 74 6f 72 79 2d 3e 63 72 65 61 74 65 43 6f 6d 70 6f 73 65 72 28 24 69 6f 2c rn.$factory->createComposer($io,
5c380 20 24 63 6f 6e 66 69 67 2c 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 29 3b 0a 7d 0a 0a 0a .$config,.$disablePlugins);.}...
5c3a0 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 72 65 61 .....public.static.function.crea
5c3c0 74 65 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 teRemoteFilesystem(IOInterface.$
5c3e0 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c 2c 20 24 6f 70 74 69 io,.Config.$config.=.null,.$opti
5c400 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 73 74 61 74 69 63 20 24 77 61 72 6e 65 64 20 ons.=.array()).{.static.$warned.
5c420 3d 20 66 61 6c 73 65 3b 0a 24 64 69 73 61 62 6c 65 54 6c 73 20 3d 20 66 61 6c 73 65 3b 0a 69 66 =.false;.$disableTls.=.false;.if
5c440 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 64 69 73 61 62 .($config.&&.$config->get('disab
5c460 6c 65 2d 74 6c 73 27 29 20 3d 3d 3d 20 74 72 75 65 29 20 7b 0a 69 66 20 28 21 24 77 61 72 6e 65 le-tls').===.true).{.if.(!$warne
5c480 64 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 77 61 72 6e 69 6e 67 3e 59 6f 75 20 61 72 d).{.$io->write('<warning>You.ar
5c4a0 65 20 72 75 6e 6e 69 6e 67 20 43 6f 6d 70 6f 73 65 72 20 77 69 74 68 20 53 53 4c 2f 54 4c 53 20 e.running.Composer.with.SSL/TLS.
5c4c0 70 72 6f 74 65 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 64 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 protection.disabled.</warning>')
5c4e0 3b 0a 7d 0a 24 77 61 72 6e 65 64 20 3d 20 74 72 75 65 3b 0a 24 64 69 73 61 62 6c 65 54 6c 73 20 ;.}.$warned.=.true;.$disableTls.
5c500 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 =.true;.}.elseif.(!extension_loa
5c520 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e ded('openssl')).{.throw.new.\Run
5c540 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 6f 70 65 6e 73 73 6c 20 65 78 74 65 6e timeException('The.openssl.exten
5c560 73 69 6f 6e 20 69 73 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 53 53 4c 2f 54 4c 53 20 70 72 6f sion.is.required.for.SSL/TLS.pro
5c580 74 65 63 74 69 6f 6e 20 62 75 74 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 2e 20 27 0a tection.but.is.not.available..'.
5c5a0 2e 20 27 49 66 20 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 ..'If.you.can.not.enable.the.ope
5c5c0 6e 73 73 6c 20 65 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 nssl.extension,.you.can.disable.
5c5e0 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 2c 20 62 79 this.error,.at.your.own.risk,.by
5c600 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 20 6f 70 74 .setting.the.\'disable-tls\'.opt
5c620 69 6f 6e 20 74 6f 20 74 72 75 65 2e 27 29 3b 0a 7d 0a 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 ion.to.true.');.}.$remoteFilesys
5c640 74 65 6d 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 24 64 69 73 61 62 temOptions.=.array();.if.($disab
5c660 6c 65 54 6c 73 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 69 66 20 28 24 63 6f 6e 66 69 67 20 26 leTls.===.false).{.if.($config.&
5c680 26 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 63 61 66 69 6c 65 27 29 29 20 7b 0a 24 72 65 6d &.$config->get('cafile')).{.$rem
5c6a0 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 27 73 73 oteFilesystemOptions.=.array('ss
5c6c0 6c 27 20 3d 3e 20 61 72 72 61 79 28 27 63 61 66 69 6c 65 27 20 3d 3e 20 24 63 6f 6e 66 69 67 2d l'.=>.array('cafile'.=>.$config-
5c6e0 3e 67 65 74 28 27 63 61 66 69 6c 65 27 29 29 29 3b 0a 7d 0a 24 72 65 6d 6f 74 65 46 69 6c 65 73 >get('cafile')));.}.$remoteFiles
5c700 79 73 74 65 6d 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 5f 72 65 63 75 72 ystemOptions.=.array_merge_recur
5c720 73 69 76 65 28 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 4f 70 74 69 6f 6e 73 2c 20 24 sive($remoteFilesystemOptions,.$
5c740 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 74 72 79 20 7b 0a 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 options);.}.try.{.$remoteFilesys
5c760 74 65 6d 20 3d 20 6e 65 77 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 69 6f 2c 20 tem.=.new.RemoteFilesystem($io,.
5c780 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 4f 70 74 69 6f 6e $config,.$remoteFilesystemOption
5c7a0 73 2c 20 24 64 69 73 61 62 6c 65 54 6c 73 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 s,.$disableTls);.}.catch.(Transp
5c7c0 6f 72 74 45 78 63 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 ortException.$e).{.if.(false.!==
5c7e0 20 73 74 72 70 6f 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 .strpos($e->getMessage(),.'cafil
5c800 65 27 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 65 72 72 6f 72 3e 55 6e 61 62 6c 65 e')).{.$io->write('<error>Unable
5c820 20 74 6f 20 6c 6f 63 61 74 65 20 61 20 76 61 6c 69 64 20 43 41 20 63 65 72 74 69 66 69 63 61 74 .to.locate.a.valid.CA.certificat
5c840 65 20 66 69 6c 65 2e 20 59 6f 75 20 6d 75 73 74 20 73 65 74 20 61 20 76 61 6c 69 64 20 5c 27 63 e.file..You.must.set.a.valid.\'c
5c860 61 66 69 6c 65 5c 27 20 6f 70 74 69 6f 6e 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 24 69 6f 2d 3e afile\'.option.</error>');.$io->
5c880 77 72 69 74 65 28 27 3c 65 72 72 6f 72 3e 41 20 76 61 6c 69 64 20 43 41 20 63 65 72 74 69 66 69 write('<error>A.valid.CA.certifi
5c8a0 63 61 74 65 20 66 69 6c 65 20 69 73 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 53 53 4c 2f 54 4c cate.file.is.required.for.SSL/TL
5c8c0 53 20 70 72 6f 74 65 63 74 69 6f 6e 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 69 66 20 28 50 48 50 S.protection.</error>');.if.(PHP
5c8e0 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 36 30 30 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 _VERSION_ID.<.50600).{.$io->writ
5c900 65 28 27 3c 65 72 72 6f 72 3e 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 79 6f 75 20 e('<error>It.is.recommended.you.
5c920 75 70 67 72 61 64 65 20 74 6f 20 50 48 50 20 35 2e 36 2b 20 77 68 69 63 68 20 63 61 6e 20 64 65 upgrade.to.PHP.5.6+.which.can.de
5c940 74 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 tect.your.system.CA.file.automat
5c960 69 63 61 6c 6c 79 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 24 69 6f 2d 3e 77 72 69 74 65 28 ically.</error>');.}.$io->write(
5c980 27 3c 65 72 72 6f 72 3e 59 6f 75 20 63 61 6e 20 64 69 73 61 62 6c 65 20 74 68 69 73 20 65 72 72 '<error>You.can.disable.this.err
5c9a0 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 6e 67 or,.at.your.own.risk,.by.setting
5c9c0 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 20 74 .the.\'disable-tls\'.option.to.t
5c9e0 72 75 65 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 72 rue.</error>');.}.throw.$e;.}..r
5ca00 65 74 75 72 6e 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 7d 0a 7d 0a 3c 3f 70 eturn.$remoteFilesystem;.}.}.<?p
5ca20 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
5ca40 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 75 73 65 20 43 \IO;..use.Composer\Config;.use.C
5ca60 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 0a 61 omposer\Util\ProcessExecutor;..a
5ca80 62 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 bstract.class.BaseIO.implements.
5caa0 49 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 IOInterface.{.protected.$authent
5cac0 69 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 ications.=.array();.....public.f
5cae0 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 0a 7b 0a 72 unction.getAuthentications().{.r
5cb00 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 3b 0a 7d 0a eturn.$this->authentications;.}.
5cb20 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 6e 74 69 63 ....public.function.hasAuthentic
5cb40 61 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 ation($repositoryName).{.return.
5cb60 69 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 isset($this->authentications[$re
5cb80 70 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 positoryName]);.}.....public.fun
5cba0 63 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 ction.getAuthentication($reposit
5cbc0 6f 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 oryName).{.if.(isset($this->auth
5cbe0 65 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 entications[$repositoryName])).{
5cc00 0a 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 .return.$this->authentications[$
5cc20 72 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 repositoryName];.}..return.array
5cc40 28 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 ('username'.=>.null,.'password'.
5cc60 3d 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 =>.null);.}.....public.function.
5cc80 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
5cca0 65 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 e,.$username,.$password.=.null).
5ccc0 7b 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 {.$this->authentications[$reposi
5cce0 74 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 toryName].=.array('username'.=>.
5cd00 24 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 $username,.'password'.=>.$passwo
5cd20 72 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 6c 6f 61 64 43 rd);.}.....public.function.loadC
5cd40 6f 6e 66 69 67 75 72 61 74 69 6f 6e 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 0a onfiguration(Config.$config).{..
5cd60 20 69 66 20 28 24 74 6f 6b 65 6e 73 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 .if.($tokens.=.$config->get('git
5cd80 68 75 62 2d 6f 61 75 74 68 27 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 6f 6b 65 6e 73 20 hub-oauth')).{.foreach.($tokens.
5cda0 61 73 20 24 64 6f 6d 61 69 6e 20 3d 3e 20 24 74 6f 6b 65 6e 29 20 7b 0a 69 66 20 28 21 70 72 65 as.$domain.=>.$token).{.if.(!pre
5cdc0 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d 7a 30 2d 39 5d 2b 24 7d 27 2c 20 24 74 6f 6b 65 6e 29 g_match('{^[a-z0-9]+$}',.$token)
5cde0 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 78 ).{.throw.new.\UnexpectedValueEx
5ce00 63 65 70 74 69 6f 6e 28 27 59 6f 75 72 20 67 69 74 68 75 62 20 6f 61 75 74 68 20 74 6f 6b 65 6e ception('Your.github.oauth.token
5ce20 20 66 6f 72 20 27 2e 24 64 6f 6d 61 69 6e 2e 27 20 63 6f 6e 74 61 69 6e 73 20 69 6e 76 61 6c 69 .for.'.$domain.'.contains.invali
5ce40 64 20 63 68 61 72 61 63 74 65 72 73 3a 20 22 27 2e 24 74 6f 6b 65 6e 2e 27 22 27 29 3b 0a 7d 0a d.characters:."'.$token.'"');.}.
5ce60 24 74 68 69 73 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 6e $this->setAuthentication($domain
5ce80 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 7d 0a ,.$token,.'x-oauth-basic');.}.}.
5cea0 0a 69 66 20 28 24 74 6f 6b 65 6e 73 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 .if.($tokens.=.$config->get('git
5cec0 6c 61 62 2d 6f 61 75 74 68 27 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 6f 6b 65 6e 73 20 lab-oauth')).{.foreach.($tokens.
5cee0 61 73 20 24 64 6f 6d 61 69 6e 20 3d 3e 20 24 74 6f 6b 65 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 73 as.$domain.=>.$token).{.$this->s
5cf00 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 6e etAuthentication($domain,.$token
5cf20 2c 20 27 6f 61 75 74 68 32 27 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 24 63 72 65 64 73 20 3d ,.'oauth2');.}.}....if.($creds.=
5cf40 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 74 74 70 2d 62 61 73 69 63 27 29 29 20 7b 0a 66 .$config->get('http-basic')).{.f
5cf60 6f 72 65 61 63 68 20 28 24 63 72 65 64 73 20 61 73 20 24 64 6f 6d 61 69 6e 20 3d 3e 20 24 63 72 oreach.($creds.as.$domain.=>.$cr
5cf80 65 64 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 ed).{.$this->setAuthentication($
5cfa0 64 6f 6d 61 69 6e 2c 20 24 63 72 65 64 5b 27 75 73 65 72 6e 61 6d 65 27 5d 2c 20 24 63 72 65 64 domain,.$cred['username'],.$cred
5cfc0 5b 27 70 61 73 73 77 6f 72 64 27 5d 29 3b 0a 7d 0a 7d 0a 0a 0a 20 50 72 6f 63 65 73 73 45 78 65 ['password']);.}.}....ProcessExe
5cfe0 63 75 74 6f 72 3a 3a 73 65 74 54 69 6d 65 6f 75 74 28 28 69 6e 74 29 20 24 63 6f 6e 66 69 67 2d cutor::setTimeout((int).$config-
5d000 3e 67 65 74 28 27 70 72 6f 63 65 73 73 2d 74 69 6d 65 6f 75 74 27 29 29 3b 0a 7d 0a 7d 0a 3c 3f >get('process-timeout'));.}.}.<?
5d020 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
5d040 72 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 r\IO;..use.Symfony\Component\Con
5d060 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 53 74 72 65 61 6d 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 sole\Output\StreamOutput;.use.Sy
5d080 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
5d0a0 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 75 73 65 20 r\OutputFormatterInterface;.use.
5d0c0 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\
5d0e0 53 74 72 69 6e 67 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 StringInput;.use.Symfony\Compone
5d100 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 0a 0a 0a nt\Console\Helper\HelperSet;....
5d120 0a 63 6c 61 73 73 20 42 75 66 66 65 72 49 4f 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 6f 6c 65 49 .class.BufferIO.extends.ConsoleI
5d140 4f 0a 7b 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 O.{......public.function.__const
5d160 72 75 63 74 28 0a 24 69 6e 70 75 74 20 3d 20 27 27 2c 0a 24 76 65 72 62 6f 73 69 74 79 20 3d 20 ruct(.$input.=.'',.$verbosity.=.
5d180 53 74 72 65 61 6d 4f 75 74 70 75 74 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 0a StreamOutput::VERBOSITY_NORMAL,.
5d1a0 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
5d1c0 74 65 72 20 3d 20 6e 75 6c 6c 0a 29 20 7b 0a 24 69 6e 70 75 74 20 3d 20 6e 65 77 20 53 74 72 69 ter.=.null.).{.$input.=.new.Stri
5d1e0 6e 67 49 6e 70 75 74 28 24 69 6e 70 75 74 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 49 6e 74 65 ngInput($input);.$input->setInte
5d200 72 61 63 74 69 76 65 28 66 61 6c 73 65 29 3b 0a 0a 24 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 53 ractive(false);..$output.=.new.S
5d220 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 27 treamOutput(fopen('php://memory'
5d240 2c 20 27 72 77 27 29 2c 20 24 76 65 72 62 6f 73 69 74 79 2c 20 21 65 6d 70 74 79 28 24 66 6f 72 ,.'rw'),.$verbosity,.!empty($for
5d260 6d 61 74 74 65 72 29 2c 20 24 66 6f 72 6d 61 74 74 65 72 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f matter),.$formatter);..parent::_
5d280 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 6e 65 77 20 _construct($input,.$output,.new.
5d2a0 48 65 6c 70 65 72 53 65 74 28 61 72 72 61 79 28 29 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 HelperSet(array()));.}..public.f
5d2c0 75 6e 63 74 69 6f 6e 20 67 65 74 4f 75 74 70 75 74 28 29 0a 7b 0a 66 73 65 65 6b 28 24 74 68 69 unction.getOutput().{.fseek($thi
5d2e0 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 2c 20 30 29 3b 0a 0a 24 6f 75 s->output->getStream(),.0);..$ou
5d300 74 70 75 74 20 3d 20 73 74 72 65 61 6d 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 tput.=.stream_get_contents($this
5d320 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 29 3b 0a 0a 24 6f 75 74 70 75 74 ->output->getStream());..$output
5d340 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 22 7b 28 3f 3c 3d 5e .=.preg_replace_callback("{(?<=^
5d360 7c 5c 6e 7c 5c 78 30 38 29 28 2e 2b 3f 29 28 5c 78 30 38 2b 29 7d 22 2c 20 66 75 6e 63 74 69 6f |\n|\x08)(.+?)(\x08+)}",.functio
5d380 6e 20 28 24 6d 61 74 63 68 65 73 29 20 7b 0a 24 70 72 65 20 3d 20 73 74 72 69 70 5f 74 61 67 73 n.($matches).{.$pre.=.strip_tags
5d3a0 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 3b 0a 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 70 72 65 29 ($matches[1]);..if.(strlen($pre)
5d3c0 20 3d 3d 3d 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 20 7b 0a 72 65 74 75 .===.strlen($matches[2])).{.retu
5d3e0 72 6e 20 27 27 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 72 74 72 69 6d 28 24 6d 61 74 63 68 65 rn.'';.}....return.rtrim($matche
5d400 73 5b 31 5d 29 2e 22 5c 6e 22 3b 0a 7d 2c 20 24 6f 75 74 70 75 74 29 3b 0a 0a 72 65 74 75 72 6e s[1])."\n";.},.$output);..return
5d420 20 24 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 0a 6e .$output;.}.}.<?php............n
5d440 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 6d 66 6f amespace.Composer\IO;..use.Symfo
5d460 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
5d480 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
5d4a0 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 6e 74 \Console\Output\ConsoleOutputInt
5d4c0 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
5d4e0 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
5d500 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
5d520 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 6e er\HelperSet;.use.Symfony\Compon
5d540 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 69 72 6d 61 74 69 6f ent\Console\Question\Confirmatio
5d560 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 6d 70 6f 6e 65 6e 74 nQuestion;.use.Symfony\Component
5d580 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 6e 3b 0a 0a 0a 0a 0a \Console\Question\Question;.....
5d5a0 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 49 4f 20 65 78 74 65 6e 64 73 20 42 61 73 65 49 ...class.ConsoleIO.extends.BaseI
5d5c0 4f 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 70 75 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 O.{.protected.$input;.protected.
5d5e0 24 6f 75 74 70 75 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 68 65 6c 70 65 72 53 65 74 3b 0a 70 $output;.protected.$helperSet;.p
5d600 72 6f 74 65 63 74 65 64 20 24 6c 61 73 74 4d 65 73 73 61 67 65 3b 0a 70 72 6f 74 65 63 74 65 64 rotected.$lastMessage;.protected
5d620 20 24 6c 61 73 74 4d 65 73 73 61 67 65 45 72 72 3b 0a 70 72 69 76 61 74 65 20 24 73 74 61 72 74 .$lastMessageErr;.private.$start
5d640 54 69 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 5f Time;.........public.function.__
5d660 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 69 6e 70 75 74 2c construct(InputInterface.$input,
5d680 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 48 65 6c 70 65 72 .OutputInterface.$output,.Helper
5d6a0 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 6e 70 75 74 20 3d Set.$helperSet).{.$this->input.=
5d6c0 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 6f 75 74 70 75 74 .$input;.$this->output.=.$output
5d6e0 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 65 72 53 65 74 3b ;.$this->helperSet.=.$helperSet;
5d700 0a 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 44 65 62 75 67 67 .}..public.function.enableDebugg
5d720 69 6e 67 28 24 73 74 61 72 74 54 69 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 ing($startTime).{.$this->startTi
5d740 6d 65 20 3d 20 24 73 74 61 72 74 54 69 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 me.=.$startTime;.}.....public.fu
5d760 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 75 72 6e 20 nction.isInteractive().{.return.
5d780 24 74 68 69 73 2d 3e 69 6e 70 75 74 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 3b 0a 7d $this->input->isInteractive();.}
5d7a0 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
5d7c0 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 2d 3e 69 73 44 65 63 ().{.return.$this->output->isDec
5d7e0 6f 72 61 74 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 orated();.}.....public.function.
5d800 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 6f 75 74 70 isVerbose().{.return.$this->outp
5d820 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 6e 74 65 ut->getVerbosity().>=.OutputInte
5d840 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 3b 0a 7d 0a 0a 0a 0a 0a rface::VERBOSITY_VERBOSE;.}.....
5d860 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 28 29 0a public.function.isVeryVerbose().
5d880 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 62 6f {.return.$this->output->getVerbo
5d8a0 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 42 4f sity().>=.OutputInterface::VERBO
5d8c0 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 SITY_VERY_VERBOSE;.}.....public.
5d8e0 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 24 74 68 69 function.isDebug().{.return.$thi
5d900 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 20 3e 3d 20 4f 75 74 s->output->getVerbosity().>=.Out
5d920 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 3b 0a 7d putInterface::VERBOSITY_DEBUG;.}
5d940 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 73 73 .....public.function.write($mess
5d960 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e ages,.$newline.=.true).{.$this->
5d980 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 65 2c 20 66 61 6c doWrite($messages,.$newline,.fal
5d9a0 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 20 77 72 69 74 65 se);.}.....public.function.write
5d9c0 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 3d 20 74 72 75 65 Error($messages,.$newline.=.true
5d9e0 29 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 ).{.$this->doWrite($messages,.$n
5da00 65 77 6c 69 6e 65 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 ewline,.true);.}.......private.f
5da20 75 6e 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 unction.doWrite($messages,.$newl
5da40 69 6e 65 2c 20 24 73 74 64 65 72 72 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 ine,.$stderr).{.if.(null.!==.$th
5da60 69 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 is->startTime).{.$memoryUsage.=.
5da80 6d 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 memory_get_usage()./.1024./.1024
5daa0 3b 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 ;.$timeSpent.=.microtime(true).-
5dac0 20 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 .$this->startTime;.$messages.=.a
5dae0 72 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 rray_map(function.($message).use
5db00 20 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 .($memoryUsage,.$timeSpent).{.re
5db20 74 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 turn.sprintf('[%.1fMB/%.2fs].%s'
5db40 2c 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 ,.$memoryUsage,.$timeSpent,.$mes
5db60 73 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 sage);.},.(array).$messages);.}.
5db80 0a 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 .if.(true.===.$stderr.&&.$this->
5dba0 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 74 70 75 74 49 output.instanceof.ConsoleOutputI
5dbc0 6e 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 nterface).{.$this->output->getEr
5dbe0 72 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 rorOutput()->write($messages,.$n
5dc00 65 77 6c 69 6e 65 29 3b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 45 72 72 20 3d ewline);.$this->lastMessageErr.=
5dc20 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 20 28 61 72 72 .join($newline.?."\n".:.'',.(arr
5dc40 61 79 29 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 ay).$messages);..return;.}..$thi
5dc60 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 65 77 s->output->write($messages,.$new
5dc80 6c 69 6e 65 29 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 line);.$this->lastMessage.=.join
5dca0 28 24 6e 65 77 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 ($newline.?."\n".:.'',.(array).$
5dcc0 6d 65 73 73 61 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 messages);.}.....public.function
5dce0 20 6f 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 6e 65 20 3d .overwrite($messages,.$newline.=
5dd00 20 74 72 75 65 2c 20 24 73 69 7a 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 6f .true,.$size.=.null).{.$this->do
5dd20 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 6e 65 2c 20 24 Overwrite($messages,.$newline,.$
5dd40 73 69 7a 65 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 size,.false);.}.....public.funct
5dd60 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 24 6e ion.overwriteError($messages,.$n
5dd80 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 29 0a 7b 0a 24 ewline.=.true,.$size.=.null).{.$
5dda0 74 68 69 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 this->doOverwrite($messages,.$ne
5ddc0 77 6c 69 6e 65 2c 20 24 73 69 7a 65 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 wline,.$size,.true);.}........pr
5dde0 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 64 6f 4f 76 65 72 77 72 69 74 65 28 24 6d 65 73 73 ivate.function.doOverwrite($mess
5de00 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 2c 20 24 73 69 7a 65 2c 20 24 73 74 64 65 72 72 29 0a ages,.$newline,.$size,.$stderr).
5de20 7b 0a 0a 20 24 6d 65 73 73 61 67 65 73 20 3d 20 6a 6f 69 6e 28 24 6e 65 77 6c 69 6e 65 20 3f 20 {...$messages.=.join($newline.?.
5de40 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 67 65 73 29 3b 0a 0a "\n".:.'',.(array).$messages);..
5de60 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 73 69 7a 65 29 29 20 7b 0a 0a 20 24 73 69 7a 65 20 3d ..if.(!isset($size)).{...$size.=
5de80 20 73 74 72 6c 65 6e 28 73 74 72 69 70 5f 74 61 67 73 28 24 73 74 64 65 72 72 20 3f 20 24 74 68 .strlen(strip_tags($stderr.?.$th
5dea0 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 45 72 72 20 3a 20 24 74 68 69 73 2d 3e 6c 61 73 74 is->lastMessageErr.:.$this->last
5dec0 4d 65 73 73 61 67 65 29 29 3b 0a 7d 0a 0a 20 24 74 68 69 73 2d 3e 64 6f 57 72 69 74 65 28 73 74 Message));.}...$this->doWrite(st
5dee0 72 5f 72 65 70 65 61 74 28 22 5c 78 30 38 22 2c 20 24 73 69 7a 65 29 2c 20 66 61 6c 73 65 2c 20 r_repeat("\x08",.$size),.false,.
5df00 24 73 74 64 65 72 72 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 64 6f 57 72 69 74 65 28 24 6d 65 73 $stderr);....$this->doWrite($mes
5df20 73 61 67 65 73 2c 20 66 61 6c 73 65 2c 20 24 73 74 64 65 72 72 29 3b 0a 0a 24 66 69 6c 6c 20 3d sages,.false,.$stderr);..$fill.=
5df40 20 24 73 69 7a 65 20 2d 20 73 74 72 6c 65 6e 28 73 74 72 69 70 5f 74 61 67 73 28 24 6d 65 73 73 .$size.-.strlen(strip_tags($mess
5df60 61 67 65 73 29 29 3b 0a 69 66 20 28 24 66 69 6c 6c 20 3e 20 30 29 20 7b 0a 0a 20 24 74 68 69 73 ages));.if.($fill.>.0).{...$this
5df80 2d 3e 64 6f 57 72 69 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 66 69 6c 6c 29 ->doWrite(str_repeat('.',.$fill)
5dfa0 2c 20 66 61 6c 73 65 2c 20 24 73 74 64 65 72 72 29 3b 0a 0a 20 24 74 68 69 73 2d 3e 64 6f 57 72 ,.false,.$stderr);...$this->doWr
5dfc0 69 74 65 28 73 74 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 ite(str_repeat("\x08",.$fill),.f
5dfe0 61 6c 73 65 2c 20 24 73 74 64 65 72 72 29 3b 0a 7d 0a 0a 69 66 20 28 24 6e 65 77 6c 69 6e 65 29 alse,.$stderr);.}..if.($newline)
5e000 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 2c 20 24 73 74 64 .{.$this->doWrite('',.true,.$std
5e020 65 72 72 29 3b 0a 7d 0a 0a 69 66 20 28 24 73 74 64 65 72 72 29 20 7b 0a 24 74 68 69 73 2d 3e 6c err);.}..if.($stderr).{.$this->l
5e040 61 73 74 4d 65 73 73 61 67 65 45 72 72 20 3d 20 24 6d 65 73 73 61 67 65 73 3b 0a 7d 20 65 6c 73 astMessageErr.=.$messages;.}.els
5e060 65 20 7b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 20 3d 20 24 6d 65 73 73 61 67 e.{.$this->lastMessage.=.$messag
5e080 65 73 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 73 6b 28 es;.}.}.....public.function.ask(
5e0a0 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 24 6f $question,.$default.=.null).{.$o
5e0c0 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 0a 69 66 20 28 24 6f 75 74 utput.=.$this->output;..if.($out
5e0e0 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
5e100 72 66 61 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 rface).{.$output.=.$output->getE
5e120 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 0a 24 68 65 6c 70 65 72 20 3d 20 24 74 68 69 rrorOutput();.}...$helper.=.$thi
5e140 73 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 s->helperSet->get('question');.$
5e160 71 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 question.=.new.Question($questio
5e180 6e 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 n,.$default);..return.$helper->a
5e1a0 73 6b 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 sk($this->input,.$output,.$quest
5e1c0 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 61 73 6b 43 ion);.}.....public.function.askC
5e1e0 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 onfirmation($question,.$default.
5e200 3d 20 74 72 75 65 29 0a 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 =.true).{.$output.=.$this->outpu
5e220 74 3b 0a 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 t;..if.($output.instanceof.Conso
5e240 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.=.$
5e260 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 0a 24 68 output->getErrorOutput();.}...$h
5e280 65 6c 70 65 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 elper.=.$this->helperSet->get('q
5e2a0 75 65 73 74 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 uestion');.$question.=.new.Confi
5e2c0 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 24 64 65 66 61 rmationQuestion($question,.$defa
5e2e0 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 6b 28 24 74 68 69 73 ult);..return.$helper->ask($this
5e300 2d 3e 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 3b 0a 7d 0a ->input,.$output,.$question);.}.
5e320 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 41 6e 64 56 61 6c 69 64 61 ....public.function.askAndValida
5e340 74 65 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 61 74 74 65 6d te($question,.$validator,.$attem
5e360 70 74 73 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 pts.=.null,.$default.=.null).{.$
5e380 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 0a 69 66 20 28 24 6f 75 output.=.$this->output;..if.($ou
5e3a0 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 74 tput.instanceof.ConsoleOutputInt
5e3c0 65 72 66 61 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 erface).{.$output.=.$output->get
5e3e0 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 0a 24 68 65 6c 70 65 72 20 3d 20 24 74 68 ErrorOutput();.}...$helper.=.$th
5e400 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 69 6f 6e 27 29 3b 0a is->helperSet->get('question');.
5e420 24 71 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 $question.=.new.Question($questi
5e440 6f 6e 2c 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 on,.$default);.$question->setVal
5e460 69 64 61 74 6f 72 28 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 idator($validator);.$question->s
5e480 65 74 4d 61 78 41 74 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 etMaxAttempts($attempts);..retur
5e4a0 6e 20 24 68 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 6f 75 n.$helper->ask($this->input,.$ou
5e4c0 74 70 75 74 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 63 20 66 tput,.$question);.}.....public.f
5e4e0 75 6e 63 74 69 6f 6e 20 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 24 71 75 65 73 74 69 unction.askAndHideAnswer($questi
5e500 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 24 71 75 65 73 74 69 6f on).{.$this->writeError($questio
5e520 6e 2c 20 66 61 6c 73 65 29 3b 0a 0a 72 65 74 75 72 6e 20 5c 53 65 6c 64 5c 43 6c 69 50 72 6f 6d n,.false);..return.\Seld\CliProm
5e540 70 74 5c 43 6c 69 50 72 6f 6d 70 74 3a 3a 68 69 64 64 65 6e 50 72 6f 6d 70 74 28 74 72 75 65 29 pt\CliPrompt::hiddenPrompt(true)
5e560 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
5e580 20 43 6f 6d 70 6f 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 .Composer\IO;..use.Composer\Conf
5e5a0 69 67 3b 0a 0a 0a 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 ig;.......interface.IOInterface.
5e5c0 7b 0a 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 {......public.function.isInterac
5e5e0 74 69 76 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 tive();.......public.function.is
5e600 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 6f 6e Verbose();.......public.function
5e620 20 69 73 56 65 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 .isVeryVerbose();.......public.f
5e640 75 6e 63 74 69 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 unction.isDebug();.......public.
5e660 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
5e680 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 20 ublic.function.write($messages,.
5e6a0 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 $newline.=.true);........public.
5e6c0 66 75 6e 63 74 69 6f 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 function.writeError($messages,.$
5e6e0 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 newline.=.true);.........public.
5e700 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 73 2c 20 24 6e function.overwrite($messages,.$n
5e720 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 29 3b 0a 0a 0a ewline.=.true,.$size.=.null);...
5e740 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 72 77 72 69 74 65 45 ......public.function.overwriteE
5e760 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 3d 20 74 72 75 65 2c rror($messages,.$newline.=.true,
5e780 20 24 73 69 7a 65 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 .$size.=.null);...........public
5e7a0 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 6c .function.ask($question,.$defaul
5e7c0 74 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e t.=.null);............public.fun
5e7e0 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 74 69 6f 6e 2c ction.askConfirmation($question,
5e800 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a .$default.=.true);..............
5e820 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 ...public.function.askAndValidat
5e840 65 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 61 74 74 65 6d 70 e($question,.$validator,.$attemp
5e860 74 73 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a ts.=.null,.$default.=.null);....
5e880 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 6e 64 48 69 64 65 41 .....public.function.askAndHideA
5e8a0 6e 73 77 65 72 28 24 71 75 65 73 74 69 6f 6e 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 nswer($question);.......public.f
5e8c0 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 0a 0a unction.getAuthentications();...
5e8e0 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 6e 74 ......public.function.hasAuthent
5e900 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 0a 0a ication($repositoryName);.......
5e920 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 61 74 ..public.function.getAuthenticat
5e940 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 70 75 ion($repositoryName);.........pu
5e960 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 6e 28 blic.function.setAuthentication(
5e980 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 61 73 $repositoryName,.$username,.$pas
5e9a0 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 6e 63 sword.=.null);.......public.func
5e9c0 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 24 63 tion.loadConfiguration(Config.$c
5e9e0 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 65 73 onfig);.}.<?php............names
5ea00 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 4e 75 pace.Composer\IO;.......class.Nu
5ea20 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 63 20 llIO.extends.BaseIO.{....public.
5ea40 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 75 72 function.isInteractive().{.retur
5ea60 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 69 n.false;.}.....public.function.i
5ea80 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 0a 0a sVerbose().{.return.false;.}....
5eaa0 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 28 29 .public.function.isVeryVerbose()
5eac0 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 66 75 .{.return.false;.}.....public.fu
5eae0 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 3b nction.isDebug().{.return.false;
5eb00 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 61 74 .}.....public.function.isDecorat
5eb20 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 6c 69 ed().{.return.false;.}.....publi
5eb40 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
5eb60 6c 69 6e 65 20 3d 20 74 72 75 65 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 line.=.true).{.}.....public.func
5eb80 74 69 6f 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 tion.writeError($messages,.$newl
5eba0 69 6e 65 20 3d 20 74 72 75 65 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ine.=.true).{.}.....public.funct
5ebc0 69 6f 6e 20 6f 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 6e ion.overwrite($messages,.$newlin
5ebe0 65 20 3d 20 74 72 75 65 2c 20 24 73 69 7a 65 20 3d 20 38 30 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 e.=.true,.$size.=.80).{.}.....pu
5ec00 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 76 65 72 77 72 69 74 65 45 72 72 6f 72 28 24 6d 65 blic.function.overwriteError($me
5ec20 73 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 73 69 7a 65 20 3d ssages,.$newline.=.true,.$size.=
5ec40 20 38 30 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 61 73 6b .80).{.}.....public.function.ask
5ec60 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 72 ($question,.$default.=.null).{.r
5ec80 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 66 75 6e eturn.$default;.}.....public.fun
5eca0 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 74 69 6f 6e 2c ction.askConfirmation($question,
5ecc0 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 75 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 64 65 66 61 .$default.=.true).{.return.$defa
5ece0 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 6e ult;.}.....public.function.askAn
5ed00 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 6f 72 2c dValidate($question,.$validator,
5ed20 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 20 6e .$attempts.=.false,.$default.=.n
5ed40 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 0a 0a 0a 0a 70 75 ull).{.return.$default;.}.....pu
5ed60 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 72 28 24 blic.function.askAndHideAnswer($
5ed80 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 question).{.return.null;.}.}.<?p
5eda0 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
5edc0 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 5c 41 75 74 6f 6c 6f 61 ;..use.Composer\Autoload\Autoloa
5ede0 64 47 65 6e 65 72 61 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 dGenerator;.use.Composer\Depende
5ee00 6e 63 79 52 65 73 6f 6c 76 65 72 5c 44 65 66 61 75 6c 74 50 6f 6c 69 63 79 3b 0a 75 73 65 20 43 ncyResolver\DefaultPolicy;.use.C
5ee20 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 72 61 omposer\DependencyResolver\Opera
5ee40 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 6f 73 tion\UpdateOperation;.use.Compos
5ee60 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\
5ee80 49 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 65 72 5c 44 InstallOperation;.use.Composer\D
5eea0 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 55 6e 69 6e ependencyResolver\Operation\Unin
5eec0 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 65 72 5c 44 65 70 stallOperation;.use.Composer\Dep
5eee0 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 4f 70 65 72 61 74 endencyResolver\Operation\Operat
5ef00 69 6f 6e 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 ionInterface;.use.Composer\Depen
5ef20 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 dencyResolver\PolicyInterface;.u
5ef40 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 50 se.Composer\DependencyResolver\P
5ef60 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 52 65 73 6f ool;.use.Composer\DependencyReso
5ef80 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 5c 44 65 70 65 6e lver\Request;.use.Composer\Depen
5efa0 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 52 75 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 dencyResolver\Rule;.use.Composer
5efc0 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 53 6f 6c 76 65 72 3b 0a 75 73 65 20 \DependencyResolver\Solver;.use.
5efe0 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 53 6f 6c 76 Composer\DependencyResolver\Solv
5f000 65 72 50 72 6f 62 6c 65 6d 73 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 erProblemsException;.use.Compose
5f020 72 5c 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 3b 0a 75 73 r\Downloader\DownloadManager;.us
5f040 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
5f060 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 61 6c 6c Dispatcher;.use.Composer\Install
5f080 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 6d 70 er\InstallationManager;.use.Comp
5f0a0 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 73 3b 0a oser\Installer\InstallerEvents;.
5f0c0 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 4e 6f 6f 70 49 6e 73 74 61 use.Composer\Installer\NoopInsta
5f0e0 6c 6c 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 ller;.use.Composer\IO\IOInterfac
5f100 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 65 3b 0a 75 e;.use.Composer\Json\JsonFile;.u
5f120 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
5f140 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 50 ;.use.Composer\Package\CompleteP
5f160 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 4c 69 6e ackage;.use.Composer\Package\Lin
5f180 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 74 72 61 69 6e k;.use.Composer\Semver\Constrain
5f1a0 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 50 61 63 6b 61 t\Constraint;.use.Composer\Packa
5f1c0 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 6b 61 67 65 5c ge\Locker;.use.Composer\Package\
5f1e0 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 50 PackageInterface;.use.Composer\P
5f200 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 3b 0a 75 73 65 ackage\RootPackageInterface;.use
5f220 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 65 .Composer\Repository\CompositeRe
5f240 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 72 pository;.use.Composer\Repositor
5f260 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 0a 75 73 65 20 y\InstalledArrayRepository;.use.
5f280 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 46 69 6c Composer\Repository\InstalledFil
5f2a0 65 73 79 73 74 65 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 esystemRepository;.use.Composer\
5f2c0 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
5f2e0 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 72 se.Composer\Repository\Repositor
5f300 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 74 yInterface;.use.Composer\Reposit
5f320 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
5f340 73 65 72 5c 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 ser\Repository\WritableRepositor
5f360 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 53 63 72 69 70 74 5c yInterface;.use.Composer\Script\
5f380 53 63 72 69 70 74 45 76 65 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 ScriptEvents;........class.Insta
5f3a0 6c 6c 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 0a 0a 0a 0a 70 72 6f ller.{....protected.$io;.....pro
5f3c0 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 70 tected.$config;.....protected.$p
5f3e0 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 64 6f 77 6e 6c 6f 61 64 4d ackage;.....protected.$downloadM
5f400 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 anager;.....protected.$repositor
5f420 79 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 6f 63 6b 65 72 3b yManager;.....protected.$locker;
5f440 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 .....protected.$installationMana
5f460 67 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 ger;.....protected.$eventDispatc
5f480 68 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 her;.....protected.$autoloadGene
5f4a0 72 61 74 6f 72 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 rator;..protected.$preferSource.
5f4c0 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 66 65 72 44 69 73 74 20 3d =.false;.protected.$preferDist.=
5f4e0 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 70 74 69 6d 69 7a 65 41 75 74 6f 6c .false;.protected.$optimizeAutol
5f500 6f 61 64 65 72 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6c 61 73 73 4d oader.=.false;.protected.$classM
5f520 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 70 72 6f 74 65 63 74 apAuthoritative.=.false;.protect
5f540 65 64 20 24 64 65 76 4d 6f 64 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 ed.$devMode.=.false;.protected.$
5f560 64 72 79 52 75 6e 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 62 6f dryRun.=.false;.protected.$verbo
5f580 73 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 75 70 64 61 74 65 20 3d 20 se.=.false;.protected.$update.=.
5f5a0 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 75 6d 70 41 75 74 6f 6c 6f 61 64 65 72 false;.protected.$dumpAutoloader
5f5c0 20 3d 20 74 72 75 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6e 53 63 72 69 70 74 73 20 3d .=.true;.protected.$runScripts.=
5f5e0 20 74 72 75 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d .true;.protected.$ignorePlatform
5f600 52 65 71 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 66 65 72 53 Reqs.=.false;.protected.$preferS
5f620 74 61 62 6c 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 66 65 72 table.=.false;.protected.$prefer
5f640 4c 6f 77 65 73 74 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 Lowest.=.false;......protected.$
5f660 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 20 3d 20 6e 75 6c 6c 3b 0a 70 72 6f 74 65 63 74 65 updateWhitelist.=.null;.protecte
5f680 64 20 24 77 68 69 74 65 6c 69 73 74 44 65 70 65 6e 64 65 6e 63 69 65 73 20 3d 20 66 61 6c 73 65 d.$whitelistDependencies.=.false
5f6a0 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 73 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 ;.....protected.$suggestedPackag
5f6c0 65 73 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 es;.....protected.$additionalIns
5f6e0 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a talledRepository;...............
5f700 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 6e public.function.__construct(IOIn
5f720 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 52 6f 6f terface.$io,.Config.$config,.Roo
5f740 74 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 44 6f 77 6e tPackageInterface.$package,.Down
5f760 6c 6f 61 64 4d 61 6e 61 67 65 72 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2c 20 52 65 loadManager.$downloadManager,.Re
5f780 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 72 79 4d 61 6e 61 67 positoryManager.$repositoryManag
5f7a0 65 72 2c 20 4c 6f 63 6b 65 72 20 24 6c 6f 63 6b 65 72 2c 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e er,.Locker.$locker,.Installation
5f7c0 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 20 45 76 Manager.$installationManager,.Ev
5f7e0 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 72 2c 20 entDispatcher.$eventDispatcher,.
5f800 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 AutoloadGenerator.$autoloadGener
5f820 61 74 6f 72 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 ator).{.$this->io.=.$io;.$this->
5f840 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 70 61 63 6b 61 67 65 config.=.$config;.$this->package
5f860 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 .=.$package;.$this->downloadMana
5f880 67 65 72 20 3d 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d 3e 72 ger.=.$downloadManager;.$this->r
5f8a0 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 epositoryManager.=.$repositoryMa
5f8c0 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 20 3d 20 24 6c 6f 63 6b 65 72 3b 0a nager;.$this->locker.=.$locker;.
5f8e0 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 20 3d 20 24 69 6e $this->installationManager.=.$in
5f900 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 stallationManager;.$this->eventD
5f920 69 73 70 61 74 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 24 74 ispatcher.=.$eventDispatcher;.$t
5f940 68 69 73 2d 3e 61 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 his->autoloadGenerator.=.$autolo
5f960 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e adGenerator;.}........public.fun
5f980 63 74 69 6f 6e 20 72 75 6e 28 29 0a 7b 0a 67 63 5f 63 6f 6c 6c 65 63 74 5f 63 79 63 6c 65 73 28 ction.run().{.gc_collect_cycles(
5f9a0 29 3b 0a 67 63 5f 64 69 73 61 62 6c 65 28 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 72 79 );.gc_disable();..if.($this->dry
5f9c0 52 75 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 65 20 3d 20 74 72 75 65 3b 0a 24 74 Run).{.$this->verbose.=.true;.$t
5f9e0 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e his->runScripts.=.false;.$this->
5fa00 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 installationManager->addInstalle
5fa20 72 28 6e 65 77 20 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 72 29 3b 0a 24 74 68 69 73 2d 3e 6d 6f 63 r(new.NoopInstaller);.$this->moc
5fa40 6b 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 kLocalRepositories($this->reposi
5fa60 74 6f 72 79 4d 61 6e 61 67 65 72 29 3b 0a 7d 0a 0a 0a 20 0a 20 24 64 65 76 52 65 70 6f 20 3d 20 toryManager);.}......$devRepo.=.
5fa80 6e 65 77 20 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 new.InstalledFilesystemRepositor
5faa0 79 28 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 y(new.JsonFile($this->config->ge
5fac0 74 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 69 6e 73 74 61 t('vendor-dir').'/composer/insta
5fae0 6c 6c 65 64 5f 64 65 76 2e 6a 73 6f 6e 27 29 29 3b 0a 69 66 20 28 24 64 65 76 52 65 70 6f 2d 3e lled_dev.json'));.if.($devRepo->
5fb00 67 65 74 50 61 63 6b 61 67 65 73 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 getPackages()).{.$this->io->writ
5fb20 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 42 43 20 4e 6f 74 69 63 65 3a 20 52 65 6d 6f eError('<warning>BC.Notice:.Remo
5fb40 76 69 6e 67 20 6f 6c 64 20 64 65 76 20 70 61 63 6b 61 67 65 73 20 74 6f 20 6d 69 67 72 61 74 65 ving.old.dev.packages.to.migrate
5fb60 20 74 6f 20 74 68 65 20 6e 65 77 20 72 65 71 75 69 72 65 2d 64 65 76 20 68 61 6e 64 6c 69 6e 67 .to.the.new.require-dev.handling
5fb80 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 76 52 65 70 6f .</warning>');.foreach.($devRepo
5fba0 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
5fbc0 66 20 28 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 69 f.($this->installationManager->i
5fbe0 73 50 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 64 28 24 64 65 76 52 65 70 6f 2c 20 24 70 61 63 sPackageInstalled($devRepo,.$pac
5fc00 6b 61 67 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 kage)).{.$this->installationMana
5fc20 67 65 72 2d 3e 75 6e 69 6e 73 74 61 6c 6c 28 24 64 65 76 52 65 70 6f 2c 20 6e 65 77 20 55 6e 69 ger->uninstall($devRepo,.new.Uni
5fc40 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d 0a 7d 0a nstallOperation($package));.}.}.
5fc60 75 6e 6c 69 6e 6b 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 unlink($this->config->get('vendo
5fc80 72 2d 64 69 72 27 29 2e 27 2f 63 6f 6d 70 6f 73 65 72 2f 69 6e 73 74 61 6c 6c 65 64 5f 64 65 76 r-dir').'/composer/installed_dev
5fca0 2e 6a 73 6f 6e 27 29 3b 0a 7d 0a 75 6e 73 65 74 28 24 64 65 76 52 65 70 6f 2c 20 24 70 61 63 6b .json');.}.unset($devRepo,.$pack
5fcc0 61 67 65 29 3b 0a 0a 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 age);...if.($this->runScripts).{
5fce0 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 20 3f 20 ...$eventName.=.$this->update.?.
5fd00 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 55 50 44 41 54 45 5f 43 4d 44 20 3a 20 53 ScriptEvents::PRE_UPDATE_CMD.:.S
5fd20 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 49 4e 53 54 41 4c 4c 5f 43 4d 44 3b 0a 24 74 criptEvents::PRE_INSTALL_CMD;.$t
5fd40 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 53 63 his->eventDispatcher->dispatchSc
5fd60 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 4d 6f 64 65 29 ript($eventName,.$this->devMode)
5fd80 3b 0a 7d 0a 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 73 65 74 ;.}..$this->downloadManager->set
5fda0 50 72 65 66 65 72 53 6f 75 72 63 65 28 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 6f 75 72 63 65 PreferSource($this->preferSource
5fdc0 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 73 65 74 50 72 );.$this->downloadManager->setPr
5fde0 65 66 65 72 44 69 73 74 28 24 74 68 69 73 2d 3e 70 72 65 66 65 72 44 69 73 74 29 3b 0a 0a 0a 20 eferDist($this->preferDist);....
5fe00 0a 20 0a 20 24 69 6e 73 74 61 6c 6c 65 64 52 6f 6f 74 50 61 63 6b 61 67 65 20 3d 20 63 6c 6f 6e ....$installedRootPackage.=.clon
5fe20 65 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 6f 6f 74 e.$this->package;.$installedRoot
5fe40 50 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 71 75 69 72 65 73 28 61 72 72 61 79 28 29 29 3b 0a 24 Package->setRequires(array());.$
5fe60 69 6e 73 74 61 6c 6c 65 64 52 6f 6f 74 50 61 63 6b 61 67 65 2d 3e 73 65 74 44 65 76 52 65 71 75 installedRootPackage->setDevRequ
5fe80 69 72 65 73 28 61 72 72 61 79 28 29 29 3b 0a 0a 0a 20 24 6c 6f 63 61 6c 52 65 70 6f 20 3d 20 24 ires(array());....$localRepo.=.$
5fea0 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 67 65 74 4c 6f 63 61 this->repositoryManager->getLoca
5fec0 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 lRepository();.if.(!$this->updat
5fee0 65 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 65 64 28 29 29 20 e.&&.$this->locker->isLocked()).
5ff00 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 6f {.$platformOverrides.=.$this->lo
5ff20 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 20 cker->getPlatformOverrides();.}.
5ff40 65 6c 73 65 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 else.{.$platformOverrides.=.$thi
5ff60 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 20 61 72 s->config->get('platform').?:.ar
5ff80 72 61 79 28 29 3b 0a 7d 0a 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 20 3d 20 6e 65 77 20 50 6c 61 ray();.}.$platformRepo.=.new.Pla
5ffa0 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
5ffc0 72 6d 4f 76 65 72 72 69 64 65 73 29 3b 0a 24 72 65 70 6f 73 20 3d 20 61 72 72 61 79 28 0a 24 6c rmOverrides);.$repos.=.array(.$l
5ffe0 6f 63 61 6c 52 65 70 6f 2c 0a 6e 65 77 20 49 6e 73 74 61 6c 6c 65 64 41 72 72 61 79 52 65 70 6f ocalRepo,.new.InstalledArrayRepo
60000 73 69 74 6f 72 79 28 61 72 72 61 79 28 24 69 6e 73 74 61 6c 6c 65 64 52 6f 6f 74 50 61 63 6b 61 sitory(array($installedRootPacka
60020 67 65 29 29 2c 0a 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 2c 0a 29 3b 0a 24 69 6e 73 74 61 6c 6c ge)),.$platformRepo,.);.$install
60040 65 64 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 edRepo.=.new.CompositeRepository
60060 28 24 72 65 70 6f 73 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 ($repos);.if.($this->additionalI
60080 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 64 nstalledRepository).{.$installed
600a0 52 65 70 6f 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 74 68 69 73 2d 3e 61 64 64 69 74 Repo->addRepository($this->addit
600c0 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 29 3b 0a 7d 0a 0a 24 61 ionalInstalledRepository);.}..$a
600e0 6c 69 61 73 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 52 6f 6f 74 41 6c 69 61 73 65 73 28 29 liases.=.$this->getRootAliases()
60100 3b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 50 6c 61 74 66 6f 72 6d 50 61 63 6b 61 67 65 73 28 24 ;.$this->aliasPlatformPackages($
60120 70 6c 61 74 66 6f 72 6d 52 65 70 6f 2c 20 24 61 6c 69 61 73 65 73 29 3b 0a 0a 74 72 79 20 7b 0a platformRepo,.$aliases);..try.{.
60140 24 74 68 69 73 2d 3e 73 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 $this->suggestedPackages.=.array
60160 28 29 3b 0a 24 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 64 6f 49 6e 73 74 61 6c 6c 28 24 6c 6f 63 ();.$res.=.$this->doInstall($loc
60180 61 6c 52 65 70 6f 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 70 6c 61 74 66 6f 72 alRepo,.$installedRepo,.$platfor
601a0 6d 52 65 70 6f 2c 20 24 61 6c 69 61 73 65 73 2c 20 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 29 mRepo,.$aliases,.$this->devMode)
601c0 3b 0a 69 66 20 28 24 72 65 73 20 21 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 73 3b ;.if.($res.!==.0).{.return.$res;
601e0 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 69 66 20 .}.}.catch.(\Exception.$e).{.if.
60200 28 21 24 74 68 69 73 2d 3e 64 72 79 52 75 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c (!$this->dryRun).{.$this->instal
60220 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 6e 6f 74 69 66 79 49 6e 73 74 61 6c 6c 73 28 24 74 lationManager->notifyInstalls($t
60240 68 69 73 2d 3e 69 6f 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 69 66 20 28 21 24 74 his->io);.}..throw.$e;.}.if.(!$t
60260 68 69 73 2d 3e 64 72 79 52 75 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 his->dryRun).{.$this->installati
60280 6f 6e 4d 61 6e 61 67 65 72 2d 3e 6e 6f 74 69 66 79 49 6e 73 74 61 6c 6c 73 28 24 74 68 69 73 2d onManager->notifyInstalls($this-
602a0 3e 69 6f 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 29 20 7b >io);.}....if.($this->devMode).{
602c0 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 73 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 .foreach.($this->suggestedPackag
602e0 65 73 20 61 73 20 24 73 75 67 67 65 73 74 69 6f 6e 29 20 7b 0a 24 74 61 72 67 65 74 20 3d 20 24 es.as.$suggestion).{.$target.=.$
60300 73 75 67 67 65 73 74 69 6f 6e 5b 27 74 61 72 67 65 74 27 5d 3b 0a 66 6f 72 65 61 63 68 20 28 24 suggestion['target'];.foreach.($
60320 69 6e 73 74 61 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 installedRepo->getPackages().as.
60340 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 74 61 72 67 65 74 $package).{.if.(in_array($target
60360 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 28 29 29 29 20 7b 0a 63 6f 6e 74 69 ,.$package->getNames())).{.conti
60380 6e 75 65 20 32 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 nue.2;.}.}..$this->io->writeErro
603a0 72 28 24 73 75 67 67 65 73 74 69 6f 6e 5b 27 73 6f 75 72 63 65 27 5d 2e 27 20 73 75 67 67 65 73 r($suggestion['source'].'.sugges
603c0 74 73 20 69 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 24 73 75 67 67 65 73 74 69 6f 6e 5b 27 74 61 72 ts.installing.'.$suggestion['tar
603e0 67 65 74 27 5d 2e 27 20 28 27 2e 24 73 75 67 67 65 73 74 69 6f 6e 5b 27 72 65 61 73 6f 6e 27 5d get'].'.('.$suggestion['reason']
60400 2e 27 29 27 29 3b 0a 7d 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 61 6c 52 65 70 .')');.}.}....foreach.($localRep
60420 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 20 7b 0a o->getPackages().as.$package).{.
60440 69 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 if.(!$package.instanceof.Complet
60460 65 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 ePackage.||.!$package->isAbandon
60480 65 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 ed()).{.continue;.}..$replacemen
604a0 74 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 t.=.(is_string($package->getRepl
604c0 61 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 acementPackage())).?.'Use.'...$p
604e0 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 28 29 20 ackage->getReplacementPackage().
60500 2e 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 ..'.instead'.:.'No.replacement.w
60520 61 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 as.suggested';..$this->io->write
60540 45 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 Error(.sprintf(."<warning>Packag
60560 65 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 e.%s.is.abandoned,.you.should.av
60580 6f 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 oid.using.it..%s.</warning>",.$p
605a0 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 72 65 70 6c 61 63 ackage->getPrettyName(),.$replac
605c0 65 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 ement.).);.}..if.(!$this->dryRun
605e0 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 7c 7c 20 21 24 74 68 69 ).{...if.($this->update.||.!$thi
60600 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 29 20 7b 0a 24 6c 6f 63 61 6c 52 s->locker->isLocked()).{.$localR
60620 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 73 epo->reload();......$devPackages
60640 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 61 .=.($this->devMode.||.!$this->pa
60660 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 79 ckage->getDevRequires()).?.array
60680 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 65 ().:.null;....if.($this->devMode
606a0 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 72 .&&.$this->package->getDevRequir
606c0 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 50 es()).{.$policy.=.$this->createP
606e0 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 6f olicy();.$pool.=.$this->createPo
60700 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 24 ol(true);.$pool->addRepository($
60720 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 65 installedRepo,.$aliases);....$re
60740 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 68 quest.=.$this->createRequest($th
60760 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 65 is->package,.$platformRepo);.$re
60780 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 68 quest->updateAll();.foreach.($th
607a0 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 6c is->package->getRequires().as.$l
607c0 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 3e ink).{.$request->install($link->
607e0 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 6e getTarget(),.$link->getConstrain
60800 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 2d t());.}..$this->eventDispatcher-
60820 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 65 >dispatchInstallerEvent(Installe
60840 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 4e rEvents::PRE_DEPENDENCIES_SOLVIN
60860 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 61 G,.false,.$policy,.$pool,.$insta
60880 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
608a0 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
608c0 6c 6c 65 64 52 65 70 6f 29 3b 0a 24 6f 70 73 20 3d 20 24 73 6f 6c 76 65 72 2d 3e 73 6f 6c 76 65 lledRepo);.$ops.=.$solver->solve
608e0 28 24 72 65 71 75 65 73 74 2c 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 50 6c 61 74 66 6f 72 6d ($request,.$this->ignorePlatform
60900 52 65 71 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 2d 3e 64 Reqs);.$this->eventDispatcher->d
60920 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 65 72 45 ispatchInstallerEvent(InstallerE
60940 76 65 6e 74 73 3a 3a 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 vents::POST_DEPENDENCIES_SOLVING
60960 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 61 6c ,.false,.$policy,.$pool,.$instal
60980 6c 65 64 52 65 70 6f 2c 20 24 72 65 71 75 65 73 74 2c 20 24 6f 70 73 29 3b 0a 66 6f 72 65 61 63 ledRepo,.$request,.$ops);.foreac
609a0 68 20 28 24 6f 70 73 20 61 73 20 24 6f 70 29 20 7b 0a 69 66 20 28 24 6f 70 2d 3e 67 65 74 4a 6f h.($ops.as.$op).{.if.($op->getJo
609c0 62 54 79 70 65 28 29 20 3d 3d 3d 20 27 75 6e 69 6e 73 74 61 6c 6c 27 29 20 7b 0a 24 64 65 76 50 bType().===.'uninstall').{.$devP
609e0 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 6f 70 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 7d ackages[].=.$op->getPackage();.}
60a00 0a 7d 0a 7d 0a 0a 24 70 6c 61 74 66 6f 72 6d 52 65 71 73 20 3d 20 24 74 68 69 73 2d 3e 65 78 74 .}.}..$platformReqs.=.$this->ext
60a20 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 74 68 69 73 2d 3e ractPlatformRequirements($this->
60a40 70 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 6c 61 74 66 6f package->getRequires());.$platfo
60a60 72 6d 44 65 76 52 65 71 73 20 3d 20 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 20 3f 20 24 74 68 rmDevReqs.=.$this->devMode.?.$th
60a80 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 65 6e 74 73 28 is->extractPlatformRequirements(
60aa0 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 73 28 29 $this->package->getDevRequires()
60ac0 29 20 3a 20 61 72 72 61 79 28 29 3b 0a 0a 24 75 70 64 61 74 65 64 4c 6f 63 6b 20 3d 20 24 74 68 ).:.array();..$updatedLock.=.$th
60ae0 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 73 65 74 4c 6f 63 6b 44 61 74 61 28 0a 61 72 72 61 79 5f 64 is->locker->setLockData(.array_d
60b00 69 66 66 28 24 6c 6f 63 61 6c 52 65 70 6f 2d 3e 67 65 74 43 61 6e 6f 6e 69 63 61 6c 50 61 63 6b iff($localRepo->getCanonicalPack
60b20 61 67 65 73 28 29 2c 20 28 61 72 72 61 79 29 20 24 64 65 76 50 61 63 6b 61 67 65 73 29 2c 0a 24 ages(),.(array).$devPackages),.$
60b40 64 65 76 50 61 63 6b 61 67 65 73 2c 0a 24 70 6c 61 74 66 6f 72 6d 52 65 71 73 2c 0a 24 70 6c 61 devPackages,.$platformReqs,.$pla
60b60 74 66 6f 72 6d 44 65 76 52 65 71 73 2c 0a 24 61 6c 69 61 73 65 73 2c 0a 24 74 68 69 73 2d 3e 70 tformDevReqs,.$aliases,.$this->p
60b80 61 63 6b 61 67 65 2d 3e 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 29 2c 0a 24 ackage->getMinimumStability(),.$
60ba0 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 73 this->package->getStabilityFlags
60bc0 28 29 2c 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 74 61 62 6c 65 20 7c 7c 20 24 74 68 69 73 (),.$this->preferStable.||.$this
60be0 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 66 65 72 53 74 61 62 6c 65 28 29 2c 0a 24 74 ->package->getPreferStable(),.$t
60c00 68 69 73 2d 3e 70 72 65 66 65 72 4c 6f 77 65 73 74 2c 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 his->preferLowest,.$this->config
60c20 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 28 29 0a 29 3b 0a ->get('platform').?:.array().);.
60c40 69 66 20 28 24 75 70 64 61 74 65 64 4c 6f 63 6b 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 if.($updatedLock).{.$this->io->w
60c60 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 57 72 69 74 69 6e 67 20 6c 6f 63 6b 20 66 69 riteError('<info>Writing.lock.fi
60c80 6c 65 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 75 6d le</info>');.}.}..if.($this->dum
60ca0 70 41 75 74 6f 6c 6f 61 64 65 72 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 6f 70 74 69 pAutoloader).{...if.($this->opti
60cc0 6d 69 7a 65 41 75 74 6f 6c 6f 61 64 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 mizeAutoloader).{.$this->io->wri
60ce0 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 6f 70 74 69 6d 69 teError('<info>Generating.optimi
60d00 7a 65 64 20 61 75 74 6f 6c 6f 61 64 20 66 69 6c 65 73 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 20 65 zed.autoload.files</info>');.}.e
60d20 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 3c 69 6e lse.{.$this->io->writeError('<in
60d40 66 6f 3e 47 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 fo>Generating.autoload.files</in
60d60 66 6f 3e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 fo>');.}..$this->autoloadGenerat
60d80 6f 72 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 29 3b 0a or->setDevMode($this->devMode);.
60da0 24 74 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 43 6c 61 $this->autoloadGenerator->setCla
60dc0 73 73 4d 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d ssMapAuthoritative($this->classM
60de0 61 70 41 75 74 68 6f 72 69 74 61 74 69 76 65 29 3b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 6c 6f 61 apAuthoritative);.$this->autoloa
60e00 64 47 65 6e 65 72 61 74 6f 72 2d 3e 73 65 74 52 75 6e 53 63 72 69 70 74 73 28 24 74 68 69 73 2d dGenerator->setRunScripts($this-
60e20 3e 72 75 6e 53 63 72 69 70 74 73 29 3b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 6c 6f 61 64 47 65 6e >runScripts);.$this->autoloadGen
60e40 65 72 61 74 6f 72 2d 3e 64 75 6d 70 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 6c 6f 63 erator->dump($this->config,.$loc
60e60 61 6c 52 65 70 6f 2c 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2c 20 24 74 68 69 73 2d 3e 69 alRepo,.$this->package,.$this->i
60e80 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 27 63 6f 6d 70 6f 73 65 72 27 2c 20 nstallationManager,.'composer',.
60ea0 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 3b 0a 7d 0a 0a 69 $this->optimizeAutoloader);.}..i
60ec0 66 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 f.($this->runScripts).{...$event
60ee0 4e 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 Name.=.$this->update.?.ScriptEve
60f00 6e 74 73 3a 3a 50 4f 53 54 5f 55 50 44 41 54 45 5f 43 4d 44 20 3a 20 53 63 72 69 70 74 45 76 65 nts::POST_UPDATE_CMD.:.ScriptEve
60f20 6e 74 73 3a 3a 50 4f 53 54 5f 49 4e 53 54 41 4c 4c 5f 43 4d 44 3b 0a 24 74 68 69 73 2d 3e 65 76 nts::POST_INSTALL_CMD;.$this->ev
60f40 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 28 24 65 entDispatcher->dispatchScript($e
60f60 76 65 6e 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 76 ventName,.$this->devMode);.}..$v
60f80 65 6e 64 6f 72 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 27 76 endorDir.=.$this->config->get('v
60fa0 65 6e 64 6f 72 2d 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 endor-dir');.if.(is_dir($vendorD
60fc0 69 72 29 29 20 7b 0a 0a 20 0a 20 40 74 6f 75 63 68 28 24 76 65 6e 64 6f 72 44 69 72 29 3b 0a 7d ir)).{.....@touch($vendorDir);.}
60fe0 0a 7d 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 .}..return.0;.}..........protect
61000 65 64 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 ed.function.doInstall($localRepo
61020 2c 20 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 ,.$installedRepo,.$platformRepo,
61040 20 24 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 .$aliases,.$withDevReqs).{...$lo
61060 63 6b 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 ckedRepository.=.null;.$reposito
61080 72 69 65 73 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 20 24 69 6e 73 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b ries.=.null;....$installFromLock
610a0 20 3d 20 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 26 26 20 24 74 68 69 73 2d 3e 6c 6f 63 6b .=.!$this->update.&&.$this->lock
610c0 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 3b 0a 0a 0a 20 0a 20 0a 20 69 66 20 28 24 69 6e 73 74 er->isLocked();........if.($inst
610e0 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 20 7c 7c 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 75 70 allFromLock.||.(!empty($this->up
61100 64 61 74 65 57 68 69 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 dateWhitelist).&&.$this->locker-
61120 3e 69 73 4c 6f 63 6b 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 >isLocked())).{.try.{.$lockedRep
61140 6f 73 69 74 6f 72 79 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 ository.=.$this->locker->getLock
61160 65 64 52 65 70 6f 73 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 edRepository($withDevReqs);.}.ca
61180 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 0a 20 69 tch.(\RuntimeException.$e).{...i
611a0 66 20 28 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 f.($this->package->getDevRequire
611c0 73 28 29 29 20 7b 0a 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 s()).{.throw.$e;.}...$lockedRepo
611e0 73 69 74 6f 72 79 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 sitory.=.$this->locker->getLocke
61200 64 52 65 70 6f 73 69 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 dRepository();.}.}..$this->white
61220 6c 69 73 74 55 70 64 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 listUpdateDependencies(.$localRe
61240 70 6f 2c 0a 24 77 69 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 po,.$withDevReqs,.$this->package
61260 2d 3e 67 65 74 52 65 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 ->getRequires(),.$this->package-
61280 3e 67 65 74 44 65 76 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 >getDevRequires().);..$this->io-
612a0 3e 77 72 69 74 65 45 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 >writeError('<info>Loading.compo
612c0 73 65 72 20 72 65 70 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 ser.repositories.with.package.in
612e0 66 6f 72 6d 61 74 69 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 formation</info>');....$policy.=
61300 20 24 74 68 69 73 2d 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 .$this->createPolicy();.$pool.=.
61320 24 74 68 69 73 2d 3e 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 $this->createPool($withDevReqs,.
61340 24 69 6e 73 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 20 3f 20 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 $installFromLock.?.$lockedReposi
61360 74 6f 72 79 20 3a 20 6e 75 6c 6c 29 3b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f tory.:.null);.$pool->addReposito
61380 72 79 28 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 69 66 ry($installedRepo,.$aliases);.if
613a0 20 28 21 24 69 6e 73 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 29 20 7b 0a 24 72 65 70 6f 73 69 74 6f .(!$installFromLock).{.$reposito
613c0 72 69 65 73 20 3d 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 2d ries.=.$this->repositoryManager-
613e0 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 >getRepositories();.foreach.($re
61400 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 24 70 6f positories.as.$repository).{.$po
61420 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 72 79 2c 20 24 ol->addRepository($repository,.$
61440 61 6c 69 61 73 65 73 29 3b 0a 7d 0a 7d 0a 0a 20 0a 20 0a 20 69 66 20 28 24 6c 6f 63 6b 65 64 52 aliases);.}.}.......if.($lockedR
61460 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 6f 72 epository).{.$pool->addRepositor
61480 79 28 24 6c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 2c 20 24 61 6c 69 61 73 65 73 29 3b 0a y($lockedRepository,.$aliases);.
614a0 7d 0a 0a 0a 20 24 72 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 }....$request.=.$this->createReq
614c0 75 65 73 74 28 24 74 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 uest($this->package,.$platformRe
614e0 70 6f 29 3b 0a 0a 69 66 20 28 21 24 69 6e 73 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 29 20 7b 0a 0a po);..if.(!$installFromLock).{..
61500 20 24 72 65 6d 6f 76 65 64 55 6e 73 74 61 62 6c 65 50 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 .$removedUnstablePackages.=.arra
61520 79 28 29 3b 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 63 y();.foreach.($localRepo->getPac
61540 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 0a 21 24 70 6f kages().as.$package).{.if.(.!$po
61560 6f 6c 2d 3e 69 73 50 61 63 6b 61 67 65 41 63 63 65 70 74 61 62 6c 65 28 24 70 61 63 6b 61 67 65 ol->isPackageAcceptable($package
61580 2d 3e 67 65 74 4e 61 6d 65 73 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 74 61 62 69 ->getNames(),.$package->getStabi
615a0 6c 69 74 79 28 29 29 0a 26 26 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 lity()).&&.$this->installationMa
615c0 6e 61 67 65 72 2d 3e 69 73 50 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 64 28 24 6c 6f 63 61 6c nager->isPackageInstalled($local
615e0 52 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 29 0a 29 20 7b 0a 24 72 65 6d 6f 76 65 64 55 6e 73 74 Repo,.$package).).{.$removedUnst
61600 61 62 6c 65 50 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 ablePackages[$package->getName()
61620 5d 20 3d 20 74 72 75 65 3b 0a 24 72 65 71 75 65 73 74 2d 3e 72 65 6d 6f 76 65 28 24 70 61 63 6b ].=.true;.$request->remove($pack
61640 61 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 age->getName(),.new.Constraint('
61660 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 29 3b 0a 7d 0a =',.$package->getVersion()));.}.
61680 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 29 20 7b 0a 24 74 68 69 73 2d }.}..if.($this->update).{.$this-
616a0 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 69 6e 66 6f 3e 55 70 64 61 74 69 6e 67 20 >io->writeError('<info>Updating.
616c0 64 65 70 65 6e 64 65 6e 63 69 65 73 27 2e 28 24 77 69 74 68 44 65 76 52 65 71 73 20 3f 20 27 20 dependencies'.($withDevReqs.?.'.
616e0 28 69 6e 63 6c 75 64 69 6e 67 20 72 65 71 75 69 72 65 2d 64 65 76 29 27 20 3a 20 27 27 29 2e 27 (including.require-dev)'.:.'').'
61700 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 24 72 65 71 75 65 73 74 2d 3e 75 70 64 61 74 65 41 6c 6c 28 </info>');..$request->updateAll(
61720 29 3b 0a 0a 69 66 20 28 24 77 69 74 68 44 65 76 52 65 71 73 29 20 7b 0a 24 6c 69 6e 6b 73 20 3d );..if.($withDevReqs).{.$links.=
61740 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 .array_merge($this->package->get
61760 52 65 71 75 69 72 65 73 28 29 2c 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 Requires(),.$this->package->getD
61780 65 76 52 65 71 75 69 72 65 73 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6c 69 6e 6b 73 20 3d evRequires());.}.else.{.$links.=
617a0 20 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 29 3b 0a .$this->package->getRequires();.
617c0 7d 0a 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 }..foreach.($links.as.$link).{.$
617e0 72 65 71 75 65 73 74 2d 3e 69 6e 73 74 61 6c 6c 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 request->install($link->getTarge
61800 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 29 29 3b 0a 7d 0a t(),.$link->getConstraint());.}.
61820 0a 0a 20 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 29 .....if.($this->updateWhitelist)
61840 20 7b 0a 24 63 75 72 72 65 6e 74 50 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 .{.$currentPackages.=.$this->get
61860 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
61880 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 3b 0a 0a 0a 20 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 nstalledRepo);....$candidates.=.
618a0 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 6c 69 6e array();.foreach.($links.as.$lin
618c0 6b 29 20 7b 0a 24 63 61 6e 64 69 64 61 74 65 73 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 k).{.$candidates[$link->getTarge
618e0 74 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 61 6c 52 65 t()].=.true;.}.foreach.($localRe
61900 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 20 7b po->getPackages().as.$package).{
61920 0a 24 63 61 6e 64 69 64 61 74 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 .$candidates[$package->getName()
61940 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 63 61 6e 64 69 64 61 ].=.true;.}....foreach.($candida
61960 74 65 73 20 61 73 20 24 63 61 6e 64 69 64 61 74 65 20 3d 3e 20 24 64 75 6d 6d 79 29 20 7b 0a 66 tes.as.$candidate.=>.$dummy).{.f
61980 6f 72 65 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 oreach.($currentPackages.as.$cur
619a0 50 61 63 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 67 65 74 4e Package).{.if.($curPackage->getN
619c0 61 6d 65 28 29 20 3d 3d 3d 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 69 66 20 28 21 24 74 68 ame().===.$candidate).{.if.(!$th
619e0 69 73 2d 3e 69 73 55 70 64 61 74 65 61 62 6c 65 28 24 63 75 72 50 61 63 6b 61 67 65 29 20 26 26 is->isUpdateable($curPackage).&&
61a00 20 21 69 73 73 65 74 28 24 72 65 6d 6f 76 65 64 55 6e 73 74 61 62 6c 65 50 61 63 6b 61 67 65 73 .!isset($removedUnstablePackages
61a20 5b 24 63 75 72 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 63 6f [$curPackage->getName()])).{.$co
61a40 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 27 2c 20 24 nstraint.=.new.Constraint('=',.$
61a60 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 72 65 71 75 curPackage->getVersion());.$requ
61a80 65 73 74 2d 3e 69 6e 73 74 61 6c 6c 28 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d est->install($curPackage->getNam
61aa0 65 28 29 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a e(),.$constraint);.}.break;.}.}.
61ac0 7d 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 6e 73 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 29 20 }.}.}.elseif.($installFromLock).
61ae0 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 3e 49 {.$this->io->writeError('<info>I
61b00 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 44 65 nstalling.dependencies'.($withDe
61b20 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 65 76 vReqs.?.'.(including.require-dev
61b40 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 6f 3e )'.:.'').'.from.lock.file</info>
61b60 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 73 68 ');..if.(!$this->locker->isFresh
61b80 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 77 61 ()).{.$this->io->writeError('<wa
61ba0 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 73 20 rning>Warning:.The.lock.file.is.
61bc0 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 20 63 not.up.to.date.with.the.latest.c
61be0 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 61 79 hanges.in.composer.json..You.may
61c00 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 69 65 .be.getting.outdated.dependencie
61c20 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 2f 77 s..Run.update.to.update.them.</w
61c40 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 6b 65 64 52 65 arning>');.}..foreach.($lockedRe
61c60 70 6f 73 69 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 pository->getPackages().as.$pack
61c80 61 67 65 29 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 age).{.$version.=.$package->getV
61ca0 65 72 73 69 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 ersion();.if.(isset($aliases[$pa
61cc0 63 6b 61 67 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 ckage->getName()][$version])).{.
61ce0 24 76 65 72 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 $version.=.$aliases[$package->ge
61d00 74 4e 61 6d 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 tName()][$version]['alias_normal
61d20 69 7a 65 64 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 ized'];.}.$constraint.=.new.Cons
61d40 74 72 61 69 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 traint('=',.$version);.$constrai
61d60 6e 74 2d 3e 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 nt->setPrettyString($package->ge
61d80 74 50 72 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 tPrettyVersion());.$request->ins
61da0 74 61 6c 6c 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 tall($package->getName(),.$const
61dc0 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 6c 6f 63 6b 65 raint);.}..foreach.($this->locke
61de0 72 2d 3e 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 r->getPlatformRequirements($with
61e00 44 65 76 52 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 DevReqs).as.$link).{.$request->i
61e20 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 6b nstall($link->getTarget(),.$link
61e40 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 ->getConstraint());.}.}.else.{.$
61e60 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 49 6e 73 74 this->io->writeError('<info>Inst
61e80 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 44 65 76 52 65 alling.dependencies'.($withDevRe
61ea0 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 65 76 29 27 20 qs.?.'.(including.require-dev)'.
61ec0 3a 20 27 27 29 2e 27 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 69 66 20 28 24 77 69 74 68 44 65 76 52 :.'').'</info>');..if.($withDevR
61ee0 65 71 73 29 20 7b 0a 24 6c 69 6e 6b 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 eqs).{.$links.=.array_merge($thi
61f00 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 2c 20 24 74 68 69 73 s->package->getRequires(),.$this
61f20 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 3b 0a 7d 20 ->package->getDevRequires());.}.
61f40 65 6c 73 65 20 7b 0a 24 6c 69 6e 6b 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e else.{.$links.=.$this->package->
61f60 67 65 74 52 65 71 75 69 72 65 73 28 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b getRequires();.}..foreach.($link
61f80 73 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 6c 6c 28 s.as.$link).{.$request->install(
61fa0 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 6f $link->getTarget(),.$link->getCo
61fc0 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 6f 63 65 nstraint());.}.}....$this->proce
61fe0 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 6c 2c ssDevPackages($localRepo,.$pool,
62000 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 61 6c .$policy,.$repositories,.$instal
62020 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 69 6e 73 ledRepo,.$lockedRepository,.$ins
62040 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 2c 20 24 77 69 74 68 44 65 76 52 65 71 73 2c 20 27 66 6f 72 tallFromLock,.$withDevReqs,.'for
62060 63 65 2d 6c 69 6e 6b 73 27 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 ce-links');....$this->eventDispa
62080 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 74 28 49 6e tcher->dispatchInstallerEvent(In
620a0 73 74 61 6c 6c 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 stallerEvents::PRE_DEPENDENCIES_
620c0 53 4f 4c 56 49 4e 47 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 SOLVING,.$this->devMode,.$policy
620e0 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
62100 74 29 3b 0a 24 73 6f 6c 76 65 72 20 3d 20 6e 65 77 20 53 6f 6c 76 65 72 28 24 70 6f 6c 69 63 79 t);.$solver.=.new.Solver($policy
62120 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 3b 0a 74 72 79 20 7b 0a ,.$pool,.$installedRepo);.try.{.
62140 24 6f 70 65 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 $operations.=.$solver->solve($re
62160 71 75 65 73 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 quest,.$this->ignorePlatformReqs
62180 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 2d 3e 64 69 73 70 61 );.$this->eventDispatcher->dispa
621a0 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 65 72 45 76 65 6e 74 tchInstallerEvent(InstallerEvent
621c0 73 3a 3a 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 2c 20 24 74 s::POST_DEPENDENCIES_SOLVING,.$t
621e0 68 69 73 2d 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 his->devMode,.$policy,.$pool,.$i
62200 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 6f 70 65 72 61 74 69 nstalledRepo,.$request,.$operati
62220 6f 6e 73 29 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 ons);.}.catch.(SolverProblemsExc
62240 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 72 69 74 65 45 72 72 eption.$e).{.$this->io->writeErr
62260 6f 72 28 27 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 or('<error>Your.requirements.cou
62280 6c 64 20 6e 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 ld.not.be.resolved.to.an.install
622a0 61 62 6c 65 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 29 3b able.set.of.packages.</error>');
622c0 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 24 65 2d 3e 67 65 74 4d 65 .$this->io->writeError($e->getMe
622e0 73 73 61 67 65 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 6d 61 78 28 31 2c 20 24 65 2d 3e 67 65 74 ssage());..return.max(1,.$e->get
62300 43 6f 64 65 28 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 Code());.}..if.($this->io->isVer
62320 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 6f 72 28 bose()).{.$this->io->writeError(
62340 22 41 6e 61 6c 79 7a 65 64 20 22 2e 63 6f 75 6e 74 28 24 70 6f 6f 6c 29 2e 22 20 70 61 63 6b 61 "Analyzed.".count($pool).".packa
62360 67 65 73 20 74 6f 20 72 65 73 6f 6c 76 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 22 29 3b 0a 24 ges.to.resolve.dependencies");.$
62380 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 64 20 22 this->io->writeError("Analyzed."
623a0 2e 24 73 6f 6c 76 65 72 2d 3e 67 65 74 52 75 6c 65 53 65 74 53 69 7a 65 28 29 2e 22 20 72 75 6c .$solver->getRuleSetSize().".rul
623c0 65 73 20 74 6f 20 72 65 73 6f 6c 76 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 22 29 3b 0a 7d 0a es.to.resolve.dependencies");.}.
623e0 0a 0a 20 24 6f 70 65 72 61 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 44 ...$operations.=.$this->processD
62400 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 6c 2c 20 24 70 evPackages($localRepo,.$pool,.$p
62420 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 61 6c 6c 65 64 olicy,.$repositories,.$installed
62440 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 69 6e 73 74 61 6c Repo,.$lockedRepository,.$instal
62460 6c 46 72 6f 6d 4c 6f 63 6b 2c 20 24 77 69 74 68 44 65 76 52 65 71 73 2c 20 27 66 6f 72 63 65 2d lFromLock,.$withDevReqs,.'force-
62480 75 70 64 61 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 updates',.$operations);....if.(!
624a0 24 6f 70 65 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 $operations).{.$this->io->writeE
624c0 72 72 6f 72 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 rror('Nothing.to.install.or.upda
624e0 74 65 27 29 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 te');.}..$operations.=.$this->mo
62500 76 65 50 6c 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 vePluginsToFront($operations);.$
62520 6f 70 65 72 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 operations.=.$this->moveUninstal
62540 6c 73 54 6f 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 lsToFront($operations);..foreach
62560 20 28 24 6f 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 .($operations.as.$operation).{..
62580 20 69 66 20 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 .if.('install'.===.$operation->g
625a0 65 74 4a 6f 62 54 79 70 65 28 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6f 70 65 72 61 74 69 etJobType()).{.foreach.($operati
625c0 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 53 75 67 67 65 73 74 73 28 29 20 on->getPackage()->getSuggests().
625e0 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 2d 3e as.$target.=>.$reason).{.$this->
62600 73 75 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 suggestedPackages[].=.array(.'so
62620 75 72 63 65 27 20 3d 3e 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 urce'.=>.$operation->getPackage(
62640 29 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 0a 27 74 61 72 67 65 74 27 20 3d 3e 20 )->getPrettyName(),.'target'.=>.
62660 24 74 61 72 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 $target,.'reason'.=>.$reason,.);
62680 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 69 6e 73 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 29 20 7b .}.}....if.(!$installFromLock).{
626a0 0a 24 70 61 63 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 .$package.=.null;.if.('update'.=
626c0 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 29 20 7b 0a 24 ==.$operation->getJobType()).{.$
626e0 70 61 63 6b 61 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 package.=.$operation->getTargetP
62700 61 63 6b 61 67 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 ackage();.}.elseif.('install'.==
62720 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 29 20 7b 0a 24 70 =.$operation->getJobType()).{.$p
62740 61 63 6b 61 67 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 ackage.=.$operation->getPackage(
62760 29 3b 0a 7d 0a 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 );.}.if.($package.&&.$package->i
62780 73 44 65 76 28 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 sDev()).{.$references.=.$this->p
627a0 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 69 66 20 28 69 73 73 ackage->getReferences();.if.(iss
627c0 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 65 74 4e 61 6d 65 et($references[$package->getName
627e0 28 29 5d 29 29 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 ()])).{.$package->setSourceRefer
62800 65 6e 63 65 28 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 ence($references[$package->getNa
62820 6d 65 28 29 5d 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 me()]);.$package->setDistReferen
62840 63 65 28 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 ce($references[$package->getName
62860 28 29 5d 29 3b 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 ()]);.}.}.if.('update'.===.$oper
62880 61 74 69 6f 6e 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 ation->getJobType().&&.$operatio
628a0 6e 2d 3e 67 65 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 n->getTargetPackage()->isDev().&
628c0 26 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()
628e0 2d 3e 67 65 74 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 ->getVersion().===.$operation->g
62900 65 74 49 6e 69 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 etInitialPackage()->getVersion()
62920 0a 26 26 20 28 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 .&&.(!$operation->getTargetPacka
62940 67 65 28 29 2d 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 ge()->getSourceReference().||.$o
62960 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 3e 67 65 peration->getTargetPackage()->ge
62980 74 53 6f 75 72 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 tSourceReference().===.$operatio
629a0 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 53 6f 75 72 63 n->getInitialPackage()->getSourc
629c0 65 52 65 66 65 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 eReference()).&&.(!$operation->g
629e0 65 74 54 61 72 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 etTargetPackage()->getDistRefere
62a00 6e 63 65 28 29 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 nce().||.$operation->getTargetPa
62a20 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 20 3d 3d 3d 20 ckage()->getDistReference().===.
62a40 24 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 $operation->getInitialPackage()-
62a60 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 69 66 20 28 24 74 68 >getDistReference()).).{.if.($th
62a80 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 2d 3e is->io->isDebug()).{.$this->io->
62aa0 77 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 writeError('..-.Skipping.update.
62ac0 6f 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 of.'..$operation->getTargetPacka
62ae0 67 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 ge()->getPrettyName().'.to.the.s
62b00 61 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 29 3b 0a ame.reference-locked.version');.
62b20 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 3b 0a 7d 0a 0a 63 6f $this->io->writeError('');.}..co
62b40 6e 74 69 6e 75 65 3b 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 ntinue;.}.}..$event.=.'Composer\
62b60 49 6e 73 74 61 6c 6c 65 72 5c 50 61 63 6b 61 67 65 45 76 65 6e 74 73 3a 3a 50 52 45 5f 50 41 43 Installer\PackageEvents::PRE_PAC
62b80 4b 41 47 45 5f 27 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 KAGE_'.strtoupper($operation->ge
62ba0 74 4a 6f 62 54 79 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 tJobType());.if.(defined($event)
62bc0 20 26 26 20 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 3e .&&.$this->runScripts).{.$this->
62be0 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 50 61 63 6b 61 67 65 eventDispatcher->dispatchPackage
62c00 45 76 65 6e 74 28 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 Event(constant($event),.$this->d
62c20 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 6c 6c evMode,.$policy,.$pool,.$install
62c40 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 2c 20 24 edRepo,.$request,.$operations,.$
62c60 6f 70 65 72 61 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 64 72 79 52 operation);.}....if.($this->dryR
62c80 75 6e 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 6f 70 65 72 61 74 69 6f un.&&.false.===.strpos($operatio
62ca0 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 2c 20 27 41 6c 69 61 73 27 29 29 20 7b 0a 24 74 68 n->getJobType(),.'Alias')).{.$th
62cc0 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 2d 20 27 20 2e 20 24 6f 70 65 is->io->writeError('..-.'...$ope
62ce0 72 61 74 69 6f 6e 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 ration);.$this->io->writeError('
62d00 27 29 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 44 65 62 75 67 ');.}.elseif.($this->io->isDebug
62d20 28 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 6f 70 65 72 61 74 69 6f ().&&.false.!==.strpos($operatio
62d40 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 2c 20 27 41 6c 69 61 73 27 29 29 20 7b 0a 24 74 68 n->getJobType(),.'Alias')).{.$th
62d60 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 2d 20 27 20 2e 20 24 6f 70 65 is->io->writeError('..-.'...$ope
62d80 72 61 74 69 6f 6e 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 ration);.$this->io->writeError('
62da0 27 29 3b 0a 7d 0a 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 ');.}..$this->installationManage
62dc0 72 2d 3e 65 78 65 63 75 74 65 28 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 6f 70 65 72 61 74 69 6f r->execute($localRepo,.$operatio
62de0 6e 29 3b 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 65 20 26 26 20 24 74 68 n);....if.($this->verbose.&&.$th
62e00 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 79 56 65 72 62 6f 73 65 28 29 20 26 26 20 69 6e 5f 61 72 is->io->isVeryVerbose().&&.in_ar
62e20 72 61 79 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 2c 20 61 72 ray($operation->getJobType(),.ar
62e40 72 61 79 28 27 69 6e 73 74 61 6c 6c 27 2c 20 27 75 70 64 61 74 65 27 29 29 29 20 7b 0a 24 72 65 ray('install',.'update'))).{.$re
62e60 61 73 6f 6e 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 52 65 61 73 6f 6e 28 29 3b 0a ason.=.$operation->getReason();.
62e80 69 66 20 28 24 72 65 61 73 6f 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 75 6c 65 29 20 7b 0a 73 if.($reason.instanceof.Rule).{.s
62ea0 77 69 74 63 68 20 28 24 72 65 61 73 6f 6e 2d 3e 67 65 74 52 65 61 73 6f 6e 28 29 29 20 7b 0a 63 witch.($reason->getReason()).{.c
62ec0 61 73 65 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 4a 4f 42 5f 49 4e 53 54 41 4c 4c 3a 0a 24 74 68 69 ase.Rule::RULE_JOB_INSTALL:.$thi
62ee0 73 2d 3e 69 6f 2d 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 52 s->io->writeError('....REASON:.R
62f00 65 71 75 69 72 65 64 20 62 79 20 72 6f 6f 74 3a 20 27 2e 24 72 65 61 73 6f 6e 2d 3e 67 65 74 50 equired.by.root:.'.$reason->getP
62f20 72 65 74 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 rettyString($pool));.$this->io->
62f40 77 72 69 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 writeError('');.break;.case.Rule
62f60 3a 3a 52 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 ::RULE_PACKAGE_REQUIRES:.$this->
62f80 69 6f 2d 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 io->writeError('....REASON:.'.$r
62fa0 65 61 73 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 eason->getPrettyString($pool));.
62fc0 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 3b 0a 62 72 65 61 6b $this->io->writeError('');.break
62fe0 3b 0a 7d 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 ;.}.}.}..$event.=.'Composer\Inst
63000 61 6c 6c 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 aller\PackageEvents::POST_PACKAG
63020 45 5f 27 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 E_'.strtoupper($operation->getJo
63040 62 54 79 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 bType());.if.(defined($event).&&
63060 20 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 3e 65 76 65 .$this->runScripts).{.$this->eve
63080 6e 74 44 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 ntDispatcher->dispatchPackageEve
630a0 6e 74 28 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 nt(constant($event),.$this->devM
630c0 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 6c 6c 65 64 52 ode,.$policy,.$pool,.$installedR
630e0 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 2c 20 24 6f 70 65 epo,.$request,.$operations,.$ope
63100 72 61 74 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 ration);.}..if.(!$this->dryRun).
63120 7b 0a 24 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 {.$localRepo->write();.}.}..if.(
63140 21 24 74 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 !$this->dryRun).{...$this->proce
63160 73 73 50 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 ssPackageUrls($pool,.$policy,.$l
63180 6f 63 61 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 ocalRepo,.$repositories);.$local
631a0 52 65 70 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 Repo->write();.}..return.0;.}...
631c0 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 6d 6f 76 ............private.function.mov
631e0 65 50 6c 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 ePluginsToFront(array.$operation
63200 73 29 0a 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 s).{.$installerOps.=.array();.fo
63220 72 65 61 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 reach.($operations.as.$idx.=>.$o
63240 70 29 20 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 p).{.if.($op.instanceof.InstallO
63260 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 70 2d 3e 67 65 74 50 peration).{.$package.=.$op->getP
63280 61 63 6b 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 ackage();.}.elseif.($op.instance
632a0 6f 66 20 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 of.UpdateOperation).{.$package.=
632c0 20 24 6f 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 .$op->getTargetPackage();.}.else
632e0 20 7b 0a 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 .{.continue;.}..if.($package->ge
63300 74 54 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 20 7c 7c tType().===.'composer-plugin'.||
63320 20 24 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 .$package->getType().===.'compos
63340 65 72 2d 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 er-installer').{...$requires.=.a
63360 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 69 72 65 73 28 rray_keys($package->getRequires(
63380 29 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 24 69 6e 64 65 78 ));.foreach.($requires.as.$index
633a0 20 3d 3e 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 .=>.$req).{.if.($req.===.'compos
633c0 65 72 2d 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 er-plugin-api'.||.preg_match(Pla
633e0 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
63400 45 5f 52 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 E_REGEX,.$req)).{.unset($require
63420 73 5b 24 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 s[$index]);.}.}...if.(!count($re
63440 71 75 69 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 quires)).{.$installerOps[].=.$op
63460 3b 0a 75 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 ;.unset($operations[$idx]);.}.}.
63480 7d 0a 0a 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 }..return.array_merge($installer
634a0 4f 70 73 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 Ops,.$operations);.}.........pri
634c0 76 61 74 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 vate.function.moveUninstallsToFr
634e0 6f 6e 74 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 ont(array.$operations).{.$uninst
63500 4f 70 73 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 Ops.=.array();.foreach.($operati
63520 6f 6e 73 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 ons.as.$idx.=>.$op).{.if.($op.in
63540 73 74 61 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 stanceof.UninstallOperation).{.$
63560 75 6e 69 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 uninstOps[].=.$op;.unset($operat
63580 69 6f 6e 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 ions[$idx]);.}.}..return.array_m
635a0 65 72 67 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 erge($uninstOps,.$operations);.}
635c0 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 65 50 6f .......private.function.createPo
635e0 6f 6c 28 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 ol($withDevReqs,.RepositoryInter
63600 66 61 63 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 face.$lockedRepository.=.null).{
63620 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 26 26 20 24 74 68 69 73 2d 3e 6c 6f .if.(!$this->update.&&.$this->lo
63640 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 29 20 7b 20 0a 20 24 6d 69 6e 69 6d 75 6d 53 74 cker->isLocked()).{...$minimumSt
63660 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
63680 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.
636a0 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
636c0 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
636e0 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
63700 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
63720 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-
63740 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
63760 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
63780 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->
637a0 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 20 65 6c getName()].=.$constraint;.}.}.el
637c0 73 65 20 7b 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 20 3d 20 24 74 68 69 73 2d 3e se.{.$minimumStability.=.$this->
637e0 70 61 63 6b 61 67 65 2d 3e 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 29 3b 0a package->getMinimumStability();.
63800 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 70 61 63 6b 61 67 65 $stabilityFlags.=.$this->package
63820 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 29 3b 0a 0a 24 72 65 71 75 69 72 65 ->getStabilityFlags();..$require
63840 73 20 3d 20 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 s.=.$this->package->getRequires(
63860 29 3b 0a 69 66 20 28 24 77 69 74 68 44 65 76 52 65 71 73 29 20 7b 0a 24 72 65 71 75 69 72 65 73 );.if.($withDevReqs).{.$requires
63880 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 71 75 69 72 65 73 2c 20 24 74 68 69 73 2d .=.array_merge($requires,.$this-
638a0 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 3b 0a 7d 0a 7d >package->getDevRequires());.}.}
638c0 0a 0a 24 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 ..$rootConstraints.=.array();.fo
638e0 72 65 61 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 reach.($requires.as.$req.=>.$con
63900 73 74 72 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 straint).{...if.($this->ignorePl
63920 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 74 66 6f 72 atformReqs.&&.preg_match(Platfor
63940 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 45 mRepository::PLATFORM_PACKAGE_RE
63960 47 45 58 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 GEX,.$req)).{.continue;.}.if.($c
63980 6f 6e 73 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 onstraint.instanceof.Link).{.$ro
639a0 6f 74 43 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 otConstraints[$req].=.$constrain
639c0 74 2d 3e 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 t->getConstraint();.}.else.{.$ro
639e0 6f 74 43 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 otConstraints[$req].=.$constrain
63a00 74 3b 0a 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 t;.}.}..return.new.Pool($minimum
63a20 53 74 61 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 Stability,.$stabilityFlags,.$roo
63a40 74 43 6f 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 tConstraints);.}.....private.fun
63a60 63 74 69 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 ction.createPolicy().{.$preferSt
63a80 61 62 6c 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 able.=.null;.$preferLowest.=.nul
63aa0 6c 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 26 26 20 24 74 68 69 73 2d 3e l;.if.(!$this->update.&&.$this->
63ac0 6c 6f 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 29 20 7b 0a 24 70 72 65 66 65 72 53 74 61 locker->isLocked()).{.$preferSta
63ae0 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
63b00 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
63b20 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();.}.....
63b40 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
63b60 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
63b80 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
63ba0 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
63bc0 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
63be0 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
63c00 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
63c20 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
63c40 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
63c60 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
63c80 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.=
63ca0 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
63cc0 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-
63ce0 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
63d00 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
63d20 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
63d40 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
63d60 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
63d80 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
63da0 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
63dc0 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.=.
63de0 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
63e00 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
63e20 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
63e40 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);.}..
63e60 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
63e80 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
63ea0 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.
63ec0 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->
63ee0 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
63f00 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
63f20 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
63f40 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.||
63f60 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
63f80 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->
63fa0 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
63fc0 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->
63fe0 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
64000 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;.}..
64020 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 74 69 6f 6e 20 70 72 .............private.function.pr
64040 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
64060 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
64080 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,.$
640a0 69 6e 73 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 2c 20 24 77 69 74 68 44 65 76 52 65 71 73 2c 20 24 installFromLock,.$withDevReqs,.$
640c0 74 61 73 6b 2c 20 61 72 72 61 79 20 24 6f 70 65 72 61 74 69 6f 6e 73 20 3d 20 6e 75 6c 6c 29 0a task,.array.$operations.=.null).
640e0 7b 0a 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 20 {.if.($task.===.'force-updates'.
64100 26 26 20 6e 75 6c 6c 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 73 29 20 7b 0a 74 68 72 6f 77 &&.null.===.$operations).{.throw
64120 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('
64140 4d 69 73 73 69 6e 67 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 67 75 6d 65 6e 74 27 29 3b 0a 7d Missing.operations.argument');.}
64160 0a 69 66 20 28 24 74 61 73 6b 20 3d 3d 3d 20 27 66 6f 72 63 65 2d 6c 69 6e 6b 73 27 29 20 7b 0a .if.($task.===.'force-links').{.
64180 24 6f 70 65 72 61 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 $operations.=.array();.}..if.(!$
641a0 69 6e 73 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 20 26 26 20 24 74 68 69 73 2d 3e 75 70 64 61 74 65 installFromLock.&&.$this->update
641c0 57 68 69 74 65 6c 69 73 74 29 20 7b 0a 24 63 75 72 72 65 6e 74 50 61 63 6b 61 67 65 73 20 3d 20 Whitelist).{.$currentPackages.=.
641e0 24 74 68 69 73 2d 3e 67 65 74 43 75 72 72 65 6e 74 50 61 63 6b 61 67 65 73 28 24 77 69 74 68 44 $this->getCurrentPackages($withD
64200 65 76 52 65 71 73 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 3b 0a 7d 0a 0a 66 6f 72 65 evReqs,.$installedRepo);.}..fore
64220 61 63 68 20 28 24 6c 6f 63 61 6c 52 65 70 6f 2d 3e 67 65 74 43 61 6e 6f 6e 69 63 61 6c 50 61 63 ach.($localRepo->getCanonicalPac
64240 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 0a 20 69 66 20 28 21 24 70 kages().as.$package).{...if.(!$p
64260 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a ackage->isDev()).{.continue;.}..
64280 0a 20 66 6f 72 65 61 63 68 20 28 24 6f 70 65 72 61 74 69 6f 6e 73 20 61 73 20 24 6f 70 65 72 61 ..foreach.($operations.as.$opera
642a0 74 69 6f 6e 29 20 7b 0a 69 66 20 28 28 27 75 70 64 61 74 65 27 20 3d 3d 3d 20 24 6f 70 65 72 61 tion).{.if.(('update'.===.$opera
642c0 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 20 26 26 20 24 6f 70 65 72 61 74 69 6f 6e tion->getJobType().&&.$operation
642e0 2d 3e 67 65 74 49 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 28 29 2d 3e 65 71 75 61 6c 73 28 24 70 ->getInitialPackage()->equals($p
64300 61 63 6b 61 67 65 29 29 0a 7c 7c 20 28 27 75 6e 69 6e 73 74 61 6c 6c 27 20 3d 3d 3d 20 24 6f 70 ackage)).||.('uninstall'.===.$op
64320 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 6f 70 65 72 61 74 eration->getJobType().&&.$operat
64340 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 65 71 75 61 6c 73 28 24 70 61 63 6b 61 ion->getPackage()->equals($packa
64360 67 65 29 29 0a 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 20 32 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 ge)).).{.continue.2;.}.}....if.(
64380 24 69 6e 73 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f $installFromLock).{.foreach.($lo
643a0 63 6b 65 64 52 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 70 61 ckedRepository->findPackages($pa
643c0 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 61 73 20 24 6c 6f 63 6b 65 64 50 61 63 6b ckage->getName()).as.$lockedPack
643e0 61 67 65 29 20 7b 0a 69 66 20 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 age).{.if.($lockedPackage->isDev
64400 28 29 20 26 26 20 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e ().&&.$lockedPackage->getVersion
64420 28 29 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 20 7b ().===.$package->getVersion()).{
64440 0a 69 66 20 28 24 74 61 73 6b 20 3d 3d 3d 20 27 66 6f 72 63 65 2d 6c 69 6e 6b 73 27 29 20 7b 0a .if.($task.===.'force-links').{.
64460 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 71 75 69 72 65 73 28 24 6c 6f 63 6b 65 64 50 61 63 $package->setRequires($lockedPac
64480 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e kage->getRequires());.$package->
644a0 73 65 74 43 6f 6e 66 6c 69 63 74 73 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 setConflicts($lockedPackage->get
644c0 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 50 72 6f 76 69 Conflicts());.$package->setProvi
644e0 64 65 73 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 6f 76 69 64 65 73 28 des($lockedPackage->getProvides(
64500 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 6c 6f 63 6b 65 ));.$package->setReplaces($locke
64520 64 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 65 dPackage->getReplaces());.}.else
64540 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 7b if.($task.===.'force-updates').{
64560 0a 69 66 20 28 28 24 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 .if.(($lockedPackage->getSourceR
64580 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 2d 3e 67 65 eference().&&.$lockedPackage->ge
645a0 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 61 67 65 2d tSourceReference().!==.$package-
645c0 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 6c 6f 63 6b >getSourceReference()).||.($lock
645e0 65 64 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 26 edPackage->getDistReference().&&
64600 20 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 .$lockedPackage->getDistReferenc
64620 65 28 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 e().!==.$package->getDistReferen
64640 63 65 28 29 29 0a 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 70 ce()).).{.$operations[].=.new.Up
64660 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 6c 6f 63 6b 65 64 50 dateOperation($package,.$lockedP
64680 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 ackage);.}.}..break;.}.}.}.else.
646a0 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 0a 20 69 66 20 28 24 {...if.($this->update).{...if.($
646c0 74 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 this->updateWhitelist.&&.!$this-
646e0 3e 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 >isUpdateable($package)).{...for
64700 65 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 each.($currentPackages.as.$curPa
64720 63 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 ckage).{.if.($curPackage->isDev(
64740 29 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 ).&&.$curPackage->getName().===.
64760 24 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 $package->getName().&&.$curPacka
64780 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 2d 3e 67 ge->getVersion().===.$package->g
647a0 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 27 66 6f etVersion()).{.if.($task.===.'fo
647c0 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 71 75 69 rce-links').{.$package->setRequi
647e0 72 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 res($curPackage->getRequires());
64800 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 63 75 72 50 61 63 6b .$package->setConflicts($curPack
64820 61 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 age->getConflicts());.$package->
64840 73 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 setProvides($curPackage->getProv
64860 69 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 ides());.$package->setReplaces($
64880 63 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 curPackage->getReplaces());.}.el
648a0 73 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 seif.($task.===.'force-updates')
648c0 20 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 .{.if.(($curPackage->getSourceRe
648e0 66 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 ference().&&.$curPackage->getSou
64900 72 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 rceReference().!==.$package->get
64920 53 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 SourceReference()).||.($curPacka
64940 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 24 63 75 72 50 61 ge->getDistReference().&&.$curPa
64960 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 21 3d 3d 20 24 70 ckage->getDistReference().!==.$p
64980 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 29 0a 29 20 7b 0a ackage->getDistReference()).).{.
649a0 24 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 $operations[].=.new.UpdateOperat
649c0 69 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 ion($package,.$curPackage);.}.}.
649e0 0a 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 .break;.}.}..continue;.}....$mat
64a00 63 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 ches.=.$pool->whatProvides($pack
64a20 61 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 age->getName(),.new.Constraint('
64a40 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 29 3b 0a 66 6f =',.$package->getVersion()));.fo
64a60 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 20 24 6d 61 reach.($matches.as.$index.=>.$ma
64a80 74 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 tch).{...if.(!in_array($match->g
64aa0 65 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 etRepository(),.$repositories,.t
64ac0 72 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 rue)).{.unset($matches[$index]);
64ae0 0a 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 .continue;.}....if.($match->getN
64b00 61 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 ame().!==.$package->getName()).{
64b20 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 63 6f 6e 74 69 6e .unset($matches[$index]);.contin
64b40 75 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 ue;.}..$matches[$index].=.$match
64b60 2d 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 ->getId();.}....if.($matches.&&.
64b80 24 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 $matches.=.$policy->selectPrefer
64ba0 72 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 redPackages($pool,.array(),.$mat
64bc0 63 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 ches)).{.$newPackage.=.$pool->li
64be0 74 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 teralToPackage($matches[0]);..if
64c00 20 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 .($task.===.'force-links'.&&.$ne
64c20 77 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 wPackage).{.$package->setRequire
64c40 73 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 s($newPackage->getRequires());.$
64c60 70 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 package->setConflicts($newPackag
64c80 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 65 e->getConflicts());.$package->se
64ca0 74 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 tProvides($newPackage->getProvid
64cc0 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 6e 65 es());.$package->setReplaces($ne
64ce0 77 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 wPackage->getReplaces());.}..if.
64d00 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 20 26 26 20 24 6e ($task.===.'force-updates'.&&.$n
64d20 65 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 ewPackage.&&.(.(($newPackage->ge
64d40 74 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 tSourceReference().&&.$newPackag
64d60 65 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 e->getSourceReference().!==.$pac
64d80 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 29 0a 7c 7c 20 28 kage->getSourceReference()).||.(
64da0 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 29 20 $newPackage->getDistReference().
64dc0 26 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 &&.$newPackage->getDistReference
64de0 28 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 ().!==.$package->getDistReferenc
64e00 65 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 e()).).)).{.$operations[].=.new.
64e20 55 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 UpdateOperation($package,.$newPa
64e40 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 61 73 6b 20 3d 3d 3d 20 27 66 6f ckage);.}.}.}..if.($task.===.'fo
64e60 72 63 65 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 rce-updates').{...$references.=.
64e80 24 74 68 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 $this->package->getReferences();
64ea0 0a 0a 69 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 ..if.(isset($references[$package
64ec0 2d 3e 67 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 ->getName()]).&&.$references[$pa
64ee0 63 6b 61 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 ckage->getName()].!==.$package->
64f00 67 65 74 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 getSourceReference()).{...$opera
64f20 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 70 tions[].=.new.UpdateOperation($p
64f40 61 63 6b 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 0a 7d ackage,.clone.$package);.}.}.}.}
64f60 0a 0a 72 65 74 75 72 6e 20 24 6f 70 65 72 61 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 ..return.$operations;.}........p
64f80 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 50 61 63 6b 61 67 rivate.function.getCurrentPackag
64fa0 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)
64fc0 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 .{.if.($this->locker->isLocked()
64fe0 29 20 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e ).{.try.{.return.$this->locker->
65000 67 65 74 4c 6f 63 6b 65 64 52 65 70 6f 73 69 74 6f 72 79 28 24 77 69 74 68 44 65 76 52 65 71 73 getLockedRepository($withDevReqs
65020 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 )->getPackages();.}.catch.(\Runt
65040 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 24 74 68 69 imeException.$e).{...return.$thi
65060 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 28 29 s->locker->getLockedRepository()
65080 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 6e ->getPackages();.}.}..return.$in
650a0 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 7d 0a 0a 0a stalledRepo->getPackages();.}...
650c0 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 41 6c 69 61 73 65 ..private.function.getRootAliase
650e0 73 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 26 26 20 24 74 68 69 s().{.if.(!$this->update.&&.$thi
65100 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 29 20 7b 0a 24 61 6c 69 61 73 65 s->locker->isLocked()).{.$aliase
65120 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 3b s.=.$this->locker->getAliases();
65140 0a 7d 20 65 6c 73 65 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 .}.else.{.$aliases.=.$this->pack
65160 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 3b 0a 7d 0a 0a 24 6e 6f 72 6d 61 6c 69 7a 65 age->getAliases();.}..$normalize
65180 64 41 6c 69 61 73 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 61 dAliases.=.array();..foreach.($a
651a0 6c 69 61 73 65 73 20 61 73 20 24 61 6c 69 61 73 29 20 7b 0a 24 6e 6f 72 6d 61 6c 69 7a 65 64 41 liases.as.$alias).{.$normalizedA
651c0 6c 69 61 73 65 73 5b 24 61 6c 69 61 73 5b 27 70 61 63 6b 61 67 65 27 5d 5d 5b 24 61 6c 69 61 73 liases[$alias['package']][$alias
651e0 5b 27 76 65 72 73 69 6f 6e 27 5d 5d 20 3d 20 61 72 72 61 79 28 0a 27 61 6c 69 61 73 27 20 3d 3e ['version']].=.array(.'alias'.=>
65200 20 24 61 6c 69 61 73 5b 27 61 6c 69 61 73 27 5d 2c 0a 27 61 6c 69 61 73 5f 6e 6f 72 6d 61 6c 69 .$alias['alias'],.'alias_normali
65220 7a 65 64 27 20 3d 3e 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 zed'.=>.$alias['alias_normalized
65240 27 5d 2c 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6e 6f 72 6d 61 6c 69 7a 65 64 41 6c 69 61 '],.);.}..return.$normalizedAlia
65260 73 65 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 70 ses;.}........private.function.p
65280 72 6f 63 65 73 73 50 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 rocessPackageUrls($pool,.$policy
652a0 2c 20 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 29 0a 7b 0a 69 ,.$localRepo,.$repositories).{.i
652c0 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a f.(!$this->update).{.return;.}..
652e0 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 6f 6e 69 63 61 foreach.($localRepo->getCanonica
65300 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 0a 20 24 6d 61 lPackages().as.$package).{...$ma
65320 74 63 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 tches.=.$pool->whatProvides($pac
65340 6b 61 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 kage->getName(),.new.Constraint(
65360 27 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 29 3b 0a 66 '=',.$package->getVersion()));.f
65380 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 20 24 6d oreach.($matches.as.$index.=>.$m
653a0 61 74 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 atch).{...if.(!in_array($match->
653c0 67 65 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 getRepository(),.$repositories,.
653e0 74 72 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 true)).{.unset($matches[$index])
65400 3b 0a 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 ;.continue;.}....if.($match->get
65420 4e 61 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 Name().!==.$package->getName()).
65440 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 63 6f 6e 74 69 {.unset($matches[$index]);.conti
65460 6e 75 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 nue;.}..$matches[$index].=.$matc
65480 68 2d 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 h->getId();.}....if.($matches.&&
654a0 20 24 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 .$matches.=.$policy->selectPrefe
654c0 72 72 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 rredPackages($pool,.array(),.$ma
654e0 74 63 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 tches)).{.$newPackage.=.$pool->l
65500 69 74 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 0a iteralToPackage($matches[0]);...
65520 20 24 73 6f 75 72 63 65 55 72 6c 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 .$sourceUrl.=.$package->getSourc
65540 65 55 72 6c 28 29 3b 0a 24 6e 65 77 53 6f 75 72 63 65 55 72 6c 20 3d 20 24 6e 65 77 50 61 63 6b eUrl();.$newSourceUrl.=.$newPack
65560 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 3b 0a 0a 69 66 20 28 24 73 6f 75 72 63 age->getSourceUrl();..if.($sourc
65580 65 55 72 6c 20 21 3d 3d 20 24 6e 65 77 53 6f 75 72 63 65 55 72 6c 29 20 7b 0a 24 70 61 63 6b 61 eUrl.!==.$newSourceUrl).{.$packa
655a0 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 54 79 70 65 28 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 ge->setSourceType($newPackage->g
655c0 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f etSourceType());.$package->setSo
655e0 75 72 63 65 55 72 6c 28 24 6e 65 77 53 6f 75 72 63 65 55 72 6c 29 3b 0a 24 70 61 63 6b 61 67 65 urceUrl($newSourceUrl);.$package
65600 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 50 61 63 6b 61 67 65 ->setSourceReference($newPackage
65620 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 7d 0a 0a 0a 20 0a 20 ->getSourceReference());.}......
65640 69 66 20 28 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 28 3f if.(preg_match('{^https?://(?:(?
65660 3a 77 77 77 5c 2e 29 3f 62 69 74 62 75 63 6b 65 74 5c 2e 6f 72 67 7c 28 61 70 69 5c 2e 29 3f 67 :www\.)?bitbucket\.org|(api\.)?g
65680 69 74 68 75 62 5c 2e 63 6f 6d 29 2f 7d 27 2c 20 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 65 74 ithub\.com)/}',.$newPackage->get
656a0 44 69 73 74 55 72 6c 28 29 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 55 DistUrl())).{.$package->setDistU
656c0 72 6c 28 24 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 3b 0a 7d rl($newPackage->getDistUrl());.}
656e0 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 6f 6e 20 61 6c 69 .}.}.}......private.function.ali
65700 61 73 50 6c 61 74 66 6f 72 6d 50 61 63 6b 61 67 65 73 28 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 asPlatformPackages(PlatformRepos
65720 69 74 6f 72 79 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 2c 20 24 61 6c 69 61 73 65 73 29 0a 7b itory.$platformRepo,.$aliases).{
65740 0a 66 6f 72 65 61 63 68 20 28 24 61 6c 69 61 73 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 20 3d .foreach.($aliases.as.$package.=
65760 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 6e >.$versions).{.foreach.($version
65780 73 20 61 73 20 24 76 65 72 73 69 6f 6e 20 3d 3e 20 24 61 6c 69 61 73 29 20 7b 0a 24 70 61 63 6b s.as.$version.=>.$alias).{.$pack
657a0 61 67 65 73 20 3d 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 2d 3e 66 69 6e 64 50 61 63 6b 61 67 ages.=.$platformRepo->findPackag
657c0 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a 66 6f 72 65 61 63 68 20 es($package,.$version);.foreach.
657e0 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 61 6c 69 61 73 ($packages.as.$package).{.$alias
65800 50 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 Package.=.new.AliasPackage($pack
65820 61 67 65 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 age,.$alias['alias_normalized'],
65840 20 24 61 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 .$alias['alias']);.$aliasPackage
65860 2d 3e 73 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 70 6c ->setRootPackageAlias(true);.$pl
65880 61 74 66 6f 72 6d 52 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 61 6c 69 61 73 50 61 63 atformRepo->addPackage($aliasPac
658a0 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 kage);.}.}.}.}......private.func
658c0 74 69 6f 6e 20 69 73 55 70 64 61 74 65 61 62 6c 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 tion.isUpdateable(PackageInterfa
658e0 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 ce.$package).{.if.(!$this->updat
65900 65 57 68 69 74 65 6c 69 73 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 eWhitelist).{.throw.new.\LogicEx
65920 63 65 70 74 69 6f 6e 28 27 69 73 55 70 64 61 74 65 61 62 6c 65 20 73 68 6f 75 6c 64 20 6f 6e 6c ception('isUpdateable.should.onl
65940 79 20 62 65 20 63 61 6c 6c 65 64 20 77 68 65 6e 20 61 20 77 68 69 74 65 6c 69 73 74 20 69 73 20 y.be.called.when.a.whitelist.is.
65960 70 72 65 73 65 6e 74 27 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 75 70 present');.}..foreach.($this->up
65980 64 61 74 65 57 68 69 74 65 6c 69 73 74 20 61 73 20 24 77 68 69 74 65 4c 69 73 74 65 64 50 61 74 dateWhitelist.as.$whiteListedPat
659a0 74 65 72 6e 20 3d 3e 20 24 76 6f 69 64 29 20 7b 0a 24 70 61 74 74 65 72 6e 52 65 67 65 78 70 20 tern.=>.$void).{.$patternRegexp.
659c0 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 54 6f 52 65 67 65 78 70 28 24 77 68 =.$this->packageNameToRegexp($wh
659e0 69 74 65 4c 69 73 74 65 64 50 61 74 74 65 72 6e 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 iteListedPattern);.if.(preg_matc
65a00 68 28 24 70 61 74 74 65 72 6e 52 65 67 65 78 70 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e h($patternRegexp,.$package->getN
65a20 61 6d 65 28 29 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 ame())).{.return.true;.}.}..retu
65a40 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 rn.false;.}........private.funct
65a60 69 6f 6e 20 70 61 63 6b 61 67 65 4e 61 6d 65 54 6f 52 65 67 65 78 70 28 24 77 68 69 74 65 4c 69 ion.packageNameToRegexp($whiteLi
65a80 73 74 65 64 50 61 74 74 65 72 6e 29 0a 7b 0a 24 63 6c 65 61 6e 65 64 57 68 69 74 65 4c 69 73 74 stedPattern).{.$cleanedWhiteList
65aa0 65 64 50 61 74 74 65 72 6e 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 2a 27 2c 20 27 edPattern.=.str_replace('\\*',.'
65ac0 2e 2a 27 2c 20 70 72 65 67 5f 71 75 6f 74 65 28 24 77 68 69 74 65 4c 69 73 74 65 64 50 61 74 74 .*',.preg_quote($whiteListedPatt
65ae0 65 72 6e 29 29 3b 0a 0a 72 65 74 75 72 6e 20 22 7b 5e 22 20 2e 20 24 63 6c 65 61 6e 65 64 57 68 ern));..return."{^"...$cleanedWh
65b00 69 74 65 4c 69 73 74 65 64 50 61 74 74 65 72 6e 20 2e 20 22 24 7d 69 22 3b 0a 7d 0a 0a 0a 0a 0a iteListedPattern..."$}i";.}.....
65b20 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 50 6c 61 74 66 6f 72 .private.function.extractPlatfor
65b40 6d 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 6c 69 6e 6b 73 29 0a 7b 0a 24 70 6c 61 74 66 6f 72 mRequirements($links).{.$platfor
65b60 6d 52 65 71 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 mReqs.=.array();.foreach.($links
65b80 20 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 50 6c 61 74 .as.$link).{.if.(preg_match(Plat
65ba0 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
65bc0 5f 52 45 47 45 58 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 29 29 20 7b 0a 24 _REGEX,.$link->getTarget())).{.$
65be0 70 6c 61 74 66 6f 72 6d 52 65 71 73 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d platformReqs[$link->getTarget()]
65c00 20 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 29 3b .=.$link->getPrettyConstraint();
65c20 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 6c 61 74 66 6f 72 6d 52 65 71 73 3b 0a 7d 0a 0a 0a .}.}..return.$platformReqs;.}...
65c40 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 77 68 69 74 ...........private.function.whit
65c60 65 6c 69 73 74 55 70 64 61 74 65 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 6c 6f 63 61 6c 52 65 elistUpdateDependencies($localRe
65c80 70 6f 2c 20 24 64 65 76 4d 6f 64 65 2c 20 61 72 72 61 79 20 24 72 6f 6f 74 52 65 71 75 69 72 65 po,.$devMode,.array.$rootRequire
65ca0 73 2c 20 61 72 72 61 79 20 24 72 6f 6f 74 44 65 76 52 65 71 75 69 72 65 73 29 0a 7b 0a 69 66 20 s,.array.$rootDevRequires).{.if.
65cc0 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 72 65 74 75 (!$this->updateWhitelist).{.retu
65ce0 72 6e 3b 0a 7d 0a 0a 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 4e 61 6d 65 73 20 3d 20 61 rn;.}..$requiredPackageNames.=.a
65d00 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 6f rray();.foreach.(array_merge($ro
65d20 6f 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 20 61 73 otRequires,.$rootDevRequires).as
65d40 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 4e 61 6d .$require).{.$requiredPackageNam
65d60 65 73 5b 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 7d 0a es[].=.$require->getTarget();.}.
65d80 0a 69 66 20 28 24 64 65 76 4d 6f 64 65 29 20 7b 0a 24 72 6f 6f 74 52 65 71 75 69 72 65 73 20 3d .if.($devMode).{.$rootRequires.=
65da0 20 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 .array_merge($rootRequires,.$roo
65dc0 74 44 65 76 52 65 71 75 69 72 65 73 29 3b 0a 7d 0a 0a 24 73 6b 69 70 50 61 63 6b 61 67 65 73 20 tDevRequires);.}..$skipPackages.
65de0 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 6f 6f 74 52 65 71 75 69 72 65 =.array();.foreach.($rootRequire
65e00 73 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 73 6b 69 70 50 61 63 6b 61 67 65 73 5b 24 s.as.$require).{.$skipPackages[$
65e20 72 65 71 75 69 72 65 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 require->getTarget()].=.true;.}.
65e40 0a 24 70 6f 6f 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c 3b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 .$pool.=.new.Pool;.$pool->addRep
65e60 6f 73 69 74 6f 72 79 28 24 6c 6f 63 61 6c 52 65 70 6f 29 3b 0a 0a 24 73 65 65 6e 20 3d 20 61 72 ository($localRepo);..$seen.=.ar
65e80 72 61 79 28 29 3b 0a 0a 24 72 6f 6f 74 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 4e 61 6d 65 ray();..$rootRequiredPackageName
65ea0 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 24 72 6f 6f 74 52 65 71 75 69 72 65 73 29 3b 0a 0a s.=.array_keys($rootRequires);..
65ec0 66 6f 72 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 foreach.($this->updateWhitelist.
65ee0 61 73 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 3e 20 24 76 6f 69 64 29 20 7b 0a 24 70 61 63 as.$packageName.=>.$void).{.$pac
65f00 6b 61 67 65 51 75 65 75 65 20 3d 20 6e 65 77 20 5c 53 70 6c 51 75 65 75 65 3b 0a 0a 24 64 65 70 kageQueue.=.new.\SplQueue;..$dep
65f20 50 61 63 6b 61 67 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 Packages.=.$pool->whatProvides($
65f40 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 0a 24 6e 61 6d 65 4d 61 74 63 68 65 73 52 65 71 75 69 packageName);..$nameMatchesRequi
65f60 72 65 64 50 61 63 6b 61 67 65 20 3d 20 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 4e 61 redPackage.=.in_array($packageNa
65f80 6d 65 2c 20 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 4e 61 6d 65 73 2c 20 74 72 75 65 29 me,.$requiredPackageNames,.true)
65fa0 3b 0a 0a 0a 20 69 66 20 28 21 24 6e 61 6d 65 4d 61 74 63 68 65 73 52 65 71 75 69 72 65 64 50 61 ;....if.(!$nameMatchesRequiredPa
65fc0 63 6b 61 67 65 29 20 7b 0a 24 77 68 69 74 65 6c 69 73 74 50 61 74 74 65 72 6e 52 65 67 65 78 70 ckage).{.$whitelistPatternRegexp
65fe0 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 54 6f 52 65 67 65 78 70 28 24 70 .=.$this->packageNameToRegexp($p
66000 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 6f 6f 74 52 65 71 75 69 ackageName);.foreach.($rootRequi
66020 72 65 64 50 61 63 6b 61 67 65 4e 61 6d 65 73 20 61 73 20 24 72 6f 6f 74 52 65 71 75 69 72 65 64 redPackageNames.as.$rootRequired
66040 50 61 63 6b 61 67 65 4e 61 6d 65 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 77 PackageName).{.if.(preg_match($w
66060 68 69 74 65 6c 69 73 74 50 61 74 74 65 72 6e 52 65 67 65 78 70 2c 20 24 72 6f 6f 74 52 65 71 75 hitelistPatternRegexp,.$rootRequ
66080 69 72 65 64 50 61 63 6b 61 67 65 4e 61 6d 65 29 29 20 7b 0a 24 6e 61 6d 65 4d 61 74 63 68 65 73 iredPackageName)).{.$nameMatches
660a0 52 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d RequiredPackage.=.true;.break;.}
660c0 0a 7d 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 64 65 70 50 61 63 6b 61 67 65 73 29 20 3d 3d .}.}..if.(count($depPackages).==
660e0 20 30 20 26 26 20 21 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 .0.&&.!$nameMatchesRequiredPacka
66100 67 65 20 26 26 20 21 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 61 72 ge.&&.!in_array($packageName,.ar
66120 72 61 79 28 27 6e 6f 74 68 69 6e 67 27 2c 20 27 6c 6f 63 6b 27 29 29 29 20 7b 0a 24 74 68 69 73 ray('nothing',.'lock'))).{.$this
66140 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 50 61 63 6b 61 ->io->writeError('<warning>Packa
66160 67 65 20 22 27 20 2e 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 2e 20 27 22 20 6c 69 73 74 65 64 ge."'...$packageName...'".listed
66180 20 66 6f 72 20 75 70 64 61 74 65 20 69 73 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 2e 20 49 67 .for.update.is.not.installed..Ig
661a0 6e 6f 72 69 6e 67 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 noring.</warning>');.}..foreach.
661c0 28 24 64 65 70 50 61 63 6b 61 67 65 73 20 61 73 20 24 64 65 70 50 61 63 6b 61 67 65 29 20 7b 0a ($depPackages.as.$depPackage).{.
661e0 24 70 61 63 6b 61 67 65 51 75 65 75 65 2d 3e 65 6e 71 75 65 75 65 28 24 64 65 70 50 61 63 6b 61 $packageQueue->enqueue($depPacka
66200 67 65 29 3b 0a 7d 0a 0a 77 68 69 6c 65 20 28 21 24 70 61 63 6b 61 67 65 51 75 65 75 65 2d 3e 69 ge);.}..while.(!$packageQueue->i
66220 73 45 6d 70 74 79 28 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 51 sEmpty()).{.$package.=.$packageQ
66240 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 73 65 65 6e ueue->dequeue();.if.(isset($seen
66260 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 [$package->getId()])).{.continue
66280 3b 0a 7d 0a 0a 24 73 65 65 6e 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 20 3d 20 ;.}..$seen[$package->getId()].=.
662a0 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 5b 24 70 61 true;.$this->updateWhitelist[$pa
662c0 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 0a 0a 69 66 20 28 21 ckage->getName()].=.true;..if.(!
662e0 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 44 65 70 65 6e 64 65 6e 63 69 65 73 29 20 7b 0a $this->whitelistDependencies).{.
66300 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 72 65 71 75 69 72 65 73 20 3d 20 24 70 61 63 6b 61 67 continue;.}..$requires.=.$packag
66320 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 e->getRequires();..foreach.($req
66340 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 72 65 71 75 69 72 65 50 61 63 uires.as.$require).{.$requirePac
66360 6b 61 67 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 72 65 71 kages.=.$pool->whatProvides($req
66380 75 69 72 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 uire->getTarget());..foreach.($r
663a0 65 71 75 69 72 65 50 61 63 6b 61 67 65 73 20 61 73 20 24 72 65 71 75 69 72 65 50 61 63 6b 61 67 equirePackages.as.$requirePackag
663c0 65 29 20 7b 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 e).{.if.(isset($skipPackages[$re
663e0 71 75 69 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 63 6f 6e quirePackage->getName()])).{.con
66400 74 69 6e 75 65 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 51 75 65 75 65 2d 3e 65 6e 71 75 65 75 65 28 tinue;.}.$packageQueue->enqueue(
66420 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 0a 0a 0a 0a $requirePackage);.}.}.}.}.}.....
66440 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 61 6c 52 65 ....private.function.mockLocalRe
66460 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 20 24 72 6d positories(RepositoryManager.$rm
66480 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 65 61 63 68 ).{.$packages.=.array();.foreach
664a0 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 3e 67 65 74 .($rm->getLocalRepository()->get
664c0 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 61 63 6b 61 Packages().as.$package).{.$packa
664e0 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 6e 65 20 24 ges[(string).$package].=.clone.$
66500 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 73 20 61 73 package;.}.foreach.($packages.as
66520 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 63 6b 61 67 .$key.=>.$package).{.if.($packag
66540 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 24 61 6c e.instanceof.AliasPackage).{.$al
66560 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 41 6c 69 61 ias.=.(string).$package->getAlia
66580 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 20 41 6c 69 sOf();.$packages[$key].=.new.Ali
665a0 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 20 24 70 61 asPackage($packages[$alias],.$pa
665c0 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 65 2d 3e 67 ckage->getVersion(),.$package->g
665e0 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 3e 73 65 74 etPrettyVersion());.}.}.$rm->set
66600 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 65 64 41 72 LocalRepository(.new.InstalledAr
66620 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 7d 0a 0a 0a rayRepository($packages).);.}...
66640 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 72 65 ......public.static.function.cre
66660 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 72 20 24 63 ate(IOInterface.$io,.Composer.$c
66680 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 28 0a 24 69 omposer).{.return.new.static(.$i
666a0 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 63 6f 6d 70 o,.$composer->getConfig(),.$comp
666c0 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 72 2d 3e 67 oser->getPackage(),.$composer->g
666e0 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 65 72 2d 3e etDownloadManager(),.$composer->
66700 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 70 6f 73 65 getRepositoryManager(),.$compose
66720 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 65 74 49 6e r->getLocker(),.$composer->getIn
66740 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 65 72 2d 3e stallationManager(),.$composer->
66760 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 73 65 72 2d getEventDispatcher(),.$composer-
66780 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 0a 0a 0a 0a >getAutoloadGenerator().);.}....
667a0 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 6e 61 6c 49 ..public.function.setAdditionalI
667c0 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 79 49 6e 74 nstalledRepository(RepositoryInt
667e0 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 65 70 6f 73 erface.$additionalInstalledRepos
66800 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 73 74 61 6c itory).{.$this->additionalInstal
66820 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 6e 73 74 61 ledRepository.=.$additionalInsta
66840 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 73 3b 0a 7d lledRepository;..return.$this;.}
66860 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 72 79 52 75 ........public.function.setDryRu
66880 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 72 79 52 75 n($dryRun.=.true).{.$this->dryRu
668a0 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 72 6e 20 24 n.=.(boolean).$dryRun;..return.$
668c0 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 69 73 this;.}.......public.function.is
668e0 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 52 75 6e 3b DryRun().{.return.$this->dryRun;
66900 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 50 72 65 .}........public.function.setPre
66920 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 75 65 29 0a ferSource($preferSource.=.true).
66940 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 6c 65 61 6e {.$this->preferSource.=.(boolean
66960 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 69 73 3b 0a ).$preferSource;..return.$this;.
66980 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 50 72 65 66 }........public.function.setPref
669a0 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 0a 24 74 68 erDist($preferDist.=.true).{.$th
669c0 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 70 72 65 66 is->preferDist.=.(boolean).$pref
669e0 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 0a 0a 0a 0a erDist;..return.$this;.}........
66a00 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 75 74 6f 6c public.function.setOptimizeAutol
66a20 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 66 61 6c 73 oader($optimizeAutoloader.=.fals
66a40 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 65 72 20 3d e).{.$this->optimizeAutoloader.=
66a60 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 65 72 3b 0a .(boolean).$optimizeAutoloader;.
66a80 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 65 72 29 20 if.(!$this->optimizeAutoloader).
66aa0 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 6f 72 69 74 {.....$this->setClassMapAuthorit
66ac0 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 73 3b 0a 7d ative(false);.}..return.$this;.}
66ae0 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 6c 61 73 .........public.function.setClas
66b00 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 75 74 68 6f sMapAuthoritative($classMapAutho
66b20 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 6c 61 73 73 ritative.=.false).{.$this->class
66b40 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 20 24 63 6c MapAuthoritative.=.(boolean).$cl
66b60 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 69 73 2d 3e assMapAuthoritative;.if.($this->
66b80 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 74 68 69 73 classMapAuthoritative).{...$this
66ba0 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 29 3b 0a 7d ->setOptimizeAutoloader(true);.}
66bc0 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 20 ..return.$this;.}........public.
66be0 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 20 74 72 75 function.setUpdate($update.=.tru
66c00 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 6e 29 20 24 e).{.$this->update.=.(boolean).$
66c20 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 0a 0a 0a 0a update;..return.$this;.}........
66c40 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 64 65 76 4d public.function.setDevMode($devM
66c60 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 20 3d 20 28 ode.=.true).{.$this->devMode.=.(
66c80 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 74 68 69 73 boolean).$devMode;..return.$this
66ca0 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 75 ;.}........public.function.setDu
66cc0 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 20 3d 20 74 mpAutoloader($dumpAutoloader.=.t
66ce0 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 20 3d 20 28 rue).{.$this->dumpAutoloader.=.(
66d00 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 65 74 75 72 boolean).$dumpAutoloader;..retur
66d20 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 69 6f n.$this;.}........public.functio
66d40 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 3d 20 74 72 n.setRunScripts($runScripts.=.tr
66d60 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 6f 6f 6c 65 ue).{.$this->runScripts.=.(boole
66d80 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 69 73 3b 0a an).$runScripts;..return.$this;.
66da0 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 43 6f 6e 66 }........public.function.setConf
66dc0 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 63 6f 6e 66 ig(Config.$config).{.$this->conf
66de0 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 0a 7d 0a 0a ig.=.$config;..return.$this;.}..
66e00 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 73 65 ......public.function.setVerbose
66e20 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 65 72 62 6f ($verbose.=.true).{.$this->verbo
66e40 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 74 75 72 6e se.=.(boolean).$verbose;..return
66e60 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.
66e80 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 76 65 72 62 isVerbose().{.return.$this->verb
66ea0 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 6e 20 73 65 ose;.}........public.function.se
66ec0 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 6e tIgnorePlatformRequirements($ign
66ee0 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 73 orePlatformReqs.=.false).{.$this
66f00 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 65 61 6e 29 ->ignorePlatformReqs.=.(boolean)
66f20 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 6e 20 24 74 .$ignorePlatformReqs;..return.$t
66f40 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 73 his;.}.........public.function.s
66f60 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 6b 61 67 65 etUpdateWhitelist(array.$package
66f80 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 3d 20 61 72 s).{.$this->updateWhitelist.=.ar
66fa0 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 65 72 27 2c ray_flip(array_map('strtolower',
66fc0 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 0a 7d 0a 0a .$packages));..return.$this;.}..
66fe0 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 74 65 6c 69 ......public.function.setWhiteli
67000 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 65 6e 63 69 stDependencies($updateDependenci
67020 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 74 44 65 70 es.=.true).{.$this->whitelistDep
67040 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 65 44 65 70 endencies.=.(boolean).$updateDep
67060 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 0a 0a 0a 0a endencies;..return.$this;.}.....
67080 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 74 61 62 ...public.function.setPreferStab
670a0 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 74 68 69 73 le($preferStable.=.true).{.$this
670c0 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 70 72 65 66 ->preferStable.=.(boolean).$pref
670e0 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 0a 0a 0a 0a erStable;..return.$this;.}......
67100 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 6f 77 65 73 ..public.function.setPreferLowes
67120 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 68 69 73 2d t($preferLowest.=.true).{.$this-
67140 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 72 65 66 65 >preferLowest.=.(boolean).$prefe
67160 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 0a 0a 0a 0a rLowest;..return.$this;.}.......
67180 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 6c 75 67 69 ....public.function.disablePlugi
671a0 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 6e 61 67 65 ns().{.$this->installationManage
671c0 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 20 24 74 68 r->disablePlugins();..return.$th
671e0 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 61 6d 65 73 70 61 is;.}.}.<?php............namespa
67200 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 70 ce.Composer\Installer;..use.Comp
67220 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
67240 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.
67260 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 75 Composer\Package\AliasPackage;.u
67280 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 72 se.Composer\Repository\Repositor
672a0 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 74 yInterface;.use.Composer\Reposit
672c0 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
672e0 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
67300 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 0a r\Operation\OperationInterface;.
67320 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 5c use.Composer\DependencyResolver\
67340 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 20 Operation\InstallOperation;.use.
67360 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 72 Composer\DependencyResolver\Oper
67380 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 6f ation\UpdateOperation;.use.Compo
673a0 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
673c0 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 65 \UninstallOperation;.use.Compose
673e0 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 4d r\DependencyResolver\Operation\M
67400 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 20 arkAliasInstalledOperation;.use.
67420 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 72 Composer\DependencyResolver\Oper
67440 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 74 ation\MarkAliasUninstalledOperat
67460 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 6e ion;.use.Composer\Util\StreamCon
67480 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 61 textFactory;.........class.Insta
674a0 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 6c llationManager.{.private.$instal
674c0 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 3d lers.=.array();.private.$cache.=
674e0 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 63 .array();.private.$notifiablePac
67500 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 6f kages.=.array();..public.functio
67520 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 63 n.reset().{.$this->notifiablePac
67540 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 20 kages.=.array();.}.......public.
67560 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 49 function.addInstaller(InstallerI
67580 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 73 nterface.$installer).{.array_uns
675a0 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 6c hift($this->installers,.$install
675c0 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 0a er);.$this->cache.=.array();.}..
675e0 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 61 .....public.function.removeInsta
67600 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 6c ller(InstallerInterface.$install
67620 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 61 er).{.if.(false.!==.($key.=.arra
67640 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 74 y_search($installer,.$this->inst
67660 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 24 allers,.true))).{.array_splice($
67680 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 69 this->installers,.$key,.1);.$thi
676a0 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 0a s->cache.=.array();.}.}.........
676c0 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 29 public.function.disablePlugins()
676e0 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 73 .{.foreach.($this->installers.as
67700 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 61 .$i.=>.$installer).{.if.(!$insta
67720 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 29 ller.instanceof.PluginInstaller)
67740 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 73 .{.continue;.}..unset($this->ins
67760 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 69 tallers[$i]);.}.}..........publi
67780 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 7b c.function.getInstaller($type).{
677a0 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 20 .$type.=.strtolower($type);..if.
677c0 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 72 (isset($this->cache[$type])).{.r
677e0 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 6f eturn.$this->cache[$type];.}..fo
67800 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 73 reach.($this->installers.as.$ins
67820 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 72 taller).{.if.($installer->suppor
67840 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 65 ts($type)).{.return.$this->cache
67860 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 77 [$type].=.$installer;.}.}..throw
67880 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('
678a0 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 29 Unknown.installer.type:.'.$type)
678c0 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 50 ;.}..........public.function.isP
678e0 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 74 ackageInstalled(InstalledReposit
67900 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 72 oryInterface.$repo,.PackageInter
67920 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 6e face.$package).{.if.($package.in
67940 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 20 stanceof.AliasPackage).{.return.
67960 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 24 $repo->hasPackage($package).&&.$
67980 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 20 this->isPackageInstalled($repo,.
679a0 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 75 $package->getAliasOf());.}..retu
679c0 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 2d rn.$this->getInstaller($package-
679e0 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 20 >getType())->isInstalled($repo,.
67a00 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 74 $package);.}........public.funct
67a20 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 20 ion.execute(RepositoryInterface.
67a40 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 61 $repo,.OperationInterface.$opera
67a60 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 65 tion).{.$method.=.$operation->ge
67a80 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 6f tJobType();.$this->$method($repo
67aa0 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 66 ,.$operation);.}........public.f
67ac0 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 66 unction.install(RepositoryInterf
67ae0 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 65 ace.$repo,.InstallOperation.$ope
67b00 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-
67b20 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 69 >getPackage();.$installer.=.$thi
67b40 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 70 s->getInstaller($package->getTyp
67b60 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 2c e());.$installer->install($repo,
67b80 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 69 .$package);.$this->markForNotifi
67ba0 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 69 cation($package);.}........publi
67bc0 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 65 c.function.update(RepositoryInte
67be0 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 70 rface.$repo,.UpdateOperation.$op
67c00 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 6e eration).{.$initial.=.$operation
67c20 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 3d ->getInitialPackage();.$target.=
67c40 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 3b .$operation->getTargetPackage();
67c60 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 79 ..$initialType.=.$initial->getTy
67c80 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 74 pe();.$targetType.=.$target->get
67ca0 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 74 Type();..if.($initialType.===.$t
67cc0 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 2d argetType).{.$installer.=.$this-
67ce0 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 6e >getInstaller($initialType);.$in
67d00 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 2c staller->update($repo,.$initial,
67d20 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 63 .$target);.$this->markForNotific
67d40 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 3e ation($target);.}.else.{.$this->
67d60 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 6e getInstaller($initialType)->unin
67d80 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 67 stall($repo,.$initial);.$this->g
67da0 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 6c etInstaller($targetType)->instal
67dc0 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 75 l($repo,.$target);.}.}........pu
67de0 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 6f blic.function.uninstall(Reposito
67e00 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 72 ryInterface.$repo,.UninstallOper
67e20 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 24 ation.$operation).{.$package.=.$
67e40 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 6c operation->getPackage();.$instal
67e60 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
67e80 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 6e ge->getType());.$installer->unin
67ea0 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 0a stall($repo,.$package);.}.......
67ec0 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 6c .public.function.markAliasInstal
67ee0 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 4d led(RepositoryInterface.$repo,.M
67f00 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 72 arkAliasInstalledOperation.$oper
67f20 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 3e ation).{.$package.=.$operation->
67f40 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 61 getPackage();..if.(!$repo->hasPa
67f60 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 63 ckage($package)).{.$repo->addPac
67f80 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 0a kage(clone.$package);.}.}.......
67fa0 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 74 .public.function.markAliasUninst
67fc0 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 2c alled(RepositoryInterface.$repo,
67fe0 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 24 .MarkAliasUninstalledOperation.$
68000 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 69 operation).{.$package.=.$operati
68020 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 65 on->getPackage();..$repo->remove
68040 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 6c Package($package);.}........publ
68060 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 61 ic.function.getInstallPath(Packa
68080 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
680a0 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 67 er.=.$this->getInstaller($packag
680c0 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 65 e->getType());..return.$installe
680e0 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 0a r->getInstallPath($package);.}..
68100 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 49 public.function.notifyInstalls(I
68120 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 73 OInterface.$io).{.foreach.($this
68140 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 6c ->notifiablePackages.as.$repoUrl
68160 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 65 .=>.$packages).{.$repositoryName
68180 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 48 .=.parse_url($repoUrl,.PHP_URL_H
681a0 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 6e OST);.if.($io->hasAuthentication
681c0 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 6f ($repositoryName)).{.$auth.=.$io
681e0 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 4e ->getAuthentication($repositoryN
68200 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 24 ame);.$authStr.=.base64_encode($
68220 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 27 auth['username']...':'...$auth['
68240 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 68 password']);.$authHeader.=.'Auth
68260 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 0a orization:.Basic.'.$authStr;.}..
68280 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 65 ..if.(strpos($repoUrl,.'%package
682a0 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 61 %')).{.foreach.($packages.as.$pa
682c0 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 61 ckage).{.$url.=.str_replace('%pa
682e0 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 65 ckage%',.$package->getPrettyName
68300 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 28 (),.$repoUrl);..$params.=.array(
68320 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 74 .'version'.=>.$package->getPrett
68340 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 27 yVersion(),.'version_normalized'
68360 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 24 .=>.$package->getVersion(),.);.$
68380 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 6d opts.=.array('http'.=>.array(.'m
683a0 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 72 ethod'.=>.'POST',.'header'.=>.ar
683c0 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 78 ray('Content-type:.application/x
683e0 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 74 -www-form-urlencoded'),.'content
68400 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 27 '.=>.http_build_query($params,.'
68420 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 69 ',.'&'),.'timeout'.=>.3,.),.);.i
68440 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 27 f.(isset($authHeader)).{.$opts['
68460 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 72 http']['header'][].=.$authHeader
68480 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 63 ;.}..$context.=.StreamContextFac
684a0 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 40 tory::getContext($url,.$opts);.@
684c0 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 24 file_get_contents($url,.false,.$
684e0 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 44 context);.}..continue;.}..$postD
68500 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 79 ata.=.array('downloads'.=>.array
68520 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 6b ());.foreach.($packages.as.$pack
68540 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 20 age).{.$postData['downloads'][].
68560 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 74 =.array(.'name'.=>.$package->get
68580 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 6b PrettyName(),.'version'.=>.$pack
685a0 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 3d age->getVersion(),.);.}..$opts.=
685c0 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 27 .array('http'.=>.array(.'method'
685e0 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 43 .=>.'POST',.'header'.=>.array('C
68600 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 2c ontent-Type:.application/json'),
68620 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 44 .'content'.=>.json_encode($postD
68640 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 28 ata),.'timeout'.=>.6,.),.);.if.(
68660 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 74 isset($authHeader)).{.$opts['htt
68680 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 7d p']['header'][].=.$authHeader;.}
686a0 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 72 ..$context.=.StreamContextFactor
686c0 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 0a y::getContext($repoUrl,.$opts);.
686e0 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 6c @file_get_contents($repoUrl,.fal
68700 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 29 se,.$context);.}..$this->reset()
68720 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 74 ;.}..private.function.markForNot
68740 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 6b ification(PackageInterface.$pack
68760 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 61 age).{.if.($package->getNotifica
68780 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 61 tionUrl()).{.$this->notifiablePa
687a0 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 6e ckages[$package->getNotification
687c0 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 70 Url()][$package->getName()].=.$p
687e0 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 6e ackage;.}.}.}.<?php............n
68800 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 73 amespace.Composer\Installer;..us
68820 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 65 e.Composer\Composer;.use.Compose
68840 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 72 r\DependencyResolver\PolicyInter
68860 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 73 face;.use.Composer\DependencyRes
68880 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 61 olver\Operation\OperationInterfa
688a0 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 6c ce;.use.Composer\DependencyResol
688c0 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 63 ver\Pool;.use.Composer\Dependenc
688e0 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 5c yResolver\Request;.use.Composer\
68900 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 6f EventDispatcher\Event;.use.Compo
68920 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 72 ser\IO\IOInterface;.use.Composer
68940 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;
68960 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 65 .......class.InstallerEvent.exte
68980 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 72 nds.Event.{....private.$composer
689a0 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 24 ;.....private.$io;.....private.$
689c0 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 0a devMode;.....private.$policy;...
689e0 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 6e ..private.$pool;.....private.$in
68a00 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 73 stalledRepo;.....private.$reques
68a20 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 0a t;.....private.$operations;.....
68a40 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
68a60 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
68a80 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,
68aa0 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.$
68ac0 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
68ae0 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
68b00 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 6e y.$operations.=.array()).{.paren
68b20 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 68 t::__construct($eventName);..$th
68b40 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 2d is->composer.=.$composer;.$this-
68b60 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 76 >io.=.$io;.$this->devMode.=.$dev
68b80 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 24 Mode;.$this->policy.=.$policy;.$
68ba0 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 61 this->pool.=.$pool;.$this->insta
68bc0 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 73 lledRepo.=.$installedRepo;.$this
68be0 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 65 ->request.=.$request;.$this->ope
68c00 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 62 rations.=.$operations;.}.....pub
68c20 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 74 lic.function.getComposer().{.ret
68c40 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 69 urn.$this->composer;.}.....publi
68c60 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 69 c.function.getIO().{.return.$thi
68c80 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 44 s->io;.}.....public.function.isD
68ca0 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 65 evMode().{.return.$this->devMode
68cc0 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 63 ;.}.....public.function.getPolic
68ce0 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 0a y().{.return.$this->policy;.}...
68d00 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 65 ..public.function.getPool().{.re
68d20 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 66 turn.$this->pool;.}.....public.f
68d40 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 74 unction.getInstalledRepo().{.ret
68d60 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 0a urn.$this->installedRepo;.}.....
68d80 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 72 public.function.getRequest().{.r
68da0 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 6c eturn.$this->request;.}.....publ
68dc0 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 65 ic.function.getOperations().{.re
68de0 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 68 turn.$this->operations;.}.}.<?ph
68e00 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\
68e20 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 72 Installer;.......class.Installer
68e40 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 45 Events.{..........const.PRE_DEPE
68e60 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 6e NDENCIES_SOLVING.=.'pre-dependen
68e80 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 50 cies-solving';...........const.P
68ea0 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 74 OST_DEPENDENCIES_SOLVING.=.'post
68ec0 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 0a -dependencies-solving';.}.<?php.
68ee0 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 6e ...........namespace.Composer\In
68f00 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 50 staller;..use.Composer\Package\P
68f20 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 65 ackageInterface;.use.Composer\Re
68f40 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 65 pository\InstalledRepositoryInte
68f60 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 74 rface;.use.InvalidArgumentExcept
68f80 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 49 ion;........interface.InstallerI
68fa0 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 6e nterface.{.......public.function
68fc0 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 0a .supports($packageType);........
68fe0 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 6e ..public.function.isInstalled(In
69000 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
69020 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);...
69040 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 73 .....public.function.install(Ins
69060 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 2c talledRepositoryInterface.$repo,
69080 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 0a .PackageInterface.$package);....
690a0 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 6e .......public.function.update(In
690c0 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
690e0 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 63 ,.PackageInterface.$initial,.Pac
69100 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 70 kageInterface.$target);........p
69120 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 6c ublic.function.uninstall(Install
69140 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 63 edRepositoryInterface.$repo,.Pac
69160 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 0a kageInterface.$package);........
69180 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 50 public.function.getInstallPath(P
691a0 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 70 ackageInterface.$package);.}.<?p
691c0 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
691e0 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
69200 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;
69220 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
69240 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
69260 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
69280 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 20 e.Composer\Util\Filesystem;.use.
692a0 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 0a Composer\Util\ProcessExecutor;..
692c0 0a 0a 0a 0a 0a 0a 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 ......class.LibraryInstaller.imp
692e0 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 0a 70 72 6f lements.InstallerInterface.{.pro
69300 74 65 63 74 65 64 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 tected.$composer;.protected.$ven
69320 64 6f 72 44 69 72 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 dorDir;.protected.$binDir;.prote
69340 63 74 65 64 20 24 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 cted.$downloadManager;.protected
69360 20 24 69 6f 3b 0a 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 .$io;.protected.$type;.protected
69380 20 24 66 69 6c 65 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 .$filesystem;.protected.$binComp
693a0 61 74 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 at;..........public.function.__c
693c0 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 6d 70 6f 73 onstruct(IOInterface.$io,.Compos
693e0 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 74 79 70 65 20 3d 20 27 6c 69 62 72 61 72 79 27 2c er.$composer,.$type.=.'library',
69400 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 20 6e 75 6c 6c 29 0a .Filesystem.$filesystem.=.null).
69420 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;.$
69440 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
69460 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->
69480 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;..
694a0 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.
694c0 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
694e0 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
69500 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'),.'/');.$
69520 74 68 69 73 2d 3e 62 69 6e 44 69 72 20 3d 20 72 74 72 69 6d 28 24 63 6f 6d 70 6f 73 65 72 2d 3e this->binDir.=.rtrim($composer->
69540 67 65 74 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 getConfig()->get('bin-dir'),.'/'
69560 29 3b 0a 24 74 68 69 73 2d 3e 62 69 6e 43 6f 6d 70 61 74 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d );.$this->binCompat.=.$composer-
69580 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 3b >getConfig()->get('bin-compat');
695a0 0a 7d 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 .}.....public.function.supports(
695c0 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 63 6b 61 67 65 54 $packageType).{.return.$packageT
695e0 79 70 65 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 ype.===.$this->type.||.null.===.
69600 24 74 68 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 $this->type;.}.....public.functi
69620 6f 6e 20 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 on.isInstalled(InstalledReposito
69640 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 72 66 ryInterface.$repo,.PackageInterf
69660 61 63 65 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 ace.$package).{.return.$repo->ha
69680 73 50 61 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 sPackage($package).&&.is_readabl
696a0 65 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 e($this->getInstallPath($package
696c0 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 69 6e 73 74 61 6c ));.}.....public.function.instal
696e0 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.$
69700 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)
69720 0a 7b 0a 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 .{.$this->initializeVendorDir();
69740 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 49 6e 73 74 61 .$downloadPath.=.$this->getInsta
69760 6c 6c 50 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 llPath($package);....if.(!is_rea
69780 64 61 62 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 dable($downloadPath).&&.$repo->h
697a0 61 73 50 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 72 65 asPackage($package)).{.$this->re
697c0 6d 6f 76 65 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 moveBinaries($package);.}..$this
697e0 2d 3e 69 6e 73 74 61 6c 6c 43 6f 64 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e ->installCode($package);.$this->
69800 69 6e 73 74 61 6c 6c 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 69 66 20 28 21 installBinaries($package);.if.(!
69820 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)).{.$
69840 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)
69860 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
69880 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
698a0 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,.
698c0 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.(
698e0 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)).{.
69900 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
69920 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:.'
69940 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
69960 56 65 6e 64 6f 72 44 69 72 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 42 69 6e 61 72 VendorDir();..$this->removeBinar
69980 69 65 73 28 24 69 6e 69 74 69 61 6c 29 3b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 43 6f 64 65 ies($initial);.$this->updateCode
699a0 28 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 29 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 ($initial,.$target);.$this->inst
699c0 61 6c 6c 42 69 6e 61 72 69 65 73 28 24 74 61 72 67 65 74 29 3b 0a 24 72 65 70 6f 2d 3e 72 65 6d allBinaries($target);.$repo->rem
699e0 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 70 6f ovePackage($initial);.if.(!$repo
69a00 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 2d 3e ->hasPackage($target)).{.$repo->
69a20 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 0a 0a addPackage(clone.$target);.}.}..
69a40 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 6e 73 ...public.function.uninstall(Ins
69a60 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 2c talledRepositoryInterface.$repo,
69a80 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 69 66 .PackageInterface.$package).{.if
69aa0 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 29 20 .(!$repo->hasPackage($package)).
69ac0 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
69ae0 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:
69b00 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 43 6f .'.$package);.}..$this->removeCo
69b20 64 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 42 69 6e 61 72 de($package);.$this->removeBinar
69b40 69 65 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 65 50 61 63 6b ies($package);.$repo->removePack
69b60 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 age($package);..$downloadPath.=.
69b80 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 61 $this->getPackageBasePath($packa
69ba0 67 65 29 3b 0a 69 66 20 28 73 74 72 70 6f 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d ge);.if.(strpos($package->getNam
69bc0 65 28 29 2c 20 27 2f 27 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 56 65 6e 64 6f 72 44 69 72 20 3d e(),.'/')).{.$packageVendorDir.=
69be0 20 64 69 72 6e 61 6d 65 28 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 29 3b 0a 69 66 20 28 69 73 5f .dirname($downloadPath);.if.(is_
69c00 64 69 72 28 24 70 61 63 6b 61 67 65 56 65 6e 64 6f 72 44 69 72 29 20 26 26 20 24 74 68 69 73 2d dir($packageVendorDir).&&.$this-
69c20 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 70 61 63 6b 61 67 65 >filesystem->isDirEmpty($package
69c40 56 65 6e 64 6f 72 44 69 72 29 29 20 7b 0a 40 72 6d 64 69 72 28 24 70 61 63 6b 61 67 65 56 65 6e VendorDir)).{.@rmdir($packageVen
69c60 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 6e 63 74 69 dorDir);.}.}.}.....public.functi
69c80 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 61 on.getInstallPath(PackageInterfa
69ca0 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 6c 69 7a 65 ce.$package).{.$this->initialize
69cc0 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 74 68 69 73 VendorDir();..$basePath.=.($this
69ce0 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 69 72 2e 27 ->vendorDir.?.$this->vendorDir.'
69d00 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 74 79 4e 61 /'.:.'')...$package->getPrettyNa
69d20 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 3e 67 65 74 me();.$targetDir.=.$package->get
69d40 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 74 68 20 2e TargetDir();..return.$basePath..
69d60 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 72 20 3a 20 .($targetDir.?.'/'.$targetDir.:.
69d80 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 75 6e 63 74 '');.}...........protected.funct
69da0 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 67 65 49 6e ion.getPackageBasePath(PackageIn
69dc0 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 74 68 terface.$package).{.$installPath
69de0 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 63 6b 61 67 .=.$this->getInstallPath($packag
69e00 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 65 74 54 61 e);.$targetDir.=.$package->getTa
69e20 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 7b 0a 72 65 rgetDir();..if.($targetDir).{.re
69e40 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 72 65 70 6c turn.preg_replace('{/*'.str_repl
69e60 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 61 72 67 65 ace('/',.'/+',.preg_quote($targe
69e80 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 61 74 68 29 tDir)).'/?$}',.'',.$installPath)
69ea0 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 0a 70 72 6f ;.}..return.$installPath;.}..pro
69ec0 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 50 61 63 6b tected.function.installCode(Pack
69ee0 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 77 6e 6c 6f ageInterface.$package).{.$downlo
69f00 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 74 68 28 24 adPath.=.$this->getInstallPath($
69f20 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 61 67 65 72 package);.$this->downloadManager
69f40 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 61 64 50 61 ->download($package,.$downloadPa
69f60 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 70 64 61 74 th);.}..protected.function.updat
69f80 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 69 61 6c 2c eCode(PackageInterface.$initial,
69fa0 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 24 69 6e .PackageInterface.$target).{.$in
69fc0 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 65 74 49 6e itialDownloadPath.=.$this->getIn
69fe0 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 44 6f 77 6e stallPath($initial);.$targetDown
6a000 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 74 68 loadPath.=.$this->getInstallPath
6a020 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 61 64 50 61 ($target);.if.($targetDownloadPa
6a040 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 20 7b 0a 0a th.!==.$initialDownloadPath).{..
6a060 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 61 64 50 61 ...if.(substr($initialDownloadPa
6a080 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 64 50 61 74 th,.0,.strlen($targetDownloadPat
6a0a0 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 7c 7c 20 73 h)).===.$targetDownloadPath.||.s
6a0c0 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 2c 20 73 74 ubstr($targetDownloadPath,.0,.st
6a0e0 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 3d 3d 3d 20 rlen($initialDownloadPath)).===.
6a100 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 69 73 2d 3e $initialDownloadPath.).{.$this->
6a120 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 3e 69 6e 73 removeCode($initial);.$this->ins
6a140 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 7d 0a 0a 24 tallCode($target);..return;.}..$
6a160 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 69 74 69 61 this->filesystem->rename($initia
6a180 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 61 64 50 61 lDownloadPath,.$targetDownloadPa
6a1a0 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 72 2d 3e 75 th);.}.$this->downloadManager->u
6a1c0 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 72 67 65 74 pdate($initial,.$target,.$target
6a1e0 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 66 75 6e 63 DownloadPath);.}..protected.func
6a200 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 66 61 63 65 tion.removeCode(PackageInterface
6a220 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 20 24 74 68 .$package).{.$downloadPath.=.$th
6a240 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 61 67 65 29 is->getPackageBasePath($package)
6a260 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 6d 6f 76 65 ;.$this->downloadManager->remove
6a280 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 0a 0a 70 72 ($package,.$downloadPath);.}..pr
6a2a0 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 69 6e 61 72 69 65 73 28 50 61 63 otected.function.getBinaries(Pac
6a2c0 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 75 72 6e kageInterface.$package).{.return
6a2e0 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 42 69 6e 61 72 69 65 73 28 29 3b 0a 7d 0a 0a 70 72 6f .$package->getBinaries();.}..pro
6a300 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 42 69 6e 61 72 69 65 73 28 tected.function.installBinaries(
6a320 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 62 69 PackageInterface.$package).{.$bi
6a340 6e 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 naries.=.$this->getBinaries($pac
6a360 6b 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 kage);.if.(!$binaries).{.return;
6a380 0a 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 .}.foreach.($binaries.as.$bin).{
6a3a0 0a 24 62 69 6e 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 .$binPath.=.$this->getInstallPat
6a3c0 68 28 24 70 61 63 6b 61 67 65 29 2e 27 2f 27 2e 24 62 69 6e 3b 0a 69 66 20 28 21 66 69 6c 65 5f h($package).'/'.$bin;.if.(!file_
6a3e0 65 78 69 73 74 73 28 24 62 69 6e 50 61 74 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 exists($binPath)).{.$this->io->w
6a400 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 3c 77 61 72 6e 69 6e 67 3e 53 6b 69 70 70 65 64 20 riteError('....<warning>Skipped.
6a420 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 62 69 6e 20 27 2e 24 62 69 6e 2e 27 20 66 6f 72 installation.of.bin.'.$bin.'.for
6a440 20 70 61 63 6b 61 67 65 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 .package.'.$package->getName().'
6a460 3a 20 66 69 6c 65 20 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 20 70 61 63 6b 61 67 65 3c 2f 77 61 72 :.file.not.found.in.package</war
6a480 6e 69 6e 67 3e 27 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 0a 20 24 62 ning>');.continue;.}..........$b
6a4a0 69 6e 50 61 74 68 20 3d 20 72 65 61 6c 70 61 74 68 28 24 62 69 6e 50 61 74 68 29 3b 0a 0a 24 74 inPath.=.realpath($binPath);..$t
6a4c0 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 24 6c 69 6e 6b 20 3d his->initializeBinDir();.$link.=
6a4e0 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 6d 65 28 24 62 69 6e .$this->binDir.'/'.basename($bin
6a500 29 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 6c 69 6e 6b 29 29 20 7b 0a 69 66 20 );.if.(file_exists($link)).{.if.
6a520 28 69 73 5f 6c 69 6e 6b 28 24 6c 69 6e 6b 29 29 20 7b 0a 0a 20 0a 20 0a 20 40 63 68 6d 6f 64 28 (is_link($link)).{.......@chmod(
6a540 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 0a 24 74 68 69 73 $link,.0777.&.~umask());.}.$this
6a560 2d 3e 69 6f 2d 3e 77 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 ->io->writeError('....Skipped.in
6a580 73 74 61 6c 6c 61 74 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 stallation.of.bin.'.$bin.'.for.p
6a5a0 61 63 6b 61 67 65 20 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 ackage.'.$package->getName().':.
6a5c0 6e 61 6d 65 20 63 6f 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 name.conflicts.with.an.existing.
6a5e0 66 69 6c 65 27 29 3b 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 file');.continue;.}..if.($this->
6a600 62 69 6e 43 6f 6d 70 61 74 20 3d 3d 3d 20 22 61 75 74 6f 22 29 20 7b 0a 69 66 20 28 64 65 66 69 binCompat.===."auto").{.if.(defi
6a620 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 ned('PHP_WINDOWS_VERSION_BUILD')
6a640 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 46 75 6c 6c 42 69 6e 61 72 69 65 73 28 24 ).{.$this->installFullBinaries($
6a660 62 69 6e 50 61 74 68 2c 20 24 6c 69 6e 6b 2c 20 24 62 69 6e 2c 20 24 70 61 63 6b 61 67 65 29 3b binPath,.$link,.$bin,.$package);
6a680 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 53 79 6d 6c 69 6e 6b 42 .}.else.{.$this->installSymlinkB
6a6a0 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 20 65 6c inaries($binPath,.$link);.}.}.el
6a6c0 73 65 69 66 20 28 24 74 68 69 73 2d 3e 62 69 6e 43 6f 6d 70 61 74 20 3d 3d 3d 20 22 66 75 6c 6c seif.($this->binCompat.===."full
6a6e0 22 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 46 75 6c 6c 42 69 6e 61 72 69 65 73 28 ").{.$this->installFullBinaries(
6a700 24 62 69 6e 50 61 74 68 2c 20 24 6c 69 6e 6b 2c 20 24 62 69 6e 2c 20 24 70 61 63 6b 61 67 65 29 $binPath,.$link,.$bin,.$package)
6a720 3b 0a 7d 0a 40 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 ;.}.@chmod($link,.0777.&.~umask(
6a740 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 6e 20 69 6e 73 74 ));.}.}..protected.function.inst
6a760 61 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 allFullBinaries($binPath,.$link,
6a780 20 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 .$bin,.PackageInterface.$package
6a7a0 29 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 ).{...if.('.bat'.!==.substr($bin
6a7c0 50 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 Path,.-4)).{.$this->installUnixy
6a7e0 50 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 ProxyBinaries($binPath,.$link);.
6a800 40 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 @chmod($link,.0777.&.~umask());.
6a820 24 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 $link..=.'.bat';.if.(file_exists
6a840 28 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 ($link)).{.$this->io->writeError
6a860 28 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 ('....Skipped.installation.of.bi
6a880 6e 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 n.'.$bin.'.bat.proxy.for.package
6a8a0 20 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 .'.$package->getName().':.a..bat
6a8c0 20 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 .proxy.was.already.installed');.
6a8e0 7d 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 }.}.if.(!file_exists($link)).{.f
6a900 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 67 ile_put_contents($link,.$this->g
6a920 65 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 enerateWindowsProxyCode($binPath
6a940 2c 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 ,.$link));.}.}..protected.functi
6a960 6f 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 on.installSymlinkBinaries($binPa
6a980 74 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 th,.$link).{.if.(!$this->filesys
6a9a0 74 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 tem->relativeSymlink($binPath,.$
6a9c0 6c 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 link)).{.$this->installUnixyProx
6a9e0 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 7d 0a 7d 0a yBinaries($binPath,.$link);.}.}.
6aa00 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 55 6e 69 78 79 .protected.function.installUnixy
6aa20 50 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 ProxyBinaries($binPath,.$link).{
6aa40 0a 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 .file_put_contents($link,.$this-
6aa60 3e 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 >generateUnixyProxyCode($binPath
6aa80 2c 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 ,.$link));.}..protected.function
6aaa0 20 72 65 6d 6f 76 65 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 .removeBinaries(PackageInterface
6aac0 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 62 69 6e 61 72 69 65 73 20 3d 20 24 74 68 69 73 2d 3e .$package).{.$binaries.=.$this->
6aae0 67 65 74 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 69 66 20 28 21 24 62 69 6e getBinaries($package);.if.(!$bin
6ab00 61 72 69 65 73 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 62 69 6e aries).{.return;.}.foreach.($bin
6ab20 61 72 69 65 73 20 61 73 20 24 62 69 6e 29 20 7b 0a 24 6c 69 6e 6b 20 3d 20 24 74 68 69 73 2d 3e aries.as.$bin).{.$link.=.$this->
6ab40 62 69 6e 44 69 72 2e 27 2f 27 2e 62 61 73 65 6e 61 6d 65 28 24 62 69 6e 29 3b 0a 69 66 20 28 69 binDir.'/'.basename($bin);.if.(i
6ab60 73 5f 6c 69 6e 6b 28 24 6c 69 6e 6b 29 20 7c 7c 20 66 69 6c 65 5f 65 78 69 73 74 73 28 24 6c 69 s_link($link).||.file_exists($li
6ab80 6e 6b 29 29 20 7b 0a 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 nk)).{.$this->filesystem->unlink
6aba0 28 24 6c 69 6e 6b 29 3b 0a 7d 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 6c 69 6e 6b ($link);.}.if.(file_exists($link
6abc0 2e 27 2e 62 61 74 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 75 .'.bat')).{.$this->filesystem->u
6abe0 6e 6c 69 6e 6b 28 24 6c 69 6e 6b 2e 27 2e 62 61 74 27 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 nlink($link.'.bat');.}.}....if.(
6ac00 28 69 73 5f 64 69 72 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 29 29 20 26 26 20 28 24 74 68 69 (is_dir($this->binDir)).&&.($thi
6ac20 73 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 s->filesystem->isDirEmpty($this-
6ac40 3e 62 69 6e 44 69 72 29 29 29 20 7b 0a 40 72 6d 64 69 72 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 >binDir))).{.@rmdir($this->binDi
6ac60 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 69 6e 69 74 r);.}.}..protected.function.init
6ac80 69 61 6c 69 7a 65 56 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 ializeVendorDir().{.$this->files
6aca0 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 68 ystem->ensureDirectoryExists($th
6acc0 69 73 2d 3e 76 65 6e 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 is->vendorDir);.$this->vendorDir
6ace0 20 3d 20 72 65 61 6c 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 .=.realpath($this->vendorDir);.}
6ad00 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 42 ..protected.function.initializeB
6ad20 69 6e 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 65 6e 73 inDir().{.$this->filesystem->ens
6ad40 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 62 69 6e 44 69 72 ureDirectoryExists($this->binDir
6ad60 29 3b 0a 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 20 3d 20 72 65 61 6c 70 61 74 68 28 24 74 68 69 );.$this->binDir.=.realpath($thi
6ad80 73 2d 3e 62 69 6e 44 69 72 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f s->binDir);.}..protected.functio
6ada0 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 24 62 69 6e 2c n.generateWindowsProxyCode($bin,
6adc0 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 3e 66 69 6c 65 .$link).{.$binPath.=.$this->file
6ade0 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 69 6e 6b 2c 20 system->findShortestPath($link,.
6ae00 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 72 28 24 62 69 $bin);.if.('.bat'.===.substr($bi
6ae20 6e 2c 20 2d 34 29 20 7c 7c 20 27 2e 65 78 65 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 62 69 6e n,.-4).||.'.exe'.===.substr($bin
6ae40 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 0a 7d 20 65 6c 73 ,.-4)).{.$caller.=.'call';.}.els
6ae60 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 27 72 27 29 3b 0a e.{.$handle.=.fopen($bin,.'r');.
6ae80 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 6c 6f 73 65 28 24 $line.=.fgets($handle);.fclose($
6aea0 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 5e 23 21 2f 28 3f handle);.if.(preg_match('{^#!/(?
6aec0 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 28 2e 2b 29 24 7d :usr/bin/env.)?(?:[^/]+/)*(.+)$}
6aee0 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 6c 65 72 20 3d 20 m',.$line,.$match)).{.$caller.=.
6af00 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 24 63 61 6c 6c 65 trim($match[1]);.}.else.{.$calle
6af20 72 20 3d 20 27 70 68 70 27 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 40 45 43 48 4f 20 4f 46 r.=.'php';.}.}..return."@ECHO.OF
6af40 46 5c 72 5c 6e 22 2e 0a 22 53 45 54 20 42 49 4e 5f 54 41 52 47 45 54 3d 25 7e 64 70 30 2f 22 2e F\r\n".."SET.BIN_TARGET=%~dp0/".
6af60 74 72 69 6d 28 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 69 trim(ProcessExecutor::escape($bi
6af80 6e 50 61 74 68 29 2c 20 27 22 27 29 2e 22 5c 72 5c 6e 22 2e 0a 22 7b 24 63 61 6c 6c 65 72 7d 20 nPath),.'"')."\r\n".."{$caller}.
6afa0 5c 22 25 42 49 4e 5f 54 41 52 47 45 54 25 5c 22 20 25 2a 5c 72 5c 6e 22 3b 0a 7d 0a 0a 70 72 6f \"%BIN_TARGET%\".%*\r\n";.}..pro
6afc0 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 55 6e 69 78 79 50 72 6f tected.function.generateUnixyPro
6afe0 78 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 xyCode($bin,.$link).{.$binPath.=
6b000 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 65 73 74 .$this->filesystem->findShortest
6b020 50 61 74 68 28 24 6c 69 6e 6b 2c 20 24 62 69 6e 29 3b 0a 0a 24 62 69 6e 44 69 72 20 3d 20 50 72 Path($link,.$bin);..$binDir.=.Pr
6b040 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 64 69 72 6e 61 6d 65 28 24 62 ocessExecutor::escape(dirname($b
6b060 69 6e 50 61 74 68 29 29 3b 0a 24 62 69 6e 46 69 6c 65 20 3d 20 62 61 73 65 6e 61 6d 65 28 24 62 inPath));.$binFile.=.basename($b
6b080 69 6e 50 61 74 68 29 3b 0a 0a 24 70 72 6f 78 79 43 6f 64 65 20 3d 20 3c 3c 3c 50 52 4f 58 59 0a inPath);..$proxyCode.=.<<<PROXY.
6b0a0 23 21 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 73 68 0a 0a 64 69 72 3d 24 28 64 3d 5c 24 7b 30 25 #!/usr/bin/env.sh..dir=$(d=\${0%
6b0c0 5b 2f 5c 5c 5c 5c 5d 2a 7d 3b 20 63 64 20 22 5c 24 64 22 3b 20 63 64 20 24 62 69 6e 44 69 72 20 [/\\\\]*};.cd."\$d";.cd.$binDir.
6b0e0 26 26 20 70 77 64 29 0a 0a 23 20 53 65 65 20 69 66 20 77 65 20 61 72 65 20 72 75 6e 6e 69 6e 67 &&.pwd)..#.See.if.we.are.running
6b100 20 69 6e 20 43 79 67 77 69 6e 20 62 79 20 63 68 65 63 6b 69 6e 67 20 66 6f 72 20 63 79 67 70 61 .in.Cygwin.by.checking.for.cygpa
6b120 74 68 20 70 72 6f 67 72 61 6d 0a 69 66 20 63 6f 6d 6d 61 6e 64 20 2d 76 20 27 63 79 67 70 61 74 th.program.if.command.-v.'cygpat
6b140 68 27 20 3e 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 26 31 3b 20 74 68 65 6e 0a 09 23 20 43 79 67 77 h'.>/dev/null.2>&1;.then..#.Cygw
6b160 69 6e 20 70 61 74 68 73 20 73 74 61 72 74 20 77 69 74 68 20 2f 63 79 67 64 72 69 76 65 2f 20 77 in.paths.start.with./cygdrive/.w
6b180 68 69 63 68 20 77 69 6c 6c 20 62 72 65 61 6b 20 77 69 6e 64 6f 77 73 20 50 48 50 2c 0a 09 23 20 hich.will.break.windows.PHP,..#.
6b1a0 73 6f 20 77 65 20 6e 65 65 64 20 74 6f 20 74 72 61 6e 73 6c 61 74 65 20 74 68 65 20 64 69 72 20 so.we.need.to.translate.the.dir.
6b1c0 70 61 74 68 20 74 6f 20 77 69 6e 64 6f 77 73 20 66 6f 72 6d 61 74 2e 20 48 6f 77 65 76 65 72 0a path.to.windows.format..However.
6b1e0 09 23 20 77 65 20 63 6f 75 6c 64 20 62 65 20 75 73 69 6e 67 20 63 79 67 77 69 6e 20 50 48 50 20 .#.we.could.be.using.cygwin.PHP.
6b200 77 68 69 63 68 20 64 6f 65 73 20 6e 6f 74 20 72 65 71 75 69 72 65 20 74 68 69 73 2c 20 73 6f 20 which.does.not.require.this,.so.
6b220 77 65 0a 09 23 20 74 65 73 74 20 69 66 20 74 68 65 20 70 61 74 68 20 74 6f 20 50 48 50 20 73 74 we..#.test.if.the.path.to.PHP.st
6b240 61 72 74 73 20 77 69 74 68 20 2f 63 79 67 64 72 69 76 65 2f 20 72 61 74 68 65 72 20 74 68 61 6e arts.with./cygdrive/.rather.than
6b260 20 2f 75 73 72 2f 62 69 6e 0a 09 69 66 20 5b 5b 20 24 28 77 68 69 63 68 20 70 68 70 29 20 3d 3d ./usr/bin..if.[[.$(which.php).==
6b280 20 2f 63 79 67 64 72 69 76 65 2f 2a 20 5d 5d 3b 20 74 68 65 6e 0a 09 09 64 69 72 3d 24 28 63 79 ./cygdrive/*.]];.then...dir=$(cy
6b2a0 67 70 61 74 68 20 2d 6d 20 5c 24 64 69 72 29 3b 0a 09 66 69 0a 66 69 0a 0a 64 69 72 3d 24 28 65 gpath.-m.\$dir);..fi.fi..dir=$(e
6b2c0 63 68 6f 20 5c 24 64 69 72 20 7c 20 73 65 64 20 27 73 2f 20 2f 5c 20 2f 67 27 29 0a 22 5c 24 7b cho.\$dir.|.sed.'s/./\./g')."\${
6b2e0 64 69 72 7d 2f 24 62 69 6e 46 69 6c 65 22 20 22 24 40 22 0a 0a 50 52 4f 58 59 3b 0a 0a 72 65 74 dir}/$binFile"."$@"..PROXY;..ret
6b300 75 72 6e 20 24 70 72 6f 78 79 43 6f 64 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a urn.$proxyCode;.}.}.<?php.......
6b320 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 61 6c 6c 65 .....namespace.Composer\Installe
6b340 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 49 6e 73 74 r;..use.Composer\Repository\Inst
6b360 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 20 43 6f alledRepositoryInterface;.use.Co
6b380 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;
6b3a0 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 65 74 61 70 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 .......class.MetapackageInstalle
6b3c0 72 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 r.implements.InstallerInterface.
6b3e0 7b 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 {....public.function.supports($p
6b400 61 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 ackageType).{.return.$packageTyp
6b420 65 20 3d 3d 3d 20 27 6d 65 74 61 70 61 63 6b 61 67 65 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 e.===.'metapackage';.}.....publi
6b440 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 61 6c 6c 65 64 c.function.isInstalled(Installed
6b460 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 61 RepositoryInterface.$repo,.Packa
6b480 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 75 72 6e 20 24 geInterface.$package).{.return.$
6b4a0 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 0a 7d 0a 0a 0a repo->hasPackage($package);.}...
6b4c0 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 73 74 61 6c ..public.function.install(Instal
6b4e0 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
6b500 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 70 6f ckageInterface.$package).{.$repo
6b520 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 3b 0a 7d 0a ->addPackage(clone.$package);.}.
6b540 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 6e 73 74 61 ....public.function.update(Insta
6b560 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
6b580 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 6b 61 67 ackageInterface.$initial,.Packag
6b5a0 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 21 24 72 65 70 6f eInterface.$target).{.if.(!$repo
6b5c0 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 74 68 72 6f 77 20 ->hasPackage($initial)).{.throw.
6b5e0 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 50 new.\InvalidArgumentException('P
6b600 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 2e 24 69 6e 69 74 ackage.is.not.installed:.'.$init
6b620 69 61 6c 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 69 ial);.}..$repo->removePackage($i
6b640 6e 69 74 69 61 6c 29 3b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 63 6c 6f 6e 65 nitial);.$repo->addPackage(clone
6b660 20 24 74 61 72 67 65 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 .$target);.}.....public.function
6b680 20 75 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 .uninstall(InstalledRepositoryIn
6b6a0 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 20 terface.$repo,.PackageInterface.
6b6c0 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 $package).{.if.(!$repo->hasPacka
6b6e0 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c ge($package)).{.throw.new.\Inval
6b700 69 64 41 72 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 69 73 20 idArgumentException('Package.is.
6b720 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 3a 20 27 2e 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 24 not.installed:.'.$package);.}..$
6b740 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 3b 0a 7d repo->removePackage($package);.}
6b760 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 6c 50 .....public.function.getInstallP
6b780 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 65 29 0a 7b ath(PackageInterface.$package).{
6b7a0 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a .return.'';.}.}.<?php...........
6b7c0 0a 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 .namespace.Composer\Installer;..
6b7e0 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 65 use.Composer\Repository\Installe
6b800 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 73 dRepositoryInterface;.use.Compos
6b820 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 0a er\Package\PackageInterface;....
6b840 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 72 20 69 6d 70 6c 65 6d 65 .....class.NoopInstaller.impleme
6b860 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 0a 0a 0a 70 75 62 6c nts.InstallerInterface.{....publ
6b880 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 70 61 63 6b 61 67 65 54 79 70 ic.function.supports($packageTyp
6b8a0 65 29 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 e).{.return.true;.}.....public.f
6b8c0 75 6e 63 74 69 6f 6e 20 69 73 49 6e 73 74 61 6c 6c 65 64 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 unction.isInstalled(InstalledRep
6b8e0 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 49 ositoryInterface.$repo,.PackageI
6b900 6e 74 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 72 65 70 nterface.$package).{.return.$rep
6b920 6f 2d 3e 68 61 73 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 70 o->hasPackage($package);.}.....p
6b940 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 73 74 61 6c 6c 65 64 ublic.function.install(Installed
6b960 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 61 RepositoryInterface.$repo,.Packa
6b980 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 24 72 65 geInterface.$package).{.if.(!$re
6b9a0 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 72 65 70 po->hasPackage($package)).{.$rep
6b9c0 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 3b 0a 7d o->addPackage(clone.$package);.}
6b9e0 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 49 6e .}.....public.function.update(In
6ba00 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
6ba20 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 63 ,.PackageInterface.$initial,.Pac
6ba40 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 21 24 72 kageInterface.$target).{.if.(!$r
6ba60 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 74 68 72 epo->hasPackage($initial)).{.thr
6ba80 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
6baa0 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 2e 24 69 ('Package.is.not.installed:.'.$i
6bac0 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 63 6b 61 67 65 nitial);.}..$repo->removePackage
6bae0 28 24 69 6e 69 74 69 61 6c 29 3b 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 ($initial);.if.(!$repo->hasPacka
6bb00 67 65 28 24 74 61 72 67 65 74 29 29 20 7b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 ge($target)).{.$repo->addPackage
6bb20 28 63 6c 6f 6e 65 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 (clone.$target);.}.}.....public.
6bb40 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
6bb60 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
6bb80 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->
6bba0 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
6bbc0 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
6bbe0 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
6bc00 65 29 3b 0a 7d 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 e);.}.$repo->removePackage($pack
6bc20 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 49 age);.}.....public.function.getI
6bc40 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 63 nstallPath(PackageInterface.$pac
6bc60 6b 61 67 65 29 0a 7b 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 kage).{.$targetDir.=.$package->g
6bc80 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d etTargetDir();..return.$package-
6bca0 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 20 2e 20 28 24 74 61 72 67 65 74 44 69 72 20 3f >getPrettyName()...($targetDir.?
6bcc0 20 27 2f 27 2e 24 74 61 72 67 65 74 44 69 72 20 3a 20 27 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 .'/'.$targetDir.:.'');.}.}.<?php
6bce0 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
6bd00 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 65 72 nstaller;..use.Composer\Composer
6bd20 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
6bd40 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
6bd60 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
6bd80 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
6bda0 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
6bdc0 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
6bde0 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
6be00 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 65 .Composer\Repository\CompositeRe
6be20 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 63 6b 61 67 65 45 76 65 pository;.......class.PackageEve
6be40 6e 74 20 65 78 74 65 6e 64 73 20 49 6e 73 74 61 6c 6c 65 72 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 70 nt.extends.InstallerEvent.{....p
6be60 72 69 76 61 74 65 20 24 6f 70 65 72 61 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a rivate.$operation;..............
6be80 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 65 ..public.function.__construct($e
6bea0 76 65 6e 74 4e 61 6d 65 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 49 4f ventName,.Composer.$composer,.IO
6bec0 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 64 65 76 4d 6f 64 65 2c 20 50 6f 6c 69 63 79 49 Interface.$io,.$devMode,.PolicyI
6bee0 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 43 6f nterface.$policy,.Pool.$pool,.Co
6bf00 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f mpositeRepository.$installedRepo
6bf20 2c 20 52 65 71 75 65 73 74 20 24 72 65 71 75 65 73 74 2c 20 61 72 72 61 79 20 24 6f 70 65 72 61 ,.Request.$request,.array.$opera
6bf40 74 69 6f 6e 73 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 61 tions,.OperationInterface.$opera
6bf60 74 69 6f 6e 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 65 76 65 tion).{.parent::__construct($eve
6bf80 6e 74 4e 61 6d 65 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 69 6f 2c 20 24 64 65 76 4d 6f 64 65 ntName,.$composer,.$io,.$devMode
6bfa0 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
6bfc0 2c 20 24 72 65 71 75 65 73 74 2c 20 24 6f 70 65 72 61 74 69 6f 6e 73 29 3b 0a 0a 24 74 68 69 73 ,.$request,.$operations);..$this
6bfe0 2d 3e 6f 70 65 72 61 74 69 6f 6e 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a ->operation.=.$operation;.}.....
6c000 0a 0a 70 75 62 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 28 29 ..public.function.getOperation()
6c020 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 69 6f 6e 3b 0a 7d 0a 7d 0a .{.return.$this->operation;.}.}.
6c040 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
6c060 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 63 6b 61 ser\Installer;.......class.Packa
6c080 67 65 45 76 65 6e 74 73 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 50 41 43 4b geEvents.{........const.PRE_PACK
6c0a0 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 61 AGE_INSTALL.=.'pre-package-insta
6c0c0 6c 6c 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 ll';.........const.POST_PACKAGE_
6c0e0 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 6c 27 INSTALL.=.'post-package-install'
6c100 3b 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 50 44 41 ;.........const.PRE_PACKAGE_UPDA
6c120 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 0a 0a 0a TE.=.'pre-package-update';......
6c140 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 20 3d 20 27 ...const.POST_PACKAGE_UPDATE.=.'
6c160 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 0a 0a 63 6f post-package-update';.........co
6c180 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 20 27 70 72 65 nst.PRE_PACKAGE_UNINSTALL.=.'pre
6c1a0 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 0a 0a 63 6f 6e -package-uninstall';.........con
6c1c0 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 3d 20 27 70 6f 73 st.POST_PACKAGE_UNINSTALL.=.'pos
6c1e0 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 70 68 70 0a 0a 0a t-package-uninstall';.}.<?php...
6c200 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
6c220 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
6c240 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.
6c260 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
6c280 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
6c2a0 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;.
6c2c0 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
6c2e0 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 72 6f 63 65 73 73 rface;.use.Composer\Util\Process
6c300 45 78 65 63 75 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 65 61 72 49 6e 73 74 61 Executor;........class.PearInsta
6c320 6c 6c 65 72 20 65 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 ller.extends.LibraryInstaller.{.
6c340 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
6c360 63 74 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 72 20 24 63 6f ct(IOInterface.$io,.Composer.$co
6c380 6d 70 6f 73 65 72 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 mposer,.$type.=.'pear-library').
6c3a0 7b 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 6d 70 {.parent::__construct($io,.$comp
6c3c0 6f 73 65 72 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 74 oser,.$type);.}.....public.funct
6c3e0 69 6f 6e 20 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 ion.update(InstalledRepositoryIn
6c400 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 20 terface.$repo,.PackageInterface.
6c420 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 65 20 24 74 61 72 67 $initial,.PackageInterface.$targ
6c440 65 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 6e 69 6e 73 74 61 6c 6c 28 24 72 65 70 6f 2c 20 24 69 et).{.$this->uninstall($repo,.$i
6c460 6e 69 74 69 61 6c 29 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 28 24 72 65 70 6f 2c 20 24 nitial);.$this->install($repo,.$
6c480 74 61 72 67 65 74 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 target);.}..protected.function.i
6c4a0 6e 73 74 61 6c 6c 43 6f 64 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 nstallCode(PackageInterface.$pac
6c4c0 6b 61 67 65 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 73 74 61 6c 6c 43 6f 64 65 28 24 70 61 63 kage).{.parent::installCode($pac
6c4e0 6b 61 67 65 29 3b 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 kage);.parent::initializeBinDir(
6c500 29 3b 0a 0a 24 69 73 57 69 6e 64 6f 77 73 20 3d 20 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 );..$isWindows.=.defined('PHP_WI
6c520 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 3b 0a 24 70 68 70 5f 62 69 6e 20 NDOWS_VERSION_BUILD');.$php_bin.
6c540 3d 20 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 20 2e 20 28 24 69 73 57 69 6e 64 6f 77 73 20 3f 20 =.$this->binDir...($isWindows.?.
6c560 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 2e 62 61 74 27 20 3a 20 27 2f 63 6f 6d 70 6f 73 65 72 '/composer-php.bat'.:.'/composer
6c580 2d 70 68 70 27 29 3b 0a 0a 69 66 20 28 21 24 69 73 57 69 6e 64 6f 77 73 29 20 7b 0a 24 70 68 70 -php');..if.(!$isWindows).{.$php
6c5a0 5f 62 69 6e 20 3d 20 27 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 27 20 2e 20 24 70 68 70 5f 62 69 _bin.=.'/usr/bin/env.'...$php_bi
6c5c0 6e 3b 0a 7d 0a 0a 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 n;.}..$installPath.=.$this->getI
6c5e0 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 76 61 72 73 20 3d 20 61 72 nstallPath($package);.$vars.=.ar
6c600 72 61 79 28 0a 27 6f 73 27 20 3d 3e 20 24 69 73 57 69 6e 64 6f 77 73 20 3f 20 27 77 69 6e 64 6f ray(.'os'.=>.$isWindows.?.'windo
6c620 77 73 27 20 3a 20 27 6c 69 6e 75 78 27 2c 0a 27 70 68 70 5f 62 69 6e 27 20 3d 3e 20 24 70 68 70 ws'.:.'linux',.'php_bin'.=>.$php
6c640 5f 62 69 6e 2c 0a 27 70 65 61 72 5f 70 68 70 27 20 3d 3e 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 _bin,.'pear_php'.=>.$installPath
6c660 2c 0a 27 70 68 70 5f 64 69 72 27 20 3d 3e 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 2c 0a 27 62 69 ,.'php_dir'.=>.$installPath,.'bi
6c680 6e 5f 64 69 72 27 20 3d 3e 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 2e 20 27 2f 62 69 6e 27 2c n_dir'.=>.$installPath...'/bin',
6c6a0 0a 27 64 61 74 61 5f 64 69 72 27 20 3d 3e 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 2e 20 27 2f .'data_dir'.=>.$installPath...'/
6c6c0 64 61 74 61 27 2c 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 data',.'version'.=>.$package->ge
6c6e0 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 0a 29 3b 0a 0a 24 70 61 63 6b 61 67 65 41 72 tPrettyVersion(),.);..$packageAr
6c700 63 68 69 76 65 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 chive.=.$this->getInstallPath($p
6c720 61 63 6b 61 67 65 29 2e 27 2f 27 2e 70 61 74 68 69 6e 66 6f 28 24 70 61 63 6b 61 67 65 2d 3e 67 ackage).'/'.pathinfo($package->g
6c740 65 74 44 69 73 74 55 72 6c 28 29 2c 20 50 41 54 48 49 4e 46 4f 5f 42 41 53 45 4e 41 4d 45 29 3b etDistUrl(),.PATHINFO_BASENAME);
6c760 0a 24 70 65 61 72 45 78 74 72 61 63 74 6f 72 20 3d 20 6e 65 77 20 50 65 61 72 50 61 63 6b 61 67 .$pearExtractor.=.new.PearPackag
6c780 65 45 78 74 72 61 63 74 6f 72 28 24 70 61 63 6b 61 67 65 41 72 63 68 69 76 65 29 3b 0a 24 70 65 eExtractor($packageArchive);.$pe
6c7a0 61 72 45 78 74 72 61 63 74 6f 72 2d 3e 65 78 74 72 61 63 74 54 6f 28 24 74 68 69 73 2d 3e 67 65 arExtractor->extractTo($this->ge
6c7c0 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 2c 20 61 72 72 61 79 28 27 70 tInstallPath($package),.array('p
6c7e0 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 62 69 6e 27 2c 20 hp'.=>.'/',.'script'.=>.'/bin',.
6c800 27 64 61 74 61 27 20 3d 3e 20 27 2f 64 61 74 61 27 29 2c 20 24 76 61 72 73 29 3b 0a 0a 69 66 20 'data'.=>.'/data'),.$vars);..if.
6c820 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 74 68 69 73 ($this->io->isVerbose()).{.$this
6c840 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 20 20 20 20 43 6c 65 61 6e 69 6e 67 20 75 ->io->writeError('....Cleaning.u
6c860 70 27 29 3b 0a 7d 0a 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 p');.}.$this->filesystem->unlink
6c880 28 24 70 61 63 6b 61 67 65 41 72 63 68 69 76 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 ($packageArchive);.}..protected.
6c8a0 66 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 function.getBinaries(PackageInte
6c8c0 72 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 rface.$package).{.$binariesPath.
6c8e0 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 63 6b 61 67 65 =.$this->getInstallPath($package
6c900 29 20 2e 20 27 2f 62 69 6e 2f 27 3b 0a 24 62 69 6e 61 72 69 65 73 20 3d 20 61 72 72 61 79 28 29 )...'/bin/';.$binaries.=.array()
6c920 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 62 69 6e 61 72 69 65 73 50 61 74 68 29 ;.if.(file_exists($binariesPath)
6c940 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 6e 65 77 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 ).{.foreach.(new.\FilesystemIter
6c960 61 74 6f 72 28 24 62 69 6e 61 72 69 65 73 50 61 74 68 2c 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 ator($binariesPath,.\FilesystemI
6c980 74 65 72 61 74 6f 72 3a 3a 4b 45 59 5f 41 53 5f 46 49 4c 45 4e 41 4d 45 20 7c 20 5c 46 69 6c 65 terator::KEY_AS_FILENAME.|.\File
6c9a0 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a 3a 43 55 52 52 45 4e 54 5f 41 53 5f 46 49 4c 45 49 systemIterator::CURRENT_AS_FILEI
6c9c0 4e 46 4f 29 20 61 73 20 24 66 69 6c 65 4e 61 6d 65 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 69 NFO).as.$fileName.=>.$value).{.i
6c9e0 66 20 28 21 24 76 61 6c 75 65 2d 3e 69 73 44 69 72 28 29 29 20 7b 0a 24 62 69 6e 61 72 69 65 73 f.(!$value->isDir()).{.$binaries
6ca00 5b 5d 20 3d 20 27 62 69 6e 2f 27 2e 24 66 69 6c 65 4e 61 6d 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 [].=.'bin/'.$fileName;.}.}.}..re
6ca20 74 75 72 6e 20 24 62 69 6e 61 72 69 65 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e turn.$binaries;.}..protected.fun
6ca40 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 42 69 6e 44 69 72 28 29 0a 7b 0a 70 61 72 65 6e ction.initializeBinDir().{.paren
6ca60 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 42 69 6e 44 69 72 28 29 3b 0a 66 69 6c 65 5f 70 75 74 5f t::initializeBinDir();.file_put_
6ca80 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 2e 27 2f 63 6f 6d 70 6f 73 65 contents($this->binDir.'/compose
6caa0 72 2d 70 68 70 27 2c 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 55 6e 69 78 79 50 68 70 50 r-php',.$this->generateUnixyPhpP
6cac0 72 6f 78 79 43 6f 64 65 28 29 29 3b 0a 40 63 68 6d 6f 64 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 roxyCode());.@chmod($this->binDi
6cae0 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 27 2c 20 30 37 37 37 29 3b 0a 66 69 6c 65 5f 70 r.'/composer-php',.0777);.file_p
6cb00 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 2e 27 2f 63 6f 6d 70 ut_contents($this->binDir.'/comp
6cb20 6f 73 65 72 2d 70 68 70 2e 62 61 74 27 2c 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 57 69 oser-php.bat',.$this->generateWi
6cb40 6e 64 6f 77 73 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 68 ndowsPhpProxyCode());.@chmod($th
6cb60 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 2e 62 61 74 27 2c 20 is->binDir.'/composer-php.bat',.
6cb80 30 37 37 37 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 67 65 6e 0777);.}..protected.function.gen
6cba0 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 2c 20 24 6c 69 6e erateWindowsProxyCode($bin,.$lin
6cbc0 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 79 73 74 65 k).{.$binPath.=.$this->filesyste
6cbe0 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 62 69 6e 29 m->findShortestPath($link,.$bin)
6cc00 3b 0a 69 66 20 28 27 2e 62 61 74 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 62 69 6e 2c 20 2d 34 ;.if.('.bat'.===.substr($bin,.-4
6cc20 29 29 20 7b 0a 24 63 61 6c 6c 65 72 20 3d 20 27 63 61 6c 6c 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a )).{.$caller.=.'call';.}.else.{.
6cc40 24 68 61 6e 64 6c 65 20 3d 20 66 6f 70 65 6e 28 24 62 69 6e 2c 20 27 72 27 29 3b 0a 24 6c 69 6e $handle.=.fopen($bin,.'r');.$lin
6cc60 65 20 3d 20 66 67 65 74 73 28 24 68 61 6e 64 6c 65 29 3b 0a 66 63 6c 6f 73 65 28 24 68 61 6e 64 e.=.fgets($handle);.fclose($hand
6cc80 6c 65 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 23 21 2f 28 3f 3a 75 73 72 le);.if.(preg_match('{^#!/(?:usr
6cca0 2f 62 69 6e 2f 65 6e 76 20 29 3f 28 3f 3a 5b 5e 2f 5d 2b 2f 29 2a 28 2e 2b 29 24 7d 6d 27 2c 20 /bin/env.)?(?:[^/]+/)*(.+)$}m',.
6ccc0 24 6c 69 6e 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 63 61 6c 6c 65 72 20 3d 20 74 72 69 6d $line,.$match)).{.$caller.=.trim
6cce0 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 61 6c 6c 65 72 20 3d 20 ($match[1]);.}.else.{.$caller.=.
6cd00 27 70 68 70 27 3b 0a 7d 0a 0a 69 66 20 28 24 63 61 6c 6c 65 72 20 3d 3d 3d 20 27 70 68 70 27 29 'php';.}..if.($caller.===.'php')
6cd20 20 7b 0a 72 65 74 75 72 6e 20 22 40 65 63 68 6f 20 6f 66 66 5c 72 5c 6e 22 2e 0a 22 70 75 73 68 .{.return."@echo.off\r\n".."push
6cd40 64 20 2e 5c 72 5c 6e 22 2e 0a 22 63 64 20 25 7e 64 70 30 5c 72 5c 6e 22 2e 0a 22 73 65 74 20 50 d..\r\n".."cd.%~dp0\r\n".."set.P
6cd60 48 50 5f 50 52 4f 58 59 3d 25 43 44 25 5c 5c 63 6f 6d 70 6f 73 65 72 2d 70 68 70 2e 62 61 74 5c HP_PROXY=%CD%\\composer-php.bat\
6cd80 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 3a 3a 65 73 63 r\n".."cd.".ProcessExecutor::esc
6cda0 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 6e 22 2e 0a 22 ape(dirname($binPath))."\r\n".."
6cdc0 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 6e 61 6d 65 28 set.BIN_TARGET=%CD%\\".basename(
6cde0 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 22 2e 0a 22 25 $binPath)."\r\n".."popd\r\n".."%
6ce00 50 48 50 5f 50 52 4f 58 59 25 20 5c 22 25 42 49 4e 5f 54 41 52 47 45 54 25 5c 22 20 25 2a 5c 72 PHP_PROXY%.\"%BIN_TARGET%\".%*\r
6ce20 5c 6e 22 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 40 65 63 68 6f 20 6f 66 66 5c 72 5c 6e 22 \n";.}.}..return."@echo.off\r\n"
6ce40 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 6e 22 2e .."pushd..\r\n".."cd.%~dp0\r\n".
6ce60 0a 22 63 64 20 22 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 64 ."cd.".ProcessExecutor::escape(d
6ce80 69 72 6e 61 6d 65 28 24 62 69 6e 50 61 74 68 29 29 2e 22 5c 72 5c 6e 22 2e 0a 22 73 65 74 20 42 irname($binPath))."\r\n".."set.B
6cea0 49 4e 5f 54 41 52 47 45 54 3d 25 43 44 25 5c 5c 22 2e 62 61 73 65 6e 61 6d 65 28 24 62 69 6e 50 IN_TARGET=%CD%\\".basename($binP
6cec0 61 74 68 29 2e 22 5c 72 5c 6e 22 2e 0a 22 70 6f 70 64 5c 72 5c 6e 22 2e 0a 24 63 61 6c 6c 65 72 ath)."\r\n".."popd\r\n"..$caller
6cee0 2e 22 20 5c 22 25 42 49 4e 5f 54 41 52 47 45 54 25 5c 22 20 25 2a 5c 72 5c 6e 22 3b 0a 7d 0a 0a .".\"%BIN_TARGET%\".%*\r\n";.}..
6cf00 70 72 69 76 61 74 65 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 private.function.generateWindows
6cf20 50 68 70 50 72 6f 78 79 43 6f 64 65 28 29 0a 7b 0a 24 62 69 6e 54 6f 56 65 6e 64 6f 72 20 3d 20 PhpProxyCode().{.$binToVendor.=.
6cf40 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
6cf60 61 74 68 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 2c 20 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 ath($this->binDir,.$this->vendor
6cf80 44 69 72 2c 20 74 72 75 65 29 3b 0a 0a 72 65 74 75 72 6e 0a 22 40 65 63 68 6f 20 6f 66 66 5c 72 Dir,.true);..return."@echo.off\r
6cfa0 5c 6e 22 20 2e 0a 22 73 65 74 6c 6f 63 61 6c 20 65 6e 61 62 6c 65 64 65 6c 61 79 65 64 65 78 70 \n"..."setlocal.enabledelayedexp
6cfc0 61 6e 73 69 6f 6e 5c 72 5c 6e 22 20 2e 0a 22 73 65 74 20 42 49 4e 5f 44 49 52 3d 25 7e 64 70 30 ansion\r\n"..."set.BIN_DIR=%~dp0
6cfe0 5c 72 5c 6e 22 20 2e 0a 22 73 65 74 20 56 45 4e 44 4f 52 5f 44 49 52 3d 25 42 49 4e 5f 44 49 52 \r\n"..."set.VENDOR_DIR=%BIN_DIR
6d000 25 5c 5c 22 2e 24 62 69 6e 54 6f 56 65 6e 64 6f 72 2e 22 5c 72 5c 6e 22 20 2e 0a 22 73 65 74 20 %\\".$binToVendor."\r\n"..."set.
6d020 44 49 52 53 3d 2e 5c 72 5c 6e 22 20 2e 0a 22 46 4f 52 20 2f 44 20 25 25 56 20 49 4e 20 28 25 56 DIRS=.\r\n"..."FOR./D.%%V.IN.(%V
6d040 45 4e 44 4f 52 5f 44 49 52 25 5c 5c 2a 29 20 44 4f 20 28 5c 72 5c 6e 22 20 2e 0a 22 20 20 20 20 ENDOR_DIR%\\*).DO.(\r\n"..."....
6d060 46 4f 52 20 2f 44 20 25 25 50 20 49 4e 20 28 25 25 56 5c 5c 2a 29 20 44 4f 20 28 5c 72 5c 6e 22 FOR./D.%%P.IN.(%%V\\*).DO.(\r\n"
6d080 20 2e 0a 22 20 20 20 20 20 20 20 20 73 65 74 20 44 49 52 53 3d 21 44 49 52 53 21 3b 25 25 7e 66 ..."........set.DIRS=!DIRS!;%%~f
6d0a0 50 5c 72 5c 6e 22 20 2e 0a 22 20 20 20 20 29 5c 72 5c 6e 22 20 2e 0a 22 29 5c 72 5c 6e 22 20 2e P\r\n"..."....)\r\n"...")\r\n"..
6d0c0 0a 22 70 68 70 2e 65 78 65 20 2d 64 20 69 6e 63 6c 75 64 65 5f 70 61 74 68 3d 21 44 49 52 53 21 ."php.exe.-d.include_path=!DIRS!
6d0e0 20 25 2a 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 .%*\r\n";.}..private.function.ge
6d100 6e 65 72 61 74 65 55 6e 69 78 79 50 68 70 50 72 6f 78 79 43 6f 64 65 28 29 0a 7b 0a 24 62 69 6e nerateUnixyPhpProxyCode().{.$bin
6d120 54 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 ToVendor.=.$this->filesystem->fi
6d140 6e 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 ndShortestPath($this->binDir,.$t
6d160 68 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 his->vendorDir,.true);..return."
6d180 23 21 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 73 68 5c 6e 22 2e 0a 22 53 52 43 5f 44 49 52 3d 60 #!/usr/bin/env.sh\n".."SRC_DIR=`
6d1a0 70 77 64 60 5c 6e 22 2e 0a 22 42 49 4e 5f 44 49 52 3d 60 64 69 72 6e 61 6d 65 20 24 30 60 5c 6e pwd`\n".."BIN_DIR=`dirname.$0`\n
6d1c0 22 2e 0a 22 56 45 4e 44 4f 52 5f 44 49 52 3d 5c 24 42 49 4e 5f 44 49 52 2f 22 2e 65 73 63 61 70 ".."VENDOR_DIR=\$BIN_DIR/".escap
6d1e0 65 73 68 65 6c 6c 61 72 67 28 24 62 69 6e 54 6f 56 65 6e 64 6f 72 29 2e 22 5c 6e 22 2e 0a 22 44 eshellarg($binToVendor)."\n".."D
6d200 49 52 53 3d 5c 22 5c 22 5c 6e 22 2e 0a 22 66 6f 72 20 76 65 6e 64 6f 72 20 69 6e 20 5c 24 56 45 IRS=\"\"\n".."for.vendor.in.\$VE
6d220 4e 44 4f 52 5f 44 49 52 2f 2a 3b 20 64 6f 5c 6e 22 2e 0a 22 20 20 20 20 69 66 20 5b 20 2d 64 20 NDOR_DIR/*;.do\n".."....if.[.-d.
6d240 5c 22 5c 24 76 65 6e 64 6f 72 5c 22 20 5d 3b 20 74 68 65 6e 5c 6e 22 2e 0a 22 20 20 20 20 20 20 \"\$vendor\".];.then\n".."......
6d260 20 20 66 6f 72 20 70 61 63 6b 61 67 65 20 69 6e 20 5c 24 76 65 6e 64 6f 72 2f 2a 3b 20 64 6f 5c ..for.package.in.\$vendor/*;.do\
6d280 6e 22 2e 0a 22 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 5b 20 2d 64 20 5c 22 5c 24 70 61 63 n".."............if.[.-d.\"\$pac
6d2a0 6b 61 67 65 5c 22 20 5d 3b 20 74 68 65 6e 5c 6e 22 2e 0a 22 20 20 20 20 20 20 20 20 20 20 20 20 kage\".];.then\n".."............
6d2c0 20 20 20 20 44 49 52 53 3d 5c 22 5c 24 7b 44 49 52 53 7d 3a 5c 24 7b 70 61 63 6b 61 67 65 7d 5c ....DIRS=\"\${DIRS}:\${package}\
6d2e0 22 5c 6e 22 2e 0a 22 20 20 20 20 20 20 20 20 20 20 20 20 66 69 5c 6e 22 2e 0a 22 20 20 20 20 20 "\n".."............fi\n"..".....
6d300 20 20 20 64 6f 6e 65 5c 6e 22 2e 0a 22 20 20 20 20 66 69 5c 6e 22 2e 0a 22 64 6f 6e 65 5c 6e 22 ...done\n".."....fi\n".."done\n"
6d320 2e 0a 22 70 68 70 20 2d 64 20 69 6e 63 6c 75 64 65 5f 70 61 74 68 3d 5c 22 2e 5c 24 44 49 52 53 .."php.-d.include_path=\".\$DIRS
6d340 5c 22 20 24 40 5c 6e 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 \".$@\n";.}.}.<?php............n
6d360 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 73 amespace.Composer\Installer;..us
6d380 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 65 e.Composer\Composer;.use.Compose
6d3a0 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 52 r\IO\IOInterface;.use.Composer\R
6d3c0 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
6d3e0 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 5c 50 61 63 erface;.use.Composer\Package\Pac
6d400 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 6c 75 67 kageInterface;........class.Plug
6d420 69 6e 49 6e 73 74 61 6c 6c 65 72 20 65 78 74 65 6e 64 73 20 4c 69 62 72 61 72 79 49 6e 73 74 61 inInstaller.extends.LibraryInsta
6d440 6c 6c 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 ller.{.private.$installationMana
6d460 67 65 72 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 ger;.........public.function.__c
6d480 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 6d 70 6f 73 onstruct(IOInterface.$io,.Compos
6d4a0 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 74 79 70 65 20 3d 20 27 6c 69 62 72 61 72 79 27 29 er.$composer,.$type.=.'library')
6d4c0 0a 7b 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 6d .{.parent::__construct($io,.$com
6d4e0 70 6f 73 65 72 2c 20 27 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 27 29 3b 0a 24 74 68 69 73 poser,.'composer-plugin');.$this
6d500 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 63 6f 6d 70 6f 73 65 ->installationManager.=.$compose
6d520 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 29 3b 0a 7d 0a 0a r->getInstallationManager();.}..
6d540 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 63 ...public.function.supports($pac
6d560 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 20 kageType).{.return.$packageType.
6d580 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 61 63 6b 61 67 ===.'composer-plugin'.||.$packag
6d5a0 65 54 79 70 65 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 65 72 2d 69 6e 73 74 61 6c 6c 65 72 27 3b 0a eType.===.'composer-installer';.
6d5c0 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 6e }.....public.function.install(In
6d5e0 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
6d600 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 24 ,.PackageInterface.$package).{.$
6d620 65 78 74 72 61 20 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 extra.=.$package->getExtra();.if
6d640 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 72 6f .(empty($extra['class'])).{.thro
6d660 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 28 w.new.\UnexpectedValueException(
6d680 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 70 61 63 6b 61 'Error.while.installing.'.$packa
6d6a0 67 65 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 2d ge->getPrettyName().',.composer-
6d6c0 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 6c plugin.packages.should.have.a.cl
6d6e0 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 74 ass.defined.in.their.extra.key.t
6d700 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 69 6e 73 74 61 o.be.usable.');.}..parent::insta
6d720 6c 6c 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 ll($repo,.$package);.$this->comp
6d740 6f 73 65 72 2d 3e 67 65 74 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 28 29 2d 3e 72 65 67 69 73 74 oser->getPluginManager()->regist
6d760 65 72 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 0a 0a erPackage($package,.true);.}....
6d780 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
6d7a0 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
6d7c0 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
6d7e0 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 24 65 78 74 72 61 20 3d 20 24 74 61 72 terface.$target).{.$extra.=.$tar
6d800 67 65 74 2d 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 get->getExtra();.if.(empty($extr
6d820 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 5c 55 6e 65 78 70 65 a['class'])).{.throw.new.\Unexpe
6d840 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 20 77 68 69 6c 65 20 ctedValueException('Error.while.
6d860 69 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 24 74 61 72 67 65 74 2d 3e 67 65 74 50 72 65 74 74 79 4e installing.'.$target->getPrettyN
6d880 61 6d 65 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 ame().',.composer-plugin.package
6d8a0 73 20 73 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 s.should.have.a.class.defined.in
6d8c0 20 74 68 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 .their.extra.key.to.be.usable.')
6d8e0 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 75 70 64 61 74 65 28 24 72 65 70 6f 2c 20 24 69 6e 69 74 ;.}..parent::update($repo,.$init
6d900 69 61 6c 2c 20 24 74 61 72 67 65 74 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2d 3e ial,.$target);.$this->composer->
6d920 67 65 74 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 28 29 2d 3e 72 65 67 69 73 74 65 72 50 61 63 6b getPluginManager()->registerPack
6d940 61 67 65 28 24 74 61 72 67 65 74 2c 20 74 72 75 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a age($target,.true);.}.}.<?php...
6d960 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
6d980 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 50 61 63 aller;..use.Composer\Package\Pac
6d9a0 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 44 6f 77 6e kageInterface;.use.Composer\Down
6d9c0 6c 6f 61 64 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 loader\DownloadManager;.use.Comp
6d9e0 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 70 6f 73 69 74 oser\Repository\InstalledReposit
6da00 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 55 74 69 6c 5c oryInterface;.use.Composer\Util\
6da20 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 72 6f 6a 65 63 74 Filesystem;........class.Project
6da40 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
6da60 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 3b 0a terface.{.private.$installPath;.
6da80 70 72 69 76 61 74 65 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 70 72 69 76 61 74 private.$downloadManager;.privat
6daa0 65 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 74 69 6f 6e 20 e.$filesystem;..public.function.
6dac0 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2c 20 44 6f 77 6e 6c 6f __construct($installPath,.Downlo
6dae0 61 64 4d 61 6e 61 67 65 72 20 24 64 6d 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 50 adManager.$dm).{.$this->installP
6db00 61 74 68 20 3d 20 72 74 72 69 6d 28 73 74 72 74 72 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2c 20 ath.=.rtrim(strtr($installPath,.
6db20 27 5c 5c 27 2c 20 27 2f 27 29 2c 20 27 2f 27 29 2e 27 2f 27 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 '\\',.'/'),.'/').'/';.$this->dow
6db40 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 3d 20 24 64 6d 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 nloadManager.=.$dm;.$this->files
6db60 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a ystem.=.new.Filesystem;.}.......
6db80 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 63 6b 61 .public.function.supports($packa
6dba0 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 70 75 62 geType).{.return.true;.}.....pub
6dbc0 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 61 6c 6c lic.function.isInstalled(Install
6dbe0 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 63 edRepositoryInterface.$repo,.Pac
6dc00 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 75 72 6e kageInterface.$package).{.return
6dc20 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 69 6e .false;.}.....public.function.in
6dc40 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 72 66 61 stall(InstalledRepositoryInterfa
6dc60 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 63 6b ce.$repo,.PackageInterface.$pack
6dc80 61 67 65 29 0a 7b 0a 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 69 6e 73 age).{.$installPath.=.$this->ins
6dca0 74 61 6c 6c 50 61 74 68 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 69 6e 73 74 61 tallPath;.if.(file_exists($insta
6dcc0 6c 6c 50 61 74 68 29 20 26 26 20 21 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 69 llPath).&&.!$this->filesystem->i
6dce0 73 44 69 72 45 6d 70 74 79 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 sDirEmpty($installPath)).{.throw
6dd00 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("
6dd20 50 72 6f 6a 65 63 74 20 64 69 72 65 63 74 6f 72 79 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 69 Project.directory.$installPath.i
6dd40 73 20 6e 6f 74 20 65 6d 70 74 79 2e 22 29 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 69 s.not.empty.");.}.if.(!is_dir($i
6dd60 6e 73 74 61 6c 6c 50 61 74 68 29 29 20 7b 0a 6d 6b 64 69 72 28 24 69 6e 73 74 61 6c 6c 50 61 74 nstallPath)).{.mkdir($installPat
6dd80 68 2c 20 30 37 37 37 2c 20 74 72 75 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 h,.0777,.true);.}.$this->downloa
6dda0 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 24 69 6e dManager->download($package,.$in
6ddc0 73 74 61 6c 6c 50 61 74 68 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f stallPath);.}.....public.functio
6dde0 6e 20 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 n.update(InstalledRepositoryInte
6de00 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 69 rface.$repo,.PackageInterface.$i
6de20 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 74 nitial,.PackageInterface.$target
6de40 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 6d 65 6e 74 45 78 ).{.throw.new.\InvalidArgumentEx
6de60 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 7d 0a 0a 0a 0a 0a ception("not.supported");.}.....
6de80 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
6dea0 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
6dec0 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 74 68 72 6f 77 ckageInterface.$package).{.throw
6dee0 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("
6df00 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 22 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 not.supported");.}........public
6df20 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 61 67 65 .function.getInstallPath(Package
6df40 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 75 72 6e 20 24 74 68 Interface.$package).{.return.$th
6df60 69 73 2d 3e 69 6e 73 74 61 6c 6c 50 61 74 68 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a is->installPath;.}.}.<?php......
6df80 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 4a 73 6f 6e 3b 0a 0a ......namespace.Composer\Json;..
6dfa0 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 75 73 65 20 53 65 use.JsonSchema\Validator;.use.Se
6dfc0 6c 64 5c 4a 73 6f 6e 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 ld\JsonLint\JsonParser;.use.Seld
6dfe0 5c 4a 73 6f 6e 4c 69 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 \JsonLint\ParsingException;.use.
6e000 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 0a Composer\Util\RemoteFilesystem;.
6e020 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 65 use.Composer\IO\IOInterface;.use
6e040 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 78 .Composer\Downloader\TransportEx
6e060 63 65 70 74 69 6f 6e 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 ception;........class.JsonFile.{
6e080 0a 63 6f 6e 73 74 20 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 .const.LAX_SCHEMA.=.1;.const.STR
6e0a0 49 43 54 5f 53 43 48 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 ICT_SCHEMA.=.2;..const.JSON_UNES
6e0c0 43 41 50 45 44 5f 53 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 CAPED_SLASHES.=.64;.const.JSON_P
6e0e0 52 45 54 54 59 5f 50 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 RETTY_PRINT.=.128;.const.JSON_UN
6e100 45 53 43 41 50 45 44 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 ESCAPED_UNICODE.=.256;..private.
6e120 24 70 61 74 68 3b 0a 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 $path;.private.$rfs;.private.$io
6e140 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 6e 73 ;.........public.function.__cons
6e160 74 72 75 63 74 28 24 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 truct($path,.RemoteFilesystem.$r
6e180 66 73 20 3d 20 6e 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 fs.=.null,.IOInterface.$io.=.nul
6e1a0 6c 29 0a 7b 0a 24 74 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 l).{.$this->path.=.$path;..if.(n
6e1c0 75 6c 6c 20 3d 3d 3d 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 ull.===.$rfs.&&.preg_match('{^ht
6e1e0 74 70 73 3f 3a 2f 2f 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 tps?://}i',.$path)).{.throw.new.
6e200 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 68 74 74 70 20 \InvalidArgumentException('http.
6e220 75 72 6c 73 20 72 65 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 urls.require.a.RemoteFilesystem.
6e240 69 6e 73 74 61 6e 63 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 instance.to.be.passed');.}.$this
6e260 2d 3e 72 66 73 20 3d 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 ->rfs.=.$rfs;.$this->io.=.$io;.}
6e280 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 74 68 28 29 0a 7b .....public.function.getPath().{
6e2a0 0a 72 65 74 75 72 6e 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 .return.$this->path;.}.......pub
6e2c0 6c 69 63 20 66 75 6e 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 lic.function.exists().{.return.i
6e2e0 73 5f 66 69 6c 65 28 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 s_file($this->path);.}........pu
6e300 62 6c 69 63 20 66 75 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 blic.function.read().{.try.{.if.
6e320 28 24 74 68 69 73 2d 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 ($this->rfs).{.$json.=.$this->rf
6e340 73 2d 3e 67 65 74 43 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 s->getContents($this->path,.$thi
6e360 73 2d 3e 70 61 74 68 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 s->path,.false);.}.else.{.if.($t
6e380 68 69 73 2d 3e 69 6f 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 his->io.&&.$this->io->isDebug())
6e3a0 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 69 6e .{.$this->io->writeError('Readin
6e3c0 67 20 27 20 2e 20 24 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 g.'...$this->path);.}.$json.=.fi
6e3e0 6c 65 5f 67 65 74 5f 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 le_get_contents($this->path);.}.
6e400 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 20 }.catch.(TransportException.$e).
6e420 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 24 65 {.throw.new.\RuntimeException($e
6e440 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 20 63 61 74 63 68 20 ->getMessage(),.0,.$e);.}.catch.
6e460 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 5c 52 75 6e (\Exception.$e).{.throw.new.\Run
6e480 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 61 64 20 27 2e timeException('Could.not.read.'.
6e4a0 24 74 68 69 73 2d 3e 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 $this->path."\n\n".$e->getMessag
6e4c0 65 28 29 29 3b 0a 7d 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 e());.}..return.static::parseJso
6e4e0 6e 28 24 6a 73 6f 6e 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 n($json,.$this->path);.}........
6e500 0a 70 75 62 6c 69 63 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 .public.function.write(array.$ha
6e520 73 68 2c 20 24 6f 70 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 sh,.$options.=.448).{.$dir.=.dir
6e540 6e 61 6d 65 28 24 74 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 name($this->path);.if.(!is_dir($
6e560 64 69 72 29 29 20 7b 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 dir)).{.if.(file_exists($dir)).{
6e580 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
6e5a0 74 69 6f 6e 28 0a 24 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 tion(.$dir.'.exists.and.is.not.a
6e5c0 20 64 69 72 65 63 74 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 .directory.'.);.}.if.(!@mkdir($d
6e5e0 69 72 2c 20 30 37 37 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 ir,.0777,.true)).{.throw.new.\Un
6e600 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 64 69 72 2e 27 20 64 expectedValueException(.$dir.'.d
6e620 6f 65 73 20 6e 6f 74 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 oes.not.exist.and.could.not.be.c
6e640 72 65 61 74 65 64 2e 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 reated.'.);.}.}..$retries.=.3;.w
6e660 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 66 69 6c 65 5f 70 hile.($retries--).{.try.{.file_p
6e680 75 74 5f 63 6f 6e 74 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 ut_contents($this->path,.static:
6e6a0 3a 65 6e 63 6f 64 65 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 :encode($hash,.$options)..($opti
6e6c0 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 4e 54 20 3f 20 ons.&.self::JSON_PRETTY_PRINT.?.
6e6e0 22 5c 6e 22 20 3a 20 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 "\n".:.''));.break;.}.catch.(\Ex
6e700 63 65 70 74 69 6f 6e 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 ception.$e).{.if.($retries).{.us
6e720 6c 65 65 70 28 35 30 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 leep(500000);.continue;.}..throw
6e740 20 24 65 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 .$e;.}.}.}.........public.functi
6e760 6f 6e 20 76 61 6c 69 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 on.validateSchema($schema.=.self
6e780 3a 3a 53 54 52 49 43 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 ::STRICT_SCHEMA).{.$content.=.fi
6e7a0 6c 65 5f 67 65 74 5f 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 le_get_contents($this->path);.$d
6e7c0 61 74 61 20 3d 20 6a 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 ata.=.json_decode($content);..if
6e7e0 20 28 6e 75 6c 6c 20 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 .(null.===.$data.&&.'null'.!==.$
6e800 63 6f 6e 74 65 6e 74 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 content).{.self::validateSyntax(
6e820 24 63 6f 6e 74 65 6e 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 $content,.$this->path);.}..$sche
6e840 6d 61 46 69 6c 65 20 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 maFile.=.__DIR__...'/../../../re
6e860 73 2f 63 6f 6d 70 6f 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 s/composer-schema.json';.$schema
6e880 44 61 74 61 20 3d 20 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 Data.=.json_decode(file_get_cont
6e8a0 65 6e 74 73 28 24 73 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 ents($schemaFile));..if.($schema
6e8c0 20 3d 3d 3d 20 73 65 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 .===.self::LAX_SCHEMA).{.$schema
6e8e0 44 61 74 61 2d 3e 61 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 Data->additionalProperties.=.tru
6e900 65 3b 0a 24 73 63 68 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 e;.$schemaData->required.=.array
6e920 28 29 3b 0a 7d 0a 0a 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 ();.}..$validator.=.new.Validato
6e940 72 28 29 3b 0a 24 76 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 r();.$validator->check($data,.$s
6e960 63 68 65 6d 61 44 61 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 chemaData);....if.(!$validator->
6e980 69 73 56 61 6c 69 64 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 isValid()).{.$errors.=.array();.
6e9a0 66 6f 72 65 61 63 68 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 foreach.((array).$validator->get
6e9c0 45 72 72 6f 72 73 28 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 Errors().as.$error).{.$errors[].
6e9e0 3d 20 28 24 65 72 72 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 =.($error['property'].?.$error['
6ea00 70 72 6f 70 65 72 74 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 property'].'.:.'.:.'').$error['m
6ea20 65 73 73 61 67 65 27 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 essage'];.}.throw.new.JsonValida
6ea40 74 69 6f 6e 45 78 63 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 tionException('"'.$this->path.'"
6ea60 20 64 6f 65 73 20 6e 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 .does.not.match.the.expected.JSO
6ea80 4e 20 73 63 68 65 6d 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 N.schema',.$errors);.}..return.t
6eaa0 72 75 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 rue;.}.........public.static.fun
6eac0 63 74 69 6f 6e 20 65 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 ction.encode($data,.$options.=.4
6eae0 34 38 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 35 30 34 30 48).{.if.(PHP_VERSION_ID.>=.5040
6eb00 30 29 20 7b 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 61 2c 20 0).{.$json.=.json_encode($data,.
6eb20 24 6f 70 74 69 6f 6e 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 $options);.if.(false.===.$json).
6eb40 7b 0a 73 65 6c 66 3a 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 {.self::throwEncodeError(json_la
6eb60 73 74 5f 65 72 72 6f 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 st_error());.}....if.(PHP_VERSIO
6eb80 4e 5f 49 44 20 3c 20 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 N_ID.<.50428.||.(PHP_VERSION_ID.
6eba0 3e 3d 20 35 30 35 30 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 >=.50500.&&.PHP_VERSION_ID.<.505
6ebc0 31 32 29 20 7c 7c 20 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 12).||.(defined('JSON_C_VERSION'
6ebe0 29 20 26 26 20 76 65 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 ).&&.version_compare(phpversion(
6ec00 27 6a 73 6f 6e 27 29 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 'json'),.'1.3.6',.'<'))).{.$json
6ec20 20 3d 20 70 72 65 67 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 .=.preg_replace('/\[\s+\]/',.'[]
6ec40 27 2c 20 24 6a 73 6f 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 ',.$json);.$json.=.preg_replace(
6ec60 27 2f 5c 7b 5c 73 2b 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 '/\{\s+\}/',.'{}',.$json);.}..re
6ec80 74 75 72 6e 20 24 6a 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 turn.$json;.}..$json.=.json_enco
6eca0 64 65 28 24 64 61 74 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 de($data);.if.(false.===.$json).
6ecc0 7b 0a 73 65 6c 66 3a 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 {.self::throwEncodeError(json_la
6ece0 73 74 5f 65 72 72 6f 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 st_error());.}..$prettyPrint.=.(
6ed00 62 6f 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 50 52 45 bool).($options.&.self::JSON_PRE
6ed20 54 54 59 5f 50 52 49 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 TTY_PRINT);.$unescapeUnicode.=.(
6ed40 62 6f 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 bool).($options.&.self::JSON_UNE
6ed60 53 43 41 50 45 44 5f 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 SCAPED_UNICODE);.$unescapeSlashe
6ed80 73 20 3d 20 28 62 6f 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 s.=.(bool).($options.&.self::JSO
6eda0 4e 5f 55 4e 45 53 43 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 N_UNESCAPED_SLASHES);..if.(!$pre
6edc0 74 74 79 50 72 69 6e 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 ttyPrint.&&.!$unescapeUnicode.&&
6ede0 20 21 24 75 6e 65 73 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 .!$unescapeSlashes).{.return.$js
6ee00 6f 6e 3b 0a 7d 0a 0a 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 on;.}..$result.=.JsonFormatter::
6ee20 66 6f 72 6d 61 74 28 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 format($json,.$unescapeUnicode,.
6ee40 24 75 6e 65 73 63 61 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 $unescapeSlashes);..return.$resu
6ee60 6c 74 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 20 66 75 6e 63 lt;.}........private.static.func
6ee80 74 69 6f 6e 20 74 68 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 tion.throwEncodeError($code).{.s
6eea0 77 69 74 63 68 20 28 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 witch.($code).{.case.JSON_ERROR_
6eec0 44 45 50 54 48 3a 0a 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 DEPTH:.$msg.=.'Maximum.stack.dep
6eee0 74 68 20 65 78 63 65 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 th.exceeded';.break;.case.JSON_E
6ef00 52 52 4f 52 5f 53 54 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 RROR_STATE_MISMATCH:.$msg.=.'Und
6ef20 65 72 66 6c 6f 77 20 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 erflow.or.the.modes.mismatch';.b
6ef40 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 4c 5f 43 48 41 52 3a reak;.case.JSON_ERROR_CTRL_CHAR:
6ef60 0a 24 6d 73 67 20 3d 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 .$msg.=.'Unexpected.control.char
6ef80 61 63 74 65 72 20 66 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 acter.found';.break;.case.JSON_E
6efa0 52 52 4f 52 5f 55 54 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 RROR_UTF8:.$msg.=.'Malformed.UTF
6efc0 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 65 63 -8.characters,.possibly.incorrec
6efe0 74 6c 79 20 65 6e 63 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 tly.encoded';.break;.default:.$m
6f000 73 67 20 3d 20 27 55 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 sg.=.'Unknown.error';.}..throw.n
6f020 65 77 20 5c 52 75 6e 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 ew.\RuntimeException('JSON.encod
6f040 69 6e 67 20 66 61 69 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 ing.failed:.'.$msg);.}..........
6f060 70 75 62 6c 69 63 20 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 public.static.function.parseJson
6f080 28 24 6a 73 6f 6e 2c 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 ($json,.$file.=.null).{.if.(null
6f0a0 20 3d 3d 3d 20 24 6a 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 .===.$json).{.return;.}.$data.=.
6f0c0 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 69 66 20 28 6e 75 json_decode($json,.true);.if.(nu
6f0e0 6c 6c 20 3d 3d 3d 20 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 ll.===.$data.&&.JSON_ERROR_NONE.
6f100 21 3d 3d 20 6a 73 6f 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 !==.json_last_error()).{.self::v
6f120 61 6c 69 64 61 74 65 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 alidateSyntax($json,.$file);.}..
6f140 72 65 74 75 72 6e 20 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 return.$data;.}............prote
6f160 63 74 65 64 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 53 79 6e cted.static.function.validateSyn
6f180 74 61 78 28 24 6a 73 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 tax($json,.$file.=.null).{.$pars
6f1a0 65 72 20 3d 20 6e 65 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 er.=.new.JsonParser();.$result.=
6f1c0 20 24 70 61 72 73 65 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 .$parser->lint($json);.if.(null.
6f1e0 3d 3d 3d 20 24 72 65 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 ===.$result).{.if.(defined('JSON
6f200 5f 45 52 52 4f 52 5f 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 _ERROR_UTF8').&&.JSON_ERROR_UTF8
6f220 20 3d 3d 3d 20 6a 73 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 .===.json_last_error()).{.throw.
6f240 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 22 new.\UnexpectedValueException('"
6f260 27 2e 24 66 69 6c 65 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 '.$file.'".is.not.UTF-8,.could.n
6f280 6f 74 20 70 61 72 73 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 ot.parse.as.JSON');.}..return.tr
6f2a0 75 65 3b 0a 7d 0a 0a 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 ue;.}..throw.new.ParsingExceptio
6f2c0 6e 28 27 22 27 2e 24 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 n('"'.$file.'".does.not.contain.
6f2e0 76 61 6c 69 64 20 4a 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 valid.JSON'."\n".$result->getMes
6f300 73 61 67 65 28 29 2c 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 sage(),.$result->getDetails());.
6f320 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
6f340 6f 6d 70 6f 73 65 72 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 omposer\Json;..........class.Jso
6f360 6e 46 6f 72 6d 61 74 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 nFormatter.{.............public.
6f380 73 74 61 74 69 63 20 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 static.function.format($json,.$u
6f3a0 6e 65 73 63 61 70 65 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 nescapeUnicode,.$unescapeSlashes
6f3c0 29 0a 7b 0a 24 72 65 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 ).{.$result.=.'';.$pos.=.0;.$str
6f3e0 4c 65 6e 20 3d 20 73 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 Len.=.strlen($json);.$indentStr.
6f400 3d 20 27 20 20 20 20 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 =.'....';.$newLine.=."\n";.$outO
6f420 66 51 75 6f 74 65 73 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 fQuotes.=.true;.$buffer.=.'';.$n
6f440 6f 65 73 63 61 70 65 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 oescape.=.true;..for.($i.=.0;.$i
6f460 20 3c 20 24 73 74 72 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 .<.$strLen;.$i++).{...$char.=.su
6f480 62 73 74 72 28 24 6a 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 bstr($json,.$i,.1);....if.('"'.=
6f4a0 3d 3d 20 24 63 68 61 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 ==.$char.&&.$noescape).{.$outOfQ
6f4c0 75 6f 74 65 73 20 3d 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 uotes.=.!$outOfQuotes;.}..if.(!$
6f4e0 6f 75 74 4f 66 51 75 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 outOfQuotes).{.$buffer..=.$char;
6f500 0a 24 6e 6f 65 73 63 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 .$noescape.=.'\\'.===.$char.?.!$
6f520 6e 6f 65 73 63 61 70 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 noescape.:.true;.continue;.}.els
6f540 65 69 66 20 28 27 27 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 eif.(''.!==.$buffer).{.if.($unes
6f560 63 61 70 65 53 6c 61 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 capeSlashes).{.$buffer.=.str_rep
6f580 6c 61 63 65 28 27 5c 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 lace('\\/',.'/',.$buffer);.}..if
6f5a0 20 28 24 75 6e 65 73 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 .($unescapeUnicode.&&.function_e
6f5c0 78 69 73 74 73 28 27 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 xists('mb_convert_encoding')).{.
6f5e0 0a 20 24 62 75 66 66 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 ..$buffer.=.preg_replace_callbac
6f600 6b 28 27 2f 28 5c 5c 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 k('/(\\\\+)u([0-9a-f]{4})/i',.fu
6f620 6e 63 74 69 6f 6e 20 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 nction.($match).{.$l.=.strlen($m
6f640 61 74 63 68 5b 31 5d 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 atch[1]);..if.($l.%.2).{.return.
6f660 73 74 72 5f 72 65 70 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 str_repeat('\\',.$l.-.1)...mb_co
6f680 6e 76 65 72 74 5f 65 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 nvert_encoding(.pack('H*',.$matc
6f6a0 68 5b 32 5d 29 2c 0a 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 h[2]),.'UTF-8',.'UCS-2BE'.);.}..
6f6c0 72 65 74 75 72 6e 20 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 return.$match[0];.},.$buffer);.}
6f6e0 0a 0a 24 72 65 73 75 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 ..$result..=.$buffer.$char;.$buf
6f700 66 65 72 20 3d 20 27 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 fer.=.'';.continue;.}..if.(':'.=
6f720 3d 3d 20 24 63 68 61 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 ==.$char).{...$char..=.'.';.}.el
6f740 73 65 69 66 20 28 28 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 seif.(('}'.===.$char.||.']'.===.
6f760 24 63 68 61 72 29 29 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 $char)).{.$pos--;.$prevChar.=.su
6f780 62 73 74 72 28 24 6a 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 bstr($json,.$i.-.1,.1);..if.('{'
6f7a0 20 21 3d 3d 20 24 70 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 .!==.$prevChar.&&.'['.!==.$prevC
6f7c0 68 61 72 29 20 7b 0a 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 har).{.....$result..=.$newLine;.
6f7e0 66 6f 72 20 28 24 6a 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 for.($j.=.0;.$j.<.$pos;.$j++).{.
6f800 24 72 65 73 75 6c 74 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 $result..=.$indentStr;.}.}.else.
6f820 7b 0a 0a 20 24 72 65 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 {...$result.=.rtrim($result);.}.
6f840 7d 0a 0a 24 72 65 73 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 }..$result..=.$char;......if.(',
6f860 27 20 3d 3d 3d 20 24 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 '.===.$char.||.'{'.===.$char.||.
6f880 27 5b 27 20 3d 3d 3d 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 '['.===.$char).{.$result..=.$new
6f8a0 4c 69 6e 65 3b 0a 0a 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 Line;..if.('{'.===.$char.||.'['.
6f8c0 3d 3d 3d 20 24 63 68 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 ===.$char).{.$pos++;.}..for.($j.
6f8e0 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 20 =.0;.$j.<.$pos;.$j++).{.$result.
6f900 2e 3d 20 24 69 6e 64 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 .=.$indentStr;.}.}.}..return.$re
6f920 73 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 65 73 sult;.}.}.<?php............names
6f940 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 43 6f 6d 70 6f 73 65 pace.Composer\Json;..use.Compose
6f960 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 3b r\Repository\PlatformRepository;
6f980 0a 0a 0a 0a 0a 63 6c 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 .....class.JsonManipulator.{.pri
6f9a0 76 61 74 65 20 73 74 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 vate.static.$RECURSE_BLOCKS;.pri
6f9c0 76 61 74 65 20 73 74 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 vate.static.$RECURSE_ARRAYS;.pri
6f9e0 76 61 74 65 20 73 74 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 vate.static.$JSON_VALUE;.private
6fa00 20 73 74 61 74 69 63 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 .static.$JSON_STRING;..private.$
6fa20 63 6f 6e 74 65 6e 74 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 contents;.private.$newline;.priv
6fa40 61 74 65 20 24 69 6e 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 ate.$indent;..public.function.__
6fa60 63 6f 6e 73 74 72 75 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 construct($contents).{.if.(!self
6fa80 3a 3a 24 52 45 43 55 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 ::$RECURSE_BLOCKS).{.self::$RECU
6faa0 52 53 45 5f 42 4c 4f 43 4b 53 20 3d 20 27 28 3f 3a 5b 5e 7b 7d 5d 2a 7c 5c 7b 28 3f 3a 5b 5e 7b RSE_BLOCKS.=.'(?:[^{}]*|\{(?:[^{
6fac0 7d 5d 2a 7c 5c 7b 28 3f 3a 5b 5e 7b 7d 5d 2a 7c 5c 7b 28 3f 3a 5b 5e 7b 7d 5d 2a 7c 5c 7b 5b 5e }]*|\{(?:[^{}]*|\{(?:[^{}]*|\{[^
6fae0 7b 7d 5d 2a 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 {}]*\})*\})*\})*\})*';.self::$RE
6fb00 43 55 52 53 45 5f 41 52 52 41 59 53 20 3d 20 27 28 3f 3a 5b 5e 5c 5d 5d 2a 7c 5c 5b 28 3f 3a 5b CURSE_ARRAYS.=.'(?:[^\]]*|\[(?:[
6fb20 5e 5c 5d 5d 2a 7c 5c 5b 28 3f 3a 5b 5e 5c 5d 5d 2a 7c 5c 5b 28 3f 3a 5b 5e 5c 5d 5d 2a 7c 5c 5b ^\]]*|\[(?:[^\]]*|\[(?:[^\]]*|\[
6fb40 5b 5e 5c 5d 5d 2a 5c 5d 29 2a 5c 5d 29 2a 5c 5d 29 2a 5c 5d 7c 27 2e 73 65 6c 66 3a 3a 24 52 45 [^\]]*\])*\])*\])*\]|'.self::$RE
6fb60 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 4e 5f 53 CURSE_BLOCKS.')*';.self::$JSON_S
6fb80 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 31 66 5c TRING.=.'"(?:[^\0-\x09\x0a-\x1f\
6fba0 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 75 5b 61 \\\"]+|\\\\["bfnrt/\\\\]|\\\\u[a
6fbc0 2d 66 41 2d 46 30 2d 39 5d 7b 34 7d 29 2a 22 27 3b 0a 73 65 6c 66 3a 3a 24 4a 53 4f 4e 5f 56 41 -fA-F0-9]{4})*"';.self::$JSON_VA
6fbe0 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 66 61 6c 73 LUE.=.'(?:[0-9.]+|null|true|fals
6fc00 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 2e 73 65 6c e|'.self::$JSON_STRING.'|\['.sel
6fc20 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 65 6c 66 3a f::$RECURSE_ARRAYS.'\]|\{'.self:
6fc40 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 63 6f 6e 74 :$RECURSE_BLOCKS.'\})';.}..$cont
6fc60 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 24 63 6f 6e ents.=.trim($contents);.if.($con
6fc80 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 27 7b 7d 27 tents.===.'').{.$contents.=.'{}'
6fca0 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 5e 5c 7b 28 ;.}.if.(!$this->pregMatch('#^\{(
6fcc0 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 6f 77 20 6e .*)\}$#s',.$contents)).{.throw.n
6fce0 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 68 ew.\InvalidArgumentException('Th
6fd00 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 74 20 28 7b e.json.file.must.be.an.object.({
6fd20 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 73 65 20 21 })');.}.$this->newline.=.false.!
6fd40 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 20 3f 20 22 ==.strpos($contents,."\r\n").?."
6fd60 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 73 20 3d 20 \r\n".:."\n";.$this->contents.=.
6fd80 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 74 68 69 73 $contents.===.'{}'.?.'{'...$this
6fda0 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 0a 24 74 68 ->newline...'}'.:.$contents;.$th
6fdc0 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 62 6c 69 63 is->detectIndenting();.}..public
6fde0 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 74 75 72 6e .function.getContents().{.return
6fe00 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 77 6c 69 6e .$this->contents...$this->newlin
6fe20 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 6b 28 24 74 e;.}..public.function.addLink($t
6fe40 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 24 73 6f 72 ype,.$package,.$constraint,.$sor
6fe60 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 64 20 3d 20 tPackages.=.false).{.$decoded.=.
6fe80 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 6f 6e 74 65 JsonFile::parseJson($this->conte
6fea0 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 5b 24 74 79 nts);....if.(!isset($decoded[$ty
6fec0 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 6e 4b 65 79 pe])).{.return.$this->addMainKey
6fee0 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 6f 6e 73 74 ($type,.array($package.=>.$const
6ff00 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 5c 7b 5c 73 raint));.}..$regex.=.'{^(\s*\{\s
6ff20 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 2a 3a 5c 73 *(?:'.self::$JSON_STRING.'\s*:\s
6ff40 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 2a 29 2a 3f *'.self::$JSON_VALUE.'\s*,\s*)*?
6ff60 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 3a 65 6e 63 )'..'('.preg_quote(JsonFile::enc
6ff80 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 3a 3a 24 4a ode($type)).'\s*:\s*)('.self::$J
6ffa0 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 68 69 73 2d SON_VALUE.')(.*)}s';.if.(!$this-
6ffc0 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 6e 74 65 6e >pregMatch($regex,.$this->conten
6ffe0 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 65 3b 0a 7d ts,.$matches)).{.return.false;.}
70000 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 28 69 73 73 ..$links.=.$matches[3];..if.(iss
70020 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 29 29 20 7b et($decoded[$type][$package])).{
70040 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 63 65 28 27 ...$packageRegex.=.str_replace('
70060 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 63 6b 61 67 /',.'\\\\?/',.preg_quote($packag
70080 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 28 27 7b 22 e));...$links.=.preg_replace('{"
700a0 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 2e 73 65 6c '.$packageRegex.'"(\s*:\s*)'.sel
700c0 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 61 73 68 65 f::$JSON_STRING.'}i',.addcslashe
700e0 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 2e 27 24 7b s(JsonFile::encode($package).'${
70100 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 20 24 6c 69 1}"'.$constraint.'"',.'\\'),.$li
70120 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 65 67 4d 61 nks);.}.else.{.if.($this->pregMa
70140 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 73 2a 29 24 tch('#^\s*\{\s*\S+.*?(\s*\}\s*)$
70160 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 69 6e 6b 73 #s',.$links,.$match)).{...$links
70180 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 6f 74 65 28 .=.preg_replace(.'{'.preg_quote(
701a0 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 28 27 2c 27 $match[1]).'$}',.addcslashes(','
701c0 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 6e 64 65 6e ...$this->newline...$this->inden
701e0 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 3a 3a 65 6e t...$this->indent...JsonFile::en
70200 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 3a 3a 65 6e code($package).':.'.JsonFile::en
70220 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 5d 2c 20 27 code($constraint)...$match[1],.'
70240 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 6c 69 6e 6b \\'),.$links.);.}.else.{...$link
70260 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 74 68 69 73 s.=.'{'...$this->newline...$this
70280 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 73 6f 6e 46 ->indent...$this->indent...JsonF
702a0 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 73 6f 6e 46 ile::encode($package).':.'.JsonF
702c0 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 74 68 69 73 ile::encode($constraint)...$this
702e0 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 27 7d 27 3b ->newline...$this->indent...'}';
70300 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 61 67 65 73 .}.}..if.(true.===.$sortPackages
70320 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 6f 64 65 28 ).{.$requirements.=.json_decode(
70340 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 63 6b 61 67 $links,.true);.$this->sortPackag
70360 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 24 74 68 69 es($requirements);.$links.=.$thi
70380 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 0a 24 74 68 s->format($requirements);.}..$th
703a0 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 20 24 6d 61 is->contents.=.$matches[1]...$ma
703c0 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 5b 34 5d 3b tches[2]...$links...$matches[4];
703e0 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 65 ..return.true;.}.........private
70400 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 20 26 24 70 .function.sortPackages(array.&$p
70420 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 20 3d 20 66 ackages.=.array()).{.$prefix.=.f
70440 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 28 70 72 65 unction.($requirement).{.if.(pre
70460 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 4c 41 54 g_match(PlatformRepository::PLAT
70480 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 6d 65 6e 74 FORM_PACKAGE_REGEX,.$requirement
704a0 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 72 61 79 28 )).{.return.preg_replace(.array(
704c0 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 2f 27 2c 0a .'/^php/',.'/^hhvm/',.'/^ext/',.
704e0 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 0a 27 30 2d '/^lib/',.'/^\D/',.),.array(.'0-
70500 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 0a 27 34 2d $0',.'1-$0',.'2-$0',.'3-$0',.'4-
70520 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 65 74 75 72 $0',.),.$requirement.);.}..retur
70540 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 6f 72 74 28 n.'5-'.$requirement;.};..uksort(
70560 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 20 75 73 65 $packages,.function.($a,.$b).use
70580 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 70 28 24 70 .($prefix).{.return.strnatcmp($p
705a0 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 0a 7d 0a 0a refix($a),.$prefix($b));.});.}..
705c0 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
705e0 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 2d 3e 61 64 ame,.$config).{.return.$this->ad
70600 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 6d 65 2c 20 dSubNode('repositories',.$name,.
70620 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 20 72 65 6d $config);.}..public.function.rem
70640 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 6e 20 24 74 oveRepository($name).{.return.$t
70660 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 72 69 65 73 his->removeSubNode('repositories
70680 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 6e 20 61 64 ',.$name);.}..public.function.ad
706a0 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 29 0a 7b 0a dConfigSetting($name,.$value).{.
706c0 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 6e 66 69 67 return.$this->addSubNode('config
706e0 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 20 66 75 6e ',.$name,.$value);.}..public.fun
70700 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 61 6d 65 29 ction.removeConfigSetting($name)
70720 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 64 65 28 27 .{.return.$this->removeSubNode('
70740 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 75 6e 63 74 config',.$name);.}..public.funct
70760 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 61 6d 65 2c ion.addSubNode($mainNode,.$name,
70780 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 6c 65 3a 3a .$value).{.$decoded.=.JsonFile::
707a0 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 0a 24 73 75 parseJson($this->contents);..$su
707c0 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 6e bName.=.null;.if.(in_array($main
707e0 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 72 Node,.array('config',.'repositor
70800 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 65 ies')).&&.false.!==.strpos($name
70820 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 20 ,.'.')).{.list($name,.$subName).
70840 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 69 =.explode('.',.$name,.2);.}....i
70860 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 29 29 20 f.(!isset($decoded[$mainNode])).
70880 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 74 68 69 73 {.if.($subName.!==.null).{.$this
708a0 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 79 28 24 6e ->addMainKey($mainNode,.array($n
708c0 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 6c 75 65 29 ame.=>.array($subName.=>.$value)
708e0 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 65 79 28 24 ));.}.else.{.$this->addMainKey($
70900 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 6c 75 65 29 mainNode,.array($name.=>.$value)
70920 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 65 52 65 67 );.}..return.true;.}....$nodeReg
70940 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 24 4a 53 4f ex.=.'{^(\s*\{\s*(?:'.self::$JSO
70960 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 4f 4e 5f 56 N_STRING.'\s*:\s*'.self::$JSON_V
70980 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 5f 71 75 6f ALUE.'\s*,\s*)*?)'..'('.preg_quo
709a0 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 65 29 29 2e te(JsonFile::encode($mainNode)).
709c0 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 5f 42 4c 4f '\s*:\s*\{)('.self::$RECURSE_BLO
709e0 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 28 21 24 74 CKS.')(\})(.*)}s';.try.{.if.(!$t
70a00 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 74 68 69 73 his->pregMatch($nodeRegex,.$this
70a20 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 6e 20 66 61 ->contents,.$match)).{.return.fa
70a40 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 70 74 69 6f lse;.}.}.catch.(\RuntimeExceptio
70a60 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 3d 20 50 52 n.$e).{.if.($e->getCode().===.PR
70a80 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 72 65 74 75 EG_BACKTRACK_LIMIT_ERROR).{.retu
70aa0 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 69 6c 64 72 rn.false;.}.throw.$e;.}..$childr
70ac0 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 6e 5f 64 65 en.=.$match[3];....if.(!@json_de
70ae0 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 65 74 75 72 code('{'.$children.'}')).{.retur
70b00 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 0a 20 69 66 n.false;.}..$that.=.$this;....if
70b20 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 67 5f 71 75 .($this->pregMatch('{("'.preg_qu
70b40 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 3a 3a 24 4a ote($name).'"\s*:\s*)('.self::$J
70b60 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 6e 2c 20 24 SON_VALUE.')(,?)}',.$children,.$
70b80 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 5f 72 65 70 matches)).{.$children.=.preg_rep
70ba0 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 74 65 28 24 lace_callback('{("'.preg_quote($
70bc0 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 4f 4e 5f 56 name).'"\s*:\s*)('.self::$JSON_V
70be0 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 74 63 68 65 ALUE.')(,?)}',.function.($matche
70c00 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 6c 75 65 2c s).use.($name,.$subName,.$value,
70c20 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 75 6c 6c 29 .$that).{.if.($subName.!==.null)
70c40 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 74 63 68 65 .{.$curVal.=.json_decode($matche
70c60 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 65 5d 20 3d s[2],.true);.$curVal[$subName].=
70c80 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 0a 0a 72 65 .$value;.$value.=.$curVal;.}..re
70ca0 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 72 6d 61 74 turn.$matches[1]...$that->format
70cc0 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 2c 20 24 63 ($value,.1)...$matches[3];.},.$c
70ce0 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 72 65 67 4d hildren);.}.elseif.($this->pregM
70d00 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 72 65 6e 2c atch('#[^\s](\s*)$#',.$children,
70d20 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 20 6e 75 6c .$match)).{.if.($subName.!==.nul
70d40 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 20 3d 3e 20 l).{.$value.=.array($subName.=>.
70d60 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 65 67 5f 72 $value);.}....$children.=.preg_r
70d80 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 61 64 64 63 eplace(.'#'.$match[1].'$#',.addc
70da0 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 20 2e 20 24 slashes(','...$this->newline...$
70dc0 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
70de0 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 74 68 69 sonFile::encode($name).':.'.$thi
70e00 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 68 5b 31 5d s->format($value,.1)...$match[1]
70e20 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 20 7b 0a 69 ,.'\\'),.$children.);.}.else.{.i
70e40 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 75 65 20 3d f.($subName.!==.null).{.$value.=
70e60 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 7d 0a 0a 0a .array($subName.=>.$value);.}...
70e80 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 2e 20 24 74 .$children.=.$this->newline...$t
70ea0 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 73 his->indent...$this->indent...Js
70ec0 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 74 68 69 73 onFile::encode($name).':.'.$this
70ee0 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 72 65 6e 3b ->format($value,.1)...$children;
70f00 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 65 70 6c 61 .}..$this->contents.=.preg_repla
70f20 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 24 7b 31 7d ce($nodeRegex,.addcslashes('${1}
70f40 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 27 5c 5c 27 ${2}'.$children.'${4}${5}',.'\\'
70f60 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 20 74 72 75 ),.$this->contents);..return.tru
70f80 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 53 75 62 4e e;.}..public.function.removeSubN
70fa0 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 6f 64 65 64 ode($mainNode,.$name).{.$decoded
70fc0 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 6f .=.JsonFile::parseJson($this->co
70fe0 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 65 64 5b 24 ntents);....if.(empty($decoded[$
71000 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 0a 0a 0a 20 mainNode])).{.return.true;.}....
71020 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 27 2e 73 65 $nodeRegex.=.'{^(\s*\{\s*(?:'.se
71040 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 65 6c 66 3a lf::$JSON_STRING.'\s*:\s*'.self:
71060 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 27 28 27 2e :$JSON_VALUE.'\s*,\s*)*?)'..'('.
71080 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 24 6d 61 69 preg_quote(JsonFile::encode($mai
710a0 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 24 52 45 43 nNode)).'\s*:\s*\{)('.self::$REC
710c0 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 72 79 20 7b URSE_BLOCKS.')(\})(.*)}s';.try.{
710e0 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 52 65 67 65 .if.(!$this->pregMatch($nodeRege
71100 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 20 7b 0a 72 x,.$this->contents,.$match)).{.r
71120 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 74 69 6d 65 eturn.false;.}.}.catch.(\Runtime
71140 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 6f 64 65 28 Exception.$e).{.if.($e->getCode(
71160 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 52 52 4f 52 ).===.PREG_BACKTRACK_LIMIT_ERROR
71180 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 3b 0a 7d 0a ).{.return.false;.}.throw.$e;.}.
711a0 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 66 20 28 21 .$children.=.$match[3];....if.(!
711c0 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 7d 27 2c 20 @json_decode('{'.$children.'}',.
711e0 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 75 62 4e 61 true)).{.return.false;.}..$subNa
71200 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 6e 4e 6f 64 me.=.null;.if.(in_array($mainNod
71220 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 72 69 65 73 e,.array('config',.'repositories
71240 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 65 2c 20 27 ')).&&.false.!==.strpos($name,.'
71260 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 20 3d 20 65 .')).{.list($name,.$subName).=.e
71280 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 69 66 20 28 xplode('.',.$name,.2);.}....if.(
712a0 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 6e 61 6d 65 !isset($decoded[$mainNode][$name
712c0 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 65 63 6f 64 ]).||.($subName.&&.!isset($decod
712e0 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 65 5d 29 29 ed[$mainNode][$name][$subName]))
71300 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 68 69 73 2d ).{.return.true;.}....if.($this-
71320 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 6e 61 6d 65 >pregMatch('{"'.preg_quote($name
71340 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 20 69 66 20 ).'"\s*:}i',.$children)).{...if.
71360 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 6f 74 65 28 (preg_match_all('{"'.preg_quote(
71380 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 4a 53 4f 4e $name).'"\s*:\s*(?:'.self::$JSON
713a0 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 63 68 65 73 _VALUE.')}',.$children,.$matches
713c0 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 68 20 28 24 )).{.$bestMatch.=.'';.foreach.($
713e0 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 73 74 72 6c matches[0].as.$match).{.if.(strl
71400 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 63 68 29 29 en($bestMatch).<.strlen($match))
71420 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 24 63 68 69 .{.$bestMatch.=.$match;.}.}.$chi
71440 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 2c 5c 73 2a ldrenClean.=.preg_replace('{,\s*
71460 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 27 2c 20 27 '.preg_quote($bestMatch).'}i',.'
71480 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 66 20 28 31 ',.$children,.-1,.$count);.if.(1
714a0 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 6e 20 3d 20 .!==.$count).{.$childrenClean.=.
714c0 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 24 62 65 73 preg_replace('{'.preg_quote($bes
714e0 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 68 69 6c 64 tMatch).'\s*,?\s*}i',.'',.$child
71500 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 20 21 3d 3d renClean,.-1,.$count);.if.(1.!==
71520 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 0a 7d 0a 7d .$count).{.return.false;.}.}.}.}
71540 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 69 6c 64 72 .else.{.$childrenClean.=.$childr
71560 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 43 6c 65 61 en;.}....if.(!trim($childrenClea
71580 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 5f 72 65 70 n)).{.$this->contents.=.preg_rep
715a0 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 73 2d 3e 6e lace($nodeRegex,.'$1$2'.$this->n
715c0 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 20 24 74 68 ewline.$this->indent.'$4$5',.$th
715e0 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 6d 65 20 21 is->contents);....if.($subName.!
71600 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 63 6f 64 65 ==.null).{.$curVal.=.json_decode
71620 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 6e 73 65 74 ('{'.$children.'}',.true);.unset
71640 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 24 74 68 69 ($curVal[$name][$subName]);.$thi
71660 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 6d 65 2c 20 s->addSubNode($mainNode,.$name,.
71680 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 72 75 65 3b $curVal[$name]);.}..return.true;
716a0 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 6e 74 65 6e .}..$that.=.$this;.$this->conten
716c0 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 6e 6f 64 65 ts.=.preg_replace_callback($node
716e0 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 73 65 20 28 Regex,.function.($matches).use.(
71700 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 6c 64 72 65 $that,.$name,.$subName,.$childre
71720 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 75 6c 6c 29 nClean).{.if.($subName.!==.null)
71740 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 2e 24 6d 61 .{.$curVal.=.json_decode('{'.$ma
71760 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 63 75 72 56 tches[3].'}',.true);.unset($curV
71780 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 72 65 6e 43 al[$name][$subName]);.$childrenC
717a0 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 24 63 75 72 lean.=.substr($that->format($cur
717c0 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 6d 61 74 63 Val,.0),.1,.-1);.}..return.$matc
717e0 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 64 72 65 6e hes[1]...$matches[2]...$children
71800 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 65 73 5b 35 Clean...$matches[4]...$matches[5
71820 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 75 72 6e 20 ];.},.$this->contents);..return.
71840 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 4d 61 69 6e true;.}..public.function.addMain
71860 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 65 64 20 3d Key($key,.$content).{.$decoded.=
71880 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 6f 6e 74 .JsonFile::parseJson($this->cont
718a0 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 6d 61 74 28 ents);.$content.=.$this->format(
718c0 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 73 2a 5c 7b $content);....$regex.=.'{^(\s*\{
718e0 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 2a 3a \s*(?:'.self::$JSON_STRING.'\s*:
71900 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 2a 29 \s*'.self::$JSON_VALUE.'\s*,\s*)
71920 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 3a 65 *?)'..'('.preg_quote(JsonFile::e
71940 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 3a 24 4a 53 ncode($key)).'\s*:\s*'.self::$JS
71960 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 74 28 24 64 ON_VALUE.')(.*)}s';.if.(isset($d
71980 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 4d 61 74 63 ecoded[$key]).&&.$this->pregMatc
719a0 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 6d 61 74 63 h($regex,.$this->contents,.$matc
719c0 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 27 7b 27 2e hes)).{...if.(!@json_decode('{'.
719e0 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 61 6c 73 65 $matches[2].'}')).{.return.false
71a00 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 68 65 73 5b ;.}..$this->contents.=.$matches[
71a20 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 27 3a 20 27 1]...JsonFile::encode($key).':.'
71a40 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 74 75 72 6e .$content...$matches[3];..return
71a60 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 61 74 63 68 .true;.}....if.($this->pregMatch
71a80 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 63 6f 6e 74 ('#[^{\s](\s*)\}$#',.$this->cont
71aa0 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 65 6e 74 73 ents,.$match)).{.$this->contents
71ac0 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 31 5d 2e 27 .=.preg_replace(.'#'.$match[1].'
71ae0 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 69 73 2d 3e \}$#',.addcslashes(','...$this->
71b00 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 6f 6e 46 69 newline...$this->indent...JsonFi
71b20 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 74 65 6e 74 le::encode($key)..':.'..$content
71b40 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 27 29 2c 0a ...$this->newline...'}',.'\\'),.
71b60 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 72 75 65 3b $this->contents.);..return.true;
71b80 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 5f 72 65 70 .}....$this->contents.=.preg_rep
71ba0 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 74 68 69 73 lace(.'#\}$#',.addcslashes($this
71bc0 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 24 6b 65 79 ->indent...JsonFile::encode($key
71be0 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 77 6c 69 6e )..':.'.$content...$this->newlin
71c00 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 6e 74 73 0a e...'}',.'\\'),.$this->contents.
71c20 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 75 6e 63 74 );..return.true;.}..public.funct
71c40 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 29 0a 7b 0a ion.format($data,.$depth.=.0).{.
71c60 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 28 24 64 61 if.(is_array($data)).{.reset($da
71c80 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 74 61 29 29 ta);..if.(is_numeric(key($data))
71ca0 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 3e 20 24 76 ).{.foreach.($data.as.$key.=>.$v
71cc0 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 6f 72 6d 61 al).{.$data[$key].=.$this->forma
71ce0 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 72 6e 20 27 t($val,.$depth.+.1);.}..return.'
71d00 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 0a 7d 0a 0a ['.implode(',.',.$data).']';.}..
71d20 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 0a 24 65 6c $out.=.'{'...$this->newline;.$el
71d40 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 61 20 61 73 ems.=.array();.foreach.($data.as
71d60 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 73 74 72 5f .$key.=>.$val).{.$elems[].=.str_
71d80 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 20 2b 20 32 repeat($this->indent,.$depth.+.2
71da0 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 27 3a 20 27 )...JsonFile::encode($key)..':.'
71dc0 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 2b 20 31 29 .$this->format($val,.$depth.+.1)
71de0 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 2c 27 2e 24 ;.}..return.$out...implode(','.$
71e00 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 69 73 2d 3e this->newline,.$elems)...$this->
71e20 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 69 6e 64 65 newline...str_repeat($this->inde
71e40 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 74 75 72 6e nt,.$depth.+.1)...'}';.}..return
71e60 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 0a 70 72 6f .JsonFile::encode($data);.}..pro
71e80 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 69 6e 67 28 tected.function.detectIndenting(
71ea0 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 28 5b 20 5c ).{.if.($this->pregMatch('{^([.\
71ec0 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 6d 61 74 63 t]+)"}m',.$this->contents,.$matc
71ee0 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 5b 31 5d 3b h)).{.$this->indent.=.$match[1];
71f00 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 20 20 20 27 .}.else.{.$this->indent.=.'....'
71f20 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 65 67 4d 61 ;.}.}..protected.function.pregMa
71f40 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 72 72 61 79 tch($re,.$str,.&$matches.=.array
71f60 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 65 2c 20 24 ()).{.$count.=.preg_match($re,.$
71f80 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 3d 3d 3d 20 str,.$matches);..if.($count.===.
71fa0 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 72 72 6f 72 false).{.switch.(preg_last_error
71fc0 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 72 6f 77 20 ()).{.case.PREG_NO_ERROR:.throw.
71fe0 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 64 20 74 6f new.\RuntimeException('Failed.to
72000 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 52 27 2c 20 .execute.regex:.PREG_NO_ERROR',.
72020 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 54 45 52 4e PREG_NO_ERROR);.case.PREG_INTERN
72040 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 45 78 63 65 AL_ERROR:.throw.new.\RuntimeExce
72060 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:.
72080 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 4e 54 45 52 PREG_INTERNAL_ERROR',.PREG_INTER
720a0 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 41 43 4b 5f NAL_ERROR);.case.PREG_BACKTRACK_
720c0 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 69 6d 65 45 LIMIT_ERROR:.throw.new.\RuntimeE
720e0 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 65 xception('Failed.to.execute.rege
72100 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 52 27 2c 20 x:.PREG_BACKTRACK_LIMIT_ERROR',.
72120 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 0a 63 61 73 PREG_BACKTRACK_LIMIT_ERROR);.cas
72140 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 3a 0a 74 68 e.PREG_RECURSION_LIMIT_ERROR:.th
72160 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
72180 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 55 52 53 49 d.to.execute.regex:.PREG_RECURSI
721a0 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 49 4f 4e 5f ON_LIMIT_ERROR',.PREG_RECURSION_
721c0 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 55 54 46 38 LIMIT_ERROR);.case.PREG_BAD_UTF8
721e0 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 63 65 70 74 _ERROR:.throw.new.\RuntimeExcept
72200 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 50 52 ion('Failed.to.execute.regex:.PR
72220 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 5f 55 54 46 EG_BAD_UTF8_ERROR',.PREG_BAD_UTF
72240 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 5f 4f 46 46 8_ERROR);.case.PREG_BAD_UTF8_OFF
72260 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 65 45 78 63 SET_ERROR:.throw.new.\RuntimeExc
72280 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 3a eption('Failed.to.execute.regex:
722a0 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 2c 20 50 52 .PREG_BAD_UTF8_OFFSET_ERROR',.PR
722c0 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 64 65 66 61 75 EG_BAD_UTF8_OFFSET_ERROR);.defau
722e0 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 70 74 69 6f 6e 28 lt:.throw.new.\RuntimeException(
72300 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 55 6e 6b 6e 6f 77 'Failed.to.execute.regex:.Unknow
72320 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 75 6e 74 3b 0a 7d n.error');.}.}..return.$count;.}
72340 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
72360 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 6e 3b 0a 0a 0a 0a mposer\Json;..use.Exception;....
72380 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 74 69 6f 6e 20 65 .class.JsonValidationException.e
723a0 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 65 64 20 24 65 72 xtends.Exception.{.protected.$er
723c0 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 6f 6e 73 74 72 75 rors;..public.function.__constru
723e0 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 61 79 28 29 2c 20 ct($message,.$errors.=.array(),.
72400 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 29 0a 7b 0a 24 74 Exception.$previous.=.null).{.$t
72420 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 65 6e 74 3a 3a 5f his->errors.=.$errors;.parent::_
72440 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 72 65 76 69 6f 75 _construct($message,.0,.$previou
72460 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 45 72 72 6f 72 73 s);.}..public.function.getErrors
72480 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 0a 7d 0a 7d 0a 3c ().{.return.$this->errors;.}.}.<
724a0 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
724c0 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 65 72 er\Package;..use.Composer\Semver
724e0 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 65 20 43 6f 6d 70 \Constraint\Constraint;.use.Comp
72500 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 3b 0a 0a 0a 0a 0a 63 oser\Semver\VersionParser;.....c
72520 6c 61 73 73 20 41 6c 69 61 73 50 61 63 6b 61 67 65 20 65 78 74 65 6e 64 73 20 42 61 73 65 50 61 lass.AliasPackage.extends.BasePa
72540 63 6b 61 67 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 ckage.implements.CompletePackage
72560 49 6e 74 65 72 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 3b 0a Interface.{.protected.$version;.
72580 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 70 72 6f 74 65 63 protected.$prettyVersion;.protec
725a0 74 65 64 20 24 64 65 76 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 6c 69 61 73 4f 66 3b 0a 70 72 ted.$dev;.protected.$aliasOf;.pr
725c0 6f 74 65 63 74 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 otected.$rootPackageAlias.=.fals
725e0 65 3b 0a 70 72 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 e;.protected.$stability;...prote
72600 63 74 65 64 20 24 72 65 71 75 69 72 65 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 76 52 cted.$requires;..protected.$devR
72620 65 71 75 69 72 65 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 6c 69 63 74 73 3b 0a equires;..protected.$conflicts;.
72640 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 76 69 64 65 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 .protected.$provides;..protected
72660 20 24 72 65 70 6c 61 63 65 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 .$replaces;.........public.funct
72680 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 72 66 61 63 65 ion.__construct(PackageInterface
726a0 20 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 79 56 65 72 73 .$aliasOf,.$version,.$prettyVers
726c0 69 6f 6e 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 61 6c 69 61 ion).{.parent::__construct($alia
726e0 73 4f 66 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e sOf->getName());..$this->version
72700 20 3d 20 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 .=.$version;.$this->prettyVersio
72720 6e 20 3d 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 n.=.$prettyVersion;.$this->alias
72740 4f 66 20 3d 20 24 61 6c 69 61 73 4f 66 3b 0a 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 20 Of.=.$aliasOf;.$this->stability.
72760 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 74 79 28 =.VersionParser::parseStability(
72780 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 2d 3e 73 $version);.$this->dev.=.$this->s
727a0 74 61 62 69 6c 69 74 79 20 3d 3d 3d 20 27 64 65 76 27 3b 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 tability.===.'dev';..foreach.(ar
727c0 72 61 79 28 27 72 65 71 75 69 72 65 73 27 2c 20 27 64 65 76 52 65 71 75 69 72 65 73 27 2c 20 27 ray('requires',.'devRequires',.'
727e0 63 6f 6e 66 6c 69 63 74 73 27 2c 20 27 70 72 6f 76 69 64 65 73 27 2c 20 27 72 65 70 6c 61 63 65 conflicts',.'provides',.'replace
72800 73 27 29 20 61 73 20 24 74 79 70 65 29 20 7b 0a 24 6c 69 6e 6b 73 20 3d 20 24 61 6c 69 61 73 4f s').as.$type).{.$links.=.$aliasO
72820 66 2d 3e 7b 27 67 65 74 27 20 2e 20 75 63 66 69 72 73 74 28 24 74 79 70 65 29 7d 28 29 3b 0a 24 f->{'get'...ucfirst($type)}();.$
72840 74 68 69 73 2d 3e 24 74 79 70 65 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 53 65 6c 66 this->$type.=.$this->replaceSelf
72860 56 65 72 73 69 6f 6e 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 6c 69 6e 6b 73 2c 20 24 74 79 70 VersionDependencies($links,.$typ
72880 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 67 65 74 41 e);.}.}.....public.function.getA
728a0 6c 69 61 73 4f 66 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 liasOf().{.return.$this->aliasOf
728c0 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 73 69 ;.}.....public.function.getVersi
728e0 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 7d 0a on().{.return.$this->version;.}.
72900 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 79 ....public.function.getStability
72920 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 0a ().{.return.$this->stability;.}.
72940 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 65 72 ....public.function.getPrettyVer
72960 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 65 72 sion().{.return.$this->prettyVer
72980 73 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 69 73 44 65 sion;.}.....public.function.isDe
729a0 76 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 76 3b 0a 7d 0a 0a 0a 0a 0a 70 v().{.return.$this->dev;.}.....p
729c0 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 72 ublic.function.getRequires().{.r
729e0 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 62 eturn.$this->requires;.}.....pub
72a00 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 0a 72 65 lic.function.getConflicts().{.re
72a20 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 70 75 62 turn.$this->conflicts;.}.....pub
72a40 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 76 69 64 65 73 28 29 0a 7b 0a 72 65 74 lic.function.getProvides().{.ret
72a60 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 urn.$this->provides;.}.....publi
72a80 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6c 61 63 65 73 28 29 0a 7b 0a 72 65 74 75 72 c.function.getReplaces().{.retur
72aa0 6e 20 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 n.$this->replaces;.}.....public.
72ac0 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 76 52 65 71 75 69 72 65 73 28 29 0a 7b 0a 72 65 74 75 function.getDevRequires().{.retu
72ae0 72 6e 20 24 74 68 69 73 2d 3e 64 65 76 52 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a rn.$this->devRequires;.}........
72b00 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 6f 6f 74 50 61 63 6b 61 67 ...public.function.setRootPackag
72b20 65 41 6c 69 61 73 28 24 76 61 6c 75 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 eAlias($value).{.return.$this->r
72b40 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 0a 0a 0a ootPackageAlias.=.$value;.}.....
72b60 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 52 6f 6f 74 50 61 63 6b 61 67 65 41 6c .public.function.isRootPackageAl
72b80 69 61 73 28 29 0a 7b 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 ias().{.return.$this->rootPackag
72ba0 65 41 6c 69 61 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 eAlias;.}........protected.funct
72bc0 69 6f 6e 20 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 69 ion.replaceSelfVersionDependenci
72be0 65 73 28 61 72 72 61 79 20 24 6c 69 6e 6b 73 2c 20 24 6c 69 6e 6b 54 79 70 65 29 0a 7b 0a 69 66 es(array.$links,.$linkType).{.if
72c00 20 28 69 6e 5f 61 72 72 61 79 28 24 6c 69 6e 6b 54 79 70 65 2c 20 61 72 72 61 79 28 27 63 6f 6e .(in_array($linkType,.array('con
72c20 66 6c 69 63 74 73 27 2c 20 27 70 72 6f 76 69 64 65 73 27 2c 20 27 72 65 70 6c 61 63 65 73 27 29 flicts',.'provides',.'replaces')
72c40 2c 20 74 72 75 65 29 29 20 7b 0a 24 6e 65 77 4c 69 6e 6b 73 20 3d 20 61 72 72 61 79 28 29 3b 0a ,.true)).{.$newLinks.=.array();.
72c60 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 0a 20 69 66 foreach.($links.as.$link).{...if
72c80 20 28 27 73 65 6c 66 2e 76 65 72 73 69 6f 6e 27 20 3d 3d 3d 20 24 6c 69 6e 6b 2d 3e 67 65 74 50 .('self.version'.===.$link->getP
72ca0 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 20 7b 0a 24 6e 65 77 4c 69 6e 6b 73 5b 5d rettyConstraint()).{.$newLinks[]
72cc0 20 3d 20 6e 65 77 20 4c 69 6e 6b 28 24 6c 69 6e 6b 2d 3e 67 65 74 53 6f 75 72 63 65 28 29 2c 20 .=.new.Link($link->getSource(),.
72ce0 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 $link->getTarget(),.new.Constrai
72d00 6e 74 28 27 3d 27 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 29 2c 20 24 6c 69 6e 6b 54 79 nt('=',.$this->version),.$linkTy
72d20 70 65 2c 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 0a 7d 0a 24 pe,.$this->prettyVersion);.}.}.$
72d40 6c 69 6e 6b 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6c 69 6e 6b 73 2c 20 24 6e 65 77 links.=.array_merge($links,.$new
72d60 4c 69 6e 6b 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 Links);.}.else.{.foreach.($links
72d80 20 61 73 20 24 69 6e 64 65 78 20 3d 3e 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 27 73 65 6c 66 .as.$index.=>.$link).{.if.('self
72da0 2e 76 65 72 73 69 6f 6e 27 20 3d 3d 3d 20 24 6c 69 6e 6b 2d 3e 67 65 74 50 72 65 74 74 79 43 6f .version'.===.$link->getPrettyCo
72dc0 6e 73 74 72 61 69 6e 74 28 29 29 20 7b 0a 24 6c 69 6e 6b 73 5b 24 69 6e 64 65 78 5d 20 3d 20 6e nstraint()).{.$links[$index].=.n
72de0 65 77 20 4c 69 6e 6b 28 24 6c 69 6e 6b 2d 3e 67 65 74 53 6f 75 72 63 65 28 29 2c 20 24 6c 69 6e ew.Link($link->getSource(),.$lin
72e00 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 k->getTarget(),.new.Constraint('
72e20 3d 27 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 29 2c 20 24 6c 69 6e 6b 54 79 70 65 2c 20 =',.$this->version),.$linkType,.
72e40 24 74 68 69 73 2d 3e 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 $this->prettyVersion);.}.}.}..re
72e60 74 75 72 6e 20 24 6c 69 6e 6b 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 turn.$links;.}......public.funct
72e80 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 3e 61 6c ion.getType().{.return.$this->al
72ea0 69 61 73 4f 66 2d 3e 67 65 74 54 79 70 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 iasOf->getType();.}..public.func
72ec0 74 69 6f 6e 20 67 65 74 54 61 72 67 65 74 44 69 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 tion.getTargetDir().{.return.$th
72ee0 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 7d 0a 0a is->aliasOf->getTargetDir();.}..
72f00 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 74 72 61 28 29 0a 7b 0a 72 65 74 public.function.getExtra().{.ret
72f20 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 45 78 74 72 61 28 29 3b 0a urn.$this->aliasOf->getExtra();.
72f40 7d 0a 0a 70 75 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 }..public.function.setInstallati
72f60 6f 6e 53 6f 75 72 63 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 onSource($type).{.$this->aliasOf
72f80 2d 3e 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 3b 0a ->setInstallationSource($type);.
72fa0 7d 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 6c 61 74 69 }..public.function.getInstallati
72fc0 6f 6e 53 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 6c 69 61 73 onSource().{.return.$this->alias
72fe0 4f 66 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 7d 0a 0a Of->getInstallationSource();.}..
73000 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 54 79 70 65 28 29 0a public.function.getSourceType().
73020 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 53 6f 75 72 {.return.$this->aliasOf->getSour
73040 63 65 54 79 70 65 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 ceType();.}..public.function.get
73060 53 6f 75 72 63 65 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 SourceUrl().{.return.$this->alia
73080 73 4f 66 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 sOf->getSourceUrl();.}..public.f
730a0 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 72 6e unction.getSourceUrls().{.return
730c0 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 6c 73 28 29 .$this->aliasOf->getSourceUrls()
730e0 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 65 52 65 ;.}..public.function.getSourceRe
73100 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 61 6c 69 61 73 4f ference().{.return.$this->aliasO
73120 66 2d 3e 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 f->getSourceReference();.}..publ
73140 69 63 20 66 75 6e 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 ic.function.setSourceReference($
73160 72 65 66 65 72 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 reference).{.return.$this->alias
73180 4f 66 2d 3e 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 6e 63 Of->setSourceReference($referenc
731a0 65 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 6f 75 72 63 65 e);.}..public.function.setSource
731c0 4d 69 72 72 6f 72 73 28 24 6d 69 72 72 6f 72 73 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 Mirrors($mirrors).{.return.$this
731e0 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 53 6f 75 72 63 65 4d 69 72 72 6f 72 73 28 24 6d 69 72 ->aliasOf->setSourceMirrors($mir
73200 72 6f 72 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 53 6f 75 rors);.}..public.function.getSou
73220 72 63 65 4d 69 72 72 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 rceMirrors().{.return.$this->ali
73240 61 73 4f 66 2d 3e 67 65 74 53 6f 75 72 63 65 4d 69 72 72 6f 72 73 28 29 3b 0a 7d 0a 0a 70 75 62 asOf->getSourceMirrors();.}..pub
73260 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 0a 7b 0a 72 65 74 lic.function.getDistType().{.ret
73280 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 54 79 70 65 28 urn.$this->aliasOf->getDistType(
732a0 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 55 72 6c );.}..public.function.getDistUrl
732c0 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 44 ().{.return.$this->aliasOf->getD
732e0 69 73 74 55 72 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 istUrl();.}..public.function.get
73300 44 69 73 74 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 DistUrls().{.return.$this->alias
73320 4f 66 2d 3e 67 65 74 44 69 73 74 55 72 6c 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e Of->getDistUrls();.}..public.fun
73340 63 74 69 6f 6e 20 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 0a 7b 0a 72 65 74 75 72 ction.getDistReference().{.retur
73360 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 52 65 66 65 72 65 6e n.$this->aliasOf->getDistReferen
73380 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 44 69 73 74 ce();.}..public.function.setDist
733a0 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 75 72 6e 20 24 Reference($reference).{.return.$
733c0 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 this->aliasOf->setDistReference(
733e0 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 6e 63 74 69 6f 6e 20 $reference);.}..public.function.
73400 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 getDistSha1Checksum().{.return.$
73420 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 this->aliasOf->getDistSha1Checks
73440 75 6d 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 54 72 61 6e um();.}..public.function.setTran
73460 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 29 0a 7b 0a 72 sportOptions(array.$options).{.r
73480 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 54 72 61 6e 73 70 6f eturn.$this->aliasOf->setTranspo
734a0 72 74 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 rtOptions($options);.}..public.f
734c0 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 73 28 29 0a 7b 0a unction.getTransportOptions().{.
734e0 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 72 61 6e 73 70 return.$this->aliasOf->getTransp
73500 6f 72 74 4f 70 74 69 6f 6e 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ortOptions();.}..public.function
73520 20 73 65 74 44 69 73 74 4d 69 72 72 6f 72 73 28 24 6d 69 72 72 6f 72 73 29 0a 7b 0a 72 65 74 75 .setDistMirrors($mirrors).{.retu
73540 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 44 69 73 74 4d 69 72 72 6f 72 rn.$this->aliasOf->setDistMirror
73560 73 28 24 6d 69 72 72 6f 72 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 s($mirrors);.}..public.function.
73580 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 24 74 68 69 73 2d getDistMirrors().{.return.$this-
735a0 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 44 69 73 74 4d 69 72 72 6f 72 73 28 29 3b 0a 7d 0a 0a 70 >aliasOf->getDistMirrors();.}..p
735c0 75 62 6c 69 63 20 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 ublic.function.getScripts().{.re
735e0 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 63 72 69 70 74 73 28 turn.$this->aliasOf->getScripts(
73600 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 4c 69 63 65 6e 73 65 );.}..public.function.getLicense
73620 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 4c ().{.return.$this->aliasOf->getL
73640 69 63 65 6e 73 65 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 icense();.}..public.function.get
73660 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 6c 69 61 73 Autoload().{.return.$this->alias
73680 4f 66 2d 3e 67 65 74 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 Of->getAutoload();.}..public.fun
736a0 63 74 69 6f 6e 20 67 65 74 44 65 76 41 75 74 6f 6c 6f 61 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 ction.getDevAutoload().{.return.
736c0 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 44 65 76 41 75 74 6f 6c 6f 61 64 28 29 $this->aliasOf->getDevAutoload()
736e0 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 6e 63 6c 75 64 65 50 ;.}..public.function.getIncludeP
73700 61 74 68 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 aths().{.return.$this->aliasOf->
73720 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e getIncludePaths();.}..public.fun
73740 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 65 74 75 72 6e ction.getRepositories().{.return
73760 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 .$this->aliasOf->getRepositories
73780 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 65 6c 65 61 73 ();.}..public.function.getReleas
737a0 65 44 61 74 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 eDate().{.return.$this->aliasOf-
737c0 3e 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e >getReleaseDate();.}..public.fun
737e0 63 74 69 6f 6e 20 67 65 74 42 69 6e 61 72 69 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 ction.getBinaries().{.return.$th
73800 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 42 69 6e 61 72 69 65 73 28 29 3b 0a 7d 0a 0a 70 is->aliasOf->getBinaries();.}..p
73820 75 62 6c 69 63 20 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 ublic.function.getKeywords().{.r
73840 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 4b 65 79 77 6f 72 64 eturn.$this->aliasOf->getKeyword
73860 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 44 65 73 63 72 s();.}..public.function.getDescr
73880 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 61 6c 69 61 73 4f 66 iption().{.return.$this->aliasOf
738a0 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 ->getDescription();.}..public.fu
738c0 6e 63 74 69 6f 6e 20 67 65 74 48 6f 6d 65 70 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 nction.getHomepage().{.return.$t
738e0 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 48 6f 6d 65 70 61 67 65 28 29 3b 0a 7d 0a 0a his->aliasOf->getHomepage();.}..
73900 70 75 62 6c 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 public.function.getSuggests().{.
73920 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 53 75 67 67 65 73 return.$this->aliasOf->getSugges
73940 74 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 41 75 74 68 ts();.}..public.function.getAuth
73960 6f 72 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 ors().{.return.$this->aliasOf->g
73980 65 74 41 75 74 68 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 etAuthors();.}..public.function.
739a0 67 65 74 53 75 70 70 6f 72 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 getSupport().{.return.$this->ali
739c0 61 73 4f 66 2d 3e 67 65 74 53 75 70 70 6f 72 74 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 asOf->getSupport();.}..public.fu
739e0 6e 63 74 69 6f 6e 20 67 65 74 4e 6f 74 69 66 69 63 61 74 69 6f 6e 55 72 6c 28 29 0a 7b 0a 72 65 nction.getNotificationUrl().{.re
73a00 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 4e 6f 74 69 66 69 63 61 turn.$this->aliasOf->getNotifica
73a20 74 69 6f 6e 55 72 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 tionUrl();.}..public.function.ge
73a40 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 24 74 68 69 tArchiveExcludes().{.return.$thi
73a60 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 41 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 29 s->aliasOf->getArchiveExcludes()
73a80 3b 0a 7d 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
73aa0 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 69 73 41 62 ().{.return.$this->aliasOf->isAb
73ac0 61 6e 64 6f 6e 65 64 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 andoned();.}..public.function.ge
73ae0 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 74 75 72 6e 20 24 tReplacementPackage().{.return.$
73b00 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 52 65 70 6c 61 63 65 6d 65 6e 74 50 61 63 this->aliasOf->getReplacementPac
73b20 6b 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 5f 5f 74 6f 53 kage();.}..public.function.__toS
73b40 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 5f 5f 74 6f 53 74 72 tring().{.return.parent::__toStr
73b60 69 6e 67 28 29 2e 27 20 28 61 6c 69 61 73 20 6f 66 20 27 2e 24 74 68 69 73 2d 3e 61 6c 69 61 73 ing().'.(alias.of.'.$this->alias
73b80 4f 66 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2e 27 29 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a Of->getVersion().')';.}.}.<?php.
73ba0 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
73bc0 63 6b 61 67 65 5c 41 72 63 68 69 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 ckage\Archiver;..use.Composer\Ut
73be0 69 6c 5c 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 il\Filesystem;.use.Symfony\Compo
73c00 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 0a 0a 0a 63 6c 61 nent\Finder\Finder;..........cla
73c20 73 73 20 41 72 63 68 69 76 61 62 6c 65 46 69 6c 65 73 46 69 6e 64 65 72 20 65 78 74 65 6e 64 73 ss.ArchivableFilesFinder.extends
73c40 20 5c 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 .\FilterIterator.{....protected.
73c60 24 66 69 6e 64 65 72 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 $finder;........public.function.
73c80 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 6f 75 72 63 65 73 2c 20 61 72 72 61 79 20 24 65 78 63 __construct($sources,.array.$exc
73ca0 6c 75 64 65 73 29 0a 7b 0a 24 66 73 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b ludes).{.$fs.=.new.Filesystem();
73cc0 0a 0a 24 73 6f 75 72 63 65 73 20 3d 20 24 66 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 ..$sources.=.$fs->normalizePath(
73ce0 24 73 6f 75 72 63 65 73 29 3b 0a 0a 24 66 69 6c 74 65 72 73 20 3d 20 61 72 72 61 79 28 0a 6e 65 $sources);..$filters.=.array(.ne
73d00 77 20 48 67 45 78 63 6c 75 64 65 46 69 6c 74 65 72 28 24 73 6f 75 72 63 65 73 29 2c 0a 6e 65 77 w.HgExcludeFilter($sources),.new
73d20 20 47 69 74 45 78 63 6c 75 64 65 46 69 6c 74 65 72 28 24 73 6f 75 72 63 65 73 29 2c 0a 6e 65 77 .GitExcludeFilter($sources),.new
73d40 20 43 6f 6d 70 6f 73 65 72 45 78 63 6c 75 64 65 46 69 6c 74 65 72 28 24 73 6f 75 72 63 65 73 2c .ComposerExcludeFilter($sources,
73d60 20 24 65 78 63 6c 75 64 65 73 29 2c 0a 29 3b 0a 0a 24 74 68 69 73 2d 3e 66 69 6e 64 65 72 20 3d .$excludes),.);..$this->finder.=
73d80 20 6e 65 77 20 46 69 6e 64 65 72 28 29 3b 0a 0a 24 66 69 6c 74 65 72 20 3d 20 66 75 6e 63 74 69 .new.Finder();..$filter.=.functi
73da0 6f 6e 20 28 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 20 24 66 69 6c 65 29 20 75 73 65 20 28 24 73 6f on.(\SplFileInfo.$file).use.($so
73dc0 75 72 63 65 73 2c 20 24 66 69 6c 74 65 72 73 2c 20 24 66 73 29 20 7b 0a 69 66 20 28 24 66 69 6c urces,.$filters,.$fs).{.if.($fil
73de0 65 2d 3e 69 73 4c 69 6e 6b 28 29 20 26 26 20 73 74 72 70 6f 73 28 24 66 69 6c 65 2d 3e 67 65 74 e->isLink().&&.strpos($file->get
73e00 4c 69 6e 6b 54 61 72 67 65 74 28 29 2c 20 24 73 6f 75 72 63 65 73 29 20 21 3d 3d 20 30 29 20 7b LinkTarget(),.$sources).!==.0).{
73e20 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 72 65 6c 61 74 69 76 65 50 61 74 68 20 .return.false;.}..$relativePath.
73e40 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 0a 27 23 5e 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 =.preg_replace(.'#^'.preg_quote(
73e60 24 73 6f 75 72 63 65 73 2c 20 27 23 27 29 2e 27 23 27 2c 0a 27 27 2c 0a 24 66 73 2d 3e 6e 6f 72 $sources,.'#').'#',.'',.$fs->nor
73e80 6d 61 6c 69 7a 65 50 61 74 68 28 24 66 69 6c 65 2d 3e 67 65 74 52 65 61 6c 50 61 74 68 28 29 29 malizePath($file->getRealPath())
73ea0 0a 29 3b 0a 0a 24 65 78 63 6c 75 64 65 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 .);..$exclude.=.false;.foreach.(
73ec0 24 66 69 6c 74 65 72 73 20 61 73 20 24 66 69 6c 74 65 72 29 20 7b 0a 24 65 78 63 6c 75 64 65 20 $filters.as.$filter).{.$exclude.
73ee0 3d 20 24 66 69 6c 74 65 72 2d 3e 66 69 6c 74 65 72 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c =.$filter->filter($relativePath,
73f00 20 24 65 78 63 6c 75 64 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 21 24 65 78 63 6c 75 64 65 3b .$exclude);.}..return.!$exclude;
73f20 0a 7d 3b 0a 0a 69 66 20 28 6d 65 74 68 6f 64 5f 65 78 69 73 74 73 28 24 66 69 6c 74 65 72 2c 20 .};..if.(method_exists($filter,.
73f40 27 62 69 6e 64 54 6f 27 29 29 20 7b 0a 24 66 69 6c 74 65 72 20 3d 20 24 66 69 6c 74 65 72 2d 3e 'bindTo')).{.$filter.=.$filter->
73f60 62 69 6e 64 54 6f 28 6e 75 6c 6c 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6e 64 65 72 0a 2d bindTo(null);.}..$this->finder.-
73f80 3e 69 6e 28 24 73 6f 75 72 63 65 73 29 0a 2d 3e 66 69 6c 74 65 72 28 24 66 69 6c 74 65 72 29 0a >in($sources).->filter($filter).
73fa0 2d 3e 69 67 6e 6f 72 65 56 43 53 28 74 72 75 65 29 0a 2d 3e 69 67 6e 6f 72 65 44 6f 74 46 69 6c ->ignoreVCS(true).->ignoreDotFil
73fc0 65 73 28 66 61 6c 73 65 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 es(false);..parent::__construct(
73fe0 24 74 68 69 73 2d 3e 66 69 6e 64 65 72 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 28 29 29 3b 0a 7d $this->finder->getIterator());.}
74000 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 72 65 74 ..public.function.accept().{.ret
74020 75 72 6e 20 21 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 urn.!$this->getInnerIterator()->
74040 63 75 72 72 65 6e 74 28 29 2d 3e 69 73 44 69 72 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a current()->isDir();.}.}.<?php...
74060 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
74080 61 67 65 5c 41 72 63 68 69 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e age\Archiver;..use.Composer\Down
740a0 6c 6f 61 64 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 loader\DownloadManager;.use.Comp
740c0 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
740e0 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 67 65 49 se.Composer\Package\RootPackageI
74100 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 46 69 6c 65 nterface;.use.Composer\Util\File
74120 73 79 73 74 65 6d 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 system;.use.Composer\Json\JsonFi
74140 6c 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 63 68 69 76 65 4d 61 6e 61 67 65 72 0a 7b 0a le;......class.ArchiveManager.{.
74160 70 72 6f 74 65 63 74 65 64 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 0a 70 72 6f protected.$downloadManager;..pro
74180 74 65 63 74 65 64 20 24 61 72 63 68 69 76 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a tected.$archivers.=.array();....
741a0 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 76 65 72 77 72 69 74 65 46 69 6c 65 73 20 3d 20 74 72 75 .protected.$overwriteFiles.=.tru
741c0 65 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 e;.....public.function.__constru
741e0 63 74 28 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 ct(DownloadManager.$downloadMana
74200 67 65 72 29 0a 7b 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 ger).{.$this->downloadManager.=.
74220 24 64 6f 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 $downloadManager;.}.....public.f
74240 75 6e 63 74 69 6f 6e 20 61 64 64 41 72 63 68 69 76 65 72 28 41 72 63 68 69 76 65 72 49 6e 74 65 unction.addArchiver(ArchiverInte
74260 72 66 61 63 65 20 24 61 72 63 68 69 76 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 72 63 68 69 76 rface.$archiver).{.$this->archiv
74280 65 72 73 5b 5d 20 3d 20 24 61 72 63 68 69 76 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 ers[].=.$archiver;.}.........pub
742a0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 76 65 72 77 72 69 74 65 46 69 6c 65 73 28 24 lic.function.setOverwriteFiles($
742c0 6f 76 65 72 77 72 69 74 65 46 69 6c 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 overwriteFiles).{.$this->overwri
742e0 74 65 46 69 6c 65 73 20 3d 20 24 6f 76 65 72 77 72 69 74 65 46 69 6c 65 73 3b 0a 0a 72 65 74 75 teFiles.=.$overwriteFiles;..retu
74300 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
74320 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 46 69 6c 65 6e 61 6d 65 28 50 61 63 6b 61 67 65 49 6e ion.getPackageFilename(PackageIn
74340 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 6e 61 6d 65 50 61 72 74 73 20 3d terface.$package).{.$nameParts.=
74360 20 61 72 72 61 79 28 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 23 5b 5e 61 2d 7a 30 2d 39 2d 5f .array(preg_replace('#[^a-z0-9-_
74380 5d 23 69 27 2c 20 27 2d 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 ]#i',.'-',.$package->getName()))
743a0 3b 0a 0a 69 66 20 28 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 ;..if.(preg_match('{^[a-f0-9]{40
743c0 7d 24 7d 27 2c 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
743e0 28 29 29 29 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 ())).{.$nameParts.=.array_merge(
74400 24 6e 61 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 44 $nameParts,.array($package->getD
74420 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 istReference(),.$package->getDis
74440 74 54 79 70 65 28 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6e 61 6d 65 50 61 72 74 73 20 3d tType()));.}.else.{.$nameParts.=
74460 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 79 28 24 .array_merge($nameParts,.array($
74480 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 24 70 61 package->getPrettyVersion(),.$pa
744a0 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 29 3b 0a 7d 0a 0a ckage->getDistReference()));.}..
744c0 69 66 20 28 24 70 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 65 if.($package->getSourceReference
744e0 28 29 29 20 7b 0a 24 6e 61 6d 65 50 61 72 74 73 5b 5d 20 3d 20 73 75 62 73 74 72 28 73 68 61 31 ()).{.$nameParts[].=.substr(sha1
74500 28 24 70 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 65 28 29 29 ($package->getSourceReference())
74520 2c 20 30 2c 20 36 29 3b 0a 7d 0a 0a 24 6e 61 6d 65 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2d 27 2c ,.0,.6);.}..$name.=.implode('-',
74540 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 6e 61 6d 65 50 61 72 74 73 2c 20 66 75 6e 63 74 69 .array_filter($nameParts,.functi
74560 6f 6e 20 28 24 70 29 20 7b 0a 72 65 74 75 72 6e 20 21 65 6d 70 74 79 28 24 70 29 3b 0a 7d 29 29 on.($p).{.return.!empty($p);.}))
74580 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 2f 27 2c 20 27 2d 27 2c 20 ;..return.str_replace('/',.'-',.
745a0 24 6e 61 6d 65 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 $name);.}..............public.fu
745c0 6e 63 74 69 6f 6e 20 61 72 63 68 69 76 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 nction.archive(PackageInterface.
745e0 24 70 61 63 6b 61 67 65 2c 20 24 66 6f 72 6d 61 74 2c 20 24 74 61 72 67 65 74 44 69 72 2c 20 24 $package,.$format,.$targetDir,.$
74600 66 69 6c 65 4e 61 6d 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 66 6f fileName.=.null).{.if.(empty($fo
74620 72 6d 61 74 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 rmat)).{.throw.new.\InvalidArgum
74640 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 46 6f 72 6d 61 74 20 6d 75 73 74 20 62 65 20 73 70 65 entException('Format.must.be.spe
74660 63 69 66 69 65 64 27 29 3b 0a 7d 0a 0a 0a 20 24 75 73 61 62 6c 65 41 72 63 68 69 76 65 72 20 3d cified');.}....$usableArchiver.=
74680 20 6e 75 6c 6c 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 61 72 63 68 69 76 65 72 73 .null;.foreach.($this->archivers
746a0 20 61 73 20 24 61 72 63 68 69 76 65 72 29 20 7b 0a 69 66 20 28 24 61 72 63 68 69 76 65 72 2d 3e .as.$archiver).{.if.($archiver->
746c0 73 75 70 70 6f 72 74 73 28 24 66 6f 72 6d 61 74 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 supports($format,.$package->getS
746e0 6f 75 72 63 65 54 79 70 65 28 29 29 29 20 7b 0a 24 75 73 61 62 6c 65 41 72 63 68 69 76 65 72 20 ourceType())).{.$usableArchiver.
74700 3d 20 24 61 72 63 68 69 76 65 72 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 6e =.$archiver;.break;.}.}....if.(n
74720 75 6c 6c 20 3d 3d 3d 20 24 75 73 61 62 6c 65 41 72 63 68 69 76 65 72 29 20 7b 0a 74 68 72 6f 77 ull.===.$usableArchiver).{.throw
74740 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 74 66 28 27 .new.\RuntimeException(sprintf('
74760 4e 6f 20 61 72 63 68 69 76 65 72 20 66 6f 75 6e 64 20 74 6f 20 73 75 70 70 6f 72 74 20 25 73 20 No.archiver.found.to.support.%s.
74780 66 6f 72 6d 61 74 27 2c 20 24 66 6f 72 6d 61 74 29 29 3b 0a 7d 0a 0a 24 66 69 6c 65 73 79 73 74 format',.$format));.}..$filesyst
747a0 65 6d 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 em.=.new.Filesystem();.if.(null.
747c0 3d 3d 3d 20 24 66 69 6c 65 4e 61 6d 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 ===.$fileName).{.$packageName.=.
747e0 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 46 69 6c 65 6e 61 6d 65 28 24 70 61 63 6b 61 $this->getPackageFilename($packa
74800 67 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 66 69 ge);.}.else.{.$packageName.=.$fi
74820 6c 65 4e 61 6d 65 3b 0a 7d 0a 0a 0a 20 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 leName;.}....$filesystem->ensure
74840 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 74 61 72 67 65 74 44 69 72 29 3b 0a 24 74 61 DirectoryExists($targetDir);.$ta
74860 72 67 65 74 20 3d 20 72 65 61 6c 70 61 74 68 28 24 74 61 72 67 65 74 44 69 72 29 2e 27 2f 27 2e rget.=.realpath($targetDir).'/'.
74880 24 70 61 63 6b 61 67 65 4e 61 6d 65 2e 27 2e 27 2e 24 66 6f 72 6d 61 74 3b 0a 24 66 69 6c 65 73 $packageName.'.'.$format;.$files
748a0 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 64 69 72 ystem->ensureDirectoryExists(dir
748c0 6e 61 6d 65 28 24 74 61 72 67 65 74 29 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 76 65 name($target));..if.(!$this->ove
748e0 72 77 72 69 74 65 46 69 6c 65 73 20 26 26 20 66 69 6c 65 5f 65 78 69 73 74 73 28 24 74 61 72 67 rwriteFiles.&&.file_exists($targ
74900 65 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 61 72 67 65 74 3b 0a 7d 0a 0a 69 66 20 28 24 70 et)).{.return.$target;.}..if.($p
74920 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 6e 74 ackage.instanceof.RootPackageInt
74940 65 72 66 61 63 65 29 20 7b 0a 24 73 6f 75 72 63 65 50 61 74 68 20 3d 20 72 65 61 6c 70 61 74 68 erface).{.$sourcePath.=.realpath
74960 28 27 2e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 73 6f 75 72 63 65 50 61 74 68 20 3d 20 ('.');.}.else.{...$sourcePath.=.
74980 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 6f 73 65 72 5f 61 72 sys_get_temp_dir().'/composer_ar
749a0 63 68 69 76 65 27 2e 75 6e 69 71 69 64 28 29 3b 0a 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e chive'.uniqid();.$filesystem->en
749c0 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 73 6f 75 72 63 65 50 61 74 68 29 sureDirectoryExists($sourcePath)
749e0 3b 0a 0a 0a 20 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 ;....$this->downloadManager->dow
74a00 6e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 2c 20 24 73 6f 75 72 63 65 50 61 74 68 29 3b 0a 0a 0a nload($package,.$sourcePath);...
74a20 20 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 50 61 .if.(file_exists($composerJsonPa
74a40 74 68 20 3d 20 24 73 6f 75 72 63 65 50 61 74 68 2e 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e th.=.$sourcePath.'/composer.json
74a60 27 29 29 20 7b 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 28 24 ')).{.$jsonFile.=.new.JsonFile($
74a80 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 50 61 74 68 29 3b 0a 24 6a 73 6f 6e 44 61 74 61 20 3d 20 24 composerJsonPath);.$jsonData.=.$
74aa0 6a 73 6f 6e 46 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6a 73 jsonFile->read();.if.(!empty($js
74ac0 6f 6e 44 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 29 29 20 7b onData['archive']['exclude'])).{
74ae0 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 6a .$package->setArchiveExcludes($j
74b00 73 6f 6e 44 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 29 3b 0a sonData['archive']['exclude']);.
74b20 7d 0a 7d 0a 7d 0a 0a 0a 20 24 74 65 6d 70 54 61 72 67 65 74 20 3d 20 73 79 73 5f 67 65 74 5f 74 }.}.}....$tempTarget.=.sys_get_t
74b40 65 6d 70 5f 64 69 72 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 emp_dir().'/composer_archive'.un
74b60 69 71 69 64 28 29 2e 27 2e 27 2e 24 66 6f 72 6d 61 74 3b 0a 24 66 69 6c 65 73 79 73 74 65 6d 2d iqid().'.'.$format;.$filesystem-
74b80 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 6e 61 6d 65 28 24 >ensureDirectoryExists(dirname($
74ba0 74 65 6d 70 54 61 72 67 65 74 29 29 3b 0a 0a 24 61 72 63 68 69 76 65 50 61 74 68 20 3d 20 24 75 tempTarget));..$archivePath.=.$u
74bc0 73 61 62 6c 65 41 72 63 68 69 76 65 72 2d 3e 61 72 63 68 69 76 65 28 24 73 6f 75 72 63 65 50 61 sableArchiver->archive($sourcePa
74be0 74 68 2c 20 24 74 65 6d 70 54 61 72 67 65 74 2c 20 24 66 6f 72 6d 61 74 2c 20 24 70 61 63 6b 61 th,.$tempTarget,.$format,.$packa
74c00 67 65 2d 3e 67 65 74 41 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 29 29 3b 0a 72 65 6e 61 6d ge->getArchiveExcludes());.renam
74c20 65 28 24 61 72 63 68 69 76 65 50 61 74 68 2c 20 24 74 61 72 67 65 74 29 3b 0a 0a 0a 20 69 66 20 e($archivePath,.$target);....if.
74c40 28 21 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 (!$package.instanceof.RootPackag
74c60 65 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 eInterface).{.$filesystem->remov
74c80 65 44 69 72 65 63 74 6f 72 79 28 24 73 6f 75 72 63 65 50 61 74 68 29 3b 0a 7d 0a 24 66 69 6c 65 eDirectory($sourcePath);.}.$file
74ca0 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 28 24 74 65 6d 70 54 61 72 67 65 74 29 3b 0a 0a 72 65 system->remove($tempTarget);..re
74cc0 74 75 72 6e 20 24 74 61 72 67 65 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a turn.$target;.}.}.<?php.........
74ce0 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 41 72 ...namespace.Composer\Package\Ar
74d00 63 68 69 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 41 72 63 68 69 76 65 72 chiver;.......interface.Archiver
74d20 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e Interface.{...........public.fun
74d40 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 74 61 72 67 65 74 2c ction.archive($sources,.$target,
74d60 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 20 3d 20 61 72 72 61 .$format,.array.$excludes.=.arra
74d80 79 28 29 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 73 y());..........public.function.s
74da0 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 70 65 29 3b 0a 7d upports($format,.$sourceType);.}
74dc0 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
74de0 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 53 79 6d 66 oser\Package\Archiver;..use.Symf
74e00 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 61 62 73 74 72 61 ony\Component\Finder;.....abstra
74e20 63 74 20 63 6c 61 73 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 ct.class.BaseExcludeFilter.{....
74e40 70 72 6f 74 65 63 74 65 64 20 24 73 6f 75 72 63 65 50 61 74 68 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 protected.$sourcePath;.....prote
74e60 63 74 65 64 20 24 65 78 63 6c 75 64 65 50 61 74 74 65 72 6e 73 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 cted.$excludePatterns;.....publi
74e80 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 50 61 c.function.__construct($sourcePa
74ea0 74 68 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 50 61 74 68 20 3d 20 24 73 6f 75 72 63 th).{.$this->sourcePath.=.$sourc
74ec0 65 50 61 74 68 3b 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 ePath;.$this->excludePatterns.=.
74ee0 61 72 72 61 79 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 array();.}............public.fun
74f00 63 74 69 6f 6e 20 66 69 6c 74 65 72 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c 20 24 65 78 63 ction.filter($relativePath,.$exc
74f20 6c 75 64 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 50 lude).{.foreach.($this->excludeP
74f40 61 74 74 65 72 6e 73 20 61 73 20 24 70 61 74 74 65 72 6e 44 61 74 61 29 20 7b 0a 6c 69 73 74 28 atterns.as.$patternData).{.list(
74f60 24 70 61 74 74 65 72 6e 2c 20 24 6e 65 67 61 74 65 2c 20 24 73 74 72 69 70 4c 65 61 64 69 6e 67 $pattern,.$negate,.$stripLeading
74f80 53 6c 61 73 68 29 20 3d 20 24 70 61 74 74 65 72 6e 44 61 74 61 3b 0a 0a 69 66 20 28 24 73 74 72 Slash).=.$patternData;..if.($str
74fa0 69 70 4c 65 61 64 69 6e 67 53 6c 61 73 68 29 20 7b 0a 24 70 61 74 68 20 3d 20 73 75 62 73 74 72 ipLeadingSlash).{.$path.=.substr
74fc0 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c 20 31 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 ($relativePath,.1);.}.else.{.$pa
74fe0 74 68 20 3d 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f th.=.$relativePath;.}..if.(preg_
75000 6d 61 74 63 68 28 24 70 61 74 74 65 72 6e 2c 20 24 70 61 74 68 29 29 20 7b 0a 24 65 78 63 6c 75 match($pattern,.$path)).{.$exclu
75020 64 65 20 3d 20 21 24 6e 65 67 61 74 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 78 63 6c de.=.!$negate;.}.}..return.$excl
75040 75 64 65 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 ude;.}..........protected.functi
75060 6f 6e 20 70 61 72 73 65 4c 69 6e 65 73 28 61 72 72 61 79 20 24 6c 69 6e 65 73 2c 20 24 6c 69 6e on.parseLines(array.$lines,.$lin
75080 65 50 61 72 73 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 0a eParser).{.return.array_filter(.
750a0 61 72 72 61 79 5f 6d 61 70 28 0a 66 75 6e 63 74 69 6f 6e 20 28 24 6c 69 6e 65 29 20 75 73 65 20 array_map(.function.($line).use.
750c0 28 24 6c 69 6e 65 50 61 72 73 65 72 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 74 72 69 6d 28 24 6c 69 ($lineParser).{.$line.=.trim($li
750e0 6e 65 29 3b 0a 0a 69 66 20 28 21 24 6c 69 6e 65 20 7c 7c 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 ne);..if.(!$line.||.0.===.strpos
75100 28 24 6c 69 6e 65 2c 20 27 23 27 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 72 65 74 75 72 ($line,.'#')).{.return;.}..retur
75120 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 6c 69 6e 65 50 61 72 73 65 72 2c 20 24 6c n.call_user_func($lineParser,.$l
75140 69 6e 65 29 3b 0a 7d 2c 0a 24 6c 69 6e 65 73 0a 29 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 70 61 ine);.},.$lines.),.function.($pa
75160 74 74 65 72 6e 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 74 74 65 72 6e 20 21 3d 3d 20 6e 75 6c ttern).{.return.$pattern.!==.nul
75180 6c 3b 0a 7d 0a 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 l;.}.);.}.........protected.func
751a0 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 50 61 74 74 65 72 6e 73 28 24 72 75 6c 65 73 29 0a 7b 0a tion.generatePatterns($rules).{.
751c0 24 70 61 74 74 65 72 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 $patterns.=.array();.foreach.($r
751e0 75 6c 65 73 20 61 73 20 24 72 75 6c 65 29 20 7b 0a 24 70 61 74 74 65 72 6e 73 5b 5d 20 3d 20 24 ules.as.$rule).{.$patterns[].=.$
75200 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 50 61 74 74 65 72 6e 28 24 72 75 6c 65 29 3b 0a 7d 0a this->generatePattern($rule);.}.
75220 0a 72 65 74 75 72 6e 20 24 70 61 74 74 65 72 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f .return.$patterns;.}.........pro
75240 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 74 65 72 6e 28 tected.function.generatePattern(
75260 24 72 75 6c 65 29 0a 7b 0a 24 6e 65 67 61 74 65 20 3d 20 66 61 6c 73 65 3b 0a 24 70 61 74 74 65 $rule).{.$negate.=.false;.$patte
75280 72 6e 20 3d 20 27 7b 27 3b 0a 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 72 75 6c 65 29 20 26 26 20 rn.=.'{';..if.(strlen($rule).&&.
752a0 24 72 75 6c 65 5b 30 5d 20 3d 3d 3d 20 27 21 27 29 20 7b 0a 24 6e 65 67 61 74 65 20 3d 20 74 72 $rule[0].===.'!').{.$negate.=.tr
752c0 75 65 3b 0a 24 72 75 6c 65 20 3d 20 73 75 62 73 74 72 28 24 72 75 6c 65 2c 20 31 29 3b 0a 7d 0a ue;.$rule.=.substr($rule,.1);.}.
752e0 0a 69 66 20 28 73 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 .if.(strlen($rule).&&.$rule[0].=
75300 3d 3d 20 27 2f 27 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 2e 3d 20 27 5e 2f 27 3b 0a 24 72 75 6c ==.'/').{.$pattern..=.'^/';.$rul
75320 65 20 3d 20 73 75 62 73 74 72 28 24 72 75 6c 65 2c 20 31 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 e.=.substr($rule,.1);.}.elseif.(
75340 73 74 72 6c 65 6e 28 24 72 75 6c 65 29 20 2d 20 31 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 72 75 strlen($rule).-.1.===.strpos($ru
75360 6c 65 2c 20 27 2f 27 29 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 2e 3d 20 27 2f 27 3b 0a 24 72 75 le,.'/')).{.$pattern..=.'/';.$ru
75380 6c 65 20 3d 20 73 75 62 73 74 72 28 24 72 75 6c 65 2c 20 30 2c 20 2d 31 29 3b 0a 7d 20 65 6c 73 le.=.substr($rule,.0,.-1);.}.els
753a0 65 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 72 75 6c 65 2c 20 27 2f 27 eif.(false.===.strpos($rule,.'/'
753c0 29 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 2e 3d 20 27 2f 27 3b 0a 7d 0a 0a 0a 20 24 70 61 74 74 )).{.$pattern..=.'/';.}....$patt
753e0 65 72 6e 20 2e 3d 20 73 75 62 73 74 72 28 46 69 6e 64 65 72 5c 47 6c 6f 62 3a 3a 74 6f 52 65 67 ern..=.substr(Finder\Glob::toReg
75400 65 78 28 24 72 75 6c 65 29 2c 20 32 2c 20 2d 32 29 20 2e 20 27 28 3f 3d 24 7c 2f 29 27 3b 0a 0a ex($rule),.2,.-2)...'(?=$|/)';..
75420 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 70 61 74 74 65 72 6e 20 2e 20 27 7d 27 2c 20 24 6e 65 return.array($pattern...'}',.$ne
75440 67 61 74 65 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a gate,.false);.}.}.<?php.........
75460 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 41 72 ...namespace.Composer\Package\Ar
75480 63 68 69 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 6f 73 65 72 45 78 63 6c chiver;.......class.ComposerExcl
754a0 75 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 udeFilter.extends.BaseExcludeFil
754c0 74 65 72 0a 7b 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 ter.{.....public.function.__cons
754e0 74 72 75 63 74 28 24 73 6f 75 72 63 65 50 61 74 68 2c 20 61 72 72 61 79 20 24 65 78 63 6c 75 64 truct($sourcePath,.array.$exclud
75500 65 52 75 6c 65 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 73 eRules).{.parent::__construct($s
75520 6f 75 72 63 65 50 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 50 61 74 74 65 72 ourcePath);.$this->excludePatter
75540 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 50 61 74 74 65 72 6e 73 28 24 65 78 ns.=.$this->generatePatterns($ex
75560 63 6c 75 64 65 52 75 6c 65 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a cludeRules);.}.}.<?php..........
75580 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
755a0 68 69 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 45 78 63 6c 75 64 65 46 hiver;.........class.GitExcludeF
755c0 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 65 72 0a ilter.extends.BaseExcludeFilter.
755e0 7b 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
75600 63 74 28 24 73 6f 75 72 63 65 50 61 74 68 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 ct($sourcePath).{.parent::__cons
75620 74 72 75 63 74 28 24 73 6f 75 72 63 65 50 61 74 68 29 3b 0a 0a 69 66 20 28 66 69 6c 65 5f 65 78 truct($sourcePath);..if.(file_ex
75640 69 73 74 73 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 29 ists($sourcePath.'/.gitignore'))
75660 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 68 69 .{.$this->excludePatterns.=.$thi
75680 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 68 2e s->parseLines(.file($sourcePath.
756a0 27 2f 2e 67 69 74 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 61 '/.gitignore'),.array($this,.'pa
756c0 72 73 65 47 69 74 49 67 6e 6f 72 65 4c 69 6e 65 27 29 0a 29 3b 0a 7d 0a 69 66 20 28 66 69 6c 65 rseGitIgnoreLine').);.}.if.(file
756e0 5f 65 78 69 73 74 73 28 24 73 6f 75 72 63 65 50 61 74 68 2e 27 2f 2e 67 69 74 61 74 74 72 69 62 _exists($sourcePath.'/.gitattrib
75700 75 74 65 73 27 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 utes')).{.$this->excludePatterns
75720 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 50 61 .=.array_merge(.$this->excludePa
75740 74 74 65 72 6e 73 2c 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 4c 69 6e 65 73 28 0a 66 69 6c 65 28 tterns,.$this->parseLines(.file(
75760 24 73 6f 75 72 63 65 50 61 74 68 2e 27 2f 2e 67 69 74 61 74 74 72 69 62 75 74 65 73 27 29 2c 0a $sourcePath.'/.gitattributes'),.
75780 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 70 61 72 73 65 47 69 74 41 74 74 72 69 62 75 74 65 73 array($this,.'parseGitAttributes
757a0 4c 69 6e 65 27 29 0a 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 Line').));.}.}.........public.fu
757c0 6e 63 74 69 6f 6e 20 70 61 72 73 65 47 69 74 49 67 6e 6f 72 65 4c 69 6e 65 28 24 6c 69 6e 65 29 nction.parseGitIgnoreLine($line)
757e0 0a 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 74 74 65 72 6e .{.return.$this->generatePattern
75800 28 24 6c 69 6e 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 ($line);.}.........public.functi
75820 6f 6e 20 70 61 72 73 65 47 69 74 41 74 74 72 69 62 75 74 65 73 4c 69 6e 65 28 24 6c 69 6e 65 29 on.parseGitAttributesLine($line)
75840 0a 7b 0a 24 70 61 72 74 73 20 3d 20 70 72 65 67 5f 73 70 6c 69 74 28 27 23 5c 73 2b 23 27 2c 20 .{.$parts.=.preg_split('#\s+#',.
75860 24 6c 69 6e 65 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 70 61 72 74 73 29 20 21 3d 20 32 29 $line);..if.(count($parts).!=.2)
75880 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 72 74 73 5b 31 5d .{.return.null;.}..if.($parts[1]
758a0 20 3d 3d 3d 20 27 65 78 70 6f 72 74 2d 69 67 6e 6f 72 65 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 .===.'export-ignore').{.return.$
758c0 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 50 61 74 74 65 72 6e 28 24 70 61 72 74 73 5b 30 5d 29 this->generatePattern($parts[0])
758e0 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 70 61 ;.}.}.}.<?php............namespa
75900 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
75920 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 3b 0a 0a 0a 0a se.Symfony\Component\Finder;....
75940 0a 0a 0a 63 6c 61 73 73 20 48 67 45 78 63 6c 75 64 65 46 69 6c 74 65 72 20 65 78 74 65 6e 64 73 ...class.HgExcludeFilter.extends
75960 20 42 61 73 65 45 78 63 6c 75 64 65 46 69 6c 74 65 72 0a 7b 0a 63 6f 6e 73 74 20 48 47 5f 49 47 .BaseExcludeFilter.{.const.HG_IG
75980 4e 4f 52 45 5f 52 45 47 45 58 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 48 47 5f 49 47 4e 4f 52 45 5f NORE_REGEX.=.1;.const.HG_IGNORE_
759a0 47 4c 4f 42 20 3d 20 32 3b 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 74 74 65 72 GLOB.=.2;......protected.$patter
759c0 6e 4d 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 5f 63 nMode;.......public.function.__c
759e0 6f 6e 73 74 72 75 63 74 28 24 73 6f 75 72 63 65 50 61 74 68 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a onstruct($sourcePath).{.parent::
75a00 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 0a 24 74 68 69 73 __construct($sourcePath);..$this
75a20 2d 3e 70 61 74 74 65 72 6e 4d 6f 64 65 20 3d 20 73 65 6c 66 3a 3a 48 47 5f 49 47 4e 4f 52 45 5f ->patternMode.=.self::HG_IGNORE_
75a40 52 45 47 45 58 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 REGEX;..if.(file_exists($sourceP
75a60 61 74 68 2e 27 2f 2e 68 67 69 67 6e 6f 72 65 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c ath.'/.hgignore')).{.$this->excl
75a80 75 64 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 udePatterns.=.$this->parseLines(
75aa0 0a 66 69 6c 65 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 29 2c .file($sourcePath.'/.hgignore'),
75ac0 0a 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 70 61 72 73 65 48 67 49 67 6e 6f 72 65 4c 69 6e 65 .array($this,.'parseHgIgnoreLine
75ae0 27 29 0a 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 63 74 69 6f ').);.}.}.........public.functio
75b00 6e 20 70 61 72 73 65 48 67 49 67 6e 6f 72 65 4c 69 6e 65 28 24 6c 69 6e 65 29 0a 7b 0a 69 66 20 n.parseHgIgnoreLine($line).{.if.
75b20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 73 79 6e 74 61 78 5c 73 2a 3a 5c 73 2a 28 67 6c 6f (preg_match('#^syntax\s*:\s*(glo
75b40 62 7c 72 65 67 65 78 70 29 24 23 27 2c 20 24 6c 69 6e 65 2c 20 24 6d 61 74 63 68 65 73 29 29 20 b|regexp)$#',.$line,.$matches)).
75b60 7b 0a 69 66 20 28 24 6d 61 74 63 68 65 73 5b 31 5d 20 3d 3d 3d 20 27 67 6c 6f 62 27 29 20 7b 0a {.if.($matches[1].===.'glob').{.
75b80 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 47 5f 49 47 $this->patternMode.=.self::HG_IG
75ba0 4e 4f 52 45 5f 47 4c 4f 42 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 NORE_GLOB;.}.else.{.$this->patte
75bc0 72 6e 4d 6f 64 65 20 3d 20 73 65 6c 66 3a 3a 48 47 5f 49 47 4e 4f 52 45 5f 52 45 47 45 58 3b 0a rnMode.=.self::HG_IGNORE_REGEX;.
75be0 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 61 }..return.null;.}..if.($this->pa
75c00 74 74 65 72 6e 4d 6f 64 65 20 3d 3d 20 73 65 6c 66 3a 3a 48 47 5f 49 47 4e 4f 52 45 5f 47 4c 4f tternMode.==.self::HG_IGNORE_GLO
75c20 42 29 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 47 6c B).{.return.$this->patternFromGl
75c40 6f 62 28 24 6c 69 6e 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ob($line);.}.else.{.return.$this
75c60 2d 3e 70 61 74 74 65 72 6e 46 72 6f 6d 52 65 67 65 78 28 24 6c 69 6e 65 29 3b 0a 7d 0a 7d 0a 0a ->patternFromRegex($line);.}.}..
75c80 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 61 74 74 65 72 .......protected.function.patter
75ca0 6e 46 72 6f 6d 47 6c 6f 62 28 24 6c 69 6e 65 29 0a 7b 0a 24 70 61 74 74 65 72 6e 20 3d 20 27 23 nFromGlob($line).{.$pattern.=.'#
75cc0 27 2e 73 75 62 73 74 72 28 46 69 6e 64 65 72 5c 47 6c 6f 62 3a 3a 74 6f 52 65 67 65 78 28 24 6c '.substr(Finder\Glob::toRegex($l
75ce0 69 6e 65 29 2c 20 32 2c 20 2d 31 29 2e 27 23 27 3b 0a 24 70 61 74 74 65 72 6e 20 3d 20 73 74 72 ine),.2,.-1).'#';.$pattern.=.str
75d00 5f 72 65 70 6c 61 63 65 28 27 5b 5e 2f 5d 2a 27 2c 20 27 2e 2a 27 2c 20 24 70 61 74 74 65 72 6e _replace('[^/]*',.'.*',.$pattern
75d20 29 3b 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 );..return.array($pattern,.false
75d40 2c 20 74 72 75 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 ,.true);.}.........public.functi
75d60 6f 6e 20 70 61 74 74 65 72 6e 46 72 6f 6d 52 65 67 65 78 28 24 6c 69 6e 65 29 0a 7b 0a 0a 20 24 on.patternFromRegex($line).{...$
75d80 70 61 74 74 65 72 6e 20 3d 20 27 23 27 2e 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 28 28 3f pattern.=.'#'.preg_replace('/((?
75da0 3a 5c 5c 5c 5c 5c 5c 5c 5c 29 2a 29 28 5c 5c 5c 5c 3f 29 23 2f 27 2c 20 27 5c 31 5c 32 5c 32 5c :\\\\\\\\)*)(\\\\?)#/',.'\1\2\2\
75dc0 5c 23 27 2c 20 24 6c 69 6e 65 29 2e 27 23 27 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 \#',.$line).'#';..return.array($
75de0 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 7d 0a 3c 3f 70 68 70 pattern,.false,.true);.}.}.<?php
75e00 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 50 ............namespace.Composer\P
75e20 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 61 73 73 20 50 68 61 ackage\Archiver;.......class.Pha
75e40 72 41 72 63 68 69 76 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 41 72 63 68 69 76 65 72 49 6e 74 rArchiver.implements.ArchiverInt
75e60 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 24 66 6f 72 6d 61 erface.{.protected.static.$forma
75e80 74 73 20 3d 20 61 72 72 61 79 28 0a 27 7a 69 70 27 20 3d 3e 20 5c 50 68 61 72 3a 3a 5a 49 50 2c ts.=.array(.'zip'.=>.\Phar::ZIP,
75ea0 0a 27 74 61 72 27 20 3d 3e 20 5c 50 68 61 72 3a 3a 54 41 52 2c 0a 29 3b 0a 0a 0a 0a 0a 70 75 62 .'tar'.=>.\Phar::TAR,.);.....pub
75ec0 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,.$
75ee0 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
75f00 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
75f20 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(
75f40 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);.}..
75f60 74 72 79 20 7b 0a 24 70 68 61 72 20 3d 20 6e 65 77 20 5c 50 68 61 72 44 61 74 61 28 24 74 61 72 try.{.$phar.=.new.\PharData($tar
75f80 67 65 74 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 73 74 61 74 69 63 3a 3a 24 66 6f 72 6d 61 74 get,.null,.null,.static::$format
75fa0 73 5b 24 66 6f 72 6d 61 74 5d 29 3b 0a 24 66 69 6c 65 73 20 3d 20 6e 65 77 20 41 72 63 68 69 76 s[$format]);.$files.=.new.Archiv
75fc0 61 62 6c 65 46 69 6c 65 73 46 69 6e 64 65 72 28 24 73 6f 75 72 63 65 73 2c 20 24 65 78 63 6c 75 ableFilesFinder($sources,.$exclu
75fe0 64 65 73 29 3b 0a 24 70 68 61 72 2d 3e 62 75 69 6c 64 46 72 6f 6d 49 74 65 72 61 74 6f 72 28 24 des);.$phar->buildFromIterator($
76000 66 69 6c 65 73 2c 20 24 73 6f 75 72 63 65 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 61 72 67 65 files,.$sources);..return.$targe
76020 74 3b 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 t;.}.catch.(\UnexpectedValueExce
76040 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 22 ption.$e).{.$message.=.sprintf("
76060 43 6f 75 6c 64 20 6e 6f 74 20 63 72 65 61 74 65 20 61 72 63 68 69 76 65 20 27 25 73 27 20 66 72 Could.not.create.archive.'%s'.fr
76080 6f 6d 20 27 25 73 27 3a 20 25 73 22 2c 0a 24 74 61 72 67 65 74 2c 0a 24 73 6f 75 72 63 65 73 2c om.'%s':.%s",.$target,.$sources,
760a0 0a 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 0a 29 3b 0a 0a 74 68 72 6f 77 20 6e 65 77 20 .$e->getMessage().);..throw.new.
760c0 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 2c 20 24 65 2d 3e \RuntimeException($message,.$e->
760e0 67 65 74 43 6f 64 65 28 29 2c 20 24 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 getCode(),.$e);.}.}.....public.f
76100 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 20 24 73 6f 75 72 63 unction.supports($format,.$sourc
76120 65 54 79 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 eType).{.return.isset(static::$f
76140 6f 72 6d 61 74 73 5b 24 66 6f 72 6d 61 74 5d 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a ormats[$format]);.}.}.<?php.....
76160 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 67 .......namespace.Composer\Packag
76180 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 79 5c 52 65 70 6f e;..use.Composer\Repository\Repo
761a0 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 52 65 sitoryInterface;.use.Composer\Re
761c0 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 0a 0a 0a pository\PlatformRepository;....
761e0 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 42 61 73 65 50 61 63 6b 61 67 65 20 69 6d ...abstract.class.BasePackage.im
76200 70 6c 65 6d 65 6e 74 73 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 75 62 6c plements.PackageInterface.{.publ
76220 69 63 20 73 74 61 74 69 63 20 24 73 75 70 70 6f 72 74 65 64 4c 69 6e 6b 54 79 70 65 73 20 3d 20 ic.static.$supportedLinkTypes.=.
76240 61 72 72 61 79 28 0a 27 72 65 71 75 69 72 65 27 20 3d 3e 20 61 72 72 61 79 28 27 64 65 73 63 72 array(.'require'.=>.array('descr
76260 69 70 74 69 6f 6e 27 20 3d 3e 20 27 72 65 71 75 69 72 65 73 27 2c 20 27 6d 65 74 68 6f 64 27 20 iption'.=>.'requires',.'method'.
76280 3d 3e 20 27 72 65 71 75 69 72 65 73 27 29 2c 0a 27 63 6f 6e 66 6c 69 63 74 27 20 3d 3e 20 61 72 =>.'requires'),.'conflict'.=>.ar
762a0 72 61 79 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 27 63 6f 6e 66 6c 69 63 74 73 27 ray('description'.=>.'conflicts'
762c0 2c 20 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 63 6f 6e 66 6c 69 63 74 73 27 29 2c 0a 27 70 72 6f ,.'method'.=>.'conflicts'),.'pro
762e0 76 69 64 65 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 3d 3e 20 vide'.=>.array('description'.=>.
76300 27 70 72 6f 76 69 64 65 73 27 2c 20 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 70 72 6f 76 69 64 65 'provides',.'method'.=>.'provide
76320 73 27 29 2c 0a 27 72 65 70 6c 61 63 65 27 20 3d 3e 20 61 72 72 61 79 28 27 64 65 73 63 72 69 70 s'),.'replace'.=>.array('descrip
76340 74 69 6f 6e 27 20 3d 3e 20 27 72 65 70 6c 61 63 65 73 27 2c 20 27 6d 65 74 68 6f 64 27 20 3d 3e tion'.=>.'replaces',.'method'.=>
76360 20 27 72 65 70 6c 61 63 65 73 27 29 2c 0a 27 72 65 71 75 69 72 65 2d 64 65 76 27 20 3d 3e 20 61 .'replaces'),.'require-dev'.=>.a
76380 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 65 73 20 rray('description'.=>.'requires.
763a0 28 66 6f 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 29 27 2c 20 27 6d 65 74 68 6f 64 27 20 3d 3e 20 (for.development)',.'method'.=>.
763c0 27 64 65 76 52 65 71 75 69 72 65 73 27 29 2c 0a 29 3b 0a 0a 63 6f 6e 73 74 20 53 54 41 42 49 4c 'devRequires'),.);..const.STABIL
763e0 49 54 59 5f 53 54 41 42 4c 45 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 53 54 41 42 49 4c 49 54 59 5f ITY_STABLE.=.0;.const.STABILITY_
76400 52 43 20 3d 20 35 3b 0a 63 6f 6e 73 74 20 53 54 41 42 49 4c 49 54 59 5f 42 45 54 41 20 3d 20 31 RC.=.5;.const.STABILITY_BETA.=.1
76420 30 3b 0a 63 6f 6e 73 74 20 53 54 41 42 49 4c 49 54 59 5f 41 4c 50 48 41 20 3d 20 31 35 3b 0a 63 0;.const.STABILITY_ALPHA.=.15;.c
76440 6f 6e 73 74 20 53 54 41 42 49 4c 49 54 59 5f 44 45 56 20 3d 20 32 30 3b 0a 0a 70 75 62 6c 69 63 onst.STABILITY_DEV.=.20;..public
76460 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 61 79 28 0a 27 73 .static.$stabilities.=.array(.'s
76480 74 61 62 6c 65 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 49 4c 49 54 59 5f 53 54 41 42 4c 45 table'.=>.self::STABILITY_STABLE
764a0 2c 0a 27 52 43 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 49 4c 49 54 59 5f 52 43 2c 0a 27 62 ,.'RC'.=>.self::STABILITY_RC,.'b
764c0 65 74 61 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 49 4c 49 54 59 5f 42 45 54 41 2c 0a 27 61 eta'.=>.self::STABILITY_BETA,.'a
764e0 6c 70 68 61 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 49 4c 49 54 59 5f 41 4c 50 48 41 2c 0a lpha'.=>.self::STABILITY_ALPHA,.
76500 27 64 65 76 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 49 4c 49 54 59 5f 44 45 56 2c 0a 29 3b 'dev'.=>.self::STABILITY_DEV,.);
76520 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 24 69 64 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 61 ......public.$id;..protected.$na
76540 6d 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 79 4e 61 6d 65 3b 0a 0a 70 72 6f 74 me;.protected.$prettyName;..prot
76560 65 63 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 72 ected.$repository;.protected.$tr
76580 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ansportOptions;.......public.fun
765a0 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 ction.__construct($name).{.$this
765c0 2d 3e 70 72 65 74 74 79 4e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 6e 61 6d ->prettyName.=.$name;.$this->nam
765e0 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 24 74 68 69 73 2d 3e 69 64 e.=.strtolower($name);.$this->id
76600 20 3d 20 2d 31 3b 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 .=.-1;.$this->transportOptions.=
76620 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 74 69 6f 6e 20 .array();.}.....public.function.
76640 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 6d 65 3b 0a getName().{.return.$this->name;.
76660 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 4e }.....public.function.getPrettyN
76680 61 6d 65 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 4e 61 6d 65 ame().{.return.$this->prettyName
766a0 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 73 ;.}.....public.function.getNames
766c0 28 29 0a 7b 0a 24 6e 61 6d 65 73 20 3d 20 61 72 72 61 79 28 0a 24 74 68 69 73 2d 3e 67 65 74 4e ().{.$names.=.array(.$this->getN
766e0 61 6d 65 28 29 20 3d 3e 20 74 72 75 65 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 ame().=>.true,.);..foreach.($thi
76700 73 2d 3e 67 65 74 50 72 6f 76 69 64 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 6e 61 s->getProvides().as.$link).{.$na
76720 6d 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 75 65 3b 0a mes[$link->getTarget()].=.true;.
76740 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 52 65 70 6c 61 63 65 73 28 29 }..foreach.($this->getReplaces()
76760 20 61 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 .as.$link).{.$names[$link->getTa
76780 72 67 65 74 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f rget()].=.true;.}..return.array_
767a0 6b 65 79 73 28 24 6e 61 6d 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 keys($names);.}.....public.funct
767c0 69 6f 6e 20 73 65 74 49 64 28 24 69 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 64 20 3d 20 24 69 64 ion.setId($id).{.$this->id.=.$id
767e0 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 64 28 29 0a ;.}.....public.function.getId().
76800 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 64 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 {.return.$this->id;.}.....public
76820 20 66 75 6e 63 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 .function.setRepository(Reposito
76840 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 73 69 74 6f 72 79 29 0a 7b 0a 69 66 20 28 24 ryInterface.$repository).{.if.($
76860 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 26 26 20 24 72 65 70 6f 73 69 74 6f 72 79 20 this->repository.&&.$repository.
76880 21 3d 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 74 68 72 6f 77 20 6e !==.$this->repository).{.throw.n
768a0 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 41 20 70 61 63 6b 61 67 65 20 63 61 ew.\LogicException('A.package.ca
768c0 6e 20 6f 6e 6c 79 20 62 65 20 61 64 64 65 64 20 74 6f 20 6f 6e 65 20 72 65 70 6f 73 69 74 6f 72 n.only.be.added.to.one.repositor
768e0 79 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 72 65 70 6f y');.}.$this->repository.=.$repo
76900 73 69 74 6f 72 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 67 65 sitory;.}.....public.function.ge
76920 74 52 65 70 6f 73 69 74 6f 72 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 tRepository().{.return.$this->re
76940 70 6f 73 69 74 6f 72 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 pository;.}.....public.function.
76960 67 65 74 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 getTransportOptions().{.return.$
76980 74 68 69 73 2d 3e 74 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a this->transportOptions;.}.......
769a0 70 75 62 6c 69 63 20 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 public.function.setTransportOpti
769c0 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 74 72 61 ons(array.$options).{.$this->tra
769e0 6e 73 70 6f 72 74 4f 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 nsportOptions.=.$options;.}.....
76a00 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 50 6c 61 74 66 6f 72 6d 28 29 0a 7b ..public.function.isPlatform().{
76a20 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 20 69 .return.$this->getRepository().i
76a40 6e 73 74 61 6e 63 65 6f 66 20 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a nstanceof.PlatformRepository;.}.
76a60 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 4e ......public.function.getUniqueN
76a80 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 2e ame().{.return.$this->getName().
76aa0 27 2d 27 2e 24 74 68 69 73 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a 70 75 62 6c '-'.$this->getVersion();.}..publ
76ac0 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 71 75 61 6c 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 ic.function.equals(PackageInterf
76ae0 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 73 65 6c 66 20 3d 20 24 74 68 69 73 3b 0a 69 ace.$package).{.$self.=.$this;.i
76b00 66 20 28 24 74 68 69 73 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 f.($this.instanceof.AliasPackage
76b20 29 20 7b 0a 24 73 65 6c 66 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b ).{.$self.=.$this->getAliasOf();
76b40 0a 7d 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 .}.if.($package.instanceof.Alias
76b60 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 63 6b 61 67 65 2d 3e Package).{.$package.=.$package->
76b80 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 getAliasOf();.}..return.$package
76ba0 20 3d 3d 3d 20 24 73 65 6c 66 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 .===.$self;.}.......public.funct
76bc0 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 24 74 68 69 73 2d ion.__toString().{.return.$this-
76be0 3e 67 65 74 55 6e 69 71 75 65 4e 61 6d 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 >getUniqueName();.}..public.func
76c00 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 tion.getPrettyString().{.return.
76c20 24 74 68 69 73 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 27 2e 24 74 68 69 73 $this->getPrettyName().'.'.$this
76c40 2d 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 0a 0a 70 75 62 6c ->getPrettyVersion();.}.....publ
76c60 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 73 69 6f 6e ic.function.getFullPrettyVersion
76c80 28 24 74 72 75 6e 63 61 74 65 20 3d 20 74 72 75 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d ($truncate.=.true).{.if.(!$this-
76ca0 3e 69 73 44 65 76 28 29 20 7c 7c 20 21 69 6e 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 67 65 74 >isDev().||.!in_array($this->get
76cc0 53 6f 75 72 63 65 54 79 70 65 28 29 2c 20 61 72 72 61 79 28 27 68 67 27 2c 20 27 67 69 74 27 29 SourceType(),.array('hg',.'git')
76ce0 29 29 20 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 56 65 72 73 )).{.return.$this->getPrettyVers
76d00 69 6f 6e 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 72 75 6e 63 61 74 65 20 26 26 20 73 74 72 ion();.}....if.($truncate.&&.str
76d20 6c 65 6e 28 24 74 68 69 73 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 len($this->getSourceReference())
76d40 20 3d 3d 3d 20 34 30 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 50 72 65 74 .===.40).{.return.$this->getPret
76d60 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 27 20 27 20 2e 20 73 75 62 73 74 72 28 24 74 68 69 73 tyVersion()...'.'...substr($this
76d80 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 37 29 3b 0a 7d ->getSourceReference(),.0,.7);.}
76da0 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e ..return.$this->getPrettyVersion
76dc0 28 29 20 2e 20 27 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 ()...'.'...$this->getSourceRefer
76de0 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 67 65 74 53 74 ence();.}..public.function.getSt
76e00 61 62 69 6c 69 74 79 50 72 69 6f 72 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a abilityPriority().{.return.self:
76e20 3a 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 74 68 69 73 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 :$stabilities[$this->getStabilit
76e40 79 28 29 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6c 6f 6e 65 y()];.}..public.function.__clone
76e60 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 3d 20 6e 75 6c 6c 3b 0a 24 ().{.$this->repository.=.null;.$
76e80 74 68 69 73 2d 3e 69 64 20 3d 20 2d 31 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a this->id.=.-1;.}.}.<?php........
76ea0 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;.
76ec0 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 20 65 78 74 65 ......class.CompletePackage.exte
76ee0 6e 64 73 20 50 61 63 6b 61 67 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6d 70 6c 65 74 65 50 nds.Package.implements.CompleteP
76f00 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 72 65 70 ackageInterface.{.protected.$rep
76f20 6f 73 69 74 6f 72 69 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 69 63 65 6e 73 65 20 3d 20 ositories;.protected.$license.=.
76f40 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6b 65 79 77 6f 72 64 73 3b 0a 70 72 array();.protected.$keywords;.pr
76f60 6f 74 65 63 74 65 64 20 24 61 75 74 68 6f 72 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 73 otected.$authors;.protected.$des
76f80 63 72 69 70 74 69 6f 6e 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 68 6f 6d 65 70 61 67 65 3b 0a 70 cription;.protected.$homepage;.p
76fa0 72 6f 74 65 63 74 65 64 20 24 73 63 72 69 70 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f rotected.$scripts.=.array();.pro
76fc0 74 65 63 74 65 64 20 24 73 75 70 70 6f 72 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 tected.$support.=.array();.prote
76fe0 63 74 65 64 20 24 61 62 61 6e 64 6f 6e 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 70 75 62 cted.$abandoned.=.false;.....pub
77000 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 63 72 69 70 74 73 28 61 72 72 61 79 20 24 73 lic.function.setScripts(array.$s
77020 63 72 69 70 74 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 63 72 69 70 74 73 20 3d 20 24 73 63 72 69 cripts).{.$this->scripts.=.$scri
77040 70 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 53 63 pts;.}.....public.function.getSc
77060 72 69 70 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 63 72 69 70 74 73 3b ripts().{.return.$this->scripts;
77080 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 52 65 70 6f .}.......public.function.setRepo
770a0 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 69 73 2d sitories($repositories).{.$this-
770c0 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 7d >repositories.=.$repositories;.}
770e0 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 6f 73 69 74 6f .....public.function.getReposito
77100 72 69 65 73 28 29 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 ries().{.return.$this->repositor
77120 69 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 73 65 74 ies;.}.......public.function.set
77140 4c 69 63 65 6e 73 65 28 61 72 72 61 79 20 24 6c 69 63 65 6e 73 65 29 0a 7b 0a 24 74 68 69 73 2d License(array.$license).{.$this-
77160 3e 6c 69 63 65 6e 73 65 20 3d 20 24 6c 69 63 65 6e 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 >license.=.$license;.}.....publi
77180 63 20 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 c.function.getLicense().{.return
771a0 20 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 .$this->license;.}.......public.
771c0 66 75 6e 63 74 69 6f 6e 20 73 65 74 4b 65 79 77 6f 72 64 73 28 61 72 72 61 79 20 24 6b 65 79 77 function.setKeywords(array.$keyw
771e0 6f 72 64 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6b 65 79 77 6f 72 64 73 20 3d 20 24 6b 65 79 77 6f ords).{.$this->keywords.=.$keywo
77200 72 64 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 4b 65 rds;.}.....public.function.getKe
77220 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 6b 65 79 77 6f 72 64 ywords().{.return.$this->keyword
77240 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 74 41 75 s;.}.......public.function.setAu
77260 74 68 6f 72 73 28 61 72 72 61 79 20 24 61 75 74 68 6f 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 thors(array.$authors).{.$this->a
77280 75 74 68 6f 72 73 20 3d 20 24 61 75 74 68 6f 72 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 uthors.=.$authors;.}.....public.
772a0 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.$
772c0 74 68 69 73 2d 3e 61 75 74 68 6f 72 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 this->authors;.}.......public.fu
772e0 6e 63 74 69 6f 6e 20 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 24 64 65 73 63 72 69 70 74 69 nction.setDescription($descripti
77300 6f 6e 29 0a 7b 0a 24 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 on).{.$this->description.=.$desc
77320 72 69 70 74 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 ription;.}.....public.function.g
77340 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 74 68 69 73 2d 3e etDescription().{.return.$this->
77360 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 description;.}.......public.func
77380 74 69 6f 6e 20 73 65 74 48 6f 6d 65 70 61 67 65 28 24 68 6f 6d 65 70 61 67 65 29 0a 7b 0a 24 74 tion.setHomepage($homepage).{.$t
773a0 68 69 73 2d 3e 68 6f 6d 65 70 61 67 65 20 3d 20 24 68 6f 6d 65 70 61 67 65 3b 0a 7d 0a 0a 0a 0a his->homepage.=.$homepage;.}....
773c0 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 67 65 28 29 0a 7b .public.function.getHomepage().{
773e0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 6f 6d 65 70 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a .return.$this->homepage;.}......
77400 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 75 70 70 6f 72 74 28 61 72 72 61 .public.function.setSupport(arra
77420 79 20 24 73 75 70 70 6f 72 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 75 70 70 6f 72 74 20 3d 20 24 y.$support).{.$this->support.=.$
77440 73 75 70 70 6f 72 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 support;.}.....public.function.g
77460 65 74 53 75 70 70 6f 72 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 75 70 70 etSupport().{.return.$this->supp
77480 6f 72 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 69 73 41 62 61 ort;.}.....public.function.isAba
774a0 6e 64 6f 6e 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 65 61 6e 29 20 24 74 68 69 ndoned().{.return.(boolean).$thi
774c0 73 2d 3e 61 62 61 6e 64 6f 6e 65 64 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 s->abandoned;.}.....public.funct
774e0 69 6f 6e 20 73 65 74 41 62 61 6e 64 6f 6e 65 64 28 24 61 62 61 6e 64 6f 6e 65 64 29 0a 7b 0a 24 ion.setAbandoned($abandoned).{.$
77500 74 68 69 73 2d 3e 61 62 61 6e 64 6f 6e 65 64 20 3d 20 24 61 62 61 6e 64 6f 6e 65 64 3b 0a 7d 0a this->abandoned.=.$abandoned;.}.
77520 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 6c 61 63 65 ......public.function.getReplace
77540 6d 65 6e 74 50 61 63 6b 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 5f 73 74 72 69 6e 67 mentPackage().{.return.is_string
77560 28 24 74 68 69 73 2d 3e 61 62 61 6e 64 6f 6e 65 64 29 20 3f 20 24 74 68 69 73 2d 3e 61 62 61 6e ($this->abandoned).?.$this->aban
77580 64 6f 6e 65 64 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 0a doned.:.null;.}.}.<?php.........
775a0 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 0a ...namespace.Composer\Package;..
775c0 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 49 6e .....interface.CompletePackageIn
775e0 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 terface.extends.PackageInterface
77600 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 53 63 72 69 70 .{......public.function.getScrip
77620 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
77640 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 tRepositories();.......public.fu
77660 6e 63 74 69 6f 6e 20 67 65 74 4c 69 63 65 6e 73 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 nction.getLicense();.......publi
77680 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4b 65 79 77 6f 72 64 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a c.function.getKeywords();.......
776a0 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 69 6f 6e 28 29 public.function.getDescription()
776c0 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 48 6f 6d 65 70 ;.......public.function.getHomep
776e0 61 67 65 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 age();.........public.function.g
77700 65 74 41 75 74 68 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 etAuthors();.......public.functi
77720 6f 6e 20 67 65 74 53 75 70 70 6f 72 74 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 on.getSupport();.......public.fu
77740 6e 63 74 69 6f 6e 20 69 73 41 62 61 6e 64 6f 6e 65 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c nction.isAbandoned();.......publ
77760 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 61 67 ic.function.getReplacementPackag
77780 65 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 e();.}.<?php............namespac
777a0 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 44 75 6d 70 65 72 3b 0a 0a 75 73 65 20 e.Composer\Package\Dumper;..use.
777c0 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 73 Composer\Package\BasePackage;.us
777e0 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
77800 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 6c 65 ace;.use.Composer\Package\Comple
77820 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 65 72 tePackageInterface;.use.Composer
77840 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 3b 0a 0a \Package\RootPackageInterface;..
77860 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 72 61 79 44 75 6d 70 65 72 0a 7b 0a 70 75 62 6c 69 63 20 66 ....class.ArrayDumper.{.public.f
77880 75 6e 63 74 69 6f 6e 20 64 75 6d 70 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 unction.dump(PackageInterface.$p
778a0 61 63 6b 61 67 65 29 0a 7b 0a 24 6b 65 79 73 20 3d 20 61 72 72 61 79 28 0a 27 62 69 6e 61 72 69 ackage).{.$keys.=.array(.'binari
778c0 65 73 27 20 3d 3e 20 27 62 69 6e 27 2c 0a 27 74 79 70 65 27 2c 0a 27 65 78 74 72 61 27 2c 0a 27 es'.=>.'bin',.'type',.'extra',.'
778e0 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 27 20 3d 3e 20 27 69 6e 73 74 61 6c 6c 61 installationSource'.=>.'installa
77900 74 69 6f 6e 2d 73 6f 75 72 63 65 27 2c 0a 27 61 75 74 6f 6c 6f 61 64 27 2c 0a 27 64 65 76 41 75 tion-source',.'autoload',.'devAu
77920 74 6f 6c 6f 61 64 27 20 3d 3e 20 27 61 75 74 6f 6c 6f 61 64 2d 64 65 76 27 2c 0a 27 6e 6f 74 69 toload'.=>.'autoload-dev',.'noti
77940 66 69 63 61 74 69 6f 6e 55 72 6c 27 20 3d 3e 20 27 6e 6f 74 69 66 69 63 61 74 69 6f 6e 2d 75 72 ficationUrl'.=>.'notification-ur
77960 6c 27 2c 0a 27 69 6e 63 6c 75 64 65 50 61 74 68 73 27 20 3d 3e 20 27 69 6e 63 6c 75 64 65 2d 70 l',.'includePaths'.=>.'include-p
77980 61 74 68 27 2c 0a 29 3b 0a 0a 24 64 61 74 61 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 64 61 74 61 ath',.);..$data.=.array();.$data
779a0 5b 27 6e 61 6d 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 ['name'].=.$package->getPrettyNa
779c0 6d 65 28 29 3b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 24 70 61 63 6b 61 67 me();.$data['version'].=.$packag
779e0 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 24 64 61 74 61 5b 27 76 65 e->getPrettyVersion();.$data['ve
77a00 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 rsion_normalized'].=.$package->g
77a20 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 etVersion();..if.($package->getT
77a40 61 72 67 65 74 44 69 72 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 74 61 72 67 65 74 2d 64 69 72 27 argetDir()).{.$data['target-dir'
77a60 5d 20 3d 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 3b 0a 7d 0a ].=.$package->getTargetDir();.}.
77a80 0a 69 66 20 28 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 20 .if.($package->getSourceType()).
77aa0 7b 0a 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 5b 27 74 79 70 65 27 5d 20 3d 20 24 70 61 63 {.$data['source']['type'].=.$pac
77ac0 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 24 64 61 74 61 5b 27 73 6f kage->getSourceType();.$data['so
77ae0 75 72 63 65 27 5d 5b 27 75 72 6c 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 urce']['url'].=.$package->getSou
77b00 72 63 65 55 72 6c 28 29 3b 0a 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 5b 27 72 65 66 65 72 rceUrl();.$data['source']['refer
77b20 65 6e 63 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 52 65 66 65 ence'].=.$package->getSourceRefe
77b40 72 65 6e 63 65 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 rence();.if.($mirrors.=.$package
77b60 2d 3e 67 65 74 53 6f 75 72 63 65 4d 69 72 72 6f 72 73 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 73 ->getSourceMirrors()).{.$data['s
77b80 6f 75 72 63 65 27 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 ource']['mirrors'].=.$mirrors;.}
77ba0 0a 7d 0a 0a 69 66 20 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 .}..if.($package->getDistType())
77bc0 20 7b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 74 79 70 65 27 5d 20 3d 20 24 70 61 63 6b .{.$data['dist']['type'].=.$pack
77be0 61 67 65 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 3b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 age->getDistType();.$data['dist'
77c00 5d 5b 27 75 72 6c 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 ]['url'].=.$package->getDistUrl(
77c20 29 3b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 72 65 66 65 72 65 6e 63 65 27 5d 20 3d 20 );.$data['dist']['reference'].=.
77c40 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 3b 0a 24 64 $package->getDistReference();.$d
77c60 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 73 68 61 73 75 6d 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 ata['dist']['shasum'].=.$package
77c80 2d 3e 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 29 3b 0a 69 66 20 28 24 6d 69 ->getDistSha1Checksum();.if.($mi
77ca0 72 72 6f 72 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 4d 69 72 72 6f 72 73 rrors.=.$package->getDistMirrors
77cc0 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 6d 69 72 72 6f 72 73 27 5d 20 3d ()).{.$data['dist']['mirrors'].=
77ce0 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 67 65 .$mirrors;.}.}..if.($package->ge
77d00 74 41 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 61 72 63 tArchiveExcludes()).{.$data['arc
77d20 68 69 76 65 27 5d 5b 27 65 78 63 6c 75 64 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 hive']['exclude'].=.$package->ge
77d40 74 41 72 63 68 69 76 65 45 78 63 6c 75 64 65 73 28 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 tArchiveExcludes();.}..foreach.(
77d60 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 75 70 70 6f 72 74 65 64 4c 69 6e 6b 54 79 70 65 73 BasePackage::$supportedLinkTypes
77d80 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 6f 70 74 73 29 20 7b 0a 69 66 20 28 24 6c 69 6e 6b 73 .as.$type.=>.$opts).{.if.($links
77da0 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 7b 27 67 65 74 27 2e 75 63 66 69 72 73 74 28 24 6f 70 74 .=.$package->{'get'.ucfirst($opt
77dc0 73 5b 27 6d 65 74 68 6f 64 27 5d 29 7d 28 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e s['method'])}()).{.foreach.($lin
77de0 6b 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 64 61 74 61 5b 24 74 79 70 65 5d 5b 24 6c 69 6e ks.as.$link).{.$data[$type][$lin
77e00 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
77e20 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 3b 0a 7d 0a 6b 73 6f 72 74 28 24 64 61 74 61 5b 24 74 tyConstraint();.}.ksort($data[$t
77e40 79 70 65 5d 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 73 20 3d 20 24 70 61 63 ype]);.}.}..if.($packages.=.$pac
77e60 6b 61 67 65 2d 3e 67 65 74 53 75 67 67 65 73 74 73 28 29 29 20 7b 0a 6b 73 6f 72 74 28 24 70 61 kage->getSuggests()).{.ksort($pa
77e80 63 6b 61 67 65 73 29 3b 0a 24 64 61 74 61 5b 27 73 75 67 67 65 73 74 27 5d 20 3d 20 24 70 61 63 ckages);.$data['suggest'].=.$pac
77ea0 6b 61 67 65 73 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 6c 65 61 kages;.}..if.($package->getRelea
77ec0 73 65 44 61 74 65 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 74 69 6d 65 27 5d 20 3d 20 24 70 61 63 seDate()).{.$data['time'].=.$pac
77ee0 6b 61 67 65 2d 3e 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 2d 3e 66 6f 72 6d 61 74 28 27 kage->getReleaseDate()->format('
77f00 59 2d 6d 2d 64 20 48 3a 69 3a 73 27 29 3b 0a 7d 0a 0a 24 64 61 74 61 20 3d 20 24 74 68 69 73 2d Y-m-d.H:i:s');.}..$data.=.$this-
77f20 3e 64 75 6d 70 56 61 6c 75 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 6b 65 79 73 2c 20 24 64 61 >dumpValues($package,.$keys,.$da
77f40 74 61 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 43 6f ta);..if.($package.instanceof.Co
77f60 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 24 6b 65 79 73 20 mpletePackageInterface).{.$keys.
77f80 3d 20 61 72 72 61 79 28 0a 27 73 63 72 69 70 74 73 27 2c 0a 27 6c 69 63 65 6e 73 65 27 2c 0a 27 =.array(.'scripts',.'license',.'
77fa0 61 75 74 68 6f 72 73 27 2c 0a 27 64 65 73 63 72 69 70 74 69 6f 6e 27 2c 0a 27 68 6f 6d 65 70 61 authors',.'description',.'homepa
77fc0 67 65 27 2c 0a 27 6b 65 79 77 6f 72 64 73 27 2c 0a 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 2c ge',.'keywords',.'repositories',
77fe0 0a 27 73 75 70 70 6f 72 74 27 2c 0a 29 3b 0a 0a 24 64 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 64 .'support',.);..$data.=.$this->d
78000 75 6d 70 56 61 6c 75 65 73 28 24 70 61 63 6b 61 67 65 2c 20 24 6b 65 79 73 2c 20 24 64 61 74 61 umpValues($package,.$keys,.$data
78020 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 6b 65 79 77 6f 72 64 73 27 5d 29 );..if.(isset($data['keywords'])
78040 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 64 61 74 61 5b 27 6b 65 79 77 6f 72 64 73 27 5d 29 29 .&&.is_array($data['keywords']))
78060 20 7b 0a 73 6f 72 74 28 24 64 61 74 61 5b 27 6b 65 79 77 6f 72 64 73 27 5d 29 3b 0a 7d 0a 0a 69 .{.sort($data['keywords']);.}..i
78080 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 29 29 20 7b 0a 24 64 f.($package->isAbandoned()).{.$d
780a0 61 74 61 5b 27 61 62 61 6e 64 6f 6e 65 64 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 ata['abandoned'].=.$package->get
780c0 52 65 70 6c 61 63 65 6d 65 6e 74 50 61 63 6b 61 67 65 28 29 20 3f 3a 20 74 72 75 65 3b 0a 7d 0a ReplacementPackage().?:.true;.}.
780e0 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 66 20 52 6f 6f 74 50 }..if.($package.instanceof.RootP
78100 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 ackageInterface).{.$minimumStabi
78120 6c 69 74 79 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 lity.=.$package->getMinimumStabi
78140 6c 69 74 79 28 29 3b 0a 69 66 20 28 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 29 20 7b lity();.if.($minimumStability).{
78160 0a 24 64 61 74 61 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 20 3d 20 24 6d .$data['minimum-stability'].=.$m
78180 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 inimumStability;.}.}..if.(count(
781a0 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 73 28 29 29 $package->getTransportOptions())
781c0 20 3e 20 30 29 20 7b 0a 24 64 61 74 61 5b 27 74 72 61 6e 73 70 6f 72 74 2d 6f 70 74 69 6f 6e 73 .>.0).{.$data['transport-options
781e0 27 5d 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 '].=.$package->getTransportOptio
78200 6e 73 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 61 74 61 3b 0a 7d 0a 0a 70 72 69 76 61 74 ns();.}..return.$data;.}..privat
78220 65 20 66 75 6e 63 74 69 6f 6e 20 64 75 6d 70 56 61 6c 75 65 73 28 50 61 63 6b 61 67 65 49 6e 74 e.function.dumpValues(PackageInt
78240 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 61 72 72 61 79 20 24 6b 65 79 73 2c 20 61 72 erface.$package,.array.$keys,.ar
78260 72 61 79 20 24 64 61 74 61 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 6b 65 79 73 20 61 73 20 24 ray.$data).{.foreach.($keys.as.$
78280 6d 65 74 68 6f 64 20 3d 3e 20 24 6b 65 79 29 20 7b 0a 69 66 20 28 69 73 5f 6e 75 6d 65 72 69 63 method.=>.$key).{.if.(is_numeric
782a0 28 24 6d 65 74 68 6f 64 29 29 20 7b 0a 24 6d 65 74 68 6f 64 20 3d 20 24 6b 65 79 3b 0a 7d 0a 0a ($method)).{.$method.=.$key;.}..
782c0 24 67 65 74 74 65 72 20 3d 20 27 67 65 74 27 2e 75 63 66 69 72 73 74 28 24 6d 65 74 68 6f 64 29 $getter.=.'get'.ucfirst($method)
782e0 3b 0a 24 76 61 6c 75 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 24 67 65 74 74 65 72 28 29 3b 0a ;.$value.=.$package->$getter();.
78300 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 76 61 6c 75 65 20 26 26 20 21 28 69 73 5f 61 72 72 .if.(null.!==.$value.&&.!(is_arr
78320 61 79 28 24 76 61 6c 75 65 29 20 26 26 20 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 ay($value).&&.0.===.count($value
78340 29 29 29 20 7b 0a 24 64 61 74 61 5b 24 6b 65 79 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a ))).{.$data[$key].=.$value;.}.}.
78360 0a 72 65 74 75 72 6e 20 24 64 61 74 61 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a .return.$data;.}.}.<?php........
78380 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;.
783a0 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 5c .use.Composer\Semver\Constraint\
783c0 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 ConstraintInterface;.......class
783e0 20 4c 69 6e 6b 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 73 6f 75 72 63 65 3b 0a 0a 0a .Link.{....protected.$source;...
78400 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 72 67 65 74 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 ..protected.$target;.....protect
78420 65 64 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 64 ed.$constraint;.....protected.$d
78440 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 escription;.....protected.$prett
78460 79 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 yConstraint;...........public.fu
78480 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 2c 20 24 74 61 72 nction.__construct($source,.$tar
784a0 67 65 74 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 get,.ConstraintInterface.$constr
784c0 61 69 6e 74 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 72 65 6c aint.=.null,.$description.=.'rel
784e0 61 74 65 73 20 74 6f 27 2c 20 24 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 ates.to',.$prettyConstraint.=.nu
78500 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 ll).{.$this->source.=.strtolower
78520 28 24 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 74 61 72 67 65 74 20 3d 20 73 74 72 74 6f ($source);.$this->target.=.strto
78540 6c 6f 77 65 72 28 24 74 61 72 67 65 74 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e lower($target);.$this->constrain
78560 74 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 t.=.$constraint;.$this->descript
78580 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 ion.=.$description;.$this->prett
785a0 79 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 3b yConstraint.=.$prettyConstraint;
785c0 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
785e0 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 3b 0a 7d 0a 0a 0a 0a ().{.return.$this->source;.}....
78600 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 28 29 0a 7b 0a 72 .public.function.getTarget().{.r
78620 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 eturn.$this->target;.}.....publi
78640 63 20 66 75 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 c.function.getConstraint().{.ret
78660 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 urn.$this->constraint;.}......pu
78680 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e blic.function.getPrettyConstrain
786a0 74 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 72 65 74 74 79 t().{.if.(null.===.$this->pretty
786c0 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 Constraint).{.throw.new.\Unexpec
786e0 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 4c 69 6e 6b 20 tedValueException(sprintf('Link.
78700 25 73 20 68 61 73 20 62 65 65 6e 20 6d 69 73 63 6f 6e 66 69 67 75 72 65 64 20 61 6e 64 20 68 61 %s.has.been.misconfigured.and.ha
78720 64 20 6e 6f 20 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 67 69 76 65 6e 2e 27 2c 20 24 d.no.prettyConstraint.given.',.$
78740 74 68 69 73 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 43 this));.}..return.$this->prettyC
78760 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 74 69 6f 6e onstraint;.}.....public.function
78780 20 5f 5f 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 73 6f .__toString().{.return.$this->so
787a0 75 72 63 65 2e 27 20 27 2e 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 2e 27 20 27 2e urce.'.'.$this->description.'.'.
787c0 24 74 68 69 73 2d 3e 74 61 72 67 65 74 2e 27 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 $this->target.'.('.$this->constr
787e0 61 69 6e 74 2e 27 29 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e aint.')';.}......public.function
78800 20 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 .getPrettyString(PackageInterfac
78820 65 20 24 73 6f 75 72 63 65 50 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 73 6f 75 72 e.$sourcePackage).{.return.$sour
78840 63 65 50 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 20 27 cePackage->getPrettyString().'.'
78860 2e 24 74 68 69 73 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 .$this->description.'.'.$this->t
78880 61 72 67 65 74 2e 27 20 27 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 arget.'.'.$this->constraint->get
788a0 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 2e 27 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a PrettyString().'';.}.}.<?php....
788c0 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
788e0 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 73 65 72 ge\LinkConstraint;..use.Composer
78900 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 73 74 72 61 69 \Semver\Constraint\EmptyConstrai
78920 6e 74 20 61 73 20 53 65 6d 76 65 72 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 74 72 nt.as.SemverEmptyConstraint;..tr
78940 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 50 41 43 45 igger_error('The.'...__NAMESPACE
78960 5f 5f 20 2e 20 27 5c 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 63 6c 61 73 73 20 69 73 20 __...'\EmptyConstraint.class.is.
78980 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 53 65 6d 76 65 72 5c deprecated,.use.Composer\Semver\
789a0 43 6f 6e 73 74 72 61 69 6e 74 5c 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 69 6e 73 74 65 Constraint\EmptyConstraint.inste
789c0 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 63 6c ad.',.E_USER_DEPRECATED);.....cl
789e0 61 73 73 20 45 6d 70 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 53 65 6d 76 ass.EmptyConstraint.extends.Semv
78a00 65 72 45 6d 70 74 79 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 erEmptyConstraint.implements.Lin
78a20 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 0a kConstraintInterface.{.}.<?php..
78a40 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 63 ..........namespace.Composer\Pac
78a60 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 73 kage\LinkConstraint;..use.Compos
78a80 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 49 er\Semver\Constraint\ConstraintI
78aa0 6e 74 65 72 66 61 63 65 3b 0a 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 20 nterface;..trigger_error('The.'.
78ac0 2e 20 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 20 2e 20 27 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 ..__NAMESPACE__...'\LinkConstrai
78ae0 6e 74 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 ntInterface.interface.is.depreca
78b00 74 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 ted,.use.Composer\Semver\Constra
78b20 69 6e 74 5c 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 69 6e 73 74 65 61 64 2e int\ConstraintInterface.instead.
78b40 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 69 6e 74 65 72 ',.E_USER_DEPRECATED);.....inter
78b60 66 61 63 65 20 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 65 78 74 face.LinkConstraintInterface.ext
78b80 65 6e 64 73 20 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 ends.ConstraintInterface.{.}.<?p
78ba0 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
78bc0 5c 50 61 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 \Package\LinkConstraint;..use.Co
78be0 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 4d 75 6c 74 69 43 6f mposer\Semver\Constraint\MultiCo
78c00 6e 73 74 72 61 69 6e 74 20 61 73 20 53 65 6d 76 65 72 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e nstraint.as.SemverMultiConstrain
78c20 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 2e 20 5f 5f 4e 41 4d t;..trigger_error('The.'...__NAM
78c40 45 53 50 41 43 45 5f 5f 20 2e 20 27 5c 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 20 63 6c 61 ESPACE__...'\MultiConstraint.cla
78c60 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 53 ss.is.deprecated,.use.Composer\S
78c80 65 6d 76 65 72 5c 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 emver\Constraint\MultiConstraint
78ca0 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);.
78cc0 0a 0a 0a 0a 63 6c 61 73 73 20 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 ....class.MultiConstraint.extend
78ce0 73 20 53 65 6d 76 65 72 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e s.SemverMultiConstraint.implemen
78d00 74 73 20 4c 69 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 ts.LinkConstraintInterface.{.}.<
78d20 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
78d40 65 72 5c 50 61 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 er\Package\LinkConstraint;..use.
78d60 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 41 62 73 74 72 Composer\Semver\Constraint\Abstr
78d80 61 63 74 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 actConstraint;..trigger_error('T
78da0 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 53 70 65 63 69 66 69 he.'...__NAMESPACE__...'\Specifi
78dc0 63 43 6f 6e 73 74 72 61 69 6e 74 20 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 69 73 20 64 65 cConstraint.abstract.class.is.de
78de0 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 65 6d 65 6e precated,.there.is.no.replacemen
78e00 74 20 66 6f 72 20 69 74 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a t.for.it.',.E_USER_DEPRECATED);.
78e20 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 53 70 65 63 69 66 69 63 43 6f 6e 73 74 ....abstract.class.SpecificConst
78e40 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 41 62 73 74 72 61 63 74 43 6f 6e 73 74 72 61 69 6e 74 raint.extends.AbstractConstraint
78e60 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 65 72 66 .implements.LinkConstraintInterf
78e80 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 73 70 61 ace.{.}.<?php............namespa
78ea0 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 69 ce.Composer\Package\LinkConstrai
78ec0 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 61 nt;..use.Composer\Semver\Constra
78ee0 69 6e 74 5c 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 int\Constraint;..trigger_error('
78f00 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 56 65 72 73 69 6f The.'...__NAMESPACE__...'\Versio
78f20 6e 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 65 64 2c nConstraint.class.is.deprecated,
78f40 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 6e 74 5c .use.Composer\Semver\Constraint\
78f60 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 45 50 Constraint.instead.',.E_USER_DEP
78f80 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 RECATED);.....class.VersionConst
78fa0 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 raint.extends.Constraint.impleme
78fc0 6e 74 73 20 4c 69 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 nts.LinkConstraintInterface.{.}.
78fe0 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
79000 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 43 6f 6d 70 6f 73 65 ser\Package\Loader;..use.Compose
79020 72 5c 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 r\Package;.use.Composer\Package\
79040 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 50 61 63 6b 61 AliasPackage;.use.Composer\Packa
79060 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 5c 52 6f ge\Link;.use.Composer\Package\Ro
79080 6f 74 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 50 61 63 otAliasPackage;.use.Composer\Pac
790a0 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 3b 0a 75 73 65 20 43 kage\RootPackageInterface;.use.C
790c0 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 72 3b 0a 0a 0a omposer\Semver\VersionParser;...
790e0 0a 0a 0a 63 6c 61 73 73 20 41 72 72 61 79 4c 6f 61 64 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 ...class.ArrayLoader.implements.
79100 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 LoaderInterface.{.protected.$ver
79120 73 69 6f 6e 50 61 72 73 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 6f 61 64 4f 70 74 69 6f sionParser;.protected.$loadOptio
79140 6e 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 73 74 72 75 63 74 ns;..public.function.__construct
79160 28 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 24 (VersionParser.$parser.=.null,.$
79180 6c 6f 61 64 4f 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 loadOptions.=.false).{.if.(!$par
791a0 73 65 72 29 20 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 ser).{.$parser.=.new.VersionPars
791c0 65 72 3b 0a 7d 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 er;.}.$this->versionParser.=.$pa
791e0 72 73 65 72 3b 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 rser;.$this->loadOptions.=.$load
79200 4f 70 74 69 6f 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 Options;.}..public.function.load
79220 28 61 72 72 61 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 (array.$config,.$class.=.'Compos
79240 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 0a 7b 0a 69 er\Package\CompletePackage').{.i
79260 66 20 28 21 69 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 f.(!isset($config['name'])).{.th
79280 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
792a0 6e 28 27 55 6e 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 n('Unknown.package.has.no.name.d
792c0 65 66 69 6e 65 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 efined.('.json_encode($config).'
792e0 29 2e 27 29 3b 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 ).');.}.if.(!isset($config['vers
79300 69 6f 6e 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 ion'])).{.throw.new.\UnexpectedV
79320 61 6c 75 65 45 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 alueException('Package.'.$config
79340 5b 27 6e 61 6d 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 ['name'].'.has.no.version.define
79360 64 2e 27 29 3b 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 d.');.}....if.(isset($config['ve
79380 72 73 69 6f 6e 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 rsion_normalized'])).{.$version.
793a0 3d 20 24 63 6f 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 =.$config['version_normalized'];
793c0 0a 7d 20 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 .}.else.{.$version.=.$this->vers
793e0 69 6f 6e 50 61 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 ionParser->normalize($config['ve
79400 72 73 69 6f 6e 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 rsion']);.}.$package.=.new.$clas
79420 73 28 24 63 6f 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 s($config['name'],.$version,.$co
79440 6e 66 69 67 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 54 nfig['version']);.$package->setT
79460 79 70 65 28 69 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 ype(isset($config['type']).?.str
79480 74 6f 6c 6f 77 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 tolower($config['type']).:.'libr
794a0 61 72 79 27 29 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 ary');..if.(isset($config['targe
794c0 74 2d 64 69 72 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 t-dir'])).{.$package->setTargetD
794e0 69 72 28 24 63 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 ir($config['target-dir']);.}..if
79500 20 28 69 73 73 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 .(isset($config['extra']).&&.is_
79520 61 72 72 61 79 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 array($config['extra'])).{.$pack
79540 61 67 65 2d 3e 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 age->setExtra($config['extra']);
79560 0a 7d 0a 0a 69 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 .}..if.(isset($config['bin'])).{
79580 0a 69 66 20 28 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 .if.(!is_array($config['bin'])).
795a0 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
795c0 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 65 27 5d ption('Package.'.$config['name']
795e0 2e 27 5c 27 73 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 .'\'s.bin.key.should.be.an.array
79600 2c 20 27 2e 67 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 ,.'.gettype($config['bin']).'.gi
79620 76 65 6e 2e 27 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 ven.');.}.foreach.($config['bin'
79640 5d 20 61 73 20 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 ].as.$key.=>.$bin).{.$config['bi
79660 6e 27 5d 5b 24 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 n'][$key].=.ltrim($bin,.'/');.}.
79680 24 70 61 63 6b 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 $package->setBinaries($config['b
796a0 69 6e 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 69 6e 73 in']);.}..if.(isset($config['ins
796c0 74 61 6c 6c 61 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 tallation-source'])).{.$package-
796e0 3e 73 65 74 49 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 >setInstallationSource($config['
79700 69 6e 73 74 61 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 installation-source']);.}..if.(i
79720 73 73 65 74 28 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 sset($config['source'])).{.if.(!
79740 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 74 79 70 65 27 5d 29 isset($config['source']['type'])
79760 20 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 75 72 .||.!isset($config['source']['ur
79780 6c 27 5d 29 20 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 l']).||.!isset($config['source']
797a0 5b 27 72 65 66 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 ['reference'])).{.throw.new.\Une
797c0 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 0a 22 xpectedValueException(sprintf(."
797e0 50 61 63 6b 61 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 Package.%s's.source.key.should.b
79800 65 20 73 70 65 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 e.specified.as.{\"type\":....,.\
79820 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 20 2e 2e 2e 7d "url\":....,.\"reference\":....}
79840 2c 5c 6e 25 73 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 ,\n%s.given.",.$config['name'],.
79860 6a 73 6f 6e 5f 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 json_encode($config['source']).)
79880 29 3b 0a 7d 0a 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 );.}.$package->setSourceType($co
798a0 6e 66 69 67 5b 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 nfig['source']['type']);.$packag
798c0 65 2d 3e 73 65 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 e->setSourceUrl($config['source'
798e0 5d 5b 27 75 72 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 ]['url']);.$package->setSourceRe
79900 66 65 72 65 6e 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 ference($config['source']['refer
79920 65 6e 63 65 27 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 ence']);.if.(isset($config['sour
79940 63 65 27 5d 5b 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 ce']['mirrors'])).{.$package->se
79960 74 53 6f 75 72 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 tSourceMirrors($config['source']
79980 5b 27 6d 69 72 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 ['mirrors']);.}.}..if.(isset($co
799a0 6e 66 69 67 5b 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 nfig['dist'])).{.if.(!isset($con
799c0 66 69 67 5b 27 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 fig['dist']['type']).||.!isset($
799e0 63 6f 6e 66 69 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 config['dist']['url'])).{.throw.
79a00 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 73 70 new.\UnexpectedValueException(sp
79a20 72 69 6e 74 66 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 rintf(."Package.%s's.dist.key.sh
79a40 6f 75 6c 64 20 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 ould.be.specified.as.".."{\"type
79a60 5c 22 3a 20 2e 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 \":....,.\"url\":....,.\"referen
79a80 63 65 5c 22 3a 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 ce\":....,.\"shasum\":....},\n%s
79aa0 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_
79ac0 65 6e 63 6f 64 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 encode($config['dist']).));.}.$p
79ae0 61 63 6b 61 67 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 ackage->setDistType($config['dis
79b00 74 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 74 44 69 73 74 55 t']['type']);.$package->setDistU
79b20 72 6c 28 24 63 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 rl($config['dist']['url']);.$pac
79b40 6b 61 67 65 2d 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 kage->setDistReference(isset($co
79b60 6e 66 69 67 5b 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 nfig['dist']['reference']).?.$co
79b80 6e 66 69 67 5b 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 nfig['dist']['reference'].:.null
79ba0 29 3b 0a 24 70 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 );.$package->setDistSha1Checksum
79bc0 28 69 73 73 65 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 (isset($config['dist']['shasum']
79be0 29 20 3f 20 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 20 3a 20 ).?.$config['dist']['shasum'].:.
79c00 6e 75 6c 6c 29 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 null);.if.(isset($config['dist']
79c20 5b 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 44 69 73 ['mirrors'])).{.$package->setDis
79c40 74 4d 69 72 72 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 tMirrors($config['dist']['mirror
79c60 73 27 5d 29 3b 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 s']);.}.}..foreach.(Package\Base
79c80 50 61 63 6b 61 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 Package::$supportedLinkTypes.as.
79ca0 24 74 79 70 65 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 $type.=>.$opts).{.if.(isset($con
79cc0 66 69 67 5b 24 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 fig[$type])).{.$method.=.'set'.u
79ce0 63 66 69 72 73 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 cfirst($opts['method']);.$packag
79d00 65 2d 3e 7b 24 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 e->{$method}(.$this->parseLinks(
79d20 0a 24 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 .$package->getName(),.$package->
79d40 67 65 74 50 72 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 getPrettyVersion(),.$opts['descr
79d60 69 70 74 69 6f 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 iption'],.$config[$type].).);.}.
79d80 7d 0a 0a 69 66 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 }..if.(isset($config['suggest'])
79da0 20 26 26 20 69 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 .&&.is_array($config['suggest'])
79dc0 29 20 7b 0a 66 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 ).{.foreach.($config['suggest'].
79de0 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 69 66 20 28 27 73 65 as.$target.=>.$reason).{.if.('se
79e00 6c 66 2e 76 65 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 lf.version'.===.trim($reason)).{
79e20 0a 24 63 6f 6e 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 .$config['suggest'][$target].=.$
79e40 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 7d 0a 7d package->getPrettyVersion();.}.}
79e60 0a 24 70 61 63 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 .$package->setSuggests($config['
79e80 73 75 67 67 65 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 suggest']);.}..if.(isset($config
79ea0 5b 27 61 75 74 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 ['autoload'])).{.$package->setAu
79ec0 74 6f 6c 6f 61 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 toload($config['autoload']);.}..
79ee0 69 66 20 28 69 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 if.(isset($config['autoload-dev'
79f00 5d 29 29 20 7b 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 ])).{.$package->setDevAutoload($
79f20 63 6f 6e 66 69 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 config['autoload-dev']);.}..if.(
79f40 69 73 73 65 74 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 isset($config['include-path'])).
79f60 7b 0a 24 70 61 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 {.$package->setIncludePaths($con
79f80 66 69 67 5b 27 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 fig['include-path']);.}..if.(!em
79fa0 70 74 79 28 24 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 pty($config['time'])).{.$time.=.
79fc0 70 72 65 67 5f 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 preg_match('/^\d++$/D',.$config[
79fe0 27 74 69 6d 65 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 'time']).?.'@'.$config['time'].:
7a000 20 24 63 6f 6e 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 .$config['time'];..try.{.$date.=
7a020 20 6e 65 77 20 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 .new.\DateTime($time,.new.\DateT
7a040 69 6d 65 5a 6f 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 imeZone('UTC'));.$package->setRe
7a060 6c 65 61 73 65 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 leaseDate($date);.}.catch.(\Exce
7a080 70 74 69 6f 6e 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 ption.$e).{.}.}..if.(!empty($con
7a0a0 66 69 67 5b 27 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 fig['notification-url'])).{.$pac
7a0c0 6b 61 67 65 2d 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 kage->setNotificationUrl($config
7a0e0 5b 27 6e 6f 74 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 ['notification-url']);.}..if.(!e
7a100 6d 70 74 79 28 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 mpty($config['archive']['exclude
7a120 27 5d 29 29 20 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 '])).{.$package->setArchiveExclu
7a140 64 65 73 28 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 des($config['archive']['exclude'
7a160 5d 29 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 66 20 50 ]);.}..if.($package.instanceof.P
7a180 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 29 ackage\CompletePackageInterface)
7a1a0 20 7b 0a 69 66 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 .{.if.(isset($config['scripts'])
7a1c0 20 26 26 20 69 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 .&&.is_array($config['scripts'])
7a1e0 29 20 7b 0a 66 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 ).{.foreach.($config['scripts'].
7a200 61 73 20 24 65 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 as.$event.=>.$listeners).{.$conf
7a220 69 67 5b 27 73 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 ig['scripts'][$event].=.(array).
7a240 24 6c 69 73 74 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 $listeners;.}.$package->setScrip
7a260 74 73 28 24 63 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 ts($config['scripts']);.}..if.(!
7a280 65 6d 70 74 79 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 empty($config['description']).&&
7a2a0 20 69 73 5f 73 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 .is_string($config['description'
7a2c0 5d 29 29 20 7b 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 ])).{.$package->setDescription($
7a2e0 63 6f 6e 66 69 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 config['description']);.}..if.(!
7a300 65 6d 70 74 79 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 empty($config['homepage']).&&.is
7a320 5f 73 74 72 69 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 _string($config['homepage'])).{.
7a340 24 70 61 63 6b 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 $package->setHomepage($config['h
7a360 6f 6d 65 70 61 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 omepage']);.}..if.(!empty($confi
7a380 67 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 63 6f 6e 66 g['keywords']).&&.is_array($conf
7a3a0 69 67 5b 27 6b 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 ig['keywords'])).{.$package->set
7a3c0 4b 65 79 77 6f 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 Keywords($config['keywords']);.}
7a3e0 0a 0a 69 66 20 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 ..if.(!empty($config['license'])
7a400 29 20 7b 0a 24 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 ).{.$package->setLicense(is_arra
7a420 79 28 24 63 6f 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 y($config['license']).?.$config[
7a440 27 6c 69 63 65 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 'license'].:.array($config['lice
7a460 6e 73 65 27 5d 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 nse']));.}..if.(!empty($config['
7a480 61 75 74 68 6f 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 authors']).&&.is_array($config['
7a4a0 61 75 74 68 6f 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 authors'])).{.$package->setAutho
7a4c0 72 73 28 24 63 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 rs($config['authors']);.}..if.(i
7a4e0 73 73 65 74 28 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 sset($config['support'])).{.$pac
7a500 6b 61 67 65 2d 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 kage->setSupport($config['suppor
7a520 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 62 61 6e t']);.}..if.(isset($config['aban
7a540 64 6f 6e 65 64 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 doned'])).{.$package->setAbandon
7a560 65 64 28 24 63 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 ed($config['abandoned']);.}.}..i
7a580 66 20 28 24 61 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 f.($aliasNormalized.=.$this->get
7a5a0 42 72 61 6e 63 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 BranchAlias($config)).{.if.($pac
7a5c0 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 6e 74 65 72 kage.instanceof.RootPackageInter
7a5e0 66 61 63 65 29 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 face).{.$package.=.new.RootAlias
7a600 50 61 63 6b 61 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 Package($package,.$aliasNormaliz
7a620 65 64 2c 20 70 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 ed,.preg_replace('{(\.9{7})+}',.
7a640 27 2e 78 27 2c 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 '.x',.$aliasNormalized));.}.else
7a660 20 7b 0a 24 70 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 .{.$package.=.new.AliasPackage($
7a680 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 72 65 67 5f package,.$aliasNormalized,.preg_
7a6a0 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 20 24 61 6c replace('{(\.9{7})+}',.'.x',.$al
7a6c0 69 61 73 4e 6f 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 iasNormalized));.}.}..if.($this-
7a6e0 3e 6c 6f 61 64 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 >loadOptions.&&.isset($config['t
7a700 72 61 6e 73 70 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 ransport-options'])).{.$package-
7a720 3e 73 65 74 54 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 >setTransportOptions($config['tr
7a740 61 6e 73 70 6f 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 ansport-options']);.}..return.$p
7a760 61 63 6b 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 69 6f ackage;.}.........public.functio
7a780 6e 20 70 61 72 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 n.parseLinks($source,.$sourceVer
7a7a0 73 69 6f 6e 2c 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 sion,.$description,.$links).{.$r
7a7c0 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 69 6e 6b 73 20 61 73 es.=.array();.foreach.($links.as
7a7e0 20 24 74 61 72 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 .$target.=>.$constraint).{.if.('
7a800 73 65 6c 66 2e 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 self.version'.===.$constraint).{
7a820 0a 24 70 61 72 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 .$parsedConstraint.=.$this->vers
7a840 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 73 6f 75 ionParser->parseConstraints($sou
7a860 72 63 65 56 65 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 rceVersion);.}.else.{.$parsedCon
7a880 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 72 73 65 72 2d 3e straint.=.$this->versionParser->
7a8a0 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 29 3b 0a 7d parseConstraints($constraint);.}
7a8c0 0a 0a 24 72 65 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 ..$res[strtolower($target)].=.ne
7a8e0 77 20 4c 69 6e 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 w.Link($source,.$target,.$parsed
7a900 43 6f 6e 73 74 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 Constraint,.$description,.$const
7a920 72 61 69 6e 74 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 raint);.}..return.$res;.}.......
7a940 0a 70 75 62 6c 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 .public.function.getBranchAlias(
7a960 61 72 72 61 79 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 array.$config).{.if.(('dev-'.!==
7a980 20 73 75 62 73 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 .substr($config['version'],.0,.4
7a9a0 29 20 26 26 20 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 ).&&.'-dev'.!==.substr($config['
7a9c0 76 65 72 73 69 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 version'],.-4)).||.!isset($confi
7a9e0 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 29 0a 7c 7c 20 21 g['extra']['branch-alias']).||.!
7aa00 69 73 5f 61 72 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 is_array($config['extra']['branc
7aa20 68 2d 61 6c 69 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 h-alias']).).{.return;.}..foreac
7aa40 68 20 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 61 h.($config['extra']['branch-alia
7aa60 73 27 5d 20 61 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 s'].as.$sourceBranch.=>.$targetB
7aa80 72 61 6e 63 68 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 ranch).{...if.('-dev'.!==.substr
7aaa0 28 24 74 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 ($targetBranch,.-4)).{.continue;
7aac0 0a 7d 0a 0a 0a 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 .}....$validatedTargetBranch.=.$
7aae0 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
7ab00 61 6e 63 68 28 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 anch(substr($targetBranch,.0,.-4
7ab20 29 29 3b 0a 69 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 ));.if.('-dev'.!==.substr($valid
7ab40 61 74 65 64 54 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 atedTargetBranch,.-4)).{.continu
7ab60 65 3b 0a 7d 0a 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 e;.}....if.(strtolower($config['
7ab80 76 65 72 73 69 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 version']).!==.strtolower($sourc
7aba0 65 42 72 61 6e 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 eBranch)).{.continue;.}....if.((
7abc0 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 6e 50 61 $sourcePrefix.=.$this->versionPa
7abe0 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 28 24 73 rser->parseNumericAliasPrefix($s
7ac00 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 69 78 20 ourceBranch)).&&.($targetPrefix.
7ac20 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 4e 75 6d =.$this->versionParser->parseNum
7ac40 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 29 29 0a ericAliasPrefix($targetBranch)).
7ac60 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 6f 75 72 &&.(stripos($targetPrefix,.$sour
7ac80 63 65 50 72 65 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 cePrefix).!==.0).).{.continue;.}
7aca0 0a 0a 72 65 74 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 ..return.$validatedTargetBranch;
7acc0 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 70 61 63 .}.}.}.<?php............namespac
7ace0 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 0a 0a 0a 63 e.Composer\Package\Loader;.....c
7ad00 6c 61 73 73 20 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 lass.InvalidPackageException.ext
7ad20 65 6e 64 73 20 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 ends.\Exception.{.private.$error
7ad40 73 3b 0a 70 72 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 s;.private.$warnings;.private.$d
7ad60 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 63 ata;..public.function.__construc
7ad80 74 28 61 72 72 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 t(array.$errors,.array.$warnings
7ada0 2c 20 61 72 72 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 ,.array.$data).{.$this->errors.=
7adc0 20 24 65 72 72 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 .$errors;.$this->warnings.=.$war
7ade0 6e 69 6e 67 73 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 nings;.$this->data.=.$data;.pare
7ae00 6e 74 3a 3a 5f 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 nt::__construct("Invalid.package
7ae20 20 69 6e 66 6f 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 .information:.\n".implode("\n",.
7ae40 61 72 72 61 79 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 array_merge($errors,.$warnings))
7ae60 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 61 74 61 28 29 0a );.}..public.function.getData().
7ae80 7b 0a 72 65 74 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 {.return.$this->data;.}..public.
7aea0 66 75 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 function.getErrors().{.return.$t
7aec0 68 69 73 2d 3e 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 his->errors;.}..public.function.
7aee0 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 68 69 73 2d 3e 77 61 getWarnings().{.return.$this->wa
7af00 72 6e 69 6e 67 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 rnings;.}.}.<?php............nam
7af20 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 61 64 65 72 3b 0a espace.Composer\Package\Loader;.
7af40 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 0a 0a 0a 0a .use.Composer\Json\JsonFile;....
7af60 0a 63 6c 61 73 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 .class.JsonLoader.{.private.$loa
7af80 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 72 75 63 der;..public.function.__construc
7afa0 74 28 4c 6f 61 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 t(LoaderInterface.$loader).{.$th
7afc0 69 73 2d 3e 6c 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 is->loader.=.$loader;.}......pub
7afe0 6c 69 63 20 66 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 lic.function.load($json).{.if.($
7b000 6a 73 6f 6e 20 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 json.instanceof.JsonFile).{.$con
7b020 66 69 67 20 3d 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 fig.=.$json->read();.}.elseif.(f
7b040 69 6c 65 5f 65 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 ile_exists($json)).{.$config.=.J
7b060 73 6f 6e 46 69 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 sonFile::parseJson(file_get_cont
7b080 65 6e 74 73 28 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 ents($json),.$json);.}.elseif.(i
7b0a0 73 5f 73 74 72 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 s_string($json)).{.$config.=.Jso
7b0c0 6e 46 69 6c 65 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 nFile::parseJson($json);.}..retu
7b0e0 72 6e 20 24 74 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 rn.$this->loader->load($config);
7b100 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.
7b120 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 0a 0a 0a 0a 0a 69 Composer\Package\Loader;.......i
7b140 6e 74 65 72 66 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 nterface.LoaderInterface.{......
7b160 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 79 20 24 70 61 ..public.function.load(array.$pa
7b180 63 6b 61 67 65 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 ckage,.$class.=.'Composer\Packag
7b1a0 65 5c 43 6f 6d 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 e\CompletePackage');.}.<?php....
7b1c0 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
7b1e0 67 65 5c 4c 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 ge\Loader;..use.Composer\Package
7b200 5c 42 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 \BasePackage;.use.Composer\Packa
7b220 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 65 ge\PackageInterface;.use.Compose
7b240 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 6f 6d 70 r\Package\AliasPackage;.use.Comp
7b260 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 6f 72 oser\Config;.use.Composer\Factor
7b280 79 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 y;.use.Composer\Package\Version\
7b2a0 56 65 72 73 69 6f 6e 47 75 65 73 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 65 6d VersionGuesser;.use.Composer\Sem
7b2c0 76 65 72 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 ver\VersionParser;.use.Composer\
7b2e0 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 67 65 72 3b 0a 75 73 Repository\RepositoryManager;.us
7b300 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 3b e.Composer\Util\ProcessExecutor;
7b320 0a 0a 0a 0a 0a 0a 0a 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 .........class.RootPackageLoader
7b340 20 65 78 74 65 6e 64 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 .extends.ArrayLoader.{....privat
7b360 65 20 24 6d 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 e.$manager;.....private.$config;
7b380 0a 0a 0a 0a 0a 70 72 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 .....private.$versionGuesser;..p
7b3a0 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 52 65 70 6f 73 ublic.function.__construct(Repos
7b3c0 69 74 6f 72 79 4d 61 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 itoryManager.$manager,.Config.$c
7b3e0 6f 6e 66 69 67 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 onfig,.VersionParser.$parser.=.n
7b400 75 6c 6c 2c 20 56 65 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 ull,.VersionGuesser.$versionGues
7b420 73 65 72 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 ser.=.null).{.parent::__construc
7b440 74 28 24 70 61 72 73 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 t($parser);..$this->manager.=.$m
7b460 61 6e 61 67 65 72 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 anager;.$this->config.=.$config;
7b480 0a 24 74 68 69 73 2d 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 .$this->versionGuesser.=.$versio
7b4a0 6e 47 75 65 73 73 65 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 nGuesser.?:.new.VersionGuesser($
7b4c0 63 6f 6e 66 69 67 2c 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 config,.new.ProcessExecutor(),.$
7b4e0 74 68 69 73 2d 3e 76 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 this->versionParser);.}........p
7b500 75 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 ublic.function.load(array.$confi
7b520 67 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 52 6f g,.$class.=.'Composer\Package\Ro
7b540 6f 74 50 61 63 6b 61 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 otPackage',.$cwd.=.null).{.if.(!
7b560 69 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 24 63 6f 6e 66 69 isset($config['name'])).{.$confi
7b580 67 5b 27 6e 61 6d 65 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 g['name'].=.'__root__';.}.$autoV
7b5a0 65 72 73 69 6f 6e 65 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 ersioned.=.false;.if.(!isset($co
7b5c0 6e 66 69 67 5b 27 76 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 nfig['version'])).{...if.(getenv
7b5e0 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 29 20 7b 0a 24 76 65 ('COMPOSER_ROOT_VERSION')).{.$ve
7b600 72 73 69 6f 6e 20 3d 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 rsion.=.getenv('COMPOSER_ROOT_VE
7b620 52 53 49 4f 4e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 RSION');.}.else.{.$version.=.$th
7b640 69 73 2d 3e 76 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 is->versionGuesser->guessVersion
7b660 28 24 63 6f 6e 66 69 67 2c 20 24 63 77 64 20 3f 3a 20 67 65 74 63 77 64 28 29 29 3b 0a 7d 0a 0a ($config,.$cwd.?:.getcwd());.}..
7b680 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 20 27 31 2e 30 if.(!$version).{.$version.=.'1.0
7b6a0 2e 30 27 3b 0a 24 61 75 74 6f 56 65 72 73 69 6f 6e 65 64 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 24 .0';.$autoVersioned.=.true;.}..$
7b6c0 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a config['version'].=.$version;.}.
7b6e0 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 61 72 65 6e .$realPackage.=.$package.=.paren
7b700 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 20 28 24 72 t::load($config,.$class);.if.($r
7b720 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 61 63 6b 61 ealPackage.instanceof.AliasPacka
7b740 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 65 2d 3e 67 ge).{.$realPackage.=.$package->g
7b760 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 73 69 6f 6e etAliasOf();.}..if.($autoVersion
7b780 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 65 72 73 69 ed).{.$realPackage->replaceVersi
7b7a0 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 29 2c 20 27 on($realPackage->getVersion(),.'
7b7c0 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 30 2e 30 29 No.version.set.(parsed.as.1.0.0)
7b7e0 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 6e 69 6d 75 ');.}..if.(isset($config['minimu
7b800 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 67 65 2d 3e m-stability'])).{.$realPackage->
7b820 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 61 72 73 65 setMinimumStability(VersionParse
7b840 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 67 5b 27 6d r::normalizeStability($config['m
7b860 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 69 61 73 65 inimum-stability']));.}..$aliase
7b880 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 20 3d 20 61 s.=.array();.$stabilityFlags.=.a
7b8a0 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 29 3b 0a 66 rray();.$references.=.array();.f
7b8c0 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 71 75 69 72 oreach.(array('require',.'requir
7b8e0 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 69 73 73 65 e-dev').as.$linkType).{.if.(isse
7b900 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 6e 6b 49 6e t($config[$linkType])).{.$linkIn
7b920 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 4c 69 6e 6b fo.=.BasePackage::$supportedLink
7b940 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 27 67 65 74 Types[$linkType];.$method.=.'get
7b960 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 5d 29 3b 0a '.ucfirst($linkInfo['method']);.
7b980 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 72 65 61 6c $links.=.array();.foreach.($real
7b9a0 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 20 7b 0a 24 Package->$method().as.$link).{.$
7b9c0 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 24 6c 69 6e links[$link->getTarget()].=.$lin
7b9e0 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 79 53 74 72 k->getConstraint()->getPrettyStr
7ba00 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 78 74 72 61 ing();.}.$aliases.=.$this->extra
7ba20 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 0a 24 73 74 ctAliases($links,.$aliases);.$st
7ba40 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 74 53 74 61 abilityFlags.=.$this->extractSta
7ba60 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 74 79 46 6c bilityFlags($links,.$stabilityFl
7ba80 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 6d 53 74 61 ags,.$realPackage->getMinimumSta
7baa0 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 69 73 2d 3e bility());.$references.=.$this->
7bac0 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 65 66 65 72 extractReferences($links,.$refer
7bae0 65 6e 63 65 73 29 3b 0a 7d 0a 7d 0a 0a 24 72 65 61 6c 50 61 63 6b 61 67 65 2d 3e 73 65 74 41 6c ences);.}.}..$realPackage->setAl
7bb00 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 2d 3e 73 iases($aliases);.$realPackage->s
7bb20 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 61 67 73 etStabilityFlags($stabilityFlags
7bb40 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 73 28 24 );.$realPackage->setReferences($
7bb60 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 69 67 5b references);..if.(isset($config[
7bb80 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 6b 61 67 'prefer-stable'])).{.$realPackag
7bba0 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 6e 66 69 e->setPreferStable((bool).$confi
7bbc0 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 73 20 3d g['prefer-stable']);.}..$repos.=
7bbe0 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 44 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 .Factory::createDefaultRepositor
7bc00 69 65 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 ies(null,.$this->config,.$this->
7bc20 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
7bc40 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
7bc60 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
7bc80 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
7bca0 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;
7bcc0 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
7bce0 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
7bd00 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
7bd20 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
7bd40 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#]+)(?:#[^.]+)?.
7bd60 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,.
7bd80 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(.'
7bda0 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)
7bdc0 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
7bde0 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
7be00 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
7be20 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
7be40 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],.$
7be60 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
7be80 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
7bea0 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,
7bec0 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
7bee0 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
7bf00 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
7bf20 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
7bf40 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
7bf60 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
7bf80 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
7bfa0 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
7bfc0 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
7bfe0 70 6c 69 74 20 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 61 6e 64 53 70 6c 69 74 plit.as.$constraint).{.$andSplit
7c000 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 2c 5d .=.preg_split('{(?<!^|as|[=><.,]
7c020 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 7d 27 ).*(?<!-)[,.](?!-).*(?!,|as|$)}'
7c040 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 61 6e 64 53 70 6c ,.$constraint);.foreach.($andSpl
7c060 69 74 20 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 it.as.$constraint).{.$constraint
7c080 73 5b 5d 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 7d 0a 0a 0a 20 24 6d 61 74 63 68 s[].=.$constraint;.}.}....$match
7c0a0 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 73 20 .=.false;.foreach.($constraints.
7c0c0 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 as.$constraint).{.if.(preg_match
7c0e0 28 27 7b 5e 5b 5e 40 5d 2a 3f 40 28 27 2e 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 61 72 72 61 79 ('{^[^@]*?@('.implode('|',.array
7c100 5f 6b 65 79 73 28 24 73 74 61 62 69 6c 69 74 69 65 73 29 29 2e 27 29 24 7d 69 27 2c 20 24 63 6f _keys($stabilities)).')$}i',.$co
7c120 6e 73 74 72 61 69 6e 74 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 73 74 72 nstraint,.$match)).{.$name.=.str
7c140 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 69 74 79 20 3d 20 tolower($reqName);.$stability.=.
7c160 24 73 74 61 62 69 6c 69 74 69 65 73 5b 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 6e 6f 72 6d $stabilities[VersionParser::norm
7c180 61 6c 69 7a 65 53 74 61 62 69 6c 69 74 79 28 24 6d 61 74 63 68 5b 31 5d 29 5d 3b 0a 0a 69 66 20 alizeStability($match[1])];..if.
7c1a0 28 69 73 73 65 74 28 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 29 20 26 (isset($stabilityFlags[$name]).&
7c1c0 26 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 20 3e 20 24 73 74 61 62 &.$stabilityFlags[$name].>.$stab
7c1e0 69 6c 69 74 79 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 73 74 61 62 69 6c 69 74 79 46 ility).{.continue;.}.$stabilityF
7c200 6c 61 67 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 73 74 61 62 69 6c 69 74 79 3b 0a 24 6d 61 74 63 68 lags[$name].=.$stability;.$match
7c220 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6d 61 74 63 68 29 20 7b 0a 63 6f 6e 74 .=.true;.}.}..if.($match).{.cont
7c240 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 0a 20 24 72 65 71 56 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f inue;.}......$reqVersion.=.preg_
7c260 72 65 70 6c 61 63 65 28 27 7b 5e 28 5b 5e 2c 5c 73 40 5d 2b 29 20 61 73 20 2e 2b 24 7d 27 2c 20 replace('{^([^,\s@]+).as..+$}',.
7c280 27 24 31 27 2c 20 24 72 65 71 56 65 72 73 69 6f 6e 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 '$1',.$reqVersion);.if.(preg_mat
7c2a0 63 68 28 27 7b 5e 5b 5e 2c 5c 73 40 5d 2b 24 7d 27 2c 20 24 72 65 71 56 65 72 73 69 6f 6e 29 20 ch('{^[^,\s@]+$}',.$reqVersion).
7c2c0 26 26 20 27 73 74 61 62 6c 65 27 20 21 3d 3d 20 28 24 73 74 61 62 69 6c 69 74 79 4e 61 6d 65 20 &&.'stable'.!==.($stabilityName.
7c2e0 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 74 79 28 =.VersionParser::parseStability(
7c300 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 74 72 74 6f 6c 6f $reqVersion))).{.$name.=.strtolo
7c320 77 65 72 28 24 72 65 71 4e 61 6d 65 29 3b 0a 24 73 74 61 62 69 6c 69 74 79 20 3d 20 24 73 74 61 wer($reqName);.$stability.=.$sta
7c340 62 69 6c 69 74 69 65 73 5b 24 73 74 61 62 69 6c 69 74 79 4e 61 6d 65 5d 3b 0a 69 66 20 28 28 69 bilities[$stabilityName];.if.((i
7c360 73 73 65 74 28 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 29 20 26 26 20 sset($stabilityFlags[$name]).&&.
7c380 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 20 3e 20 24 73 74 61 62 69 6c $stabilityFlags[$name].>.$stabil
7c3a0 69 74 79 29 20 7c 7c 20 28 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 20 3e 20 24 73 74 ity).||.($minimumStability.>.$st
7c3c0 61 62 69 6c 69 74 79 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 73 74 61 62 69 6c 69 ability)).{.continue;.}.$stabili
7c3e0 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 74 79 3b 0a 7d 0a 7d tyFlags[$name].=.$stability;.}.}
7c400 0a 0a 72 65 74 75 72 6e 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 3b 0a 7d 0a 0a 70 72 69 ..return.$stabilityFlags;.}..pri
7c420 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 52 65 66 65 72 65 6e 63 65 73 28 vate.function.extractReferences(
7c440 61 72 72 61 79 20 24 72 65 71 75 69 72 65 73 2c 20 61 72 72 61 79 20 24 72 65 66 65 72 65 6e 63 array.$requires,.array.$referenc
7c460 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 71 es).{.foreach.($requires.as.$req
7c480 4e 61 6d 65 20 3d 3e 20 24 72 65 71 56 65 72 73 69 6f 6e 29 20 7b 0a 24 72 65 71 56 65 72 73 69 Name.=>.$reqVersion).{.$reqVersi
7c4a0 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@]+).
7c4c0 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
7c4e0 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 5e 2c 5c 73 40 5d 2b 3f 23 28 5b 61 2d 66 30 .(preg_match('{^[^,\s@]+?#([a-f0
7c500 2d 39 5d 2b 29 24 7d 27 2c 20 24 72 65 71 56 65 72 73 69 6f 6e 2c 20 24 6d 61 74 63 68 29 20 26 -9]+)$}',.$reqVersion,.$match).&
7c520 26 20 27 64 65 76 27 20 3d 3d 3d 20 28 24 73 74 61 62 69 6c 69 74 79 4e 61 6d 65 20 3d 20 56 65 &.'dev'.===.($stabilityName.=.Ve
7c540 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 74 79 28 24 72 65 71 rsionParser::parseStability($req
7c560 56 65 72 73 69 6f 6e 29 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 Version))).{.$name.=.strtolower(
7c580 24 72 65 71 4e 61 6d 65 29 3b 0a 24 72 65 66 65 72 65 6e 63 65 73 5b 24 6e 61 6d 65 5d 20 3d 20 $reqName);.$references[$name].=.
7c5a0 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 66 65 72 65 6e 63 $match[1];.}.}..return.$referenc
7c5c0 65 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 es;.}.}.<?php............namespa
7c5e0 63 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 ce.Composer\Package\Loader;..use
7c600 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c .Composer\Package;.use.Composer\
7c620 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 70 6f 73 65 Package\BasePackage;.use.Compose
7c640 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 0a r\Semver\Constraint\Constraint;.
7c660 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
7c680 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 50 6c 61 74 66 r;.use.Composer\Repository\Platf
7c6a0 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 56 61 6c 69 64 61 74 ormRepository;.....class.Validat
7c6c0 69 6e 67 41 72 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 ingArrayLoader.implements.Loader
7c6e0 49 6e 74 65 72 66 61 63 65 0a 7b 0a 63 6f 6e 73 74 20 43 48 45 43 4b 5f 41 4c 4c 20 3d 20 31 3b Interface.{.const.CHECK_ALL.=.1;
7c700 0a 63 6f 6e 73 74 20 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 .const.CHECK_UNBOUND_CONSTRAINTS
7c720 20 3d 20 31 3b 0a 0a 70 72 69 76 61 74 65 20 24 6c 6f 61 64 65 72 3b 0a 70 72 69 76 61 74 65 20 .=.1;..private.$loader;.private.
7c740 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 70 72 69 76 61 74 65 20 24 65 72 72 6f 72 73 3b $versionParser;.private.$errors;
7c760 0a 70 72 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 63 6f 6e .private.$warnings;.private.$con
7c780 66 69 67 3b 0a 70 72 69 76 61 74 65 20 24 73 74 72 69 63 74 4e 61 6d 65 3b 0a 70 72 69 76 61 74 fig;.private.$strictName;.privat
7c7a0 65 20 24 66 6c 61 67 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 e.$flags;..public.function.__con
7c7c0 73 74 72 75 63 74 28 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 20 24 6c 6f 61 64 65 72 2c 20 struct(LoaderInterface.$loader,.
7c7e0 24 73 74 72 69 63 74 4e 61 6d 65 20 3d 20 74 72 75 65 2c 20 56 65 72 73 69 6f 6e 50 61 72 73 65 $strictName.=.true,.VersionParse
7c800 72 20 24 70 61 72 73 65 72 20 3d 20 6e 75 6c 6c 2c 20 24 66 6c 61 67 73 20 3d 20 30 29 0a 7b 0a r.$parser.=.null,.$flags.=.0).{.
7c820 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 24 6c 6f 61 64 65 72 3b 0a 24 74 68 69 73 2d 3e $this->loader.=.$loader;.$this->
7c840 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 24 70 61 72 73 65 72 20 3f 3a 20 6e 65 77 20 56 versionParser.=.$parser.?:.new.V
7c860 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 74 68 69 73 2d 3e 73 74 72 69 63 74 4e 61 6d ersionParser();.$this->strictNam
7c880 65 20 3d 20 24 73 74 72 69 63 74 4e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 3d 20 e.=.$strictName;.$this->flags.=.
7c8a0 24 66 6c 61 67 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 $flags;.}..public.function.load(
7c8c0 61 72 72 61 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 array.$config,.$class.=.'Compose
7c8e0 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 0a 7b 0a 24 74 r\Package\CompletePackage').{.$t
7c900 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 77 61 his->errors.=.array();.$this->wa
7c920 72 6e 69 6e 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 rnings.=.array();.$this->config.
7c940 3d 20 24 63 6f 6e 66 69 67 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 74 72 69 63 74 4e 61 6d =.$config;..if.($this->strictNam
7c960 65 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 27 6e 61 6d 65 27 e).{.$this->validateRegex('name'
7c980 2c 20 27 5b 41 2d 5a 61 2d 7a 30 2d 39 5d 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 2e 2d 5d 2a 2f 5b 41 ,.'[A-Za-z0-9][A-Za-z0-9_.-]*/[A
7c9a0 2d 5a 61 2d 7a 30 2d 39 5d 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 2e 2d 5d 2a 27 2c 20 74 72 75 65 29 -Za-z0-9][A-Za-z0-9_.-]*',.true)
7c9c0 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 ;.}.else.{.$this->validateString
7c9e0 28 27 6e 61 6d 65 27 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 74 ('name',.true);.}..if.(!empty($t
7ca00 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 74 72 79 20 7b his->config['version'])).{.try.{
7ca20 0a 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 .$this->versionParser->normalize
7ca40 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 7d 20 63 61 ($this->config['version']);.}.ca
7ca60 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 73 2d 3e 65 72 72 tch.(\Exception.$e).{.$this->err
7ca80 6f 72 73 5b 5d 20 3d 20 27 76 65 72 73 69 6f 6e 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 ors[].=.'version.:.invalid.value
7caa0 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 2e 27 29 3a .('.$this->config['version'].'):
7cac0 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 .'.$e->getMessage();.unset($this
7cae0 2d 3e 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 ->config['version']);.}.}..$this
7cb00 2d 3e 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 27 74 79 70 65 27 2c 20 27 5b 41 2d 5a 61 2d 7a ->validateRegex('type',.'[A-Za-z
7cb20 30 2d 39 2d 5d 2b 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 0-9-]+');.$this->validateString(
7cb40 27 74 61 72 67 65 74 2d 64 69 72 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 'target-dir');.$this->validateAr
7cb60 72 61 79 28 27 65 78 74 72 61 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 46 6c 61 ray('extra');.$this->validateFla
7cb80 74 41 72 72 61 79 28 27 62 69 6e 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 tArray('bin');.$this->validateAr
7cba0 72 61 79 28 27 73 63 72 69 70 74 73 27 29 3b 20 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 ray('scripts');...$this->validat
7cbc0 65 53 74 72 69 6e 67 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 29 3b 0a 24 74 68 69 73 2d 3e 76 eString('description');.$this->v
7cbe0 61 6c 69 64 61 74 65 55 72 6c 28 27 68 6f 6d 65 70 61 67 65 27 29 3b 0a 24 74 68 69 73 2d 3e 76 alidateUrl('homepage');.$this->v
7cc00 61 6c 69 64 61 74 65 46 6c 61 74 41 72 72 61 79 28 27 6b 65 79 77 6f 72 64 73 27 2c 20 27 5b 5c alidateFlatArray('keywords',.'[\
7cc20 70 7b 4e 7d 5c 70 7b 4c 7d 20 2e 5f 2d 5d 2b 27 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 p{N}\p{L}.._-]+');..if.(isset($t
7cc40 68 69 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 69 66 20 28 69 his->config['license'])).{.if.(i
7cc60 73 5f 73 74 72 69 6e 67 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 6c 69 63 65 6e 73 65 27 s_string($this->config['license'
7cc80 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 27 6c 69 63 65 ])).{.$this->validateRegex('lice
7cca0 6e 73 65 27 2c 20 27 5b 41 2d 5a 61 2d 7a 30 2d 39 2b 2e 20 28 29 2d 5d 2b 27 29 3b 0a 7d 20 65 nse',.'[A-Za-z0-9+..()-]+');.}.e
7ccc0 6c 73 65 20 7b 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 lse.{.$this->validateFlatArray('
7cce0 6c 69 63 65 6e 73 65 27 2c 20 27 5b 41 2d 5a 61 2d 7a 30 2d 39 2b 2e 20 28 29 2d 5d 2b 27 29 3b license',.'[A-Za-z0-9+..()-]+');
7cd00 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 27 74 69 6d .}.}..$this->validateString('tim
7cd20 65 27 29 3b 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 74 e');.if.(!empty($this->config['t
7cd40 69 6d 65 27 5d 29 29 20 7b 0a 74 72 79 20 7b 0a 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 ime'])).{.try.{.$date.=.new.\Dat
7cd60 65 54 69 6d 65 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 74 69 6d 65 27 5d 2c 20 6e 65 77 eTime($this->config['time'],.new
7cd80 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 20 63 61 74 63 68 20 .\DateTimeZone('UTC'));.}.catch.
7cda0 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 65 72 72 6f 72 73 5b (\Exception.$e).{.$this->errors[
7cdc0 5d 20 3d 20 27 74 69 6d 65 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 74 68 ].=.'time.:.invalid.value.('.$th
7cde0 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 74 69 6d 65 27 5d 2e 27 29 3a 20 27 2e 24 65 2d 3e 67 65 74 is->config['time'].'):.'.$e->get
7ce00 4d 65 73 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 Message();.unset($this->config['
7ce20 74 69 6d 65 27 5d 29 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 time']);.}.}..if.($this->validat
7ce40 65 41 72 72 61 79 28 27 61 75 74 68 6f 72 73 27 29 20 26 26 20 21 65 6d 70 74 79 28 24 74 68 69 eArray('authors').&&.!empty($thi
7ce60 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 s->config['authors'])).{.foreach
7ce80 20 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 20 61 73 20 24 6b .($this->config['authors'].as.$k
7cea0 65 79 20 3d 3e 20 24 61 75 74 68 6f 72 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 ey.=>.$author).{.if.(!is_array($
7cec0 61 75 74 68 6f 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 61 75 author)).{.$this->errors[].=.'au
7cee0 74 68 6f 72 73 2e 27 2e 24 6b 65 79 2e 27 20 3a 20 73 68 6f 75 6c 64 20 62 65 20 61 6e 20 61 72 thors.'.$key.'.:.should.be.an.ar
7cf00 72 61 79 2c 20 27 2e 67 65 74 74 79 70 65 28 24 61 75 74 68 6f 72 29 2e 27 20 67 69 76 65 6e 27 ray,.'.gettype($author).'.given'
7cf20 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 6f 72 73 27 5d ;.unset($this->config['authors']
7cf40 5b 24 6b 65 79 5d 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 61 72 [$key]);.continue;.}.foreach.(ar
7cf60 72 61 79 28 27 68 6f 6d 65 70 61 67 65 27 2c 20 27 65 6d 61 69 6c 27 2c 20 27 6e 61 6d 65 27 2c ray('homepage',.'email',.'name',
7cf80 20 27 72 6f 6c 65 27 29 20 61 73 20 24 61 75 74 68 6f 72 44 61 74 61 29 20 7b 0a 69 66 20 28 69 .'role').as.$authorData).{.if.(i
7cfa0 73 73 65 74 28 24 61 75 74 68 6f 72 5b 24 61 75 74 68 6f 72 44 61 74 61 5d 29 20 26 26 20 21 69 sset($author[$authorData]).&&.!i
7cfc0 73 5f 73 74 72 69 6e 67 28 24 61 75 74 68 6f 72 5b 24 61 75 74 68 6f 72 44 61 74 61 5d 29 29 20 s_string($author[$authorData])).
7cfe0 7b 0a 24 74 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 {.$this->errors[].=.'authors.'.$
7d000 6b 65 79 2e 27 2e 27 2e 24 61 75 74 68 6f 72 44 61 74 61 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 key.'.'.$authorData.'.:.invalid.
7d020 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 65 20 61 20 73 74 72 69 6e 67 27 3b 0a 75 6e 73 65 74 28 value,.must.be.a.string';.unset(
7d040 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 5d 5b 24 $this->config['authors'][$key][$
7d060 61 75 74 68 6f 72 44 61 74 61 5d 29 3b 0a 7d 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 74 authorData]);.}.}.if.(isset($aut
7d080 68 6f 72 5b 27 68 6f 6d 65 70 61 67 65 27 5d 29 20 26 26 20 21 24 74 68 69 73 2d 3e 66 69 6c 74 hor['homepage']).&&.!$this->filt
7d0a0 65 72 55 72 6c 28 24 61 75 74 68 6f 72 5b 27 68 6f 6d 65 70 61 67 65 27 5d 29 29 20 7b 0a 24 74 erUrl($author['homepage'])).{.$t
7d0c0 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 27 61 75 74 68 6f 72 73 2e 27 2e 24 6b 65 his->warnings[].=.'authors.'.$ke
7d0e0 79 2e 27 2e 68 6f 6d 65 70 61 67 65 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e y.'.homepage.:.invalid.value.('.
7d100 24 61 75 74 68 6f 72 5b 27 68 6f 6d 65 70 61 67 65 27 5d 2e 27 29 2c 20 6d 75 73 74 20 62 65 20 $author['homepage'].'),.must.be.
7d120 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 68 69 73 2d an.http/https.URL';.unset($this-
7d140 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 5b 24 6b 65 79 5d 5b 27 68 6f 6d 65 70 61 >config['authors'][$key]['homepa
7d160 67 65 27 5d 29 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 74 68 6f 72 5b 27 65 6d 61 69 ge']);.}.if.(isset($author['emai
7d180 6c 27 5d 29 20 26 26 20 21 66 69 6c 74 65 72 5f 76 61 72 28 24 61 75 74 68 6f 72 5b 27 65 6d 61 l']).&&.!filter_var($author['ema
7d1a0 69 6c 27 5d 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 45 4d 41 49 4c 29 29 20 7b 0a il'],.FILTER_VALIDATE_EMAIL)).{.
7d1c0 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 27 61 75 74 68 6f 72 73 2e 27 2e 24 $this->warnings[].=.'authors.'.$
7d1e0 6b 65 79 2e 27 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 key.'.email.:.invalid.value.('.$
7d200 61 75 74 68 6f 72 5b 27 65 6d 61 69 6c 27 5d 2e 27 29 2c 20 6d 75 73 74 20 62 65 20 61 20 76 61 author['email'].'),.must.be.a.va
7d220 6c 69 64 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d lid.email.address';.unset($this-
7d240 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 5b 24 6b 65 79 5d 5b 27 65 6d 61 69 6c 27 >config['authors'][$key]['email'
7d260 5d 29 3b 0a 7d 0a 69 66 20 28 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 ]);.}.if.(empty($this->config['a
7d280 75 74 68 6f 72 73 27 5d 5b 24 6b 65 79 5d 29 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e uthors'][$key])).{.unset($this->
7d2a0 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 7d 0a 7d 0a 69 66 config['authors'][$key]);.}.}.if
7d2c0 20 28 65 6d 70 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 .(empty($this->config['authors']
7d2e0 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 72 )).{.unset($this->config['author
7d300 73 27 5d 29 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 s']);.}.}..if.($this->validateAr
7d320 72 61 79 28 27 73 75 70 70 6f 72 74 27 29 20 26 26 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e ray('support').&&.!empty($this->
7d340 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 61 config['support'])).{.foreach.(a
7d360 72 72 61 79 28 27 69 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 rray('issues',.'forum',.'wiki',.
7d380 27 73 6f 75 72 63 65 27 2c 20 27 65 6d 61 69 6c 27 2c 20 27 69 72 63 27 2c 20 27 64 6f 63 73 27 'source',.'email',.'irc',.'docs'
7d3a0 29 20 61 73 20 24 6b 65 79 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f ).as.$key).{.if.(isset($this->co
7d3c0 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 24 6b 65 79 5d 29 20 26 26 20 21 69 73 5f 73 74 nfig['support'][$key]).&&.!is_st
7d3e0 72 69 6e 67 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 5b 24 6b ring($this->config['support'][$k
7d400 65 79 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 73 75 70 70 6f ey])).{.$this->errors[].=.'suppo
7d420 72 74 2e 27 2e 24 6b 65 79 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 rt.'.$key.'.:.invalid.value,.mus
7d440 74 20 62 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 t.be.a.string';.unset($this->con
7d460 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 0a 69 66 20 28 fig['support'][$key]);.}.}..if.(
7d480 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 27 5d 5b 27 isset($this->config['support']['
7d4a0 65 6d 61 69 6c 27 5d 29 20 26 26 20 21 66 69 6c 74 65 72 5f 76 61 72 28 24 74 68 69 73 2d 3e 63 email']).&&.!filter_var($this->c
7d4c0 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 2c 20 46 49 4c 54 45 onfig['support']['email'],.FILTE
7d4e0 52 5f 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 R_VALIDATE_EMAIL)).{.$this->warn
7d500 69 6e 67 73 5b 5d 20 3d 20 27 73 75 70 70 6f 72 74 2e 65 6d 61 69 6c 20 3a 20 69 6e 76 61 6c 69 ings[].=.'support.email.:.invali
7d520 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 73 75 70 70 6f 72 d.value.('.$this->config['suppor
7d540 74 27 5d 5b 27 65 6d 61 69 6c 27 5d 2e 27 29 2c 20 6d 75 73 74 20 62 65 20 61 20 76 61 6c 69 64 t']['email'].'),.must.be.a.valid
7d560 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f .email.address';.unset($this->co
7d580 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 3b 0a 7d 0a 0a 69 66 nfig['support']['email']);.}..if
7d5a0 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 27 5d .(isset($this->config['support']
7d5c0 5b 27 69 72 63 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 74 ['irc']).&&.!$this->filterUrl($t
7d5e0 68 69 73 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 2c 20 61 his->config['support']['irc'],.a
7d600 72 72 61 79 28 27 69 72 63 27 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 5b rray('irc'))).{.$this->warnings[
7d620 5d 20 3d 20 27 73 75 70 70 6f 72 74 2e 69 72 63 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 ].=.'support.irc.:.invalid.value
7d640 20 28 27 2e 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 27 69 72 .('.$this->config['support']['ir
7d660 63 27 5d 2e 27 29 2c 20 6d 75 73 74 20 62 65 20 61 20 69 72 63 3a 2f 2f 3c 73 65 72 76 65 72 3e c'].'),.must.be.a.irc://<server>
7d680 2f 3c 63 68 61 6e 6e 65 6c 3e 20 55 52 4c 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f /<channel>.URL';.unset($this->co
7d6a0 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 72 63 27 5d 29 3b 0a 7d 0a 0a 66 6f 72 65 nfig['support']['irc']);.}..fore
7d6c0 61 63 68 20 28 61 72 72 61 79 28 27 69 73 73 75 65 73 27 2c 20 27 66 6f 72 75 6d 27 2c 20 27 77 ach.(array('issues',.'forum',.'w
7d6e0 69 6b 69 27 2c 20 27 73 6f 75 72 63 65 27 2c 20 27 64 6f 63 73 27 29 20 61 73 20 24 6b 65 79 29 iki',.'source',.'docs').as.$key)
7d700 20 7b 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 73 75 70 70 .{.if.(isset($this->config['supp
7d720 6f 72 74 27 5d 5b 24 6b 65 79 5d 29 20 26 26 20 21 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 55 72 ort'][$key]).&&.!$this->filterUr
7d740 6c 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 5b 24 6b 65 79 5d l($this->config['support'][$key]
7d760 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 70 6f 72 )).{.$this->warnings[].=.'suppor
7d780 74 2e 27 2e 24 6b 65 79 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 74 t.'.$key.'.:.invalid.value.('.$t
7d7a0 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 2e 27 29 2c his->config['support'][$key].'),
7d7c0 20 6d 75 73 74 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 .must.be.an.http/https.URL';.uns
7d7e0 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 5b 24 6b 65 79 et($this->config['support'][$key
7d800 5d 29 3b 0a 7d 0a 7d 0a 69 66 20 28 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b ]);.}.}.if.(empty($this->config[
7d820 27 73 75 70 70 6f 72 74 27 5d 29 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 'support'])).{.unset($this->conf
7d840 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 29 3b 0a 7d 0a 7d 0a 0a 24 75 6e 62 6f 75 6e 64 43 6f 6e ig['support']);.}.}..$unboundCon
7d860 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 27 2c 20 24 74 straint.=.new.Constraint('=',.$t
7d880 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 28 27 64 his->versionParser->normalize('d
7d8a0 65 76 2d 6d 61 73 74 65 72 27 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 6b 65 ev-master'));..foreach.(array_ke
7d8c0 79 73 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 75 70 70 6f 72 74 65 64 4c 69 6e 6b 54 79 ys(BasePackage::$supportedLinkTy
7d8e0 70 65 73 29 20 61 73 20 24 6c 69 6e 6b 54 79 70 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e pes).as.$linkType).{.if.($this->
7d900 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 24 6c 69 6e 6b 54 79 70 65 29 20 26 26 20 69 73 73 65 validateArray($linkType).&&.isse
7d920 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6c 69 6e 6b 54 79 70 65 5d 29 29 20 7b 0a 66 t($this->config[$linkType])).{.f
7d940 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6c 69 6e 6b 54 79 70 65 5d oreach.($this->config[$linkType]
7d960 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
7d980 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 5f 2e 2f 2d f.(!preg_match('{^[A-Za-z0-9_./-
7d9a0 5d 2b 24 7d 27 2c 20 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 72 6e 69 ]+$}',.$package)).{.$this->warni
7d9c0 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 2e 27 ngs[].=.$linkType.'.'.$package.'
7d9e0 20 3a 20 69 6e 76 61 6c 69 64 20 6b 65 79 2c 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 73 20 6d 75 .:.invalid.key,.package.names.mu
7da00 73 74 20 62 65 20 73 74 72 69 6e 67 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 6f 6e 6c 79 20 5b 41 st.be.strings.containing.only.[A
7da20 2d 5a 61 2d 7a 30 2d 39 5f 2e 2f 2d 5d 27 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 73 74 72 69 6e 67 -Za-z0-9_./-]';.}.if.(!is_string
7da40 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d ($constraint)).{.$this->errors[]
7da60 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
7da80 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 20 63 6f valid.value,.must.be.a.string.co
7daa0 6e 74 61 69 6e 69 6e 67 20 61 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 27 3b 0a ntaining.a.version.constraint';.
7dac0 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6c 69 6e 6b 54 79 70 65 5d 5b 24 unset($this->config[$linkType][$
7dae0 70 61 63 6b 61 67 65 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 73 65 6c 66 2e 76 65 72 73 69 package]);.}.elseif.('self.versi
7db00 6f 6e 27 20 21 3d 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 74 72 79 20 7b 0a 24 6c 69 on'.!==.$constraint).{.try.{.$li
7db20 6e 6b 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 72 nkConstraint.=.$this->versionPar
7db40 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 69 6e ser->parseConstraints($constrain
7db60 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 65 29 20 7b 0a 24 74 t);.}.catch.(\Exception.$e).{.$t
7db80 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 27 2e 27 2e 24 70 his->errors[].=.$linkType.'.'.$p
7dba0 61 63 6b 61 67 65 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 ackage.'.:.invalid.version.const
7dbc0 72 61 69 6e 74 20 28 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 27 3b 0a 75 raint.('.$e->getMessage().')';.u
7dbe0 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6c 69 6e 6b 54 79 70 65 5d 5b 24 70 nset($this->config[$linkType][$p
7dc00 61 63 6b 61 67 65 5d 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 0a 28 24 ackage]);.continue;.}....if.(.($
7dc20 74 68 69 73 2d 3e 66 6c 61 67 73 20 26 20 73 65 6c 66 3a 3a 43 48 45 43 4b 5f 55 4e 42 4f 55 4e this->flags.&.self::CHECK_UNBOUN
7dc40 44 5f 43 4f 4e 53 54 52 41 49 4e 54 53 29 0a 26 26 20 27 72 65 71 75 69 72 65 27 20 3d 3d 3d 20 D_CONSTRAINTS).&&.'require'.===.
7dc60 24 6c 69 6e 6b 54 79 70 65 0a 26 26 20 24 6c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 $linkType.&&.$linkConstraint->ma
7dc80 74 63 68 65 73 28 24 75 6e 62 6f 75 6e 64 43 6f 6e 73 74 72 61 69 6e 74 29 0a 26 26 20 21 70 72 tches($unboundConstraint).&&.!pr
7dca0 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 4c 41 eg_match(PlatformRepository::PLA
7dcc0 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 58 2c 20 24 70 61 63 6b 61 67 65 29 0a 29 TFORM_PACKAGE_REGEX,.$package).)
7dce0 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 54 79 70 65 .{.$this->warnings[].=.$linkType
7dd00 2e 27 2e 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 3a 20 75 6e 62 6f 75 6e 64 20 76 65 72 73 69 6f .'.'.$package.'.:.unbound.versio
7dd20 6e 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 28 27 2e 24 63 6f 6e 73 74 72 61 69 6e 74 2e 27 29 20 n.constraints.('.$constraint.').
7dd40 73 68 6f 75 6c 64 20 62 65 20 61 76 6f 69 64 65 64 27 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 should.be.avoided';.}.}.}.}.}..i
7dd60 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 73 75 67 67 65 73 74 f.($this->validateArray('suggest
7dd80 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 73 75 67 67 ').&&.!empty($this->config['sugg
7dda0 65 73 74 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 69 67 est'])).{.foreach.($this->config
7ddc0 5b 27 73 75 67 67 65 73 74 27 5d 20 61 73 20 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 64 65 73 63 ['suggest'].as.$package.=>.$desc
7dde0 72 69 70 74 69 6f 6e 29 20 7b 0a 69 66 20 28 21 69 73 5f 73 74 72 69 6e 67 28 24 64 65 73 63 72 ription).{.if.(!is_string($descr
7de00 69 70 74 69 6f 6e 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 73 75 iption)).{.$this->errors[].=.'su
7de20 67 67 65 73 74 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 ggest.'.$package.'.:.invalid.val
7de40 75 65 2c 20 6d 75 73 74 20 62 65 20 61 20 73 74 72 69 6e 67 20 64 65 73 63 72 69 62 69 6e 67 20 ue,.must.be.a.string.describing.
7de60 77 68 79 20 74 68 65 20 70 61 63 6b 61 67 65 20 69 73 20 73 75 67 67 65 73 74 65 64 27 3b 0a 75 why.the.package.is.suggested';.u
7de80 6e 73 65 74 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 5b 24 70 nset($this->config['suggest'][$p
7dea0 61 63 6b 61 67 65 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 76 61 6c 69 ackage]);.}.}.}..if.($this->vali
7dec0 64 61 74 65 53 74 72 69 6e 67 28 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 29 20 dateString('minimum-stability').
7dee0 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 6d 69 6e 69 6d 75 6d &&.!empty($this->config['minimum
7df00 2d 73 74 61 62 69 6c 69 74 79 27 5d 29 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 42 61 73 65 -stability'])).{.if.(!isset(Base
7df20 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 74 68 69 73 2d 3e 63 6f 6e Package::$stabilities[$this->con
7df40 66 69 67 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 5d 29 29 20 7b 0a 24 74 fig['minimum-stability']])).{.$t
7df60 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 his->errors[].=.'minimum-stabili
7df80 74 79 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 6e ty.:.invalid.value.('.$this->con
7dfa0 66 69 67 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 2e 27 29 2c 20 6d 75 73 fig['minimum-stability'].'),.mus
7dfc0 74 20 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 61 72 72 61 t.be.one.of.'.implode(',.',.arra
7dfe0 79 5f 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 y_keys(BasePackage::$stabilities
7e000 29 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 6d 69 6e 69 6d 75 6d ));.unset($this->config['minimum
7e020 2d 73 74 61 62 69 6c 69 74 79 27 5d 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 76 -stability']);.}.}..if.($this->v
7e040 61 6c 69 64 61 74 65 41 72 72 61 79 28 27 61 75 74 6f 6c 6f 61 64 27 29 20 26 26 20 21 65 6d 70 alidateArray('autoload').&&.!emp
7e060 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 27 5d 29 29 20 7b ty($this->config['autoload'])).{
7e080 0a 24 74 79 70 65 73 20 3d 20 61 72 72 61 79 28 27 70 73 72 2d 30 27 2c 20 27 70 73 72 2d 34 27 .$types.=.array('psr-0',.'psr-4'
7e0a0 2c 20 27 63 6c 61 73 73 6d 61 70 27 2c 20 27 66 69 6c 65 73 27 2c 20 27 65 78 63 6c 75 64 65 2d ,.'classmap',.'files',.'exclude-
7e0c0 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d from-classmap');.foreach.($this-
7e0e0 3e 63 6f 6e 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 27 5d 20 61 73 20 24 74 79 70 65 20 3d 3e 20 >config['autoload'].as.$type.=>.
7e100 24 74 79 70 65 43 6f 6e 66 69 67 29 20 7b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 74 79 $typeConfig).{.if.(!in_array($ty
7e120 70 65 2c 20 24 74 79 70 65 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d pe,.$types)).{.$this->errors[].=
7e140 20 27 61 75 74 6f 6c 6f 61 64 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 74 .'autoload.:.invalid.value.('.$t
7e160 79 70 65 2e 27 29 2c 20 6d 75 73 74 20 62 65 20 6f 6e 65 20 6f 66 20 27 2e 69 6d 70 6c 6f 64 65 ype.'),.must.be.one.of.'.implode
7e180 28 27 2c 20 27 2c 20 24 74 79 70 65 73 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e (',.',.$types);.unset($this->con
7e1a0 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 27 5d 5b 24 74 79 70 65 5d 29 3b 0a 7d 0a 69 66 20 28 24 fig['autoload'][$type]);.}.if.($
7e1c0 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 68 20 28 24 74 79 type.===.'psr-4').{.foreach.($ty
7e1e0 70 65 43 6f 6e 66 69 67 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 64 69 72 73 29 peConfig.as.$namespace.=>.$dirs)
7e200 20 7b 0a 69 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 .{.if.($namespace.!==.''.&&.'\\'
7e220 20 21 3d 3d 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 24 .!==.substr($namespace,.-1)).{.$
7e240 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 2e 70 73 72 2d 34 this->errors[].=.'autoload.psr-4
7e260 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 6e 61 6d 65 73 70 61 63 65 2e 27 .:.invalid.value.('.$namespace.'
7e280 29 2c 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 20 6e 61 ),.namespaces.must.end.with.a.na
7e2a0 6d 65 73 70 61 63 65 20 73 65 70 61 72 61 74 6f 72 2c 20 73 68 6f 75 6c 64 20 62 65 20 27 2e 24 mespace.separator,.should.be.'.$
7e2c0 6e 61 6d 65 73 70 61 63 65 2e 27 5c 5c 5c 5c 27 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 namespace.'\\\\';.}.}.}.}.}..if.
7e2e0 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 27 (!empty($this->config['autoload'
7e300 5d 5b 27 70 73 72 2d 34 27 5d 29 20 26 26 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e ]['psr-4']).&&.!empty($this->con
7e320 66 69 67 5b 27 74 61 72 67 65 74 2d 64 69 72 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 fig['target-dir'])).{.$this->err
7e340 6f 72 73 5b 5d 20 3d 20 27 74 61 72 67 65 74 2d 64 69 72 20 3a 20 74 68 69 73 20 63 61 6e 20 6e ors[].=.'target-dir.:.this.can.n
7e360 6f 74 20 62 65 20 75 73 65 64 20 74 6f 67 65 74 68 65 72 20 77 69 74 68 20 74 68 65 20 61 75 74 ot.be.used.together.with.the.aut
7e380 6f 6c 6f 61 64 2e 70 73 72 2d 34 20 73 65 74 74 69 6e 67 2c 20 72 65 6d 6f 76 65 20 74 61 72 67 oload.psr-4.setting,.remove.targ
7e3a0 65 74 2d 64 69 72 20 74 6f 20 75 70 67 72 61 64 65 20 74 6f 20 70 73 72 2d 34 27 3b 0a 0a 20 0a et-dir.to.upgrade.to.psr-4';....
7e3c0 20 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 27 5d .unset($this->config['autoload']
7e3e0 5b 27 70 73 72 2d 34 27 5d 29 3b 0a 7d 0a 0a 0a 20 0a 0a 0a 20 0a 0a 24 74 68 69 73 2d 3e 76 61 ['psr-4']);.}..........$this->va
7e400 6c 69 64 61 74 65 46 6c 61 74 41 72 72 61 79 28 27 69 6e 63 6c 75 64 65 2d 70 61 74 68 27 29 3b lidateFlatArray('include-path');
7e420 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 27 74 72 61 6e 73 70 6f 72 74 .$this->validateArray('transport
7e440 2d 6f 70 74 69 6f 6e 73 27 29 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e -options');....if.(isset($this->
7e460 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 61 73 27 5d 29 config['extra']['branch-alias'])
7e480 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b ).{.if.(!is_array($this->config[
7e4a0 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 29 29 20 7b 0a 24 74 68 'extra']['branch-alias'])).{.$th
7e4c0 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 65 78 74 72 61 2e 62 72 61 6e 63 68 2d 61 6c 69 is->errors[].=.'extra.branch-ali
7e4e0 61 73 20 3a 20 6d 75 73 74 20 62 65 20 61 6e 20 61 72 72 61 79 20 6f 66 20 76 65 72 73 69 6f 6e as.:.must.be.an.array.of.version
7e500 73 20 3d 3e 20 61 6c 69 61 73 65 73 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 65 61 63 68 20 s.=>.aliases';.}.else.{.foreach.
7e520 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 6e 63 68 2d ($this->config['extra']['branch-
7e540 61 6c 69 61 73 27 5d 20 61 73 20 24 73 6f 75 72 63 65 42 72 61 6e 63 68 20 3d 3e 20 24 74 61 72 alias'].as.$sourceBranch.=>.$tar
7e560 67 65 74 42 72 61 6e 63 68 29 20 7b 0a 0a 20 69 66 20 28 27 2d 64 65 76 27 20 21 3d 3d 20 73 75 getBranch).{...if.('-dev'.!==.su
7e580 62 73 74 72 28 24 74 61 72 67 65 74 42 72 61 6e 63 68 2c 20 2d 34 29 29 20 7b 0a 24 74 68 69 73 bstr($targetBranch,.-4)).{.$this
7e5a0 2d 3e 77 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 ->warnings[].=.'extra.branch-ali
7e5c0 61 73 2e 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 as.'.$sourceBranch.'.:.the.targe
7e5e0 74 20 62 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 6d 75 73 t.branch.('.$targetBranch.').mus
7e600 74 20 65 6e 64 20 69 6e 20 2d 64 65 76 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e t.end.in.-dev';.unset($this->con
7e620 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
7e640 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 24 76 urceBranch]);..continue;.}....$v
7e660 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 3e 76 65 alidatedTargetBranch.=.$this->ve
7e680 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 73 75 62 rsionParser->normalizeBranch(sub
7e6a0 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 66 20 28 str($targetBranch,.0,.-4));.if.(
7e6c0 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 61 72 67 '-dev'.!==.substr($validatedTarg
7e6e0 65 74 42 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 etBranch,.-4)).{.$this->warnings
7e700 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 27 2e 24 73 6f 75 72 [].=.'extra.branch-alias.'.$sour
7e720 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 72 61 6e 63 68 20 28 ceBranch.'.:.the.target.branch.(
7e740 27 2e 24 74 61 72 67 65 74 42 72 61 6e 63 68 2e 27 29 20 6d 75 73 74 20 62 65 20 61 20 70 61 72 '.$targetBranch.').must.be.a.par
7e760 73 65 61 62 6c 65 20 6e 75 6d 62 65 72 20 6c 69 6b 65 20 32 2e 30 2d 64 65 76 27 3b 0a 75 6e 73 seable.number.like.2.0-dev';.uns
7e780 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 27 62 72 61 6e 63 et($this->config['extra']['branc
7e7a0 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 0a 0a 63 6f 6e 74 h-alias'][$sourceBranch]);..cont
7e7c0 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 28 24 73 6f 75 72 63 65 50 72 65 66 69 78 20 3d 20 inue;.}....if.(($sourcePrefix.=.
7e7e0 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 4e 75 6d 65 72 $this->versionParser->parseNumer
7e800 69 63 41 6c 69 61 73 50 72 65 66 69 78 28 24 73 6f 75 72 63 65 42 72 61 6e 63 68 29 29 0a 26 26 icAliasPrefix($sourceBranch)).&&
7e820 20 28 24 74 61 72 67 65 74 50 72 65 66 69 78 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e .($targetPrefix.=.$this->version
7e840 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 28 Parser->parseNumericAliasPrefix(
7e860 24 74 61 72 67 65 74 42 72 61 6e 63 68 29 29 0a 26 26 20 28 73 74 72 69 70 6f 73 28 24 74 61 72 $targetBranch)).&&.(stripos($tar
7e880 67 65 74 50 72 65 66 69 78 2c 20 24 73 6f 75 72 63 65 50 72 65 66 69 78 29 20 21 3d 3d 20 30 29 getPrefix,.$sourcePrefix).!==.0)
7e8a0 0a 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 .).{.$this->warnings[].=.'extra.
7e8c0 62 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 branch-alias.'.$sourceBranch.'.:
7e8e0 20 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 .the.target.branch.('.$targetBra
7e900 6e 63 68 2e 27 29 20 69 73 20 6e 6f 74 20 61 20 76 61 6c 69 64 20 6e 75 6d 65 72 69 63 20 61 6c nch.').is.not.a.valid.numeric.al
7e920 69 61 73 20 66 6f 72 20 74 68 69 73 20 76 65 72 73 69 6f 6e 27 3b 0a 75 6e 73 65 74 28 24 74 68 ias.for.this.version';.unset($th
7e940 69 73 2d 3e 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 61 is->config['extra']['branch-alia
7e960 73 27 5d 5b 24 73 6f 75 72 63 65 42 72 61 6e 63 68 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 66 s'][$sourceBranch]);.}.}.}.}..if
7e980 20 28 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 .($this->errors).{.throw.new.Inv
7e9a0 61 6c 69 64 50 61 63 6b 61 67 65 45 78 63 65 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 65 72 72 6f alidPackageException($this->erro
7e9c0 72 73 2c 20 24 74 68 69 73 2d 3e 77 61 72 6e 69 6e 67 73 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d rs,.$this->warnings,.$config);.}
7e9e0 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 3e 6c 6f 61 64 ..$package.=.$this->loader->load
7ea00 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 63 6c 61 73 73 29 3b 0a 24 74 68 69 73 2d 3e ($this->config,.$class);.$this->
7ea20 63 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b config.=.null;..return.$package;
7ea40 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 72 6e 69 6e 67 73 28 .}..public.function.getWarnings(
7ea60 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 73 3b 0a 7d 0a 0a 70 ).{.return.$this->warnings;.}..p
7ea80 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 73 28 29 0a 7b 0a 72 65 74 ublic.function.getErrors().{.ret
7eaa0 75 72 6e 20 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 urn.$this->errors;.}..private.fu
7eac0 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 24 70 72 6f 70 65 72 74 79 2c 20 nction.validateRegex($property,.
7eae0 24 72 65 67 65 78 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 $regex,.$mandatory.=.false).{.if
7eb00 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 24 70 72 6f 70 65 72 .(!$this->validateString($proper
7eb20 74 79 2c 20 24 6d 61 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 ty,.$mandatory)).{.return.false;
7eb40 0a 7d 0a 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 27 2e 24 72 65 67 65 78 2e .}..if.(!preg_match('{^'.$regex.
7eb60 27 24 7d 75 27 2c 20 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 '$}u',.$this->config[$property])
7eb80 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 69 6e 76 ).{.$message.=.$property.'.:.inv
7eba0 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 24 70 72 6f alid.value.('.$this->config[$pro
7ebc0 70 65 72 74 79 5d 2e 27 29 2c 20 6d 75 73 74 20 6d 61 74 63 68 20 27 2e 24 72 65 67 65 78 3b 0a perty].'),.must.match.'.$regex;.
7ebe0 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 72 73 5b if.($mandatory).{.$this->errors[
7ec00 5d 20 3d 20 24 6d 65 73 73 61 67 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 77 61 ].=.$message;.}.else.{.$this->wa
7ec20 72 6e 69 6e 67 73 5b 5d 20 3d 20 24 6d 65 73 73 61 67 65 3b 0a 7d 0a 75 6e 73 65 74 28 24 74 68 rnings[].=.$message;.}.unset($th
7ec40 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 20 is->config[$property]);..return.
7ec60 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 74 false;.}..return.true;.}..privat
7ec80 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 24 70 72 6f 70 65 e.function.validateString($prope
7eca0 72 74 79 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 69 rty,.$mandatory.=.false).{.if.(i
7ecc0 73 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 20 26 sset($this->config[$property]).&
7ece0 26 20 21 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 70 72 6f 70 &.!is_string($this->config[$prop
7ed00 65 72 74 79 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 70 72 6f erty])).{.$this->errors[].=.$pro
7ed20 70 65 72 74 79 2e 27 20 3a 20 73 68 6f 75 6c 64 20 62 65 20 61 20 73 74 72 69 6e 67 2c 20 27 2e perty.'.:.should.be.a.string,.'.
7ed40 67 65 74 74 79 70 65 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 gettype($this->config[$property]
7ed60 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 6e 66 69 67 5b ).'.given';.unset($this->config[
7ed80 24 70 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 69 $property]);..return.false;.}..i
7eda0 66 20 28 21 69 73 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 f.(!isset($this->config[$propert
7edc0 79 5d 29 20 7c 7c 20 74 72 69 6d 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 y]).||.trim($this->config[$prope
7ede0 72 74 79 5d 29 20 3d 3d 3d 20 27 27 29 20 7b 0a 69 66 20 28 24 6d 61 6e 64 61 74 6f 72 79 29 20 rty]).===.'').{.if.($mandatory).
7ee00 7b 0a 24 74 68 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 {.$this->errors[].=.$property.'.
7ee20 3a 20 6d 75 73 74 20 62 65 20 70 72 65 73 65 6e 74 27 3b 0a 7d 0a 75 6e 73 65 74 28 24 74 68 69 :.must.be.present';.}.unset($thi
7ee40 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 20 66 s->config[$property]);..return.f
7ee60 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 74 65 alse;.}..return.true;.}..private
7ee80 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 24 70 72 6f 70 65 72 74 .function.validateArray($propert
7eea0 79 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 69 73 73 y,.$mandatory.=.false).{.if.(iss
7eec0 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 20 26 26 20 et($this->config[$property]).&&.
7eee0 21 69 73 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 !is_array($this->config[$propert
7ef00 79 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 70 72 6f 70 65 72 y])).{.$this->errors[].=.$proper
7ef20 74 79 2e 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 ty.'.:.should.be.an.array,.'.get
7ef40 74 79 70 65 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 2e 27 type($this->config[$property]).'
7ef60 20 67 69 76 65 6e 27 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 .given';.unset($this->config[$pr
7ef80 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 69 66 20 28 operty]);..return.false;.}..if.(
7efa0 21 69 73 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 !isset($this->config[$property])
7efc0 20 7c 7c 20 21 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 .||.!count($this->config[$proper
7efe0 74 79 5d 29 29 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 ty])).{.if.($mandatory).{.$this-
7f000 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 6d 75 73 74 20 62 >errors[].=.$property.'.:.must.b
7f020 65 20 70 72 65 73 65 6e 74 20 61 6e 64 20 63 6f 6e 74 61 69 6e 20 61 74 20 6c 65 61 73 74 20 6f e.present.and.contain.at.least.o
7f040 6e 65 20 65 6c 65 6d 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 ne.element';.}.unset($this->conf
7f060 69 67 5b 24 70 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 ig[$property]);..return.false;.}
7f080 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 66 75 6e 63 74 69 ..return.true;.}..private.functi
7f0a0 6f 6e 20 76 61 6c 69 64 61 74 65 46 6c 61 74 41 72 72 61 79 28 24 70 72 6f 70 65 72 74 79 2c 20 on.validateFlatArray($property,.
7f0c0 24 72 65 67 65 78 20 3d 20 6e 75 6c 6c 2c 20 24 6d 61 6e 64 61 74 6f 72 79 20 3d 20 66 61 6c 73 $regex.=.null,.$mandatory.=.fals
7f0e0 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 24 e).{.if.(!$this->validateArray($
7f100 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 6f 72 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 property,.$mandatory)).{.return.
7f120 66 61 6c 73 65 3b 0a 7d 0a 0a 24 70 61 73 73 20 3d 20 74 72 75 65 3b 0a 66 6f 72 65 61 63 68 20 false;.}..$pass.=.true;.foreach.
7f140 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 20 61 73 20 24 6b 65 ($this->config[$property].as.$ke
7f160 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 21 69 73 5f 73 74 72 69 6e 67 28 24 76 y.=>.$value).{.if.(!is_string($v
7f180 61 6c 75 65 29 20 26 26 20 21 69 73 5f 6e 75 6d 65 72 69 63 28 24 76 61 6c 75 65 29 29 20 7b 0a alue).&&.!is_numeric($value)).{.
7f1a0 24 74 68 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 2e 27 2e $this->errors[].=.$property.'.'.
7f1c0 24 6b 65 79 2e 27 20 3a 20 6d 75 73 74 20 62 65 20 61 20 73 74 72 69 6e 67 20 6f 72 20 69 6e 74 $key.'.:.must.be.a.string.or.int
7f1e0 2c 20 27 2e 67 65 74 74 79 70 65 28 24 76 61 6c 75 65 29 2e 27 20 67 69 76 65 6e 27 3b 0a 75 6e ,.'.gettype($value).'.given';.un
7f200 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 5b 24 6b 65 set($this->config[$property][$ke
7f220 79 5d 29 3b 0a 24 70 61 73 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d y]);.$pass.=.false;..continue;.}
7f240 0a 0a 69 66 20 28 24 72 65 67 65 78 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 27 ..if.($regex.&&.!preg_match('{^'
7f260 2e 24 72 65 67 65 78 2e 27 24 7d 75 27 2c 20 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d .$regex.'$}u',.$value)).{.$this-
7f280 3e 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 2e 27 2e 24 6b 65 79 >warnings[].=.$property.'.'.$key
7f2a0 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 76 61 6c 75 65 2e 27 29 2c .'.:.invalid.value.('.$value.'),
7f2c0 20 6d 75 73 74 20 6d 61 74 63 68 20 27 2e 24 72 65 67 65 78 3b 0a 75 6e 73 65 74 28 24 74 68 69 .must.match.'.$regex;.unset($thi
7f2e0 73 2d 3e 63 6f 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 s->config[$property][$key]);.$pa
7f300 73 73 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 73 73 3b 0a 7d ss.=.false;.}.}..return.$pass;.}
7f320 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 55 72 6c 28 24 ..private.function.validateUrl($
7f340 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 6f 72 79 20 3d 20 66 61 6c 73 65 29 0a 7b 0a property,.$mandatory.=.false).{.
7f360 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 24 70 72 6f 70 if.(!$this->validateString($prop
7f380 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 6f 72 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 erty,.$mandatory)).{.return.fals
7f3a0 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 55 72 6c 28 24 74 68 69 e;.}..if.(!$this->filterUrl($thi
7f3c0 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 3e s->config[$property])).{.$this->
7f3e0 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 69 6e 76 61 6c warnings[].=.$property.'.:.inval
7f400 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 24 70 72 6f 70 65 id.value.('.$this->config[$prope
7f420 72 74 79 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 20 55 rty].'),.must.be.an.http/https.U
7f440 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 24 70 72 6f 70 65 72 RL';.unset($this->config[$proper
7f460 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 72 6e 20 74 ty]);..return.false;.}..return.t
7f480 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 66 69 6c 74 65 72 55 rue;.}..private.function.filterU
7f4a0 72 6c 28 24 76 61 6c 75 65 2c 20 61 72 72 61 79 20 24 73 63 68 65 6d 65 73 20 3d 20 61 72 72 61 rl($value,.array.$schemes.=.arra
7f4c0 79 28 27 68 74 74 70 27 2c 20 27 68 74 74 70 73 27 29 29 0a 7b 0a 69 66 20 28 24 76 61 6c 75 65 y('http',.'https')).{.if.($value
7f4e0 20 3d 3d 3d 20 27 27 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 62 69 74 73 .===.'').{.return.true;.}..$bits
7f500 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 76 61 6c 75 65 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 .=.parse_url($value);.if.(empty(
7f520 24 62 69 74 73 5b 27 73 63 68 65 6d 65 27 5d 29 20 7c 7c 20 65 6d 70 74 79 28 24 62 69 74 73 5b $bits['scheme']).||.empty($bits[
7f540 27 68 6f 73 74 27 5d 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 'host'])).{.return.false;.}..if.
7f560 28 21 69 6e 5f 61 72 72 61 79 28 24 62 69 74 73 5b 27 73 63 68 65 6d 65 27 5d 2c 20 24 73 63 68 (!in_array($bits['scheme'],.$sch
7f580 65 6d 65 73 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 emes,.true)).{.return.false;.}..
7f5a0 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 0a 0a 0a 0a return.true;.}.}.<?php..........
7f5c0 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 0a 75 ..namespace.Composer\Package;..u
7f5e0 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 43 se.Composer\Json\JsonFile;.use.C
7f600 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
7f620 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 52 nager;.use.Composer\Repository\R
7f640 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 73 65 72 5c 55 epositoryManager;.use.Composer\U
7f660 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
7f680 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
7f6a0 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 44 75 6d 70 65 72 5c 41 72 72 61 79 44 e.Composer\Package\Dumper\ArrayD
7f6c0 75 6d 70 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 umper;.use.Composer\Package\Load
7f6e0 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 72 5c 55 74 69 er\ArrayLoader;.use.Composer\Uti
7f700 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 72 5c 49 l\Git.as.GitUtil;.use.Composer\I
7f720 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 O\IOInterface;.use.Seld\JsonLint
7f740 5c 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 \ParsingException;........class.
7f760 4c 6f 63 6b 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 6c 6f 63 6b 46 69 6c 65 3b 0a 70 72 69 76 Locker.{.private.$lockFile;.priv
7f780 61 74 65 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 70 72 69 76 61 74 65 20 ate.$repositoryManager;.private.
7f7a0 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 70 72 69 76 61 74 65 20 24 68 $installationManager;.private.$h
7f7c0 61 73 68 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 74 65 6e 74 48 61 73 68 3b 0a 70 72 69 76 61 ash;.private.$contentHash;.priva
7f7e0 74 65 20 24 6c 6f 61 64 65 72 3b 0a 70 72 69 76 61 74 65 20 24 64 75 6d 70 65 72 3b 0a 70 72 69 te.$loader;.private.$dumper;.pri
7f800 76 61 74 65 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 69 76 61 74 65 20 24 6c 6f 63 6b 44 61 74 61 vate.$process;.private.$lockData
7f820 43 61 63 68 65 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 6f 6e Cache;...........public.function
7f840 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 20 4a 73 .__construct(IOInterface.$io,.Js
7f860 6f 6e 46 69 6c 65 20 24 6c 6f 63 6b 46 69 6c 65 2c 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 onFile.$lockFile,.RepositoryMana
7f880 67 65 72 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2c 20 49 6e 73 74 61 6c 6c 61 ger.$repositoryManager,.Installa
7f8a0 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 4d 61 6e 61 67 65 72 tionManager.$installationManager
7f8c0 2c 20 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 74 68 69 73 ,.$composerFileContents).{.$this
7f8e0 2d 3e 6c 6f 63 6b 46 69 6c 65 20 3d 20 24 6c 6f 63 6b 46 69 6c 65 3b 0a 24 74 68 69 73 2d 3e 72 ->lockFile.=.$lockFile;.$this->r
7f900 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 epositoryManager.=.$repositoryMa
7f920 6e 61 67 65 72 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 nager;.$this->installationManage
7f940 72 20 3d 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d r.=.$installationManager;.$this-
7f960 3e 68 61 73 68 20 3d 20 6d 64 35 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 43 6f 6e 74 65 6e 74 >hash.=.md5($composerFileContent
7f980 73 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 48 61 73 68 20 3d 20 73 65 6c 66 3a 3a 67 s);.$this->contentHash.=.self::g
7f9a0 65 74 43 6f 6e 74 65 6e 74 48 61 73 68 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 43 6f 6e 74 65 etContentHash($composerFileConte
7f9c0 6e 74 73 29 3b 0a 24 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 nts);.$this->loader.=.new.ArrayL
7f9e0 6f 61 64 65 72 28 6e 75 6c 6c 2c 20 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e 64 75 6d 70 65 72 oader(null,.true);.$this->dumper
7fa00 20 3d 20 6e 65 77 20 41 72 72 61 79 44 75 6d 70 65 72 28 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f .=.new.ArrayDumper();.$this->pro
7fa20 63 65 73 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 cess.=.new.ProcessExecutor($io);
7fa40 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
7fa60 6e 20 67 65 74 43 6f 6e 74 65 6e 74 48 61 73 68 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 43 6f n.getContentHash($composerFileCo
7fa80 6e 74 65 6e 74 73 29 0a 7b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 ntents).{.$content.=.json_decode
7faa0 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 43 6f 6e 74 65 6e 74 73 2c 20 74 72 75 65 29 3b 0a 0a ($composerFileContents,.true);..
7fac0 24 72 65 6c 65 76 61 6e 74 4b 65 79 73 20 3d 20 61 72 72 61 79 28 0a 27 6e 61 6d 65 27 2c 0a 27 $relevantKeys.=.array(.'name',.'
7fae0 76 65 72 73 69 6f 6e 27 2c 0a 27 72 65 71 75 69 72 65 27 2c 0a 27 72 65 71 75 69 72 65 2d 64 65 version',.'require',.'require-de
7fb00 76 27 2c 0a 27 63 6f 6e 66 6c 69 63 74 27 2c 0a 27 72 65 70 6c 61 63 65 27 2c 0a 27 70 72 6f 76 v',.'conflict',.'replace',.'prov
7fb20 69 64 65 27 2c 0a 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 2c 0a 27 70 72 65 66 ide',.'minimum-stability',.'pref
7fb40 65 72 2d 73 74 61 62 6c 65 27 2c 0a 27 72 65 70 6f 73 69 74 6f 72 69 65 73 27 2c 0a 27 65 78 74 er-stable',.'repositories',.'ext
7fb60 72 61 27 2c 0a 29 3b 0a 0a 24 72 65 6c 65 76 61 6e 74 43 6f 6e 74 65 6e 74 20 3d 20 61 72 72 61 ra',.);..$relevantContent.=.arra
7fb80 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 69 6e 74 65 72 73 65 63 74 28 24 y();..foreach.(array_intersect($
7fba0 72 65 6c 65 76 61 6e 74 4b 65 79 73 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 63 6f 6e 74 65 6e relevantKeys,.array_keys($conten
7fbc0 74 29 29 20 61 73 20 24 6b 65 79 29 20 7b 0a 24 72 65 6c 65 76 61 6e 74 43 6f 6e 74 65 6e 74 5b t)).as.$key).{.$relevantContent[
7fbe0 24 6b 65 79 5d 20 3d 20 24 63 6f 6e 74 65 6e 74 5b 24 6b 65 79 5d 3b 0a 7d 0a 69 66 20 28 69 73 $key].=.$content[$key];.}.if.(is
7fc00 73 65 74 28 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 set($content['config']['platform
7fc20 27 5d 29 29 20 7b 0a 24 72 65 6c 65 76 61 6e 74 43 6f 6e 74 65 6e 74 5b 27 63 6f 6e 66 69 67 27 '])).{.$relevantContent['config'
7fc40 5d 5b 27 70 6c 61 74 66 6f 72 6d 27 5d 20 3d 20 24 63 6f 6e 74 65 6e 74 5b 27 63 6f 6e 66 69 67 ]['platform'].=.$content['config
7fc60 27 5d 5b 27 70 6c 61 74 66 6f 72 6d 27 5d 3b 0a 7d 0a 0a 6b 73 6f 72 74 28 24 72 65 6c 65 76 61 ']['platform'];.}..ksort($releva
7fc80 6e 74 43 6f 6e 74 65 6e 74 29 3b 0a 0a 72 65 74 75 72 6e 20 6d 64 35 28 6a 73 6f 6e 5f 65 6e 63 ntContent);..return.md5(json_enc
7fca0 6f 64 65 28 24 72 65 6c 65 76 61 6e 74 43 6f 6e 74 65 6e 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a ode($relevantContent));.}.......
7fcc0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 4c 6f 63 6b 65 64 28 29 0a 7b 0a 69 66 20 public.function.isLocked().{.if.
7fce0 28 21 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 72 (!$this->lockFile->exists()).{.r
7fd00 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 64 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 eturn.false;.}..$data.=.$this->g
7fd20 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 64 61 74 etLockData();..return.isset($dat
7fd40 61 5b 27 70 61 63 6b 61 67 65 73 27 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 a['packages']);.}.......public.f
7fd60 75 6e 63 74 69 6f 6e 20 69 73 46 72 65 73 68 28 29 0a 7b 0a 24 6c 6f 63 6b 20 3d 20 24 74 68 69 unction.isFresh().{.$lock.=.$thi
7fd80 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 s->lockFile->read();..if.(!empty
7fda0 28 24 6c 6f 63 6b 5b 27 63 6f 6e 74 65 6e 74 2d 68 61 73 68 27 5d 29 29 20 7b 0a 0a 20 72 65 74 ($lock['content-hash'])).{...ret
7fdc0 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 48 61 73 68 20 3d 3d 3d 20 24 6c 6f 63 6b urn.$this->contentHash.===.$lock
7fde0 5b 27 63 6f 6e 74 65 6e 74 2d 68 61 73 68 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 ['content-hash'];.}..return.$thi
7fe00 73 2d 3e 68 61 73 68 20 3d 3d 3d 20 24 6c 6f 63 6b 5b 27 68 61 73 68 27 5d 3b 0a 7d 0a 0a 0a 0a s->hash.===.$lock['hash'];.}....
7fe20 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 65 64 52 65 .....public.function.getLockedRe
7fe40 70 6f 73 69 74 6f 72 79 28 24 77 69 74 68 44 65 76 52 65 71 73 20 3d 20 66 61 6c 73 65 29 0a 7b pository($withDevReqs.=.false).{
7fe60 0a 24 6c 6f 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 .$lockData.=.$this->getLockData(
7fe80 29 3b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 6e 65 77 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f );.$packages.=.new.ArrayReposito
7fea0 72 79 28 29 3b 0a 0a 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 20 3d 20 24 6c 6f 63 6b 44 61 ry();..$lockedPackages.=.$lockDa
7fec0 74 61 5b 27 70 61 63 6b 61 67 65 73 27 5d 3b 0a 69 66 20 28 24 77 69 74 68 44 65 76 52 65 71 73 ta['packages'];.if.($withDevReqs
7fee0 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 70 61 63 6b 61 67 65 ).{.if.(isset($lockData['package
7ff00 73 2d 64 65 76 27 5d 29 29 20 7b 0a 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 20 3d 20 61 72 s-dev'])).{.$lockedPackages.=.ar
7ff20 72 61 79 5f 6d 65 72 67 65 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 2c 20 24 6c 6f 63 6b ray_merge($lockedPackages,.$lock
7ff40 44 61 74 61 5b 27 70 61 63 6b 61 67 65 73 2d 64 65 76 27 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a Data['packages-dev']);.}.else.{.
7ff60 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 54 68 65 throw.new.\RuntimeException('The
7ff80 20 6c 6f 63 6b 20 66 69 6c 65 20 64 6f 65 73 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 72 65 71 75 .lock.file.does.not.contain.requ
7ffa0 69 72 65 2d 64 65 76 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2c 20 72 75 6e 20 69 6e 73 74 61 6c 6c ire-dev.information,.run.install
7ffc0 20 77 69 74 68 20 74 68 65 20 2d 2d 6e 6f 2d 64 65 76 20 6f 70 74 69 6f 6e 20 6f 72 20 72 75 6e .with.the.--no-dev.option.or.run
7ffe0 20 75 70 64 61 74 65 20 74 6f 20 69 6e 73 74 61 6c 6c 20 74 68 6f 73 65 20 70 61 63 6b 61 67 65 .update.to.install.those.package
80000 73 2e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 6c 6f 63 6b 65 64 50 61 63 6b s.');.}.}..if.(empty($lockedPack
80020 61 67 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 69 66 ages)).{.return.$packages;.}..if
80040 20 28 69 73 73 65 74 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 5b 30 5d 5b 27 6e 61 6d 65 .(isset($lockedPackages[0]['name
80060 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 20 '])).{.foreach.($lockedPackages.
80080 61 73 20 24 69 6e 66 6f 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 2d 3e 61 64 64 50 61 63 6b 61 67 as.$info).{.$packages->addPackag
800a0 65 28 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 69 6e 66 6f 29 29 3b 0a 7d e($this->loader->load($info));.}
800c0 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 ..return.$packages;.}..throw.new
800e0 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 72 20 63 6f 6d 70 6f 73 65 .\RuntimeException('Your.compose
80100 72 2e 6c 6f 63 6b 20 77 61 73 20 63 72 65 61 74 65 64 20 62 65 66 6f 72 65 20 32 30 31 32 2d 30 r.lock.was.created.before.2012-0
80120 39 2d 31 35 2c 20 61 6e 64 20 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 61 6e 79 6d 6f 9-15,.and.is.not.supported.anymo
80140 72 65 2e 20 52 75 6e 20 22 63 6f 6d 70 6f 73 65 72 20 75 70 64 61 74 65 22 20 74 6f 20 67 65 6e re..Run."composer.update".to.gen
80160 65 72 61 74 65 20 61 20 6e 65 77 20 6f 6e 65 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 erate.a.new.one.');.}........pub
80180 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 6c 61 74 66 6f 72 6d 52 65 71 75 69 72 65 6d lic.function.getPlatformRequirem
801a0 65 6e 74 73 28 24 77 69 74 68 44 65 76 52 65 71 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 6c 6f ents($withDevReqs.=.false).{.$lo
801c0 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 24 ckData.=.$this->getLockData();.$
801e0 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 21 65 6d requirements.=.array();..if.(!em
80200 70 74 79 28 24 6c 6f 63 6b 44 61 74 61 5b 27 70 6c 61 74 66 6f 72 6d 27 5d 29 29 20 7b 0a 24 72 pty($lockData['platform'])).{.$r
80220 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
80240 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
80260 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
80280 6f 72 6d 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 27 5d 20 3a orm']).?.$lockData['platform'].:
802a0 20 61 72 72 61 79 28 29 0a 29 3b 0a 7d 0a 0a 69 66 20 28 24 77 69 74 68 44 65 76 52 65 71 73 20 .array().);.}..if.($withDevReqs.
802c0 26 26 20 21 65 6d 70 74 79 28 24 6c 6f 63 6b 44 61 74 61 5b 27 70 6c 61 74 66 6f 72 6d 2d 64 65 &&.!empty($lockData['platform-de
802e0 76 27 5d 29 29 20 7b 0a 24 64 65 76 52 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 v'])).{.$devRequirements.=.$this
80300 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 4f 4f 54 5f 5f 27 ->loader->parseLinks(.'__ROOT__'
80320 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 65 74 28 24 6c 6f ,.'1.0.0',.'requires',.isset($lo
80340 63 6b 44 61 74 61 5b 27 70 6c 61 74 66 6f 72 6d 2d 64 65 76 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 ckData['platform-dev']).?.$lockD
80360 61 74 61 5b 27 70 6c 61 74 66 6f 72 6d 2d 64 65 76 27 5d 20 3a 20 61 72 72 61 79 28 29 0a 29 3b ata['platform-dev'].:.array().);
80380 0a 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 ..$requirements.=.array_merge($r
803a0 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 24 64 65 76 52 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a equirements,.$devRequirements);.
803c0 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 6d 65 6e 74 73 3b 0a 7d 0a 0a 70 75 62 6c }..return.$requirements;.}..publ
803e0 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 74 79 28 ic.function.getMinimumStability(
80400 29 0a 7b 0a 24 6c 6f 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 ).{.$lockData.=.$this->getLockDa
80420 74 61 28 29 3b 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 6d ta();..return.isset($lockData['m
80440 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b inimum-stability']).?.$lockData[
80460 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 20 3a 20 27 73 74 61 62 6c 65 27 3b 'minimum-stability'].:.'stable';
80480 0a 7d 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 79 .}..public.function.getStability
804a0 46 6c 61 67 73 28 29 0a 7b 0a 24 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 Flags().{.$lockData.=.$this->get
804c0 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 LockData();..return.isset($lockD
804e0 61 74 61 5b 27 73 74 61 62 69 6c 69 74 79 2d 66 6c 61 67 73 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 ata['stability-flags']).?.$lockD
80500 61 74 61 5b 27 73 74 61 62 69 6c 69 74 79 2d 66 6c 61 67 73 27 5d 20 3a 20 61 72 72 61 79 28 29 ata['stability-flags'].:.array()
80520 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 65 66 65 72 53 74 ;.}..public.function.getPreferSt
80540 61 62 6c 65 28 29 0a 7b 0a 24 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c able().{.$lockData.=.$this->getL
80560 6f 63 6b 44 61 74 61 28 29 3b 0a 0a 0a 20 0a 20 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f ockData();......return.isset($lo
80580 63 6b 44 61 74 61 5b 27 70 72 65 66 65 72 2d 73 74 61 62 6c 65 27 5d 29 20 3f 20 24 6c 6f 63 6b ckData['prefer-stable']).?.$lock
805a0 44 61 74 61 5b 27 70 72 65 66 65 72 2d 73 74 61 62 6c 65 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a Data['prefer-stable'].:.null;.}.
805c0 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 4c 6f 77 65 73 74 .public.function.getPreferLowest
805e0 28 29 0a 7b 0a 24 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 ().{.$lockData.=.$this->getLockD
80600 61 74 61 28 29 3b 0a 0a 0a 20 0a 20 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 ata();......return.isset($lockDa
80620 74 61 5b 27 70 72 65 66 65 72 2d 6c 6f 77 65 73 74 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 ta['prefer-lowest']).?.$lockData
80640 5b 27 70 72 65 66 65 72 2d 6c 6f 77 65 73 74 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 75 62 ['prefer-lowest'].:.null;.}..pub
80660 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 lic.function.getPlatformOverride
80680 73 28 29 0a 7b 0a 24 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b s().{.$lockData.=.$this->getLock
806a0 44 61 74 61 28 29 3b 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b Data();..return.isset($lockData[
806c0 27 70 6c 61 74 66 6f 72 6d 2d 6f 76 65 72 72 69 64 65 73 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 'platform-overrides']).?.$lockDa
806e0 74 61 5b 27 70 6c 61 74 66 6f 72 6d 2d 6f 76 65 72 72 69 64 65 73 27 5d 20 3a 20 61 72 72 61 79 ta['platform-overrides'].:.array
80700 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 41 6c 69 61 73 65 ();.}..public.function.getAliase
80720 73 28 29 0a 7b 0a 24 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b s().{.$lockData.=.$this->getLock
80740 44 61 74 61 28 29 3b 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b Data();..return.isset($lockData[
80760 27 61 6c 69 61 73 65 73 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 61 6c 69 61 73 65 73 'aliases']).?.$lockData['aliases
80780 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 75 6e 63 74 69 6f 6e '].:.array();.}..public.function
807a0 20 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 .getLockData().{.if.(null.!==.$t
807c0 68 69 73 2d 3e 6c 6f 63 6b 44 61 74 61 43 61 63 68 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 his->lockDataCache).{.return.$th
807e0 69 73 2d 3e 6c 6f 63 6b 44 61 74 61 43 61 63 68 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 is->lockDataCache;.}..if.(!$this
80800 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 ->lockFile->exists()).{.throw.ne
80820 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 4e 6f 20 6c 6f 63 6b 66 69 6c 65 20 66 w.\LogicException('No.lockfile.f
80840 6f 75 6e 64 2e 20 55 6e 61 62 6c 65 20 74 6f 20 72 65 61 64 20 6c 6f 63 6b 65 64 20 70 61 63 6b ound..Unable.to.read.locked.pack
80860 61 67 65 73 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 44 61 74 ages');.}..return.$this->lockDat
80880 61 43 61 63 68 65 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 72 65 61 64 28 29 aCache.=.$this->lockFile->read()
808a0 3b 0a 7d 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
808c0 74 69 6f 6e 20 73 65 74 4c 6f 63 6b 44 61 74 61 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 tion.setLockData(array.$packages
808e0 2c 20 24 64 65 76 50 61 63 6b 61 67 65 73 2c 20 61 72 72 61 79 20 24 70 6c 61 74 66 6f 72 6d 52 ,.$devPackages,.array.$platformR
80900 65 71 73 2c 20 24 70 6c 61 74 66 6f 72 6d 44 65 76 52 65 71 73 2c 20 61 72 72 61 79 20 24 61 6c eqs,.$platformDevReqs,.array.$al
80920 69 61 73 65 73 2c 20 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 2c 20 61 72 72 61 79 20 iases,.$minimumStability,.array.
80940 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 2c 20 24 70 72 65 66 65 72 53 74 61 62 6c 65 2c 20 $stabilityFlags,.$preferStable,.
80960 24 70 72 65 66 65 72 4c 6f 77 65 73 74 2c 20 61 72 72 61 79 20 24 70 6c 61 74 66 6f 72 6d 4f 76 $preferLowest,.array.$platformOv
80980 65 72 72 69 64 65 73 29 0a 7b 0a 24 6c 6f 63 6b 20 3d 20 61 72 72 61 79 28 0a 27 5f 72 65 61 64 errides).{.$lock.=.array(.'_read
809a0 6d 65 27 20 3d 3e 20 61 72 72 61 79 28 27 54 68 69 73 20 66 69 6c 65 20 6c 6f 63 6b 73 20 74 68 me'.=>.array('This.file.locks.th
809c0 65 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 74 20 74 e.dependencies.of.your.project.t
809e0 6f 20 61 20 6b 6e 6f 77 6e 20 73 74 61 74 65 27 2c 0a 27 52 65 61 64 20 6d 6f 72 65 20 61 62 6f o.a.known.state',.'Read.more.abo
80a00 75 74 20 69 74 20 61 74 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 ut.it.at.https://getcomposer.org
80a20 2f 64 6f 63 2f 30 31 2d 62 61 73 69 63 2d 75 73 61 67 65 2e 6d 64 23 63 6f 6d 70 6f 73 65 72 2d /doc/01-basic-usage.md#composer-
80a40 6c 6f 63 6b 2d 74 68 65 2d 6c 6f 63 6b 2d 66 69 6c 65 27 2c 0a 27 54 68 69 73 20 66 69 6c 65 20 lock-the-lock-file',.'This.file.
80a60 69 73 20 40 67 65 6e 65 72 27 2e 27 61 74 65 64 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 27 2c is.@gener'.'ated.automatically',
80a80 20 29 2c 0a 27 68 61 73 68 27 20 3d 3e 20 24 74 68 69 73 2d 3e 68 61 73 68 2c 0a 27 63 6f 6e 74 .),.'hash'.=>.$this->hash,.'cont
80aa0 65 6e 74 2d 68 61 73 68 27 20 3d 3e 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 48 61 73 68 2c ent-hash'.=>.$this->contentHash,
80ac0 0a 27 70 61 63 6b 61 67 65 73 27 20 3d 3e 20 6e 75 6c 6c 2c 0a 27 70 61 63 6b 61 67 65 73 2d 64 .'packages'.=>.null,.'packages-d
80ae0 65 76 27 20 3d 3e 20 6e 75 6c 6c 2c 0a 27 61 6c 69 61 73 65 73 27 20 3d 3e 20 61 72 72 61 79 28 ev'.=>.null,.'aliases'.=>.array(
80b00 29 2c 0a 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 20 3d 3e 20 24 6d 69 6e 69 6d ),.'minimum-stability'.=>.$minim
80b20 75 6d 53 74 61 62 69 6c 69 74 79 2c 0a 27 73 74 61 62 69 6c 69 74 79 2d 66 6c 61 67 73 27 20 3d umStability,.'stability-flags'.=
80b40 3e 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 2c 0a 27 70 72 65 66 65 72 2d 73 74 61 62 6c >.$stabilityFlags,.'prefer-stabl
80b60 65 27 20 3d 3e 20 24 70 72 65 66 65 72 53 74 61 62 6c 65 2c 0a 27 70 72 65 66 65 72 2d 6c 6f 77 e'.=>.$preferStable,.'prefer-low
80b80 65 73 74 27 20 3d 3e 20 24 70 72 65 66 65 72 4c 6f 77 65 73 74 2c 0a 29 3b 0a 0a 66 6f 72 65 61 est'.=>.$preferLowest,.);..forea
80ba0 63 68 20 28 24 61 6c 69 61 73 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 76 65 72 ch.($aliases.as.$package.=>.$ver
80bc0 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 6e 73 20 61 73 20 24 sions).{.foreach.($versions.as.$
80be0 76 65 72 73 69 6f 6e 20 3d 3e 20 24 61 6c 69 61 73 29 20 7b 0a 24 6c 6f 63 6b 5b 27 61 6c 69 61 version.=>.$alias).{.$lock['alia
80c00 73 65 73 27 5d 5b 5d 20 3d 20 61 72 72 61 79 28 0a 27 61 6c 69 61 73 27 20 3d 3e 20 24 61 6c 69 ses'][].=.array(.'alias'.=>.$ali
80c20 61 73 5b 27 61 6c 69 61 73 27 5d 2c 0a 27 61 6c 69 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 20 as['alias'],.'alias_normalized'.
80c40 3d 3e 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 0a 27 =>.$alias['alias_normalized'],.'
80c60 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 76 65 72 73 69 6f 6e 2c 0a 27 70 61 63 6b 61 67 65 27 20 version'.=>.$version,.'package'.
80c80 3d 3e 20 24 70 61 63 6b 61 67 65 2c 0a 29 3b 0a 7d 0a 7d 0a 0a 24 6c 6f 63 6b 5b 27 70 61 63 6b =>.$package,.);.}.}..$lock['pack
80ca0 61 67 65 73 27 5d 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 50 61 63 6b 61 67 65 73 28 24 70 61 ages'].=.$this->lockPackages($pa
80cc0 63 6b 61 67 65 73 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 76 50 61 63 6b 61 67 ckages);.if.(null.!==.$devPackag
80ce0 65 73 29 20 7b 0a 24 6c 6f 63 6b 5b 27 70 61 63 6b 61 67 65 73 2d 64 65 76 27 5d 20 3d 20 24 74 es).{.$lock['packages-dev'].=.$t
80d00 68 69 73 2d 3e 6c 6f 63 6b 50 61 63 6b 61 67 65 73 28 24 64 65 76 50 61 63 6b 61 67 65 73 29 3b his->lockPackages($devPackages);
80d20 0a 7d 0a 0a 24 6c 6f 63 6b 5b 27 70 6c 61 74 66 6f 72 6d 27 5d 20 3d 20 24 70 6c 61 74 66 6f 72 .}..$lock['platform'].=.$platfor
80d40 6d 52 65 71 73 3b 0a 24 6c 6f 63 6b 5b 27 70 6c 61 74 66 6f 72 6d 2d 64 65 76 27 5d 20 3d 20 24 mReqs;.$lock['platform-dev'].=.$
80d60 70 6c 61 74 66 6f 72 6d 44 65 76 52 65 71 73 3b 0a 69 66 20 28 24 70 6c 61 74 66 6f 72 6d 4f 76 platformDevReqs;.if.($platformOv
80d80 65 72 72 69 64 65 73 29 20 7b 0a 24 6c 6f 63 6b 5b 27 70 6c 61 74 66 6f 72 6d 2d 6f 76 65 72 72 errides).{.$lock['platform-overr
80da0 69 64 65 73 27 5d 20 3d 20 24 70 6c 61 74 66 6f 72 6d 4f 76 65 72 72 69 64 65 73 3b 0a 7d 0a 0a ides'].=.$platformOverrides;.}..
80dc0 69 66 20 28 65 6d 70 74 79 28 24 6c 6f 63 6b 5b 27 70 61 63 6b 61 67 65 73 27 5d 29 20 26 26 20 if.(empty($lock['packages']).&&.
80de0 65 6d 70 74 79 28 24 6c 6f 63 6b 5b 27 70 61 63 6b 61 67 65 73 2d 64 65 76 27 5d 29 20 26 26 20 empty($lock['packages-dev']).&&.
80e00 65 6d 70 74 79 28 24 6c 6f 63 6b 5b 27 70 6c 61 74 66 6f 72 6d 27 5d 29 20 26 26 20 65 6d 70 74 empty($lock['platform']).&&.empt
80e20 79 28 24 6c 6f 63 6b 5b 27 70 6c 61 74 66 6f 72 6d 2d 64 65 76 27 5d 29 29 20 7b 0a 69 66 20 28 y($lock['platform-dev'])).{.if.(
80e40 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 75 6e 6c $this->lockFile->exists()).{.unl
80e60 69 6e 6b 28 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 29 3b ink($this->lockFile->getPath());
80e80 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 69 73 4c 6f .}..return.false;.}..try.{.$isLo
80ea0 63 6b 65 64 20 3d 20 24 74 68 69 73 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 3b 0a 7d 20 63 61 74 63 cked.=.$this->isLocked();.}.catc
80ec0 68 20 28 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 69 73 4c 6f 63 h.(ParsingException.$e).{.$isLoc
80ee0 6b 65 64 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 69 66 20 28 21 24 69 73 4c 6f 63 6b 65 64 20 7c 7c ked.=.false;.}.if.(!$isLocked.||
80f00 20 24 6c 6f 63 6b 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 29 .$lock.!==.$this->getLockData())
80f20 20 7b 0a 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 77 72 69 74 65 28 24 6c 6f 63 6b 29 .{.$this->lockFile->write($lock)
80f40 3b 0a 24 74 68 69 73 2d 3e 6c 6f 63 6b 44 61 74 61 43 61 63 68 65 20 3d 20 6e 75 6c 6c 3b 0a 0a ;.$this->lockDataCache.=.null;..
80f60 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;.}.
80f80 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 63 6b 50 61 63 6b 61 67 65 73 28 61 .private.function.lockPackages(a
80fa0 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 29 0a 7b 0a 24 6c 6f 63 6b 65 64 20 3d 20 61 72 72 61 rray.$packages).{.$locked.=.arra
80fc0 79 28 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 y();..foreach.($packages.as.$pac
80fe0 6b 61 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 kage).{.if.($package.instanceof.
81000 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 0a 24 6e 61 AliasPackage).{.continue;.}..$na
81020 6d 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 0a me.=.$package->getPrettyName();.
81040 24 76 65 72 73 69 6f 6e 20 3d 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
81060 72 73 69 6f 6e 28 29 3b 0a 0a 69 66 20 28 21 24 6e 61 6d 65 20 7c 7c 20 21 24 76 65 72 73 69 6f rsion();..if.(!$name.||.!$versio
81080 6e 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 73 n).{.throw.new.\LogicException(s
810a0 70 72 69 6e 74 66 28 0a 27 50 61 63 6b 61 67 65 20 22 25 73 22 20 68 61 73 20 6e 6f 20 76 65 72 printf(.'Package."%s".has.no.ver
810c0 73 69 6f 6e 20 6f 72 20 6e 61 6d 65 20 61 6e 64 20 63 61 6e 20 6e 6f 74 20 62 65 20 6c 6f 63 6b sion.or.name.and.can.not.be.lock
810e0 65 64 27 2c 20 24 70 61 63 6b 61 67 65 0a 29 29 3b 0a 7d 0a 0a 24 73 70 65 63 20 3d 20 24 74 68 ed',.$package.));.}..$spec.=.$th
81100 69 73 2d 3e 64 75 6d 70 65 72 2d 3e 64 75 6d 70 28 24 70 61 63 6b 61 67 65 29 3b 0a 75 6e 73 65 is->dumper->dump($package);.unse
81120 74 28 24 73 70 65 63 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 t($spec['version_normalized']);.
81140 0a 0a 20 24 74 69 6d 65 20 3d 20 69 73 73 65 74 28 24 73 70 65 63 5b 27 74 69 6d 65 27 5d 29 20 ...$time.=.isset($spec['time']).
81160 3f 20 24 73 70 65 63 5b 27 74 69 6d 65 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 75 6e 73 65 74 28 24 73 ?.$spec['time'].:.null;.unset($s
81180 70 65 63 5b 27 74 69 6d 65 27 5d 29 3b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 pec['time']);.if.($package->isDe
811a0 76 28 29 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e v().&&.$package->getInstallation
811c0 53 6f 75 72 63 65 28 29 20 3d 3d 3d 20 27 73 6f 75 72 63 65 27 29 20 7b 0a 0a 20 24 74 69 6d 65 Source().===.'source').{...$time
811e0 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 54 69 6d 65 28 24 70 61 63 6b 61 67 .=.$this->getPackageTime($packag
81200 65 29 20 3f 3a 20 24 74 69 6d 65 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 69 6d e).?:.$time;.}.if.(null.!==.$tim
81220 65 29 20 7b 0a 24 73 70 65 63 5b 27 74 69 6d 65 27 5d 20 3d 20 24 74 69 6d 65 3b 0a 7d 0a 0a 75 e).{.$spec['time'].=.$time;.}..u
81240 6e 73 65 74 28 24 73 70 65 63 5b 27 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2d 73 6f 75 72 63 65 27 nset($spec['installation-source'
81260 5d 29 3b 0a 0a 24 6c 6f 63 6b 65 64 5b 5d 20 3d 20 24 73 70 65 63 3b 0a 7d 0a 0a 75 73 6f 72 74 ]);..$locked[].=.$spec;.}..usort
81280 28 24 6c 6f 63 6b 65 64 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 24 63 ($locked,.function.($a,.$b).{.$c
812a0 6f 6d 70 61 72 69 73 6f 6e 20 3d 20 73 74 72 63 6d 70 28 24 61 5b 27 6e 61 6d 65 27 5d 2c 20 24 omparison.=.strcmp($a['name'],.$
812c0 62 5b 27 6e 61 6d 65 27 5d 29 3b 0a 0a 69 66 20 28 30 20 21 3d 3d 20 24 63 6f 6d 70 61 72 69 73 b['name']);..if.(0.!==.$comparis
812e0 6f 6e 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 61 72 69 73 6f 6e 3b 0a 7d 0a 0a 0a 20 72 on).{.return.$comparison;.}....r
81300 65 74 75 72 6e 20 73 74 72 63 6d 70 28 24 61 5b 27 76 65 72 73 69 6f 6e 27 5d 2c 20 24 62 5b 27 eturn.strcmp($a['version'],.$b['
81320 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 7d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6c 6f 63 6b 65 64 3b version']);.});..return.$locked;
81340 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 50 61 .}........private.function.getPa
81360 63 6b 61 67 65 54 69 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 ckageTime(PackageInterface.$pack
81380 61 67 65 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 age).{.if.(!function_exists('pro
813a0 63 5f 6f 70 65 6e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 24 70 61 74 c_open')).{.return.null;.}..$pat
813c0 68 20 3d 20 72 65 61 6c 70 61 74 68 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e h.=.realpath($this->installation
813e0 4d 61 6e 61 67 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 Manager->getInstallPath($package
81400 29 29 3b 0a 24 73 6f 75 72 63 65 54 79 70 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 ));.$sourceType.=.$package->getS
81420 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 24 64 61 74 65 74 69 6d 65 20 3d 20 6e 75 6c 6c 3b 0a 0a ourceType();.$datetime.=.null;..
81440 69 66 20 28 24 70 61 74 68 20 26 26 20 69 6e 5f 61 72 72 61 79 28 24 73 6f 75 72 63 65 54 79 70 if.($path.&&.in_array($sourceTyp
81460 65 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 73 6f 75 72 63 e,.array('git',.'hg'))).{.$sourc
81480 65 52 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 66 65 72 65 eRef.=.$package->getSourceRefere
814a0 6e 63 65 28 29 20 3f 3a 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 nce().?:.$package->getDistRefere
814c0 6e 63 65 28 29 3b 0a 73 77 69 74 63 68 20 28 24 73 6f 75 72 63 65 54 79 70 65 29 20 7b 0a 63 61 nce();.switch.($sourceType).{.ca
814e0 73 65 20 27 67 69 74 27 3a 0a 47 69 74 55 74 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 28 29 3b 0a 0a se.'git':.GitUtil::cleanEnv();..
81500 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 74 if.(0.===.$this->process->execut
81520 65 28 27 67 69 74 20 6c 6f 67 20 2d 6e 31 20 2d 2d 70 72 65 74 74 79 3d 25 63 74 20 27 2e 50 72 e('git.log.-n1.--pretty=%ct.'.Pr
81540 6f 63 65 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 52 65 66 ocessExecutor::escape($sourceRef
81560 29 2c 20 24 6f 75 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 ),.$output,.$path).&&.preg_match
81580 28 27 7b 5e 5c 73 2a 5c 64 2b 5c 73 2a 24 7d 27 2c 20 24 6f 75 74 70 75 74 29 29 20 7b 0a 24 64 ('{^\s*\d+\s*$}',.$output)).{.$d
815a0 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 74 72 69 6d atetime.=.new.\DateTime('@'.trim
815c0 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 6f 6e 65 28 27 55 54 ($output),.new.\DateTimeZone('UT
815e0 43 27 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 68 67 27 3a 0a 69 66 20 28 30 C'));.}.break;..case.'hg':.if.(0
81600 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 27 68 67 .===.$this->process->execute('hg
81620 20 6c 6f 67 20 2d 2d 74 65 6d 70 6c 61 74 65 20 22 7b 64 61 74 65 7c 68 67 64 61 74 65 7d 22 20 .log.--template."{date|hgdate}".
81640 2d 72 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 73 6f -r.'.ProcessExecutor::escape($so
81660 75 72 63 65 52 65 66 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 20 26 26 20 70 72 65 urceRef),.$output,.$path).&&.pre
81680 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2a 28 5c 64 2b 29 5c 73 2a 7d 27 2c 20 24 6f 75 74 70 75 g_match('{^\s*(\d+)\s*}',.$outpu
816a0 74 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 64 61 74 65 74 69 6d 65 20 3d 20 6e 65 77 20 5c 44 t,.$match)).{.$datetime.=.new.\D
816c0 61 74 65 54 69 6d 65 28 27 40 27 2e 24 6d 61 74 63 68 5b 31 5d 2c 20 6e 65 77 20 5c 44 61 74 65 ateTime('@'.$match[1],.new.\Date
816e0 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 3b 0a 7d 0a 7d 0a 0a TimeZone('UTC'));.}.break;.}.}..
81700 72 65 74 75 72 6e 20 24 64 61 74 65 74 69 6d 65 20 3f 20 24 64 61 74 65 74 69 6d 65 2d 3e 66 6f return.$datetime.?.$datetime->fo
81720 72 6d 61 74 28 27 59 2d 6d 2d 64 20 48 3a 69 3a 73 27 29 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a rmat('Y-m-d.H:i:s').:.null;.}.}.
81740 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
81760 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 65 ser\Package;..use.Composer\Semve
81780 72 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 55 74 r\VersionParser;.use.Composer\Ut
817a0 69 6c 5c 43 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 il\ComposerMirror;.......class.P
817c0 61 63 6b 61 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 ackage.extends.BasePackage.{.pro
817e0 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 74 61 72 67 65 74 44 tected.$type;.protected.$targetD
81800 69 72 3b 0a 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 ir;.protected.$installationSourc
81820 65 3b 0a 70 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 e;.protected.$sourceType;.protec
81840 74 65 64 20 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 ted.$sourceUrl;.protected.$sourc
81860 65 52 65 66 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 eReference;.protected.$sourceMir
81880 72 6f 72 73 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 rors;.protected.$distType;.prote
818a0 63 74 65 64 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 cted.$distUrl;.protected.$distRe
818c0 66 65 72 65 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 ference;.protected.$distSha1Chec
818e0 6b 73 75 6d 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 ksum;.protected.$distMirrors;.pr
81900 6f 74 65 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 otected.$version;.protected.$pre
81920 74 74 79 56 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 ttyVersion;.protected.$releaseDa
81940 74 65 3b 0a 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 te;.protected.$extra.=.array();.
81960 70 72 6f 74 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 protected.$binaries.=.array();.p
81980 72 6f 74 65 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 rotected.$dev;.protected.$stabil
819a0 69 74 79 3b 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 ity;.protected.$notificationUrl;
819c0 0a 0a 0a 70 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 ...protected.$requires.=.array()
819e0 3b 0a 0a 70 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 ;..protected.$conflicts.=.array(
81a00 29 3b 0a 0a 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 );..protected.$provides.=.array(
81a20 29 3b 0a 0a 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 );..protected.$replaces.=.array(
81a40 29 3b 0a 0a 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 );..protected.$devRequires.=.arr
81a60 61 79 28 29 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 ay();.protected.$suggests.=.arra
81a80 79 28 29 3b 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 y();.protected.$autoload.=.array
81aa0 28 29 3b 0a 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 ();.protected.$devAutoload.=.arr
81ac0 61 79 28 29 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 ay();.protected.$includePaths.=.
81ae0 61 72 72 61 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 array();.protected.$archiveExclu
81b00 64 65 73 20 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 des.=.array();.........public.fu
81b20 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 76 65 72 73 69 nction.__construct($name,.$versi
81b40 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 5f on,.$prettyVersion).{.parent::__
81b60 63 6f 6e 73 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 construct($name);..$this->versio
81b80 6e 20 3d 20 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 n.=.$version;.$this->prettyVersi
81ba0 6f 6e 20 3d 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 on.=.$prettyVersion;..$this->sta
81bc0 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 74 61 bility.=.VersionParser::parseSta
81be0 62 69 6c 69 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 bility($version);.$this->dev.=.$
81c00 74 68 69 73 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 this->stability.===.'dev';.}....
81c20 0a 70 75 62 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 .public.function.isDev().{.retur
81c40 6e 20 24 74 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 n.$this->dev;.}.....public.funct
81c60 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 3e 74 79 70 65 ion.setType($type).{.$this->type
81c80 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.
81ca0 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 3e 74 79 70 65 20 3f getType().{.return.$this->type.?
81cc0 3a 20 27 6c 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 :.'library';.}.....public.functi
81ce0 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 73 on.getStability().{.return.$this
81d00 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 69 ->stability;.}.....public.functi
81d20 6f 6e 20 73 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 on.setTargetDir($targetDir).{.$t
81d40 68 69 73 2d 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 his->targetDir.=.$targetDir;.}..
81d60 0a 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 72 28 ...public.function.getTargetDir(
81d80 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 72 67 65 74 44 69 ).{.if.(null.===.$this->targetDi
81da0 72 29 20 7b 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 r).{.return;.}..return.ltrim(pre
81dc0 67 5f 72 65 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 g_replace('{.(?:^|[\\\\/]+).\.\.
81de0 3f 20 28 3f 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 ?.(?:[\\\\/]+|$).(?:\.\.?.(?:[\\
81e00 5c 5c 2f 5d 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 \\/]+|$).)*}x',.'/',.$this->targ
81e20 65 74 44 69 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 etDir),.'/');.}.....public.funct
81e40 69 6f 6e 20 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 ion.setExtra(array.$extra).{.$th
81e60 69 73 2d 3e 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 is->extra.=.$extra;.}.....public
81e80 20 66 75 6e 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 .function.getExtra().{.return.$t
81ea0 68 69 73 2d 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 his->extra;.}.....public.functio
81ec0 6e 20 73 65 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 n.setBinaries(array.$binaries).{
81ee0 0a 24 74 68 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 .$this->binaries.=.$binaries;.}.
81f00 0a 0a 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 ....public.function.getBinaries(
81f20 29 0a 7b 0a 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 ).{.return.$this->binaries;.}...
81f40 0a 0a 70 75 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 ..public.function.setInstallatio
81f60 6e 53 6f 75 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 nSource($type).{.$this->installa
81f80 74 69 6f 6e 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 tionSource.=.$type;.}.....public
81fa0 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(
81fc0 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 61 74 69 6f 6e 53 6f ).{.return.$this->installationSo
81fe0 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 6f 6e 20 73 65 74 53 urce;.}.....public.function.setS
82000 6f 75 72 63 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 ourceType($type).{.$this->source
82020 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 20 66 75 6e 63 74 Type.=.$type;.}.....public.funct
82040 69 6f 6e 20 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 ion.getSourceType().{.return.$th
82060 69 73 2d 3e 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 is->sourceType;.}.....public.fun
82080 63 74 69 6f 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 ction.setSourceUrl($url).{.$this
820a0 2d 3e 73 6f 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 ->sourceUrl.=.$url;.}.....public
820c0 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 74 75 72 .function.getSourceUrl().{.retur
820e0 6e 20 24 74 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 n.$this->sourceUrl;.}.....public
82100 20 66 75 6e 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 .function.setSourceReference($re
82120 66 65 72 65 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 ference).{.$this->sourceReferenc
82140 65 20 3d 20 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 e.=.$reference;.}.....public.fun
82160 63 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 ction.getSourceReference().{.ret
82180 75 72 6e 20 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 urn.$this->sourceReference;.}...
821a0 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 65 4d 69 72 72 6f ..public.function.setSourceMirro
821c0 72 73 28 24 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 rs($mirrors).{.$this->sourceMirr
821e0 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
82200 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 65 74 75 72 ction.getSourceMirrors().{.retur
82220 6e 20 24 74 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 n.$this->sourceMirrors;.}.....pu
82240 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 73 28 29 0a 7b 0a blic.function.getSourceUrls().{.
82260 72 65 74 75 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 return.$this->getUrls($this->sou
82280 72 63 65 55 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 rceUrl,.$this->sourceMirrors,.$t
822a0 68 69 73 2d 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 his->sourceReference,.$this->sou
822c0 72 63 65 54 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 rceType,.'source');.}.....public
822e0 20 66 75 6e 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 .function.setDistType($type).{.$
82300 74 68 69 73 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 this->distType.=.$type;.}.....pu
82320 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 0a 7b 0a 72 65 blic.function.getDistType().{.re
82340 74 75 72 6e 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 turn.$this->distType;.}.....publ
82360 69 63 20 66 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 ic.function.setDistUrl($url).{.$
82380 74 68 69 73 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 this->distUrl.=.$url;.}.....publ
823a0 69 63 20 66 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 ic.function.getDistUrl().{.retur
823c0 6e 20 24 74 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 n.$this->distUrl;.}.....public.f
823e0 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 65 unction.setDistReference($refere
82400 6e 63 65 29 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 nce).{.$this->distReference.=.$r
82420 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 6e 20 eference;.}.....public.function.
82440 67 65 74 44 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 getDistReference().{.return.$thi
82460 73 2d 3e 64 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 s->distReference;.}.....public.f
82480 75 6e 63 74 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 unction.setDistSha1Checksum($sha
824a0 31 63 68 65 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 1checksum).{.$this->distSha1Chec
824c0 6b 73 75 6d 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 ksum.=.$sha1checksum;.}.....publ
824e0 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 73 75 6d 28 ic.function.getDistSha1Checksum(
82500 29 0a 7b 0a 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 ).{.return.$this->distSha1Checks
82520 75 6d 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 69 73 um;.}.....public.function.setDis
82540 74 4d 69 72 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 tMirrors($mirrors).{.$this->dist
82560 4d 69 72 72 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 Mirrors.=.$mirrors;.}.....public
82580 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 0a 7b 0a 72 65 74 .function.getDistMirrors().{.ret
825a0 75 72 6e 20 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 urn.$this->distMirrors;.}.....pu
825c0 62 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 blic.function.getDistUrls().{.re
825e0 74 75 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 64 69 73 74 55 turn.$this->getUrls($this->distU
82600 72 6c 2c 20 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 rl,.$this->distMirrors,.$this->d
82620 69 73 74 52 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 istReference,.$this->distType,.'
82640 64 69 73 74 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 dist');.}.....public.function.ge
82660 74 56 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 76 65 72 73 69 tVersion().{.return.$this->versi
82680 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 50 72 65 on;.}.....public.function.getPre
826a0 74 74 79 56 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 ttyVersion().{.return.$this->pre
826c0 74 74 79 56 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 ttyVersion;.}.......public.funct
826e0 69 6f 6e 20 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 ion.setReleaseDate(\DateTime.$re
82700 6c 65 61 73 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 leaseDate).{.$this->releaseDate.
82720 3d 20 24 72 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 =.$releaseDate;.}.....public.fun
82740 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 20 ction.getReleaseDate().{.return.
82760 24 74 68 69 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 $this->releaseDate;.}.......publ
82780 69 63 20 66 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 ic.function.setRequires(array.$r
827a0 65 71 75 69 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 equires).{.$this->requires.=.$re
827c0 71 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 quires;.}.....public.function.ge
827e0 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 75 tRequires().{.return.$this->requ
82800 69 72 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 73 65 ires;.}.......public.function.se
82820 74 43 6f 6e 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 tConflicts(array.$conflicts).{.$
82840 74 68 69 73 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 this->conflicts.=.$conflicts;.}.
82860 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 6c 69 63 74 73 ....public.function.getConflicts
82880 28 29 0a 7b 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 ().{.return.$this->conflicts;.}.
828a0 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 6f 76 69 64 65 ......public.function.setProvide
828c0 73 28 61 72 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 s(array.$provides).{.$this->prov
828e0 69 64 65 73 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 ides.=.$provides;.}.....public.f
82900 75 6e 63 74 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 unction.getProvides().{.return.$
82920 74 68 69 73 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 this->provides;.}.......public.f
82940 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 20 24 72 65 70 6c 61 unction.setReplaces(array.$repla
82960 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 24 72 65 70 6c 61 63 ces).{.$this->replaces.=.$replac
82980 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 70 es;.}.....public.function.getRep
829a0 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 73 laces().{.return.$this->replaces
829c0 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 44 65 76 ;.}.......public.function.setDev
829e0 52 65 71 75 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 Requires(array.$devRequires).{.$
82a00 74 68 69 73 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 this->devRequires.=.$devRequires
82a20 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 65 ;.}.....public.function.getDevRe
82a40 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 75 quires().{.return.$this->devRequ
82a60 69 72 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 73 65 ires;.}.......public.function.se
82a80 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
82aa0 69 73 2d 3e 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 is->suggests.=.$suggests;.}.....
82ac0 70 75 62 6c 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 public.function.getSuggests().{.
82ae0 72 65 74 75 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 return.$this->suggests;.}.......
82b00 70 75 62 6c 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 public.function.setAutoload(arra
82b20 79 20 24 61 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 y.$autoload).{.$this->autoload.=
82b40 20 24 61 75 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 .$autoload;.}.....public.functio
82b60 6e 20 67 65 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 n.getAutoload().{.return.$this->
82b80 61 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
82ba0 6e 20 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 n.setDevAutoload(array.$devAutol
82bc0 6f 61 64 29 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 oad).{.$this->devAutoload.=.$dev
82be0 41 75 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 Autoload;.}.....public.function.
82c00 67 65 74 44 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 getDevAutoload().{.return.$this-
82c20 3e 64 65 76 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 >devAutoload;.}.......public.fun
82c40 63 74 69 6f 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 ction.setIncludePaths(array.$inc
82c60 6c 75 64 65 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 ludePaths).{.$this->includePaths
82c80 20 3d 20 24 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 .=.$includePaths;.}.....public.f
82ca0 75 6e 63 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 unction.getIncludePaths().{.retu
82cc0 72 6e 20 24 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 rn.$this->includePaths;.}.......
82ce0 70 75 62 6c 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 public.function.setNotificationU
82d00 72 6c 28 24 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 rl($notificationUrl).{.$this->no
82d20 74 69 66 69 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 tificationUrl.=.$notificationUrl
82d40 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 6f 74 69 66 ;.}.....public.function.getNotif
82d60 69 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 6e 6f 74 icationUrl().{.return.$this->not
82d80 69 66 69 63 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 ificationUrl;.}.......public.fun
82da0 63 74 69 6f 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 ction.setArchiveExcludes(array.$
82dc0 65 78 63 6c 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 excludes).{.$this->archiveExclud
82de0 65 73 20 3d 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 es.=.$excludes;.}.....public.fun
82e00 63 74 69 6f 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 ction.getArchiveExcludes().{.ret
82e20 75 72 6e 20 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 urn.$this->archiveExcludes;.}...
82e40 0a 0a 0a 0a 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 ......public.function.replaceVer
82e60 73 69 6f 6e 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 sion($version,.$prettyVersion).{
82e80 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 69 .$this->version.=.$version;.$thi
82ea0 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 6f s->prettyVersion.=.$prettyVersio
82ec0 6e 3b 0a 0a 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 n;..$this->stability.=.VersionPa
82ee0 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 29 3b 0a rser::parseStability($version);.
82f00 24 74 68 69 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 $this->dev.=.$this->stability.==
82f20 3d 20 27 64 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 =.'dev';.}..protected.function.g
82f40 65 74 55 72 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 etUrls($url,.$mirrors,.$ref,.$ty
82f60 70 65 2c 20 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 pe,.$urlType).{.if.(!$url).{.ret
82f80 75 72 6e 20 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 urn.array();.}.$urls.=.array($ur
82fa0 6c 29 3b 0a 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 l);.if.($mirrors).{.foreach.($mi
82fc0 72 72 6f 72 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 rrors.as.$mirror).{.if.($urlType
82fe0 20 3d 3d 3d 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 .===.'dist').{.$mirrorUrl.=.Comp
83000 6f 73 65 72 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 oserMirror::processUrl($mirror['
83020 75 72 6c 27 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 url'],.$this->name,.$this->versi
83040 6f 6e 2c 20 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 on,.$ref,.$type);.}.elseif.($url
83060 54 79 70 65 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 Type.===.'source'.&&.$type.===.'
83080 67 69 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 4d 69 72 git').{.$mirrorUrl.=.ComposerMir
830a0 72 6f 72 3a 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 ror::processGitUrl($mirror['url'
830c0 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 65 29 3b 0a 7d 20 ],.$this->name,.$url,.$type);.}.
830e0 65 6c 73 65 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 elseif.($urlType.===.'source'.&&
83100 20 24 74 79 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 .$type.===.'hg').{.$mirrorUrl.=.
83120 43 6f 6d 70 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 ComposerMirror::processHgUrl($mi
83140 72 72 6f 72 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 rror['url'],.$this->name,.$url,.
83160 24 74 79 70 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 $type);.}.if.(!in_array($mirrorU
83180 72 6c 2c 20 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 rl,.$urls)).{.$func.=.$mirror['p
831a0 72 65 66 65 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 referred'].?.'array_unshift'.:.'
831c0 61 72 72 61 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 array_push';.$func($urls,.$mirro
831e0 72 55 72 6c 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 rUrl);.}.}.}..return.$urls;.}.}.
83200 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
83220 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 65 70 6f 73 ser\Package;..use.Composer\Repos
83240 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 0a 0a 0a 0a 0a itory\RepositoryInterface;......
83260 0a 69 6e 74 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 .interface.PackageInterface.{...
83280 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 0a 0a ...public.function.getName();...
832a0 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 4e 61 6d ....public.function.getPrettyNam
832c0 65 28 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 67 65 e();..........public.function.ge
832e0 74 4e 61 6d 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 tNames();.......public.function.
83300 73 65 74 49 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 setId($id);.......public.functio
83320 6e 20 67 65 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 n.getId();.......public.function
83340 20 69 73 44 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 .isDev();.......public.function.
83360 67 65 74 54 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 getType();.......public.function
83380 20 67 65 74 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 .getTargetDir();.......public.fu
833a0 6e 63 74 69 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 nction.getExtra();.......public.
833c0 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 72 63 65 28 24 function.setInstallationSource($
833e0 74 79 70 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 67 65 74 type);.......public.function.get
83400 49 6e 73 74 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 InstallationSource();.......publ
83420 69 63 20 66 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 ic.function.getSourceType();....
83440 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 6c 28 ...public.function.getSourceUrl(
83460 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 6f 75 72 );.......public.function.getSour
83480 63 65 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 ceUrls();.......public.function.
834a0 67 65 74 53 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 getSourceReference();.......publ
834c0 69 63 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 3b 0a ic.function.getSourceMirrors();.
834e0 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 54 79 70 ......public.function.getDistTyp
83500 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 44 69 e();.......public.function.getDi
83520 73 74 55 72 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 stUrl();.......public.function.g
83540 65 74 44 69 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 etDistUrls();.......public.funct
83560 69 6f 6e 20 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 ion.getDistReference();.......pu
83580 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 73 75 blic.function.getDistSha1Checksu
835a0 6d 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 m();.......public.function.getDi
835c0 73 74 4d 69 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 stMirrors();.......public.functi
835e0 6f 6e 20 67 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 on.getVersion();.......public.fu
83600 6e 63 74 69 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 nction.getPrettyVersion();......
83620 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 6c 50 72 65 74 74 ....public.function.getFullPrett
83640 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 3b 0a 0a 0a 0a 0a yVersion($truncate.=.true);.....
83660 0a 0a 70 75 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 ..public.function.getReleaseDate
83680 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 74 61 ();.......public.function.getSta
836a0 62 69 6c 69 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 bility();........public.function
836c0 20 67 65 74 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 .getRequires();........public.fu
836e0 6e 63 74 69 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 nction.getConflicts();........pu
83700 62 6c 69 63 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 blic.function.getProvides();....
83720 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 73 28 ....public.function.getReplaces(
83740 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 44 65 76 );........public.function.getDev
83760 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
83780 6f 6e 20 67 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 on.getSuggests();............pub
837a0 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 3b 0a 0a 0a 0a 0a lic.function.getAutoload();.....
837c0 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 76 41 75 74 .......public.function.getDevAut
837e0 6f 6c 6f 61 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 oload();........public.function.
83800 67 65 74 49 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 getIncludePaths();.......public.
83820 66 75 6e 63 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 function.setRepository(Repositor
83840 79 49 6e 74 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 yInterface.$repository);.......p
83860 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 79 28 29 3b 0a ublic.function.getRepository();.
83880 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 69 6e 61 72 69 65 ......public.function.getBinarie
838a0 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 55 6e s();.......public.function.getUn
838c0 69 71 75 65 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 iqueName();.......public.functio
838e0 6e 20 67 65 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 n.getNotificationUrl();.......pu
83900 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 3b 0a 0a 0a 0a 0a blic.function.__toString();.....
83920 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 6e ..public.function.getPrettyStrin
83940 67 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 41 72 g();.......public.function.getAr
83960 63 68 69 76 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 chiveExcludes();.......public.fu
83980 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 73 28 29 3b 0a 7d 0a nction.getTransportOptions();.}.
839a0 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
839c0 73 65 72 5c 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 ser\Package;.....class.RootAlias
839e0 50 61 63 6b 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 Package.extends.AliasPackage.imp
83a00 6c 65 6d 65 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 lements.RootPackageInterface.{.p
83a20 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 52 6f 6f 74 50 ublic.function.__construct(RootP
83a40 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 69 ackageInterface.$aliasOf,.$versi
83a60 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 5f on,.$prettyVersion).{.parent::__
83a80 63 6f 6e 73 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 construct($aliasOf,.$version,.$p
83aa0 72 65 74 74 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 rettyVersion);.}.....public.func
83ac0 74 69 6f 6e 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 tion.getAliases().{.return.$this
83ae0 2d 3e 61 6c 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 ->aliasOf->getAliases();.}.....p
83b00 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
83b20 74 79 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 ty().{.return.$this->aliasOf->ge
83b40 74 4d 69 6e 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 tMinimumStability();.}.....publi
83b60 63 20 66 75 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 c.function.getStabilityFlags().{
83b80 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 53 74 61 62 69 .return.$this->aliasOf->getStabi
83ba0 6c 69 74 79 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 lityFlags();.}.....public.functi
83bc0 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 68 69 on.getReferences().{.return.$thi
83be0 73 2d 3e 61 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 s->aliasOf->getReferences();.}..
83c00 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 66 65 72 53 74 61 62 ...public.function.getPreferStab
83c20 6c 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 le().{.return.$this->aliasOf->ge
83c40 74 50 72 65 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 tPreferStable();.}.....public.fu
83c60 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 72 nction.setRequires(array.$requir
83c80 65 29 0a 7b 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 e).{.$this->requires.=.$this->re
83ca0 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 69 65 73 28 24 72 65 placeSelfVersionDependencies($re
83cc0 71 75 69 72 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 quire,.'requires');..$this->alia
83ce0 73 4f 66 2d 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 sOf->setRequires($require);.}...
83d00 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 69 72 65 73 ..public.function.setDevRequires
83d20 28 61 72 72 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 (array.$devRequire).{.$this->dev
83d40 52 65 71 75 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 Requires.=.$this->replaceSelfVer
83d60 73 69 6f 6e 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 sionDependencies($devRequire,.'d
83d80 65 76 52 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 3e 73 evRequires');..$this->aliasOf->s
83da0 65 74 44 65 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 etDevRequires($devRequire);.}...
83dc0 0a 0a 70 75 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 ..public.function.setConflicts(a
83de0 72 72 61 79 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 rray.$conflicts).{.$this->confli
83e00 63 74 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 44 cts.=.$this->replaceSelfVersionD
83e20 65 70 65 6e 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 ependencies($conflicts,.'conflic
83e40 74 73 27 29 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 ts');.$this->aliasOf->setConflic
83e60 74 73 28 24 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 ts($conflicts);.}.....public.fun
83e80 63 74 69 6f 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 ction.setProvides(array.$provide
83ea0 73 29 0a 7b 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 s).{.$this->provides.=.$this->re
83ec0 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 69 65 73 28 24 70 72 placeSelfVersionDependencies($pr
83ee0 6f 76 69 64 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 ovides,.'provides');.$this->alia
83f00 73 4f 66 2d 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 sOf->setProvides($provides);.}..
83f20 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
83f40 72 72 61 79 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 rray.$replaces).{.$this->replace
83f60 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 44 65 70 s.=.$this->replaceSelfVersionDep
83f80 65 6e 64 65 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 endencies($replaces,.'replaces')
83fa0 3b 0a 24 74 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 ;.$this->aliasOf->setReplaces($r
83fc0 65 70 6c 61 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 eplaces);.}.....public.function.
83fe0 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 72 69 65 73 29 0a 7b setRepositories($repositories).{
84000 0a 24 74 68 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 .$this->aliasOf->setRepositories
84020 28 24 72 65 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 ($repositories);.}.....public.fu
84040 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 75 74 6f 6c 6f nction.setAutoload(array.$autolo
84060 61 64 29 0a 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 ad).{.$this->aliasOf->setAutoloa
84080 64 28 24 61 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 d($autoload);.}.....public.funct
840a0 69 6f 6e 20 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 ion.setDevAutoload(array.$devAut
840c0 6f 6c 6f 61 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 oload).{.$this->aliasOf->setDevA
840e0 75 74 6f 6c 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 utoload($devAutoload);.}.....pub
84100 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 67 73 28 61 lic.function.setStabilityFlags(a
84120 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 73 2d 3e 61 rray.$stabilityFlags).{.$this->a
84140 6c 69 61 73 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 liasOf->setStabilityFlags($stabi
84160 6c 69 74 79 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 lityFlags);.}.....public.functio
84180 6e 20 73 65 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 n.setSuggests(array.$suggests).{
841a0 0a 24 74 68 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 .$this->aliasOf->setSuggests($su
841c0 67 67 65 73 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 ggests);.}.....public.function.s
841e0 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 61 etExtra(array.$extra).{.$this->a
84200 6c 69 61 73 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 liasOf->setExtra($extra);.}..pub
84220 6c 69 63 20 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 lic.function.__clone().{.parent:
84240 3a 5f 5f 63 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 :__clone();.$this->aliasOf.=.clo
84260 6e 65 20 24 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 ne.$this->aliasOf;.}.}.<?php....
84280 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
842a0 67 65 3b 0a 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 ge;.......class.RootPackage.exte
842c0 6e 64 73 20 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 nds.CompletePackage.implements.R
842e0 6f 6f 74 50 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 ootPackageInterface.{.protected.
84300 24 6d 69 6e 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 $minimumStability.=.'stable';.pr
84320 6f 74 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 otected.$preferStable.=.false;.p
84340 72 6f 74 65 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 rotected.$stabilityFlags.=.array
84360 28 29 3b 0a 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 ();.protected.$references.=.arra
84380 79 28 29 3b 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 y();.protected.$aliases.=.array(
843a0 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 4d 69 6e 69 );.......public.function.setMini
843c0 6d 75 6d 53 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 mumStability($minimumStability).
843e0 7b 0a 24 74 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 {.$this->minimumStability.=.$min
84400 69 6d 75 6d 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 imumStability;.}.....public.func
84420 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 0a 7b 0a 72 65 74 tion.getMinimumStability().{.ret
84440 75 72 6e 20 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 urn.$this->minimumStability;.}..
84460 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 62 69 6c 69 74 .....public.function.setStabilit
84480 79 46 6c 61 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 yFlags(array.$stabilityFlags).{.
844a0 24 74 68 69 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 $this->stabilityFlags.=.$stabili
844c0 74 79 46 6c 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 tyFlags;.}.....public.function.g
844e0 65 74 53 74 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 etStabilityFlags().{.return.$thi
84500 73 2d 3e 73 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 s->stabilityFlags;.}.......publi
84520 63 20 66 75 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 c.function.setPreferStable($pref
84540 65 72 53 74 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 erStable).{.$this->preferStable.
84560 3d 20 24 70 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 =.$preferStable;.}.....public.fu
84580 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 72 65 74 75 72 nction.getPreferStable().{.retur
845a0 6e 20 24 74 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 n.$this->preferStable;.}.......p
845c0 75 62 6c 69 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 ublic.function.setReferences(arr
845e0 61 79 20 24 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 ay.$references).{.$this->referen
84600 63 65 73 20 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 ces.=.$references;.}.....public.
84620 66 75 6e 63 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 function.getReferences().{.retur
84640 6e 20 24 74 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 n.$this->references;.}.......pub
84660 6c 69 63 20 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 lic.function.setAliases(array.$a
84680 6c 69 61 73 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 liases).{.$this->aliases.=.$alia
846a0 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 6e 20 67 65 74 41 6c ses;.}.....public.function.getAl
846c0 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 3b iases().{.return.$this->aliases;
846e0 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.
84700 43 6f 6d 70 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 Composer\Package;.......interfac
84720 65 20 52 6f 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 e.RootPackageInterface.extends.C
84740 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 0a 0a 0a 0a 0a 70 ompletePackageInterface.{......p
84760 75 62 6c 69 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 ublic.function.getAliases();....
84780 0a 0a 0a 70 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 ...public.function.getMinimumSta
847a0 62 69 6c 69 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 bility();.........public.functio
847c0 6e 20 67 65 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 n.getStabilityFlags();.........p
847e0 75 62 6c 69 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 ublic.function.getReferences();.
84800 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 65 66 65 72 53 ......public.function.getPreferS
84820 74 61 62 6c 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 table();.......public.function.s
84840 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 73 29 3b 0a 0a 0a 0a etRequires(array.$requires);....
84860 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 69 72 65 ...public.function.setDevRequire
84880 73 28 61 72 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 s(array.$devRequires);.......pub
848a0 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 20 lic.function.setConflicts(array.
848c0 24 63 6f 6e 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 $conflicts);.......public.functi
848e0 6f 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 3b on.setProvides(array.$provides);
84900 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 70 6c 61 63 .......public.function.setReplac
84920 65 73 28 61 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 es(array.$replaces);.......publi
84940 63 20 66 75 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 c.function.setRepositories($repo
84960 73 69 74 6f 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 sitories);.......public.function
84980 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 3b 0a 0a .setAutoload(array.$autoload);..
849a0 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 41 75 74 6f 6c .....public.function.setDevAutol
849c0 6f 61 64 28 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 oad(array.$devAutoload);.......p
849e0 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 67 73 ublic.function.setStabilityFlags
84a00 28 61 72 72 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 (array.$stabilityFlags);.......p
84a20 75 62 6c 69 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 ublic.function.setSuggests(array
84a40 20 24 73 75 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 .$suggests);.....public.function
84a60 20 73 65 74 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 .setExtra(array.$extra);.}.<?php
84a80 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 50 ............namespace.Composer\P
84aa0 61 63 6b 61 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 ackage\Version;..use.Composer\Co
84ac0 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 56 63 nfig;.use.Composer\Repository\Vc
84ae0 73 5c 48 67 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 s\HgDriver;.use.Composer\IO\Null
84b00 49 4f 3b 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 50 IO;.use.Composer\Semver\VersionP
84b20 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 75 73 arser.as.SemverVersionParser;.us
84b40 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 6c 3b 0a e.Composer\Util\Git.as.GitUtil;.
84b60 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 6f use.Composer\Util\ProcessExecuto
84b80 72 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 r;.use.Composer\Util\Svn.as.SvnU
84ba0 74 69 6c 3b 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 til;........class.VersionGuesser
84bc0 0a 7b 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 69 76 61 .{....private.$config;.....priva
84be0 74 65 20 24 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 te.$process;.....private.$versio
84c00 6e 50 61 72 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 nParser;.......public.function._
84c20 5f 63 6f 6e 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 _construct(Config.$config,.Proce
84c40 73 73 45 78 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 ssExecutor.$process,.SemverVersi
84c60 6f 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 74 68 69 73 onParser.$versionParser).{.$this
84c80 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 70 72 6f 63 65 ->config.=.$config;.$this->proce
84ca0 73 73 20 3d 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 ss.=.$process;.$this->versionPar
84cc0 73 65 72 20 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 70 75 62 ser.=.$versionParser;.}......pub
84ce0 6c 69 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 lic.function.guessVersion(array.
84d00 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 69 66 20 28 66 75 6e $packageConfig,.$path).{.if.(fun
84d20 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 24 76 65 ction_exists('proc_open')).{.$ve
84d40 72 73 69 6f 6e 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 28 24 rsion.=.$this->guessGitVersion($
84d60 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 6c 20 packageConfig,.$path);.if.(null.
84d80 21 3d 3d 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b !==.$version).{.return.$version;
84da0 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 75 65 73 73 48 67 56 65 72 .}..$version.=.$this->guessHgVer
84dc0 73 69 6f 6e 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 sion($packageConfig,.$path);.if.
84de0 28 6e 75 6c 6c 20 21 3d 3d 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 65 (null.!==.$version).{.return.$ve
84e00 72 73 69 6f 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 75 65 73 73 53 76 6e rsion;.}..return.$this->guessSvn
84e20 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 70 61 74 68 29 3b 0a Version($packageConfig,.$path);.
84e40 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 75 65 73 73 47 69 74 56 65 }.}..private.function.guessGitVe
84e60 72 73 69 6f 6e 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 70 61 74 rsion(array.$packageConfig,.$pat
84e80 68 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 0a 0a 20 69 66 20 h).{.GitUtil::cleanEnv();....if.
84ea0 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 27 (0.===.$this->process->execute('
84ec0 67 69 74 20 64 65 73 63 72 69 62 65 20 2d 2d 65 78 61 63 74 2d 6d 61 74 63 68 20 2d 2d 74 61 67 git.describe.--exact-match.--tag
84ee0 73 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 74 72 79 20 7b 0a 72 65 74 s',.$output,.$path)).{.try.{.ret
84f00 75 72 6e 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 urn.$this->versionParser->normal
84f20 69 7a 65 28 74 72 69 6d 28 24 6f 75 74 70 75 74 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 ize(trim($output));.}.catch.(\Ex
84f40 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 24 ception.$e).{.}.}....if.(0.===.$
84f60 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 62 72 61 6e this->process->execute('git.bran
84f80 63 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 ch.--no-color.--no-abbrev.-v',.$
84fa0 6f 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 output,.$path)).{.$branches.=.ar
84fc0 72 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 ray();.$isFeatureBranch.=.false;
84fe0 0a 24 76 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 .$version.=.null;....foreach.($t
85000 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 75 74 his->process->splitLines($output
85020 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 20 70 ).as.$branch).{.if.($branch.&&.p
85040 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 5c 2a 20 29 20 2a 28 5c 28 6e 6f 20 62 72 61 6e reg_match('{^(?:\*.).*(\(no.bran
85060 63 68 5c 29 7c 5c 28 64 65 74 61 63 68 65 64 20 66 72 6f 6d 20 5c 53 2b 5c 29 7c 5c 53 2b 29 20 ch\)|\(detached.from.\S+\)|\S+).
85080 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 2c 20 24 6d 61 *([a-f0-9]+)..*$}',.$branch,.$ma
850a0 74 63 68 29 29 20 7b 0a 69 66 20 28 24 6d 61 74 63 68 5b 31 5d 20 3d 3d 3d 20 27 28 6e 6f 20 62 tch)).{.if.($match[1].===.'(no.b
850c0 72 61 6e 63 68 29 27 20 7c 7c 20 73 75 62 73 74 72 28 24 6d 61 74 63 68 5b 31 5d 2c 20 30 2c 20 ranch)'.||.substr($match[1],.0,.
850e0 31 30 29 20 3d 3d 3d 20 27 28 64 65 74 61 63 68 65 64 20 27 29 20 7b 0a 24 76 65 72 73 69 6f 6e 10).===.'(detached.').{.$version
85100 20 3d 20 27 64 65 76 2d 27 2e 24 6d 61 74 63 68 5b 32 5d 3b 0a 24 69 73 46 65 61 74 75 72 65 42 .=.'dev-'.$match[2];.$isFeatureB
85120 72 61 6e 63 68 20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e 20 ranch.=.true;.}.else.{.$version.
85140 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 69 7a =.$this->versionParser->normaliz
85160 65 42 72 61 6e 63 68 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 24 69 73 46 65 61 74 75 72 65 42 72 eBranch($match[1]);.$isFeatureBr
85180 61 6e 63 68 20 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 anch.=.0.===.strpos($version,.'d
851a0 65 76 2d 27 29 3b 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 ev-');.if.('9999999-dev'.===.$ve
851c0 72 73 69 6f 6e 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 27 64 65 76 2d 27 2e 24 6d 61 74 63 rsion).{.$version.=.'dev-'.$matc
851e0 68 5b 31 5d 3b 0a 7d 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 h[1];.}.}.}..if.($branch.&&.!pre
85200 67 5f 6d 61 74 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 g_match('{^.*[^/]+/HEAD.}',.$bra
85220 6e 63 68 29 29 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 nch)).{.if.(preg_match('{^(?:\*.
85240 29 3f 20 2a 28 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 )?.*(\S+).*([a-f0-9]+)..*$}',.$b
85260 72 61 6e 63 68 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 ranch,.$match)).{.$branches[].=.
85280 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 69 73 46 65 61 74 75 72 $match[1];.}.}.}..if.(!$isFeatur
852a0 65 42 72 61 6e 63 68 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a eBranch).{.return.$version;.}...
852c0 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 65 56 .$version.=.$this->guessFeatureV
852e0 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 6e 2c ersion($packageConfig,.$version,
85300 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 25 63 61 6e 64 69 .$branches,.'git.rev-list.%candi
85320 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 0a 72 65 74 75 72 date%..%branch%',.$path);..retur
85340 6e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f n.$version;.}.}..private.functio
85360 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 61 63 6b 61 67 65 43 n.guessHgVersion(array.$packageC
85380 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 3d 3d 20 24 74 68 69 onfig,.$path).{...if.(0.===.$thi
853a0 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 72 61 6e 63 68 27 2c s->process->execute('hg.branch',
853c0 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 63 68 20 3d 20 74 72 .$output,.$path)).{.$branch.=.tr
853e0 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 74 68 69 73 2d 3e 76 im($output);.$version.=.$this->v
85400 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 24 62 ersionParser->normalizeBranch($b
85420 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 3d 20 30 20 3d 3d 3d ranch);.$isFeatureBranch.=.0.===
85440 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 3b 0a 0a 69 66 20 28 .strpos($version,.'dev-');..if.(
85460 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 6e 29 20 7b 0a 24 76 '9999999-dev'.===.$version).{.$v
85480 65 72 73 69 6f 6e 20 3d 20 27 64 65 76 2d 27 2e 24 62 72 61 6e 63 68 3b 0a 7d 0a 0a 69 66 20 28 ersion.=.'dev-'.$branch;.}..if.(
854a0 21 24 69 73 46 65 61 74 75 72 65 42 72 61 6e 63 68 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 65 72 !$isFeatureBranch).{.return.$ver
854c0 73 69 6f 6e 3b 0a 7d 0a 0a 0a 20 24 64 72 69 76 65 72 20 3d 20 6e 65 77 20 48 67 44 72 69 76 65 sion;.}....$driver.=.new.HgDrive
854e0 72 28 61 72 72 61 79 28 27 75 72 6c 27 20 3d 3e 20 24 70 61 74 68 29 2c 20 6e 65 77 20 4e 75 6c r(array('url'.=>.$path),.new.Nul
85500 6c 49 4f 28 29 2c 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 lIO(),.$this->config,.$this->pro
85520 63 65 73 73 29 3b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 24 64 cess);.$branches.=.array_keys($d
85540 72 69 76 65 72 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 29 3b 0a 0a 0a 20 24 76 65 72 73 69 river->getBranches());....$versi
85560 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 75 65 73 73 46 65 61 74 75 72 65 56 65 72 73 69 6f 6e 28 on.=.$this->guessFeatureVersion(
85580 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 62 72 61 6e 63 $packageConfig,.$version,.$branc
855a0 68 65 73 2c 20 27 68 67 20 6c 6f 67 20 2d 72 20 22 6e 6f 74 20 61 6e 63 65 73 74 6f 72 73 28 5c hes,.'hg.log.-r."not.ancestors(\
855c0 27 25 63 61 6e 64 69 64 61 74 65 25 5c 27 29 20 61 6e 64 20 61 6e 63 65 73 74 6f 72 73 28 5c 27 '%candidate%\').and.ancestors(\'
855e0 25 62 72 61 6e 63 68 25 5c 27 29 22 20 2d 2d 74 65 6d 70 6c 61 74 65 20 22 7b 6e 6f 64 65 7d 5c %branch%\')".--template."{node}\
85600 5c 6e 22 27 2c 20 24 70 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a \n"',.$path);..return.$version;.
85620 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 75 65 73 73 46 65 61 74 75 }.}..private.function.guessFeatu
85640 72 65 56 65 72 73 69 6f 6e 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 reVersion(array.$packageConfig,.
85660 24 76 65 72 73 69 6f 6e 2c 20 61 72 72 61 79 20 24 62 72 61 6e 63 68 65 73 2c 20 24 73 63 6d 43 $version,.array.$branches,.$scmC
85680 6d 64 6c 69 6e 65 2c 20 24 70 61 74 68 29 0a 7b 0a 0a 20 0a 20 69 66 20 28 28 69 73 73 65 74 28 mdline,.$path).{.....if.((isset(
856a0 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-
856c0 61 6c 69 61 73 27 5d 29 20 26 26 20 21 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 alias']).&&.!isset($packageConfi
856e0 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 76 65 72 73 g['extra']['branch-alias'][$vers
85700 69 6f 6e 5d 29 29 0a 7c 7c 20 73 74 72 70 6f 73 28 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 70 61 ion])).||.strpos(json_encode($pa
85720 63 6b 61 67 65 43 6f 6e 66 69 67 29 2c 20 27 22 73 65 6c 66 2e 76 65 72 73 69 6f 6e 22 27 29 0a ckageConfig),.'"self.version"').
85740 29 20 7b 0a 24 62 72 61 6e 63 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 64 65 ).{.$branch.=.preg_replace('{^de
85760 76 2d 7d 27 2c 20 27 27 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a 24 6c 65 6e 67 74 68 20 3d 20 50 v-}',.'',.$version);.$length.=.P
85780 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a 0a 24 6e 6f 6e 46 65 61 74 75 72 65 42 72 61 6e 63 68 65 73 HP_INT_MAX;..$nonFeatureBranches
857a0 20 3d 20 27 27 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 .=.'';.if.(!empty($packageConfig
857c0 5b 27 6e 6f 6e 2d 66 65 61 74 75 72 65 2d 62 72 61 6e 63 68 65 73 27 5d 29 29 20 7b 0a 24 6e 6f ['non-feature-branches'])).{.$no
857e0 6e 46 65 61 74 75 72 65 42 72 61 6e 63 68 65 73 20 3d 20 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 nFeatureBranches.=.implode('|',.
85800 24 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 $packageConfig['non-feature-bran
85820 63 68 65 73 27 5d 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 62 72 61 6e 63 68 65 73 20 61 ches']);.}..foreach.($branches.a
85840 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 0a 20 69 66 20 28 24 63 61 6e 64 69 64 61 74 65 s.$candidate).{...if.($candidate
85860 20 3d 3d 3d 20 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 27 .===.$branch.&&.preg_match('{^('
85880 20 2e 20 24 6e 6f 6e 46 65 61 74 75 72 65 42 72 61 6e 63 68 65 73 20 2e 20 27 29 24 7d 27 2c 20 ...$nonFeatureBranches...')$}',.
858a0 24 63 61 6e 64 69 64 61 74 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a $candidate)).{.return.$version;.
858c0 7d 0a 0a 0a 20 69 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 }....if.($candidate.===.$branch.
858e0 7c 7c 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 6d 61 73 74 65 72 7c 74 72 75 6e 6b 7c ||.!preg_match('{^(master|trunk|
85900 64 65 66 61 75 6c 74 7c 64 65 76 65 6c 6f 70 7c 5c 64 2b 5c 2e 2e 2b 29 24 7d 27 2c 20 24 63 61 default|develop|\d+\..+)$}',.$ca
85920 6e 64 69 64 61 74 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a ndidate,.$match)).{.continue;.}.
85940 0a 24 63 6d 64 4c 69 6e 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 25 .$cmdLine.=.str_replace(array('%
85960 63 61 6e 64 69 64 61 74 65 25 27 2c 20 27 25 62 72 61 6e 63 68 25 27 29 2c 20 61 72 72 61 79 28 candidate%',.'%branch%'),.array(
85980 24 63 61 6e 64 69 64 61 74 65 2c 20 24 62 72 61 6e 63 68 29 2c 20 24 73 63 6d 43 6d 64 6c 69 6e $candidate,.$branch),.$scmCmdlin
859a0 65 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 78 e);.if.(0.!==.$this->process->ex
859c0 65 63 75 74 65 28 24 63 6d 64 4c 69 6e 65 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 ecute($cmdLine,.$output,.$path))
859e0 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 6f 75 74 70 .{.continue;.}..if.(strlen($outp
85a00 75 74 29 20 3c 20 24 6c 65 6e 67 74 68 29 20 7b 0a 24 6c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 ut).<.$length).{.$length.=.strle
85a20 6e 28 24 6f 75 74 70 75 74 29 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 76 65 n($output);.$version.=.$this->ve
85a40 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 24 63 61 rsionParser->normalizeBranch($ca
85a60 6e 64 69 64 61 74 65 29 3b 0a 69 66 20 28 27 39 39 39 39 39 39 39 2d 64 65 76 27 20 3d 3d 3d 20 ndidate);.if.('9999999-dev'.===.
85a80 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 27 64 65 76 2d 27 2e 24 6d $version).{.$version.=.'dev-'.$m
85aa0 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 65 72 73 69 6f atch[1];.}.}.}.}..return.$versio
85ac0 6e 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 75 65 73 73 53 76 6e 56 n;.}..private.function.guessSvnV
85ae0 65 72 73 69 6f 6e 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 2c 20 24 70 61 ersion(array.$packageConfig,.$pa
85b00 74 68 29 0a 7b 0a 53 76 6e 55 74 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 28 29 3b 0a 0a 0a 20 69 66 th).{.SvnUtil::cleanEnv();....if
85b20 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(
85b40 27 73 76 6e 20 69 6e 66 6f 20 2d 2d 78 6d 6c 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 'svn.info.--xml',.$output,.$path
85b60 29 29 20 7b 0a 24 74 72 75 6e 6b 50 61 74 68 20 3d 20 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 )).{.$trunkPath.=.isset($package
85b80 43 6f 6e 66 69 67 5b 27 74 72 75 6e 6b 2d 70 61 74 68 27 5d 29 20 3f 20 70 72 65 67 5f 71 75 6f Config['trunk-path']).?.preg_quo
85ba0 74 65 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 68 27 5d 2c te($packageConfig['trunk-path'],
85bc0 20 27 23 27 29 20 3a 20 27 74 72 75 6e 6b 27 3b 0a 24 62 72 61 6e 63 68 65 73 50 61 74 68 20 3d .'#').:.'trunk';.$branchesPath.=
85be0 20 69 73 73 65 74 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 .isset($packageConfig['branches-
85c00 70 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 path']).?.preg_quote($packageCon
85c20 66 69 67 5b 27 62 72 61 6e 63 68 65 73 2d 70 61 74 68 27 5d 2c 20 27 23 27 29 20 3a 20 27 62 72 fig['branches-path'],.'#').:.'br
85c40 61 6e 63 68 65 73 27 3b 0a 24 74 61 67 73 50 61 74 68 20 3d 20 69 73 73 65 74 28 24 70 61 63 6b anches';.$tagsPath.=.isset($pack
85c60 61 67 65 43 6f 6e 66 69 67 5b 27 74 61 67 73 2d 70 61 74 68 27 5d 29 20 3f 20 70 72 65 67 5f 71 ageConfig['tags-path']).?.preg_q
85c80 75 6f 74 65 28 24 70 61 63 6b 61 67 65 43 6f 6e 66 69 67 5b 27 74 61 67 73 2d 70 61 74 68 27 5d uote($packageConfig['tags-path']
85ca0 2c 20 27 23 27 29 20 3a 20 27 74 61 67 73 27 3b 0a 0a 24 75 72 6c 50 61 74 74 65 72 6e 20 3d 20 ,.'#').:.'tags';..$urlPattern.=.
85cc0 27 23 3c 75 72 6c 3e 2e 2a 2f 28 27 2e 24 74 72 75 6e 6b 50 61 74 68 2e 27 7c 28 27 2e 24 62 72 '#<url>.*/('.$trunkPath.'|('.$br
85ce0 61 6e 63 68 65 73 50 61 74 68 2e 27 7c 27 2e 20 24 74 61 67 73 50 61 74 68 20 2e 27 29 2f 28 2e anchesPath.'|'..$tagsPath..')/(.
85d00 2a 29 29 3c 2f 75 72 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 *))</url>#';..if.(preg_match($ur
85d20 6c 50 61 74 74 65 72 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 lPattern,.$output,.$matches)).{.
85d40 69 66 20 28 69 73 73 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 if.(isset($matches[2]).&&.($bran
85d60 63 68 65 73 50 61 74 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 chesPath.===.$matches[2].||.$tag
85d80 73 50 61 74 68 20 3d 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 sPath.===.$matches[2])).{...$ver
85da0 73 69 6f 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 sion.=.$this->versionParser->nor
85dc0 6d 61 6c 69 7a 65 42 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 malizeBranch($matches[3]);.if.('
85de0 39 39 39 39 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 9999999-dev'.===.$version).{.$ve
85e00 72 73 69 6f 6e 20 3d 20 27 64 65 76 2d 27 2e 24 6d 61 74 63 68 65 73 5b 33 5d 3b 0a 7d 0a 0a 72 rsion.=.'dev-'.$matches[3];.}..r
85e20 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 20 24 74 68 69 73 2d eturn.$version;.}..return.$this-
85e40 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 6d 28 24 >versionParser->normalize(trim($
85e60 6d 61 74 63 68 65 73 5b 31 5d 29 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a matches[1]));.}.}.}.}.<?php.....
85e80 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 67 .......namespace.Composer\Packag
85ea0 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 53 65 6d 76 65 72 5c e\Version;..use.Composer\Semver\
85ec0 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 69 6f 6e 50 61 VersionParser.as.SemverVersionPa
85ee0 72 73 65 72 3b 0a 0a 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 rser;..class.VersionParser.exten
85f00 64 73 20 53 65 6d 76 65 72 56 65 72 73 69 6f 6e 50 61 72 73 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a ds.SemverVersionParser.{........
85f20 0a 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 ...public.function.parseNameVers
85f40 69 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 ionPairs(array.$pairs).{.$pairs.
85f60 3d 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 =.array_values($pairs);.$result.
85f80 3d 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 =.array();..for.($i.=.0,.$count.
85fa0 3d 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 =.count($pairs);.$i.<.$count;.$i
85fc0 2b 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 ++).{.$pair.=.preg_replace('{^([
85fe0 5e 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 ^=:.]+)[=:.](.*)$}',.'$1.$2',.tr
86000 69 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 im($pairs[$i]));.if.(false.===.s
86020 74 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 trpos($pair,.'.').&&.isset($pair
86040 73 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 s[$i.+.1]).&&.false.===.strpos($
86060 70 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 pairs[$i.+.1],.'/')).{.$pair..=.
86080 27 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 '.'.$pairs[$i.+.1];.$i++;.}..if.
860a0 28 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 (strpos($pair,.'.')).{.list($nam
860c0 65 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 e,.$version).=.explode(".",.$pai
860e0 72 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 r,.2);.$result[].=.array('name'.
86100 3d 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 =>.$name,.'version'.=>.$version)
86120 3b 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 ;.}.else.{.$result[].=.array('na
86140 6d 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 me'.=>.$pair);.}.}..return.$resu
86160 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 65 73 70 61 lt;.}.}.<?php............namespa
86180 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 6f 6e 3b 0a 0a 75 73 ce.Composer\Package\Version;..us
861a0 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
861c0 6f 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 ol;.use.Composer\Package\BasePac
861e0 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
86200 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
86220 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 73 e\Loader\ArrayLoader;.use.Compos
86240 65 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 er\Package\Dumper\ArrayDumper;.u
86260 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 72 se.Composer\Semver\VersionParser
86280 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 6d .as.SemverVersionParser;.use.Com
862a0 70 6f 73 65 72 5c 53 65 6d 76 65 72 5c 53 65 6d 76 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 poser\Semver\Semver;.use.Compose
862c0 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 0a r\Semver\Constraint\Constraint;.
862e0 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 65 72 73 69 6f 6e 53 65 6c 65 63 74 6f 72 0a 7b 0a 70 .......class.VersionSelector.{.p
86300 72 69 76 61 74 65 20 24 70 6f 6f 6c 3b 0a 0a 70 72 69 76 61 74 65 20 24 70 61 72 73 65 72 3b 0a rivate.$pool;..private.$parser;.
86320 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 50 6f 6f .public.function.__construct(Poo
86340 6c 20 24 70 6f 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 l.$pool).{.$this->pool.=.$pool;.
86360 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 66 69 6e }............public.function.fin
86380 64 42 65 73 74 43 61 6e 64 69 64 61 74 65 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 74 61 dBestCandidate($packageName,.$ta
863a0 72 67 65 74 50 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 74 61 72 67 rgetPackageVersion.=.null,.$targ
863c0 65 74 50 68 70 56 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 70 72 65 66 65 72 72 65 64 53 etPhpVersion.=.null,.$preferredS
863e0 74 61 62 69 6c 69 74 79 20 3d 20 27 73 74 61 62 6c 65 27 29 0a 7b 0a 24 63 6f 6e 73 74 72 61 69 tability.=.'stable').{.$constrai
86400 6e 74 20 3d 20 24 74 61 72 67 65 74 50 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 3f 20 24 74 68 nt.=.$targetPackageVersion.?.$th
86420 69 73 2d 3e 67 65 74 50 61 72 73 65 72 28 29 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 is->getParser()->parseConstraint
86440 73 28 24 74 61 72 67 65 74 50 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 29 20 3a 20 6e 75 6c 6c 3b s($targetPackageVersion).:.null;
86460 0a 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 .$candidates.=.$this->pool->what
86480 50 72 6f 76 69 64 65 73 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 Provides(strtolower($packageName
864a0 29 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 74 72 75 65 29 3b 0a 0a 69 66 20 28 24 74 61 72 ),.$constraint,.true);..if.($tar
864c0 67 65 74 50 68 70 56 65 72 73 69 6f 6e 29 20 7b 0a 24 70 68 70 43 6f 6e 73 74 72 61 69 6e 74 20 getPhpVersion).{.$phpConstraint.
864e0 3d 20 6e 65 77 20 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 74 68 69 73 2d 3e 67 65 =.new.Constraint('==',.$this->ge
86500 74 50 61 72 73 65 72 28 29 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 74 61 72 67 65 74 50 68 70 56 tParser()->normalize($targetPhpV
86520 65 72 73 69 6f 6e 29 29 3b 0a 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 61 72 72 61 79 5f 66 69 ersion));.$candidates.=.array_fi
86540 6c 74 65 72 28 24 63 61 6e 64 69 64 61 74 65 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 70 6b 67 lter($candidates,.function.($pkg
86560 29 20 75 73 65 20 28 24 70 68 70 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 72 65 71 73 20 3d ).use.($phpConstraint).{.$reqs.=
86580 20 24 70 6b 67 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 3b 0a 0a 72 65 74 75 72 6e 20 21 69 .$pkg->getRequires();..return.!i
865a0 73 73 65 74 28 24 72 65 71 73 5b 27 70 68 70 27 5d 29 20 7c 7c 20 24 72 65 71 73 5b 27 70 68 70 sset($reqs['php']).||.$reqs['php
865c0 27 5d 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 70 68 ']->getConstraint()->matches($ph
865e0 70 43 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 63 61 6e 64 69 pConstraint);.});.}..if.(!$candi
86600 64 61 74 65 73 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 20 24 70 61 63 dates).{.return.false;.}....$pac
86620 6b 61 67 65 20 3d 20 72 65 73 65 74 28 24 63 61 6e 64 69 64 61 74 65 73 29 3b 0a 24 6d 69 6e 50 kage.=.reset($candidates);.$minP
86640 72 69 6f 72 69 74 79 20 3d 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 riority.=.BasePackage::$stabilit
86660 69 65 73 5b 24 70 72 65 66 65 72 72 65 64 53 74 61 62 69 6c 69 74 79 5d 3b 0a 66 6f 72 65 61 63 ies[$preferredStability];.foreac
86680 68 20 28 24 63 61 6e 64 69 64 61 74 65 73 20 61 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a h.($candidates.as.$candidate).{.
866a0 24 63 61 6e 64 69 64 61 74 65 50 72 69 6f 72 69 74 79 20 3d 20 24 63 61 6e 64 69 64 61 74 65 2d $candidatePriority.=.$candidate-
866c0 3e 67 65 74 53 74 61 62 69 6c 69 74 79 50 72 69 6f 72 69 74 79 28 29 3b 0a 24 63 75 72 72 65 6e >getStabilityPriority();.$curren
866e0 74 50 72 69 6f 72 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 tPriority.=.$package->getStabili
86700 74 79 50 72 69 6f 72 69 74 79 28 29 3b 0a 0a 0a 20 69 66 20 28 24 6d 69 6e 50 72 69 6f 72 69 74 tyPriority();....if.($minPriorit
86720 79 20 3c 20 24 63 61 6e 64 69 64 61 74 65 50 72 69 6f 72 69 74 79 20 26 26 20 24 63 75 72 72 65 y.<.$candidatePriority.&&.$curre
86740 6e 74 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 29 ntPriority.<.$candidatePriority)
86760 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 20 69 66 20 28 24 6d 69 6e 50 72 69 6f 72 69 74 .{.continue;.}...if.($minPriorit
86780 79 20 3e 3d 20 24 63 61 6e 64 69 64 61 74 65 50 72 69 6f 72 69 74 79 20 26 26 20 24 6d 69 6e 50 y.>=.$candidatePriority.&&.$minP
867a0 72 69 6f 72 69 74 79 20 3c 20 24 63 75 72 72 65 6e 74 50 72 69 6f 72 69 74 79 29 20 7b 0a 24 70 riority.<.$currentPriority).{.$p
867c0 61 63 6b 61 67 65 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d ackage.=.$candidate;.continue;.}
867e0 0a 0a 0a 20 69 66 20 28 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 24 70 61 63 6b 61 67 65 ....if.(version_compare($package
86800 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 20 24 63 61 6e 64 69 64 61 74 65 2d 3e 67 65 74 56 ->getVersion(),.$candidate->getV
86820 65 72 73 69 6f 6e 28 29 2c 20 27 3c 27 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 63 61 ersion(),.'<')).{.$package.=.$ca
86840 6e 64 69 64 61 74 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d ndidate;.}.}..return.$package;.}
86860 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
86880 20 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 6e 28 50 .findRecommendedRequireVersion(P
868a0 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 76 65 72 ackageInterface.$package).{.$ver
868c0 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 6f 6e 28 29 3b 0a 69 sion.=.$package->getVersion();.i
868e0 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 72 65 74 75 72 6e 20 f.(!$package->isDev()).{.return.
86900 24 74 68 69 73 2d 3e 74 72 61 6e 73 66 6f 72 6d 56 65 72 73 69 6f 6e 28 24 76 65 72 73 69 6f 6e $this->transformVersion($version
86920 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 6e 28 29 2c 20 ,.$package->getPrettyVersion(),.
86940 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 29 3b 0a 7d 0a 0a 24 6c $package->getStability());.}..$l
86960 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 28 24 74 68 69 73 2d 3e 67 oader.=.new.ArrayLoader($this->g
86980 65 74 50 61 72 73 65 72 28 29 29 3b 0a 24 64 75 6d 70 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 etParser());.$dumper.=.new.Array
869a0 44 75 6d 70 65 72 28 29 3b 0a 24 65 78 74 72 61 20 3d 20 24 6c 6f 61 64 65 72 2d 3e 67 65 74 42 Dumper();.$extra.=.$loader->getB
869c0 72 61 6e 63 68 41 6c 69 61 73 28 24 64 75 6d 70 65 72 2d 3e 64 75 6d 70 28 24 70 61 63 6b 61 67 ranchAlias($dumper->dump($packag
869e0 65 29 29 3b 0a 69 66 20 28 24 65 78 74 72 61 29 20 7b 0a 24 65 78 74 72 61 20 3d 20 70 72 65 67 e));.if.($extra).{.$extra.=.preg
86a00 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 5c 64 2b 5c 2e 5c 64 2b 5c 2e 5c 64 2b 29 28 5c 2e 39 39 _replace('{^(\d+\.\d+\.\d+)(\.99
86a20 39 39 39 39 39 29 2d 64 65 76 24 7d 27 2c 20 27 24 31 2e 30 27 2c 20 24 65 78 74 72 61 2c 20 2d 99999)-dev$}',.'$1.0',.$extra,.-
86a40 31 2c 20 24 63 6f 75 6e 74 29 3b 0a 69 66 20 28 24 63 6f 75 6e 74 29 20 7b 0a 24 65 78 74 72 61 1,.$count);.if.($count).{.$extra
86a60 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 2e 39 39 39 39 39 39 39 27 2c 20 27 2e 30 27 2c .=.str_replace('.9999999',.'.0',
86a80 20 24 65 78 74 72 61 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 72 61 6e 73 66 6f .$extra);..return.$this->transfo
86aa0 72 6d 56 65 72 73 69 6f 6e 28 24 65 78 74 72 61 2c 20 24 65 78 74 72 61 2c 20 27 64 65 76 27 29 rmVersion($extra,.$extra,.'dev')
86ac0 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 ;.}.}..return.$package->getPrett
86ae0 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 yVersion();.}..private.function.
86b00 74 72 61 6e 73 66 6f 72 6d 56 65 72 73 69 6f 6e 28 24 76 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 transformVersion($version,.$pret
86b20 74 79 56 65 72 73 69 6f 6e 2c 20 24 73 74 61 62 69 6c 69 74 79 29 0a 7b 0a 0a 20 0a 20 24 73 65 tyVersion,.$stability).{.....$se
86b40 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 50 61 72 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 2e 27 manticVersionParts.=.explode('.'
86b60 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 73 65 6d 61 6e ,.$version);....if.(count($seman
86b80 74 69 63 56 65 72 73 69 6f 6e 50 61 72 74 73 29 20 3d 3d 20 34 20 26 26 20 70 72 65 67 5f 6d 61 ticVersionParts).==.4.&&.preg_ma
86ba0 74 63 68 28 27 7b 5e 30 5c 44 3f 7d 27 2c 20 24 73 65 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 50 tch('{^0\D?}',.$semanticVersionP
86bc0 61 72 74 73 5b 33 5d 29 29 20 7b 0a 0a 20 69 66 20 28 24 73 65 6d 61 6e 74 69 63 56 65 72 73 69 arts[3])).{...if.($semanticVersi
86be0 6f 6e 50 61 72 74 73 5b 30 5d 20 3d 3d 3d 20 27 30 27 29 20 7b 0a 75 6e 73 65 74 28 24 73 65 6d onParts[0].===.'0').{.unset($sem
86c00 61 6e 74 69 63 56 65 72 73 69 6f 6e 50 61 72 74 73 5b 33 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a anticVersionParts[3]);.}.else.{.
86c20 75 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 32 5d 2c 20 unset($semanticVersionParts[2],.
86c40 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 7d 0a 24 76 65 $semanticVersionParts[3]);.}.$ve
86c60 72 73 69 6f 6e 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2e 27 2c 20 24 73 65 6d 61 6e 74 69 63 56 65 rsion.=.implode('.',.$semanticVe
86c80 72 73 69 6f 6e 50 61 72 74 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 72 65 74 75 72 6e 20 24 70 72 rsionParts);.}.else.{.return.$pr
86ca0 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 73 74 61 62 69 6c 69 74 79 ettyVersion;.}....if.($stability
86cc0 20 21 3d 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 40 27 2e .!=.'stable').{.$version..=.'@'.
86ce0 24 73 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 27 5e 27 20 2e 20 24 76 $stability;.}....return.'^'...$v
86d00 65 72 73 69 6f 6e 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 ersion;.}..private.function.getP
86d20 61 72 73 65 72 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 61 72 73 65 72 20 3d 3d 3d 20 arser().{.if.($this->parser.===.
86d40 6e 75 6c 6c 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 72 20 3d 20 6e 65 77 20 53 65 6d 76 null).{.$this->parser.=.new.Semv
86d60 65 72 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 24 74 68 erVersionParser();.}..return.$th
86d80 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 0a 0a 0a is->parser;.}.}.<?php...........
86da0 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 3b 0a 0a 75 73 65 .namespace.Composer\Plugin;..use
86dc0 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 3b .Composer\EventDispatcher\Event;
86de0 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
86e00 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
86e20 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
86e40 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 61 6e 64 45 76 Interface;.......class.CommandEv
86e60 65 6e 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 ent.extends.Event.{....private.$
86e80 63 6f 6d 6d 61 6e 64 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 commandName;.....private.$input;
86ea0 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 0a 0a 0a 0a 0a 0a 0a .....private.$output;...........
86ec0 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 6e 61 .public.function.__construct($na
86ee0 6d 65 2c 20 24 63 6f 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 me,.$commandName,.$input,.$outpu
86f00 74 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 72 72 61 79 20 t,.array.$args.=.array(),.array.
86f20 24 66 6c 61 67 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 $flags.=.array()).{.parent::__co
86f40 6e 73 74 72 75 63 74 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 nstruct($name,.$args,.$flags);.$
86f60 74 68 69 73 2d 3e 63 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 this->commandName.=.$commandName
86f80 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 73 2d 3e ;.$this->input.=.$input;.$this->
86fa0 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 6c 69 63 output.=.$output;.}.......public
86fc0 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 74 .function.getInput().{.return.$t
86fe0 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 74 his->input;.}.......public.funct
87000 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 3e ion.getOutput().{.return.$this->
87020 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 6f 6e 20 output;.}.......public.function.
87040 67 65 74 43 6f 6d 6d 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 getCommandName().{.return.$this-
87060 3e 63 6f 6d 6d 61 6e 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 >commandName;.}.}.<?php.........
87080 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 3b 0a 0a 0a ...namespace.Composer\Plugin;...
870a0 0a 0a 0a 0a 63 6c 61 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 ....class.PluginEvents.{........
870c0 0a 63 6f 6e 73 74 20 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 .const.COMMAND.=.'command';.....
870e0 0a 0a 0a 0a 0a 63 6f 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 .....const.PRE_FILE_DOWNLOAD.=.'
87100 70 72 65 2d 66 69 6c 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 pre-file-download';.}.<?php.....
87120 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 6c 75 67 69 6e .......namespace.Composer\Plugin
87140 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 43 6f ;..use.Composer\Composer;.use.Co
87160 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 0a 69 6e 74 mposer\IO\IOInterface;.......int
87180 65 72 66 61 63 65 20 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 erface.PluginInterface.{......co
871a0 6e 73 74 20 50 4c 55 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 nst.PLUGIN_API_VERSION.=.'1.0.0'
871c0 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 61 63 74 69 76 61 74 ;........public.function.activat
871e0 65 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 61 63 e(Composer.$composer,.IOInterfac
87200 65 20 24 69 6f 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.$io);.}.<?php............names
87220 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 70 6f pace.Composer\Plugin;..use.Compo
87240 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 45 76 65 6e 74 ser\Composer;.use.Composer\Event
87260 44 69 73 70 61 74 63 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 Dispatcher\EventSubscriberInterf
87280 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 63 65 ace;.use.Composer\IO\IOInterface
872a0 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 3b 0a ;.use.Composer\Package\Package;.
872c0 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
872e0 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 73 r;.use.Composer\Repository\Repos
87300 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 61 63 itoryInterface;.use.Composer\Pac
87320 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\
87340 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
87360 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 73 65 mposer\Package\Link;.use.Compose
87380 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 0a r\Semver\Constraint\Constraint;.
873a0 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 5c use.Composer\DependencyResolver\
873c0 50 6f 6f 6c 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 6c 75 67 69 6e 4d 61 6e 61 67 65 72 Pool;........class.PluginManager
873e0 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 72 6f 74 65 63 74 65 .{.protected.$composer;.protecte
87400 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 d.$io;.protected.$globalComposer
87420 3b 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 0a 70 72 6f 74 ;.protected.$versionParser;.prot
87440 65 63 74 65 64 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 20 3d 20 66 61 6c 73 65 3b 0a 0a ected.$disablePlugins.=.false;..
87460 70 72 6f 74 65 63 74 65 64 20 24 70 6c 75 67 69 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 protected.$plugins.=.array();.pr
87480 6f 74 65 63 74 65 64 20 24 72 65 67 69 73 74 65 72 65 64 50 6c 75 67 69 6e 73 20 3d 20 61 72 72 otected.$registeredPlugins.=.arr
874a0 61 79 28 29 3b 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 63 6c 61 73 73 43 6f 75 6e ay();..private.static.$classCoun
874c0 74 65 72 20 3d 20 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 ter.=.0;..........public.functio
874e0 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 20 43 n.__construct(IOInterface.$io,.C
87500 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
87520 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
87540 69 6e 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a ins.=.false).{.$this->io.=.$io;.
87560 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 74 68 $this->composer.=.$composer;.$th
87580 69 73 2d 3e 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 20 3d 20 24 67 6c 6f 62 61 6c 43 6f 6d 70 is->globalComposer.=.$globalComp
875a0 6f 73 65 72 3b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 oser;.$this->versionParser.=.new
875c0 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 .VersionParser();.$this->disable
875e0 50 6c 75 67 69 6e 73 20 3d 20 24 64 69 73 61 62 6c 65 50 6c 75 67 69 6e 73 3b 0a 7d 0a 0a 0a 0a Plugins.=.$disablePlugins;.}....
87600 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 49 6e 73 74 61 6c 6c 65 64 50 6c .public.function.loadInstalledPl
87620 75 67 69 6e 73 28 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 ugins().{.if.($this->disablePlug
87640 69 6e 73 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 72 65 70 6f 20 3d 20 24 74 68 69 73 2d ins).{.return;.}..$repo.=.$this-
87660 3e 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(
87680 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 67 6c 6f 62 61 6c )->getLocalRepository();.$global
876a0 52 65 70 6f 20 3d 20 24 74 68 69 73 2d 3e 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 20 3f 20 24 Repo.=.$this->globalComposer.?.$
876c0 74 68 69 73 2d 3e 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 this->globalComposer->getReposit
876e0 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
87700 28 29 20 3a 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 72 65 70 6f 29 20 7b 0a 24 74 68 69 73 2d 3e 6c ().:.null;.if.($repo).{.$this->l
87720 6f 61 64 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 29 3b 0a 7d 0a 69 66 20 28 24 67 6c 6f oadRepository($repo);.}.if.($glo
87740 62 61 6c 52 65 70 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 balRepo).{.$this->loadRepository
87760 28 24 67 6c 6f 62 61 6c 52 65 70 6f 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ($globalRepo);.}.}.......public.
87780 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 6c 75 67 69 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 function.getPlugins().{.return.$
877a0 74 68 69 73 2d 3e 70 6c 75 67 69 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 this->plugins;.}.............pub
877c0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 67 69 73 74 65 72 50 61 63 6b 61 67 65 28 50 61 63 lic.function.registerPackage(Pac
877e0 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 61 69 6c 4f 6e 4d kageInterface.$package,.$failOnM
87800 69 73 73 69 6e 67 43 6c 61 73 73 65 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 24 74 68 issingClasses.=.false).{.if.($th
87820 69 73 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 is->disablePlugins).{.return;.}.
87840 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 70 61 63 6b 61 67 65 .$oldInstallerPlugin.=.($package
87860 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 69 6e 73 74 61 6c ->getType().===.'composer-instal
87880 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 6b 61 67 65 2d 3e 67 ler');..if.(in_array($package->g
878a0 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 65 64 50 6c 75 67 69 etName(),.$this->registeredPlugi
878c0 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 3d 20 24 70 61 63 6b ns)).{.return;.}..$extra.=.$pack
878e0 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 79 28 24 65 78 74 72 age->getExtra();.if.(empty($extr
87900 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 5c 55 6e 65 78 70 65 a['class'])).{.throw.new.\Unexpe
87920 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 20 77 68 69 6c 65 20 ctedValueException('Error.while.
87940 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 74 50 72 65 74 74 79 installing.'.$package->getPretty
87960 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 20 70 61 63 6b 61 67 Name().',.composer-plugin.packag
87980 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 66 69 6e 65 64 20 69 es.should.have.a.class.defined.i
879a0 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 73 61 62 6c 65 2e 27 n.their.extra.key.to.be.usable.'
879c0 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 24 65 78 74 72 61 5b );.}.$classes.=.is_array($extra[
879e0 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 27 5d 20 3a 20 61 72 'class']).?.$extra['class'].:.ar
87a00 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 6f 63 61 6c 52 65 70 ray($extra['class']);..$localRep
87a20 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 69 74 6f o.=.$this->composer->getReposito
87a40 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(
87a60 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 6c 43 6f );.$globalRepo.=.$this->globalCo
87a80 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 72 2d 3e mposer.?.$this->globalComposer->
87aa0 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 61 6c getRepositoryManager()->getLocal
87ac0 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 6f 6c 20 3d 20 6e 65 Repository().:.null;..$pool.=.ne
87ae0 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 52 65 70 6f 73 69 74 w.Pool('dev');.$pool->addReposit
87b00 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 62 61 6c 52 65 70 6f ory($localRepo);.if.($globalRepo
87b20 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 24 67 6c 6f 62 61 6c ).{.$pool->addRepository($global
87b40 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 65 73 20 3d 20 61 72 Repo);.}..$autoloadPackages.=.ar
87b60 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 3e 20 24 70 61 63 6b ray($package->getName().=>.$pack
87b80 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 20 24 74 68 69 73 2d age);.$autoloadPackages.=.$this-
87ba0 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 6c 2c 20 24 61 75 74 >collectDependencies($pool,.$aut
87bc0 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 0a 0a 24 67 65 6e 65 oloadPackages,.$package);..$gene
87be0 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 65 74 41 75 74 6f rator.=.$this->composer->getAuto
87c00 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 64 73 20 3d 20 61 72 loadGenerator();.$autoloads.=.ar
87c20 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 50 61 63 6b 61 67 65 ray();.foreach.($autoloadPackage
87c40 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 24 64 6f 77 6e 6c 6f s.as.$autoloadPackage).{.$downlo
87c60 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 74 68 28 24 adPath.=.$this->getInstallPath($
87c80 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 52 65 70 6f 20 26 26 autoloadPackage,.($globalRepo.&&
87ca0 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 24 61 75 74 6f 6c 6f .$globalRepo->hasPackage($autolo
87cc0 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 5d 20 3d 20 61 72 72 adPackage)));.$autoloads[].=.arr
87ce0 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 6e 6c 6f 61 64 50 61 ay($autoloadPackage,.$downloadPa
87d00 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 2d 3e 70 61 72 73 65 th);.}..$map.=.$generator->parse
87d20 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 20 50 61 63 6b 61 67 Autoloads($autoloads,.new.Packag
87d40 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 30 2e 30 27 29 29 3b e('dummy',.'1.0.0.0',.'1.0.0'));
87d60 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 72 2d 3e 63 72 65 61 .$classLoader.=.$generator->crea
87d80 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 64 65 72 2d 3e 72 65 teLoader($map);.$classLoader->re
87da0 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 73 65 73 20 61 73 20 gister();..foreach.($classes.as.
87dc0 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 73 28 24 63 6c 61 73 $class).{.if.(class_exists($clas
87de0 73 2c 20 66 61 6c 73 65 29 29 20 7b 0a 24 63 6f 64 65 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f s,.false)).{.$code.=.file_get_co
87e00 6e 74 65 6e 74 73 28 24 63 6c 61 73 73 4c 6f 61 64 65 72 2d 3e 66 69 6e 64 46 69 6c 65 28 24 63 ntents($classLoader->findFile($c
87e20 6c 61 73 73 29 29 3b 0a 24 63 6f 64 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e lass));.$code.=.preg_replace('{^
87e40 28 28 3f 3a 66 69 6e 61 6c 5c 73 2b 29 3f 28 3f 3a 5c 73 2a 29 29 63 6c 61 73 73 5c 73 2b 28 5c ((?:final\s+)?(?:\s*))class\s+(\
87e60 53 2b 29 7d 6d 69 27 2c 20 27 24 31 63 6c 61 73 73 20 24 32 5f 63 6f 6d 70 6f 73 65 72 5f 74 6d S+)}mi',.'$1class.$2_composer_tm
87e80 70 27 2e 73 65 6c 66 3a 3a 24 63 6c 61 73 73 43 6f 75 6e 74 65 72 2c 20 24 63 6f 64 65 29 3b 0a p'.self::$classCounter,.$code);.
87ea0 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 5f 63 6f eval('?>'.$code);.$class..=.'_co
87ec0 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 65 72 3b mposer_tmp'.self::$classCounter;
87ee0 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 20 28 24 .self::$classCounter++;.}..if.($
87f00 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 6c 65 72 oldInstallerPlugin).{.$installer
87f20 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 73 2d 3e .=.new.$class($this->io,.$this->
87f40 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 65 74 49 composer);.$this->composer->getI
87f60 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 61 6c 6c nstallationManager()->addInstall
87f80 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 73 73 5f er($installer);.}.elseif.(class_
87fa0 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 65 77 20 exists($class)).{.$plugin.=.new.
87fc0 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 6c 75 67 $class();.$this->addPlugin($plug
87fe0 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 5b 5d 20 in);.$this->registeredPlugins[].
88000 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 69 66 20 =.$package->getName();.}.elseif.
88020 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 6f 77 20 ($failOnMissingClasses).{.throw.
88040 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 50 new.\UnexpectedValueException('P
88060 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 20 63 6f lugin.'.$package->getName().'.co
88080 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 20 6e 6f uld.not.be.initialized,.class.no
880a0 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 0a 0a 0a t.found:.'.$class);.}.}.}.......
880c0 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 70 69 56 protected.function.getPluginApiV
880e0 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 66 61 63 ersion().{.return.PluginInterfac
88100 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 0a 0a 70 e::PLUGIN_API_VERSION;.}.......p
88120 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 67 69 6e rivate.function.addPlugin(Plugin
88140 49 6e 74 65 72 66 61 63 65 20 24 70 6c 75 67 69 6e 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e Interface.$plugin).{.if.($this->
88160 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 69 74 io->isDebug()).{.$this->io->writ
88180 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 67 65 74 5f 63 6c 61 eError('Loading.plugin.'.get_cla
881a0 73 73 28 24 70 6c 75 67 69 6e 29 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 6c 75 67 69 6e 73 5b 5d ss($plugin));.}.$this->plugins[]
881c0 20 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 .=.$plugin;.$plugin->activate($t
881e0 68 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 his->composer,.$this->io);..if.(
88200 24 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 $plugin.instanceof.EventSubscrib
88220 65 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 erInterface).{.$this->composer->
88240 67 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 getEventDispatcher()->addSubscri
88260 62 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 ber($plugin);.}.}.............pr
88280 69 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 ivate.function.loadRepository(Re
882a0 70 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 positoryInterface.$repo).{.forea
882c0 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 63 ch.($repo->getPackages().as.$pac
882e0 6b 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 kage).{..if.($package.instanceof
88300 20 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 .AliasPackage).{.continue;.}.if.
88320 28 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 ('composer-plugin'.===.$package-
88340 3e 67 65 74 54 79 70 65 28 29 29 20 7b 0a 24 72 65 71 75 69 72 65 73 43 6f 6d 70 6f 73 65 72 20 >getType()).{.$requiresComposer.
88360 3d 20 6e 75 6c 6c 3b 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 =.null;.foreach.($package->getRe
88380 71 75 69 72 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 20 0a 69 66 20 28 27 63 6f 6d 70 6f quires().as.$link).{..if.('compo
883a0 73 65 72 2d 70 6c 75 67 69 6e 2d 61 70 69 27 20 3d 3d 3d 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 ser-plugin-api'.===.$link->getTa
883c0 72 67 65 74 28 29 29 20 7b 0a 24 72 65 71 75 69 72 65 73 43 6f 6d 70 6f 73 65 72 20 3d 20 24 6c rget()).{.$requiresComposer.=.$l
883e0 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d ink->getConstraint();.break;.}.}
88400 0a 0a 69 66 20 28 21 24 72 65 71 75 69 72 65 73 43 6f 6d 70 6f 73 65 72 29 20 7b 0a 74 68 72 6f ..if.(!$requiresComposer).{.thro
88420 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 50 6c 75 67 69 6e 20 w.new.\RuntimeException("Plugin.
88440 22 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 22 20 69 73 20 6d 69 73 73 69 ".$package->getName().".is.missi
88460 6e 67 20 61 20 72 65 71 75 69 72 65 20 73 74 61 74 65 6d 65 6e 74 20 66 6f 72 20 61 20 76 65 72 ng.a.require.statement.for.a.ver
88480 73 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 2d 61 70 69 20 sion.of.the.composer-plugin-api.
884a0 70 61 63 6b 61 67 65 2e 22 29 3b 0a 7d 0a 0a 24 63 75 72 72 65 6e 74 50 6c 75 67 69 6e 41 70 69 package.");.}..$currentPluginApi
884c0 56 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 6c 75 67 69 6e 41 70 69 56 65 72 Version.=.$this->getPluginApiVer
884e0 73 69 6f 6e 28 29 3b 0a 24 63 75 72 72 65 6e 74 50 6c 75 67 69 6e 41 70 69 43 6f 6e 73 74 72 61 sion();.$currentPluginApiConstra
88500 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 74 68 69 73 int.=.new.Constraint('==',.$this
88520 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 24 63 75 72 72 ->versionParser->normalize($curr
88540 65 6e 74 50 6c 75 67 69 6e 41 70 69 56 65 72 73 69 6f 6e 29 29 3b 0a 0a 69 66 20 28 21 24 72 65 entPluginApiVersion));..if.(!$re
88560 71 75 69 72 65 73 43 6f 6d 70 6f 73 65 72 2d 3e 6d 61 74 63 68 65 73 28 24 63 75 72 72 65 6e 74 quiresComposer->matches($current
88580 50 6c 75 67 69 6e 41 70 69 43 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 PluginApiConstraint)).{.$this->i
885a0 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 54 68 65 20 22 27 20 2e o->writeError('<warning>The."'..
885c0 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 2e 20 27 22 20 70 6c 75 67 69 6e .$package->getName()...'".plugin
885e0 20 77 61 73 20 73 6b 69 70 70 65 64 20 62 65 63 61 75 73 65 20 69 74 20 72 65 71 75 69 72 65 73 .was.skipped.because.it.requires
88600 20 61 20 50 6c 75 67 69 6e 20 41 50 49 20 76 65 72 73 69 6f 6e 20 28 22 27 20 2e 20 24 72 65 71 .a.Plugin.API.version.("'...$req
88620 75 69 72 65 73 43 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 uiresComposer->getPrettyString()
88640 20 2e 20 27 22 29 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 79 6f 75 72 20 ...'").that.does.not.match.your.
88660 43 6f 6d 70 6f 73 65 72 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 28 22 27 20 2e 20 24 63 75 72 Composer.installation.("'...$cur
88680 72 65 6e 74 50 6c 75 67 69 6e 41 70 69 56 65 72 73 69 6f 6e 20 2e 20 27 22 29 2e 20 59 6f 75 20 rentPluginApiVersion...'")..You.
886a0 6d 61 79 20 6e 65 65 64 20 74 6f 20 72 75 6e 20 63 6f 6d 70 6f 73 65 72 20 75 70 64 61 74 65 20 may.need.to.run.composer.update.
886c0 77 69 74 68 20 74 68 65 20 22 2d 2d 6e 6f 2d 70 6c 75 67 69 6e 73 22 20 6f 70 74 69 6f 6e 2e 3c with.the."--no-plugins".option.<
886e0 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 24 74 68 69 73 2d /warning>');.continue;.}..$this-
88700 3e 72 65 67 69 73 74 65 72 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a 20 7d >registerPackage($package);....}
88720 20 65 6c 73 65 69 66 20 28 27 63 6f 6d 70 6f 73 65 72 2d 69 6e 73 74 61 6c 6c 65 72 27 20 3d 3d .elseif.('composer-installer'.==
88740 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 79 70 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e =.$package->getType()).{.$this->
88760 72 65 67 69 73 74 65 72 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d registerPackage($package);.}.}.}
88780 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 63 6f 6c 6c ...........private.function.coll
887a0 65 63 74 44 65 70 65 6e 64 65 6e 63 69 65 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 ectDependencies(Pool.$pool,.arra
887c0 79 20 24 63 6f 6c 6c 65 63 74 65 64 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 y.$collected,.PackageInterface.$
887e0 70 61 63 6b 61 67 65 29 0a 7b 0a 24 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 package).{.$requires.=.array_mer
88800 67 65 28 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 2c 0a 24 70 61 ge(.$package->getRequires(),.$pa
88820 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 52 65 71 75 69 72 65 73 28 29 0a 29 3b 0a 0a 66 6f 72 65 ckage->getDevRequires().);..fore
88840 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 4c 69 6e 6b 29 20 ach.($requires.as.$requireLink).
88860 7b 0a 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 6f 6b {.$requiredPackage.=.$this->look
88880 75 70 49 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 28 24 70 6f 6f 6c 2c 20 24 72 65 71 75 69 upInstalledPackage($pool,.$requi
888a0 72 65 4c 69 6e 6b 29 3b 0a 69 66 20 28 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 20 26 26 reLink);.if.($requiredPackage.&&
888c0 20 21 69 73 73 65 74 28 24 63 6f 6c 6c 65 63 74 65 64 5b 24 72 65 71 75 69 72 65 64 50 61 63 6b .!isset($collected[$requiredPack
888e0 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 29 20 7b 0a 24 63 6f 6c 6c 65 63 74 65 64 5b 24 age->getName()])).{.$collected[$
88900 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 5d 20 3d 20 24 72 requiredPackage->getName()].=.$r
88920 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 3b 0a 24 63 6f 6c 6c 65 63 74 65 64 20 3d 20 24 74 68 equiredPackage;.$collected.=.$th
88940 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 6c 2c 20 24 is->collectDependencies($pool,.$
88960 63 6f 6c 6c 65 63 74 65 64 2c 20 24 72 65 71 75 69 72 65 64 50 61 63 6b 61 67 65 29 3b 0a 7d 0a collected,.$requiredPackage);.}.
88980 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6c 6c 65 63 74 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a }..return.$collected;.}.........
889a0 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 6f 6b 75 70 49 6e 73 74 61 6c ...private.function.lookupInstal
889c0 6c 65 64 50 61 63 6b 61 67 65 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 4c 69 6e 6b 20 24 6c 69 6e ledPackage(Pool.$pool,.Link.$lin
889e0 6b 29 0a 7b 0a 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 6f 76 k).{.$packages.=.$pool->whatProv
88a00 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 6e 6b 2d 3e ides($link->getTarget(),.$link->
88a20 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 28 21 65 6d 70 74 getConstraint());..return.(!empt
88a40 79 28 24 70 61 63 6b 61 67 65 73 29 29 20 3f 20 24 70 61 63 6b 61 67 65 73 5b 30 5d 20 3a 20 6e y($packages)).?.$packages[0].:.n
88a60 75 6c 6c 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 6e ull;.}..........private.function
88a80 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 61 63 65 .getInstallPath(PackageInterface
88aa0 20 24 70 61 63 6b 61 67 65 2c 20 24 67 6c 6f 62 61 6c 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 .$package,.$global.=.false).{.if
88ac0 20 28 21 24 67 6c 6f 62 61 6c 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 70 .(!$global).{.return.$this->comp
88ae0 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 29 2d 3e oser->getInstallationManager()->
88b00 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 0a 72 65 74 getInstallPath($package);.}..ret
88b20 75 72 6e 20 24 74 68 69 73 2d 3e 67 6c 6f 62 61 6c 43 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 49 6e urn.$this->globalComposer->getIn
88b40 73 74 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 stallationManager()->getInstallP
88b60 61 74 68 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 ath($package);.}.}.<?php........
88b80 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 3b 0a 0a ....namespace.Composer\Plugin;..
88ba0 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 65 use.Composer\EventDispatcher\Eve
88bc0 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 69 6c 65 nt;.use.Composer\Util\RemoteFile
88be0 73 79 73 74 65 6d 3b 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 system;.......class.PreFileDownl
88c00 6f 61 64 45 76 65 6e 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 oadEvent.extends.Event.{....priv
88c20 61 74 65 20 24 72 66 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 ate.$rfs;.....private.$processed
88c40 55 72 6c 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 Url;.........public.function.__c
88c60 6f 6e 73 74 72 75 63 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 onstruct($name,.RemoteFilesystem
88c80 20 24 72 66 73 2c 20 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 .$rfs,.$processedUrl).{.parent::
88ca0 5f 5f 63 6f 6e 73 74 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 __construct($name);.$this->rfs.=
88cc0 20 24 72 66 73 3b 0a 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 .$rfs;.$this->processedUrl.=.$pr
88ce0 6f 63 65 73 73 65 64 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 ocessedUrl;.}.......public.funct
88d00 69 6f 6e 20 67 65 74 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 ion.getRemoteFilesystem().{.retu
88d20 72 6e 20 24 74 68 69 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 rn.$this->rfs;.}.......public.fu
88d40 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 6f 74 nction.setRemoteFilesystem(Remot
88d60 65 46 69 6c 65 73 79 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 eFilesystem.$rfs).{.$this->rfs.=
88d80 20 24 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 67 .$rfs;.}.......public.function.g
88da0 65 74 50 72 6f 63 65 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 etProcessedUrl().{.return.$this-
88dc0 3e 70 72 6f 63 65 73 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 >processedUrl;.}.}.<?php........
88de0 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
88e00 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 41 6c 69 61 73 50 61 y;..use.Composer\Package\AliasPa
88e20 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 63 6b ckage;.use.Composer\Package\Pack
88e40 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 61 ageInterface;.use.Composer\Packa
88e60 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 3b 0a 75 73 65 ge\CompletePackageInterface;.use
88e80 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 72 3b 0a .Composer\Semver\VersionParser;.
88ea0 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
88ec0 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 65 72 onstraintInterface;.use.Composer
88ee0 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 0a 0a \Semver\Constraint\Constraint;..
88f00 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 69 6d 70 6c 65 .....class.ArrayRepository.imple
88f20 6d 65 6e 74 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 70 72 6f ments.RepositoryInterface.{..pro
88f40 74 65 63 74 65 64 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 tected.$packages;..public.functi
88f60 6f 6e 20 5f 5f 63 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 on.__construct(array.$packages.=
88f80 20 61 72 72 61 79 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 .array()).{.foreach.($packages.a
88fa0 73 20 24 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 s.$package).{.$this->addPackage(
88fc0 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 20 66 75 6e 63 74 69 $package);.}.}.....public.functi
88fe0 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 74 72 61 69 6e on.findPackage($name,.$constrain
89000 74 29 0a 7b 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 0a t).{.$name.=.strtolower($name);.
89020 0a 69 66 20 28 21 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 .if.(!$constraint.instanceof.Con
89040 73 74 72 61 69 6e 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 straintInterface).{.$versionPars
89060 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 63 6f 6e 73 74 er.=.new.VersionParser();.$const
89080 72 61 69 6e 74 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 6f 6e raint.=.$versionParser->parseCon
890a0 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 66 6f 72 65 61 63 straints($constraint);.}..foreac
890c0 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
890e0 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
89100 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
89120 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
89140 65 72 73 69 6f 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 ersion());.if.($constraint->matc
89160 68 65 73 28 24 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 hes($pkgConstraint)).{.return.$p
89180 61 63 6b 61 67 65 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 ackage;.}.}.}.}.....public.funct
891a0 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 61 ion.findPackages($name,.$constra
891c0 69 6e 74 20 3d 20 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 int.=.null).{...$name.=.strtolow
891e0 65 72 28 24 6e 61 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 er($name);.$packages.=.array();.
89200 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 24 63 .if.(null.!==.$constraint.&&.!$c
89220 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 74 49 onstraint.instanceof.ConstraintI
89240 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 65 77 nterface).{.$versionParser.=.new
89260 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 20 .VersionParser();.$constraint.=.
89280 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 73 $versionParser->parseConstraints
892a0 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 69 73 ($constraint);.}..foreach.($this
892c0 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
892e0 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 28 29 f.($name.===.$package->getName()
89300 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 72 61 ).{.$pkgConstraint.=.new.Constra
89320 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 28 29 int('==',.$package->getVersion()
89340 29 3b 0a 69 66 20 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 );.if.(null.===.$constraint.||.$
89360 63 6f 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 constraint->matches($pkgConstrai
89380 6e 74 29 29 20 7b 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 nt)).{.$packages[].=.$package;.}
893a0 0a 7d 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 0a 0a 0a 70 75 .}.}..return.$packages;.}.....pu
893c0 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 79 2c 20 24 6d 6f blic.function.search($query,.$mo
893e0 64 65 20 3d 20 30 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 de.=.0).{.$regex.=.'{(?:'.implod
89400 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 75 65 72 e('|',.preg_split('{\s+}',.$quer
89420 79 29 29 2e 27 29 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 y)).')}i';..$matches.=.array();.
89440 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 73 28 29 20 61 73 foreach.($this->getPackages().as
89460 20 24 70 61 63 6b 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 .$package).{.$name.=.$package->g
89480 65 74 4e 61 6d 65 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 etName();.if.(isset($matches[$na
894a0 6d 65 5d 29 29 20 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 me])).{.continue;.}.if.(preg_mat
894c0 63 68 28 24 72 65 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 ch($regex,.$name).||.($mode.===.
894e0 73 65 6c 66 3a 3a 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 self::SEARCH_FULLTEXT.&&.$packag
89500 65 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 e.instanceof.CompletePackageInte
89520 72 66 61 63 65 20 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 rface.&&.preg_match($regex,.impl
89540 6f 64 65 28 27 20 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 ode('.',.(array).$package->getKe
89560 79 77 6f 72 64 73 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 ywords())...'.'...$package->getD
89580 65 73 63 72 69 70 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 escription())).).{.$matches[$nam
895a0 65 5d 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 e].=.array(.'name'.=>.$package->
895c0 67 65 74 50 72 65 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 getPrettyName(),.'description'.=
895e0 3e 20 24 70 61 63 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 >.$package->getDescription(),.);
89600 0a 7d 0a 7d 0a 0a 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 .}.}..return.array_values($match
89620 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 68 61 73 50 61 es);.}.....public.function.hasPa
89640 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 29 ckage(PackageInterface.$package)
89660 0a 7b 0a 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 .{.$packageId.=.$package->getUni
89680 71 75 65 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 queName();..foreach.($this->getP
896a0 61 63 6b 61 67 65 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 ackages().as.$repoPackage).{.if.
896c0 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 65 2d 3e 67 65 ($packageId.===.$repoPackage->ge
896e0 74 55 6e 69 71 75 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 tUniqueName()).{.return.true;.}.
89700 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 75 62 6c 69 63 20 }..return.false;.}.......public.
89720 66 75 6e 63 74 69 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 function.addPackage(PackageInter
89740 66 61 63 65 20 24 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 face.$package).{.if.(null.===.$t
89760 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
89780 7a 65 28 29 3b 0a 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 ze();.}.$package->setRepository(
897a0 24 74 68 69 73 29 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 $this);.$this->packages[].=.$pac
897c0 6b 61 67 65 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 kage;..if.($package.instanceof.A
897e0 6c 69 61 73 50 61 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 liasPackage).{.$aliasedPackage.=
89800 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 69 66 20 28 6e 75 6c .$package->getAliasOf();.if.(nul
89820 6c 20 3d 3d 3d 20 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 l.===.$aliasedPackage->getReposi
89840 74 6f 72 79 28 29 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 tory()).{.$this->addPackage($ali
89860 61 73 65 64 50 61 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 asedPackage);.}.}.}..protected.f
89880 75 6e 63 74 69 6f 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 unction.createAliasPackage(Packa
898a0 67 65 49 6e 74 65 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 geInterface.$package,.$alias,.$p
898c0 72 65 74 74 79 41 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 rettyAlias).{.return.new.AliasPa
898e0 63 6b 61 67 65 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 ckage($package.instanceof.AliasP
89900 61 63 6b 61 67 65 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 ackage.?.$package->getAliasOf().
89920 3a 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 6c 69 61 73 :.$package,.$alias,.$prettyAlias
89940 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 72 65 6d 6f 76 );.}.......public.function.remov
89960 65 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 ePackage(PackageInterface.$packa
89980 67 65 29 0a 7b 0a 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 ge).{.$packageId.=.$package->get
899a0 55 6e 69 71 75 65 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 UniqueName();..foreach.($this->g
899c0 65 74 50 61 63 6b 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 etPackages().as.$key.=>.$repoPac
899e0 6b 61 67 65 29 20 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 kage).{.if.($packageId.===.$repo
89a00 50 61 63 6b 61 67 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 Package->getUniqueName()).{.arra
89a20 79 5f 73 70 6c 69 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 y_splice($this->packages,.$key,.
89a40 31 29 3b 0a 0a 72 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 1);..return;.}.}.}.....public.fu
89a60 6e 63 74 69 6f 6e 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 nction.getPackages().{.if.(null.
89a80 3d 3d 3d 20 24 74 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 ===.$this->packages).{.$this->in
89aa0 69 74 69 61 6c 69 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 itialize();.}..return.$this->pac
89ac0 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 20 63 kages;.}.......public.function.c
89ae0 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
89b00 6b 61 67 65 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 kages);.}.....protected.function
89b20 20 69 6e 69 74 69 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 .initialize().{.$this->packages.
89b40 3d 20 61 72 72 61 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 =.array();.}.}.<?php............
89b60 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 0a namespace.Composer\Repository;..
89b80 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 65 use.Composer\IO\IOInterface;.use
89ba0 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
89bc0 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 72 poser\Package\Loader\ArrayLoader
89be0 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 4c 6f ;.use.Composer\Package\Loader\Lo
89c00 61 64 65 72 49 6e 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 aderInterface;.....class.Artifac
89c20 74 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 69 74 tRepository.extends.ArrayReposit
89c40 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 65 70 6f 73 ory.implements.ConfigurableRepos
89c60 69 74 6f 72 79 49 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 itoryInterface.{..protected.$loa
89c80 64 65 72 3b 0a 0a 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 der;..protected.$lookup;.protect
89ca0 65 64 20 24 72 65 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 ed.$repoConfig;..public.function
89cc0 20 5f 5f 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 .__construct(array.$repoConfig,.
89ce0 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 69 66 20 28 21 65 78 74 65 6e 73 69 6f IOInterface.$io).{.if.(!extensio
89d00 6e 5f 6c 6f 61 64 65 64 28 27 7a 69 70 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 n_loaded('zip')).{.throw.new.\Ru
89d20 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 61 72 74 69 66 61 63 74 20 72 65 70 ntimeException('The.artifact.rep
89d40 6f 73 69 74 6f 72 79 20 72 65 71 75 69 72 65 73 20 50 48 50 5c 27 73 20 7a 69 70 20 65 78 74 65 ository.requires.PHP\'s.zip.exte
89d60 6e 73 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 nsion');.}..$this->loader.=.new.
89d80 41 72 72 61 79 4c 6f 61 64 65 72 28 29 3b 0a 24 74 68 69 73 2d 3e 6c 6f 6f 6b 75 70 20 3d 20 24 ArrayLoader();.$this->lookup.=.$
89da0 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 69 6f 20 3d 20 24 repoConfig['url'];.$this->io.=.$
89dc0 69 6f 3b 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 io;.$this->repoConfig.=.$repoCon
89de0 66 69 67 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 fig;.}..public.function.getRepoC
89e00 6f 6e 66 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 onfig().{.return.$this->repoConf
89e20 69 67 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 ig;.}..protected.function.initia
89e40 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();..
89e60 24 74 68 69 73 2d 3e 73 63 61 6e 44 69 72 65 63 74 6f 72 79 28 24 74 68 69 73 2d 3e 6c 6f 6f 6b $this->scanDirectory($this->look
89e80 75 70 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 63 61 6e 44 69 72 up);.}..private.function.scanDir
89ea0 65 63 74 6f 72 79 28 24 70 61 74 68 29 0a 7b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 69 6f 3b ectory($path).{.$io.=.$this->io;
89ec0 0a 0a 24 64 69 72 65 63 74 6f 72 79 20 3d 20 6e 65 77 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 ..$directory.=.new.\RecursiveDir
89ee0 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 28 24 70 61 74 68 2c 20 5c 52 65 63 75 72 73 69 76 65 ectoryIterator($path,.\Recursive
89f00 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 5f 53 59 4d 4c 49 4e DirectoryIterator::FOLLOW_SYMLIN
89f20 4b 53 29 3b 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 KS);.$iterator.=.new.\RecursiveI
89f40 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 24 72 65 teratorIterator($directory);.$re
89f60 67 65 78 20 3d 20 6e 65 77 20 5c 52 65 67 65 78 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 gex.=.new.\RegexIterator($iterat
89f80 6f 72 2c 20 27 2f 5e 2e 2b 5c 2e 28 7a 69 70 7c 70 68 61 72 29 24 2f 69 27 29 3b 0a 66 6f 72 65 or,.'/^.+\.(zip|phar)$/i');.fore
89fa0 61 63 68 20 28 24 72 65 67 65 78 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 0a 69 66 20 28 21 24 66 ach.($regex.as.$file).{..if.(!$f
89fc0 69 6c 65 2d 3e 69 73 46 69 6c 65 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 ile->isFile()).{.continue;.}..$p
89fe0 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 49 6e 66 6f 72 ackage.=.$this->getComposerInfor
8a000 6d 61 74 69 6f 6e 28 24 66 69 6c 65 29 3b 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 29 20 7b 0a mation($file);.if.(!$package).{.
8a020 69 66 20 28 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 if.($io->isVerbose()).{.$io->wri
8a040 74 65 45 72 72 6f 72 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 teError("File.<comment>{$file->g
8a060 65 74 42 61 73 65 6e 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 etBasename()}</comment>.doesn't.
8a080 73 65 65 6d 20 74 6f 20 68 6f 6c 64 20 61 20 70 61 63 6b 61 67 65 22 29 3b 0a 7d 0a 63 6f 6e 74 seem.to.hold.a.package");.}.cont
8a0a0 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b inue;.}..if.($io->isVerbose()).{
8a0c0 0a 24 74 65 6d 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 .$template.=.'Found.package.<inf
8a0e0 6f 3e 25 73 3c 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 o>%s</info>.(<comment>%s</commen
8a100 74 3e 29 20 69 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 t>).in.file.<info>%s</info>';.$i
8a120 6f 2d 3e 77 72 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 o->writeError(sprintf($template,
8a140 20 24 70 61 63 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 .$package->getName(),.$package->
8a160 67 65 74 50 72 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 getPrettyVersion(),.$file->getBa
8a180 73 65 6e 61 6d 65 28 29 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 sename()));.}..$this->addPackage
8a1a0 28 24 70 61 63 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 ($package);.}.}.........private.
8a1c0 66 75 6e 63 74 69 6f 6e 20 6c 6f 63 61 74 65 46 69 6c 65 28 5c 5a 69 70 41 72 63 68 69 76 65 20 function.locateFile(\ZipArchive.
8a1e0 24 7a 69 70 2c 20 24 66 69 6c 65 6e 61 6d 65 29 0a 7b 0a 24 69 6e 64 65 78 4f 66 53 68 6f 72 74 $zip,.$filename).{.$indexOfShort
8a200 65 73 74 4d 61 74 63 68 20 3d 20 66 61 6c 73 65 3b 0a 24 6c 65 6e 67 74 68 4f 66 53 68 6f 72 74 estMatch.=.false;.$lengthOfShort
8a220 65 73 74 4d 61 74 63 68 20 3d 20 2d 31 3b 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 24 69 20 estMatch.=.-1;..for.($i.=.0;.$i.
8a240 3c 20 24 7a 69 70 2d 3e 6e 75 6d 46 69 6c 65 73 3b 20 24 69 2b 2b 29 20 7b 0a 24 73 74 61 74 20 <.$zip->numFiles;.$i++).{.$stat.
8a260 3d 20 24 7a 69 70 2d 3e 73 74 61 74 49 6e 64 65 78 28 24 69 29 3b 0a 69 66 20 28 73 74 72 63 6d =.$zip->statIndex($i);.if.(strcm
8a280 70 28 62 61 73 65 6e 61 6d 65 28 24 73 74 61 74 5b 27 6e 61 6d 65 27 5d 29 2c 20 24 66 69 6c 65 p(basename($stat['name']),.$file
8a2a0 6e 61 6d 65 29 20 3d 3d 3d 20 30 29 20 7b 0a 24 64 69 72 65 63 74 6f 72 79 4e 61 6d 65 20 3d 20 name).===.0).{.$directoryName.=.
8a2c0 64 69 72 6e 61 6d 65 28 24 73 74 61 74 5b 27 6e 61 6d 65 27 5d 29 3b 0a 69 66 20 28 24 64 69 72 dirname($stat['name']);.if.($dir
8a2e0 65 63 74 6f 72 79 4e 61 6d 65 20 3d 3d 20 27 2e 27 29 20 7b 0a 0a 20 0a 20 72 65 74 75 72 6e 20 ectoryName.==.'.').{.....return.
8a300 24 69 3b 0a 7d 0a 0a 69 66 20 28 73 74 72 70 6f 73 28 24 64 69 72 65 63 74 6f 72 79 4e 61 6d 65 $i;.}..if.(strpos($directoryName
8a320 2c 20 27 5c 5c 27 29 20 21 3d 3d 20 66 61 6c 73 65 20 7c 7c 0a 73 74 72 70 6f 73 28 24 64 69 72 ,.'\\').!==.false.||.strpos($dir
8a340 65 63 74 6f 72 79 4e 61 6d 65 2c 20 27 2f 27 29 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 0a 20 ectoryName,.'/').!==.false).{...
8a360 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 73 continue;.}..$length.=.strlen($s
8a380 74 61 74 5b 27 6e 61 6d 65 27 5d 29 3b 0a 69 66 20 28 24 69 6e 64 65 78 4f 66 53 68 6f 72 74 65 tat['name']);.if.($indexOfShorte
8a3a0 73 74 4d 61 74 63 68 20 3d 3d 20 66 61 6c 73 65 20 7c 7c 20 24 6c 65 6e 67 74 68 20 3c 20 24 6c stMatch.==.false.||.$length.<.$l
8a3c0 65 6e 67 74 68 4f 66 53 68 6f 72 74 65 73 74 4d 61 74 63 68 29 20 7b 0a 0a 20 24 63 6f 6e 74 65 engthOfShortestMatch).{...$conte
8a3e0 6e 74 73 20 3d 20 24 7a 69 70 2d 3e 67 65 74 46 72 6f 6d 49 6e 64 65 78 28 24 69 29 3b 0a 69 66 nts.=.$zip->getFromIndex($i);.if
8a400 20 28 24 63 6f 6e 74 65 6e 74 73 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 69 6e 64 65 78 4f .($contents.!==.false).{.$indexO
8a420 66 53 68 6f 72 74 65 73 74 4d 61 74 63 68 20 3d 20 24 69 3b 0a 24 6c 65 6e 67 74 68 4f 66 53 68 fShortestMatch.=.$i;.$lengthOfSh
8a440 6f 72 74 65 73 74 4d 61 74 63 68 20 3d 20 24 6c 65 6e 67 74 68 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a ortestMatch.=.$length;.}.}.}.}..
8a460 72 65 74 75 72 6e 20 24 69 6e 64 65 78 4f 66 53 68 6f 72 74 65 73 74 4d 61 74 63 68 3b 0a 7d 0a return.$indexOfShortestMatch;.}.
8a480 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 .private.function.getComposerInf
8a4a0 6f 72 6d 61 74 69 6f 6e 28 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 20 24 66 69 6c 65 29 0a 7b 0a 24 ormation(\SplFileInfo.$file).{.$
8a4c0 7a 69 70 20 3d 20 6e 65 77 20 5c 5a 69 70 41 72 63 68 69 76 65 28 29 3b 0a 24 7a 69 70 2d 3e 6f zip.=.new.\ZipArchive();.$zip->o
8a4e0 70 65 6e 28 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 pen($file->getPathname());..if.(
8a500 30 20 3d 3d 20 24 7a 69 70 2d 3e 6e 75 6d 46 69 6c 65 73 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 0.==.$zip->numFiles).{.return.fa
8a520 6c 73 65 3b 0a 7d 0a 0a 24 66 6f 75 6e 64 46 69 6c 65 49 6e 64 65 78 20 3d 20 24 74 68 69 73 2d lse;.}..$foundFileIndex.=.$this-
8a540 3e 6c 6f 63 61 74 65 46 69 6c 65 28 24 7a 69 70 2c 20 27 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e >locateFile($zip,.'composer.json
8a560 27 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 66 6f 75 6e 64 46 69 6c 65 49 6e 64 65 ');.if.(false.===.$foundFileInde
8a580 78 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 66 69 67 75 72 61 x).{.return.false;.}..$configura
8a5a0 74 69 6f 6e 46 69 6c 65 4e 61 6d 65 20 3d 20 24 7a 69 70 2d 3e 67 65 74 4e 61 6d 65 49 6e 64 65 tionFileName.=.$zip->getNameInde
8a5c0 78 28 24 66 6f 75 6e 64 46 69 6c 65 49 6e 64 65 78 29 3b 0a 0a 24 63 6f 6d 70 6f 73 65 72 46 69 x($foundFileIndex);..$composerFi
8a5e0 6c 65 20 3d 20 22 7a 69 70 3a 2f 2f 7b 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 le.=."zip://{$file->getPathname(
8a600 29 7d 23 24 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 46 69 6c 65 4e 61 6d 65 22 3b 0a 24 6a 73 6f )}#$configurationFileName";.$jso
8a620 6e 20 3d 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 n.=.file_get_contents($composerF
8a640 69 6c 65 29 3b 0a 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 ile);..$package.=.JsonFile::pars
8a660 65 4a 73 6f 6e 28 24 6a 73 6f 6e 2c 20 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 29 3b 0a 24 70 61 eJson($json,.$composerFile);.$pa
8a680 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 3d 3e ckage['dist'].=.array(.'type'.=>
8a6a0 20 27 7a 69 70 27 2c 0a 27 75 72 6c 27 20 3d 3e 20 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 6e .'zip',.'url'.=>.$file->getPathn
8a6c0 61 6d 65 28 29 2c 0a 27 73 68 61 73 75 6d 27 20 3d 3e 20 73 68 61 31 5f 66 69 6c 65 28 24 66 69 ame(),.'shasum'.=>.sha1_file($fi
8a6e0 6c 65 2d 3e 67 65 74 52 65 61 6c 50 61 74 68 28 29 29 2c 0a 29 3b 0a 0a 24 70 61 63 6b 61 67 65 le->getRealPath()),.);..$package
8a700 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 29 .=.$this->loader->load($package)
8a720 3b 0a 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 ;..return.$package;.}.}.<?php...
8a740 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
8a760 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 67 65 5c 4c 6f sitory;..use.Composer\Package\Lo
8a780 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 72 5c 50 ader\ArrayLoader;.use.Composer\P
8a7a0 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
8a7c0 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.
8a7e0 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 72 3b 0a 75 Composer\Semver\VersionParser;.u
8a800 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 50 se.Composer\DependencyResolver\P
8a820 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 69 6c 65 3b ool;.use.Composer\Json\JsonFile;
8a840 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 73 65 .use.Composer\Cache;.use.Compose
8a860 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 6f 72 79 3b 0a r\Config;.use.Composer\Factory;.
8a880 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 65 use.Composer\IO\IOInterface;.use
8a8a0 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;
8a8c0 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 74 .use.Composer\Plugin\PluginEvent
8a8e0 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 6c 65 44 6f s;.use.Composer\Plugin\PreFileDo
8a900 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 65 6e 74 44 wnloadEvent;.use.Composer\EventD
8a920 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
8a940 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 72 omposer\Semver\Constraint\Constr
8a960 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 6d 76 aintInterface;.use.Composer\Semv
8a980 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 63 6c er\Constraint\Constraint;.....cl
8a9a0 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 20 41 ass.ComposerRepository.extends.A
8a9c0 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 69 67 rrayRepository.implements.Config
8a9e0 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 6f 74 urableRepositoryInterface.{.prot
8aa00 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 43 6f ected.$config;.protected.$repoCo
8aa20 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 65 63 nfig;.protected.$options;.protec
8aa40 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 70 72 ted.$url;.protected.$baseUrl;.pr
8aa60 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 72 6f otected.$io;.protected.$rfs;.pro
8aa80 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 66 79 tected.$cache;.protected.$notify
8aaa0 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 74 65 Url;.protected.$searchUrl;.prote
8aac0 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 6f 74 cted.$hasProviders.=.false;.prot
8aae0 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 20 24 ected.$providersUrl;.protected.$
8ab00 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 72 6f lazyProvidersUrl;.protected.$pro
8ab20 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 64 65 viderListing;.protected.$provide
8ab40 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 64 65 rs.=.array();.protected.$provide
8ab60 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 6c 6f rsByUid.=.array();.protected.$lo
8ab80 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 70 72 ader;.protected.$rootAliases;.pr
8aba0 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 61 6c otected.$allowSslDowngrade.=.fal
8abc0 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 3b 0a se;.protected.$eventDispatcher;.
8abe0 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 65 63 protected.$sourceMirrors;.protec
8ac00 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 72 61 ted.$distMirrors;.private.$degra
8ac20 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 44 61 dedMode.=.false;.private.$rootDa
8ac40 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 63 74 ta;..public.function.__construct
8ac60 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 65 20 (array.$repoConfig,.IOInterface.
8ac80 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 61 74 $io,.Config.$config,.EventDispat
8aca0 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 52 65 cher.$eventDispatcher.=.null,.Re
8acc0 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 69 66 moteFilesystem.$rfs.=.null).{.if
8ace0 20 28 21 70 72 65 67 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 .(!preg_match('{^[\w.]+\??://}',
8ad00 20 24 72 65 70 6f 43 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 .$repoConfig['url'])).{...$repoC
8ad20 6f 6e 66 69 67 5b 27 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 onfig['url'].=.'http://'.$repoCo
8ad40 6e 66 69 67 5b 27 75 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 nfig['url'];.}.$repoConfig['url'
8ad60 5d 20 3d 20 72 74 72 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 ].=.rtrim($repoConfig['url'],.'/
8ad80 27 29 3b 0a 0a 69 66 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 ');..if.('https?'.===.substr($re
8ada0 70 6f 43 6f 6e 66 69 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 poConfig['url'],.0,.6)).{.$repoC
8adc0 6f 6e 66 69 67 5b 27 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 onfig['url'].=.(extension_loaded
8ade0 28 27 6f 70 65 6e 73 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 ('openssl').?.'https'.:.'http').
8ae00 2e 20 73 75 62 73 74 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 ..substr($repoConfig['url'],.6);
8ae20 0a 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 .}..$urlBits.=.parse_url($repoCo
8ae40 6e 66 69 67 5b 27 75 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 nfig['url']);.if.($urlBits.===.f
8ae60 61 6c 73 65 20 7c 7c 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 alse.||.empty($urlBits['scheme']
8ae80 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
8aea0 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 66 6f 72 20 xception('Invalid.url.given.for.
8aec0 43 6f 6d 70 6f 73 65 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 Composer.repository:.'.$repoConf
8aee0 69 67 5b 27 75 72 6c 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 ig['url']);.}..if.(!isset($repoC
8af00 6f 6e 66 69 67 5b 27 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 onfig['options'])).{.$repoConfig
8af20 5b 27 6f 70 74 69 6f 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 ['options'].=.array();.}.if.(iss
8af40 65 74 28 24 72 65 70 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 et($repoConfig['allow_ssl_downgr
8af60 61 64 65 27 5d 29 20 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 ade']).&&.true.===.$repoConfig['
8af80 61 6c 6c 6f 77 5f 73 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 allow_ssl_downgrade']).{.$this->
8afa0 61 6c 6c 6f 77 53 73 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 allowSslDowngrade.=.true;.}..$th
8afc0 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 6f 70 74 is->config.=.$config;.$this->opt
8afe0 69 6f 6e 73 20 3d 20 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 ions.=.$repoConfig['options'];.$
8b000 74 68 69 73 2d 3e 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 this->url.=.$repoConfig['url'];.
8b020 24 74 68 69 73 2d 3e 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 $this->baseUrl.=.rtrim(preg_repl
8b040 61 63 65 28 27 7b 5e 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 ace('{^(.*)(?:/[^/\\]+.json)?(?:
8b060 5b 3f 23 5d 2e 2a 29 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 [?#].*)?$}',.'$1',.$this->url),.
8b080 27 2f 27 29 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 63 61 '/');.$this->io.=.$io;.$this->ca
8b0a0 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 66 69 67 2d 3e 67 65 che.=.new.Cache($io,.$config->ge
8b0c0 74 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 t('cache-repo-dir').'/'.preg_rep
8b0e0 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 24 74 68 69 73 lace('{[^a-z0-9.]}i',.'-',.$this
8b100 2d 3e 75 72 6c 29 2c 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 ->url),.'a-z0-9.$');.$this->load
8b120 65 72 20 3d 20 6e 65 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 er.=.new.ArrayLoader();.if.($rfs
8b140 20 26 26 20 24 74 68 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 .&&.$this->options).{.$rfs.=.clo
8b160 6e 65 20 24 72 66 73 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 ne.$rfs;.$rfs->setOptions($this-
8b180 3e 6f 70 74 69 6f 6e 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 >options);.}.$this->rfs.=.$rfs.?
8b1a0 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
8b1c0 6d 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 2c 20 24 74 68 69 m($this->io,.$this->config,.$thi
8b1e0 73 2d 3e 6f 70 74 69 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 s->options);.$this->eventDispatc
8b200 68 65 72 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 her.=.$eventDispatcher;.$this->r
8b220 65 70 6f 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 epoConfig.=.$repoConfig;.}..publ
8b240 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 0a 7b 0a 72 65 ic.function.getRepoConfig().{.re
8b260 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 70 75 62 6c 69 turn.$this->repoConfig;.}..publi
8b280 63 20 66 75 6e 63 74 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 c.function.setRootAliases(array.
8b2a0 24 72 6f 6f 74 41 6c 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 $rootAliases).{.$this->rootAlias
8b2c0 65 73 20 3d 20 24 72 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 es.=.$rootAliases;.}.....public.
8b2e0 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 24 63 6f 6e function.findPackage($name,.$con
8b300 73 74 72 61 69 6e 74 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 straint).{.if.(!$this->hasProvid
8b320 65 72 73 28 29 29 20 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 ers()).{.return.parent::findPack
8b340 61 67 65 28 24 6e 61 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 age($name,.$constraint);.}..$nam
8b360 65 20 3d 20 73 74 72 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 e.=.strtolower($name);.if.(!$con
8b380 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 74 49 6e 74 straint.instanceof.ConstraintInt
8b3a0 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 65 77 20 56 erface).{.$versionParser.=.new.V
8b3c0 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 20 24 76 ersionParser();.$constraint.=.$v
8b3e0 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 73 28 24 ersionParser->parseConstraints($
8b400 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 69 73 2d 3e constraint);.}..foreach.($this->
8b420 67 65 74 50 72 6f 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 getProviderNames().as.$providerN
8b440 61 6d 65 29 20 7b 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 ame).{.if.($name.===.$providerNa
8b460 6d 65 29 20 7b 0a 24 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 me).{.$packages.=.$this->whatPro
8b480 76 69 64 65 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 vides(new.Pool('dev'),.$provider
8b4a0 4e 61 6d 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 20 24 70 61 Name);.foreach.($packages.as.$pa
8b4c0 63 6b 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 ckage).{.if.($name.===.$package-
8b4e0 3e 67 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 >getName()).{.$pkgConstraint.=.n
8b500 65 77 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 ew.Constraint('==',.$package->ge
8b520 74 56 65 72 73 69 6f 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 tVersion());.if.($constraint->ma
8b540 74 63 68 65 73 28 24 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 tches($pkgConstraint)).{.return.
8b560 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 $package;.}.}.}.}.}.}.....public
8b580 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
8b5a0 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->
8b5c0 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:
8b5e0 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
8b600 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)
8b620 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.&&.!
8b640 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
8b660 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
8b680 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.
8b6a0 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
8b6c0 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.=.
8b6e0 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
8b700 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).{
8b720 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).{.
8b740 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
8b760 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
8b780 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
8b7a0 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
8b7c0 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
8b7e0 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
8b800 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
8b820 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
8b840 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
8b860 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 ckage;.}.}.}.}.}..return.$packag
8b880 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 74 50 61 63 6b 61 67 es;.}..public.function.getPackag
8b8a0 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 69 64 65 72 73 28 29 es().{.if.($this->hasProviders()
8b8c0 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 27 43 ).{.throw.new.\LogicException('C
8b8e0 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 20 68 61 76 65 20 70 omposer.repositories.that.have.p
8b900 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 20 63 6f 6d 70 6c 65 roviders.can.not.load.the.comple
8b920 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 67 65 74 50 72 6f 76 te.list.of.packages,.use.getProv
8b940 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 72 65 74 75 72 6e 20 iderNames.instead.');.}..return.
8b960 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 0a 0a 0a 0a 70 75 62 parent::getPackages();.}.....pub
8b980 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
8b9a0 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 65 72 76 65 72 46 69 e.=.0).{.$this->loadRootServerFi
8b9c0 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 72 6c 20 26 26 20 24 le();..if.($this->searchUrl.&&.$
8b9e0 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 4c 54 45 58 54 29 20 mode.===.self::SEARCH_FULLTEXT).
8ba00 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 65 72 79 25 27 2c 20 {.$url.=.str_replace('%query%',.
8ba20 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 3b 0a 0a 24 68 6f 73 $query,.$this->searchUrl);..$hos
8ba40 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 48 50 5f 55 52 4c 5f tname.=.parse_url($url,.PHP_URL_
8ba60 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 68 69 73 2d 3e 72 66 HOST).?:.$url;.$json.=.$this->rf
8ba80 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 20 24 75 72 6c 2c 20 s->getContents($hostname,.$url,.
8baa0 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 6c 65 3a 3a 70 61 72 false);.$results.=.JsonFile::par
8bac0 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 75 72 6e 20 24 72 65 seJson($json,.$url);..return.$re
8bae0 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 24 74 68 69 73 2d 3e sults['results'];.}..if.($this->
8bb00 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 73 20 3d 20 61 72 72 hasProviders()).{.$results.=.arr
8bb20 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 6c 6f 64 65 28 27 7c ay();.$regex.=.'{(?:'.implode('|
8bb40 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 75 65 72 79 29 29 2e ',.preg_split('{\s+}',.$query)).
8bb60 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 65 74 50 72 6f 76 69 ')}i';..foreach.($this->getProvi
8bb80 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 20 28 70 72 65 67 5f derNames().as.$name).{.if.(preg_
8bba0 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 72 65 73 75 6c 74 73 match($regex,.$name)).{.$results
8bbc0 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 65 29 3b 0a 7d 0a 7d [].=.array('name'.=>.$name);.}.}
8bbe0 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 75 72 6e 20 70 61 72 ..return.$results;.}..return.par
8bc00 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 29 3b 0a 7d 0a 0a 70 ent::search($query,.$mode);.}..p
8bc20 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 72 4e 61 6d 65 73 28 ublic.function.getProviderNames(
8bc40 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();
8bc60 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 64 65 72 4c 69 ..if.(null.===.$this->providerLi
8bc80 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 72 4c 69 73 74 sting).{.$this->loadProviderList
8bca0 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 69 6c 65 28 29 ings($this->loadRootServerFile()
8bcc0 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 69 64 65 72 73 55 72 );.}..if.($this->lazyProvidersUr
8bce0 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 0a 69 66 20 28 24 74 l).{...return.array();.}..if.($t
8bd00 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 72 6e 20 61 72 72 61 his->providersUrl).{.return.arra
8bd20 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 74 69 6e 67 29 3b 0a y_keys($this->providerListing);.
8bd40 7d 0a 0a 0a 20 24 70 72 6f 76 69 64 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 }....$providers.=.array();.forea
8bd60 63 68 20 28 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 ch.(array_keys($this->providerLi
8bd80 73 74 69 6e 67 29 20 61 73 20 24 70 72 6f 76 69 64 65 72 29 20 7b 0a 24 70 72 6f 76 69 64 65 72 sting).as.$provider).{.$provider
8bda0 73 5b 5d 20 3d 20 73 75 62 73 74 72 28 24 70 72 6f 76 69 64 65 72 2c 20 32 2c 20 2d 35 29 3b 0a s[].=.substr($provider,.2,.-5);.
8bdc0 7d 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 76 69 64 65 72 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 }..return.$providers;.}..protect
8bde0 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 54 72 61 6e ed.function.configurePackageTran
8be00 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 65 20 24 70 sportOptions(PackageInterface.$p
8be20 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 3e 67 65 74 ackage).{.foreach.($package->get
8be40 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 72 70 6f 73 DistUrls().as.$url).{.if.(strpos
8be60 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 29 20 7b 0a ($url,.$this->baseUrl).===.0).{.
8be80 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 73 28 24 74 $package->setTransportOptions($t
8bea0 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 7d 0a 0a 70 his->options);..return;.}.}.}..p
8bec0 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 29 0a 7b 0a ublic.function.hasProviders().{.
8bee0 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 0a 0a 72 65 $this->loadRootServerFile();..re
8bf00 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 0a 70 75 62 turn.$this->hasProviders;.}..pub
8bf20 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 28 29 0a 7b lic.function.resetPackageIds().{
8bf40 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 55 69 64 20 .foreach.($this->providersByUid.
8bf60 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 69 6e 73 74 as.$package).{.if.($package.inst
8bf80 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 65 2d anceof.AliasPackage).{.$package-
8bfa0 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 24 70 61 63 >getAliasOf()->setId(-1);.}.$pac
8bfc0 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 20 66 75 6e kage->setId(-1);.}.}..public.fun
8bfe0 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 6c 2c 20 24 ction.whatProvides(Pool.$pool,.$
8c000 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 76 69 64 65 name).{.if.(isset($this->provide
8c020 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 70 72 6f 76 rs[$name])).{.return.$this->prov
8c040 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 6d 61 74 63 iders[$name];.}....if.(preg_matc
8c060 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 52 4d 5f 50 h(PlatformRepository::PLATFORM_P
8c080 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 6f 6f 74 5f ACKAGE_REGEX,.$name).||.'__root_
8c0a0 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 28 29 3b 0a _'.===.$name).{.return.array();.
8c0c0 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 64 65 72 4c }..if.(null.===.$this->providerL
8c0e0 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 72 4c 69 73 isting).{.$this->loadProviderLis
8c100 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 69 6c 65 28 tings($this->loadRootServerFile(
8c120 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 69 64 65 72 73 55 ));.}..if.($this->lazyProvidersU
8c140 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 69 73 74 rl.&&.!isset($this->providerList
8c160 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 24 75 72 ing[$name])).{.$hash.=.null;.$ur
8c180 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 24 6e 61 l.=.str_replace('%package%',.$na
8c1a0 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 0a 24 63 me,.$this->lazyProvidersUrl);.$c
8c1c0 61 63 68 65 4b 65 79 20 3d 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 acheKey.=.false;.}.elseif.($this
8c1e0 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 73 73 65 74 28 24 ->providersUrl).{...if.(!isset($
8c200 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 29 29 20 7b this->providerListing[$name])).{
8c220 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 3d 20 24 74 68 69 .return.array();.}..$hash.=.$thi
8c240 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 27 73 68 61 32 35 s->providerListing[$name]['sha25
8c260 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 72 61 79 28 27 25 6'];.$url.=.str_replace(array('%
8c280 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 79 28 24 6e 61 6d package%',.'%hash%'),.array($nam
8c2a0 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 73 55 72 6c 29 3b e,.$hash),.$this->providersUrl);
8c2c0 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($
8c2e0 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 20 65 6c 73 65 20 name,.'/',.'$').'.json';.}.else.
8c300 7b 0a 0a 20 24 75 72 6c 20 3d 20 27 70 2f 27 2e 24 6e 61 6d 65 2e 27 2e 6a 73 6f 6e 27 3b 0a 0a {...$url.=.'p/'.$name.'.json';..
8c320 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 4c 69 73 74 ..if.(!isset($this->providerList
8c340 69 6e 67 5b 24 75 72 6c 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a ing[$url])).{.return.array();.}.
8c360 24 68 61 73 68 20 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 $hash.=.$this->providerListing[$
8c380 75 72 6c 5d 5b 27 73 68 61 32 35 36 27 5d 3b 0a 24 63 61 63 68 65 4b 65 79 20 3d 20 6e 75 6c 6c url]['sha256'];.$cacheKey.=.null
8c3a0 3b 0a 7d 0a 0a 69 66 20 28 24 63 61 63 68 65 4b 65 79 20 26 26 20 24 74 68 69 73 2d 3e 63 61 63 ;.}..if.($cacheKey.&&.$this->cac
8c3c0 68 65 2d 3e 73 68 61 32 35 36 28 24 63 61 63 68 65 4b 65 79 29 20 3d 3d 3d 20 24 68 61 73 68 29 he->sha256($cacheKey).===.$hash)
8c3e0 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 74 68 69 73 .{.$packages.=.json_decode($this
8c400 2d 3e 63 61 63 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 ->cache->read($cacheKey),.true);
8c420 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 66 .}.else.{...$packages.=.$this->f
8c440 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 24 68 61 73 68 29 etchFile($url,.$cacheKey,.$hash)
8c460 3b 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
8c480 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
8c4a0 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.(
8c4c0 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
8c4e0 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
8c500 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
8c520 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
8c540 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
8c560 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
8c580 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
8c5a0 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
8c5c0 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
8c5e0 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
8c600 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
8c620 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
8c640 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
8c660 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']]
8c680 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
8c6a0 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->
8c6c0 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'].'
8c6e0 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
8c700 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'].=.$
8c720 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
8c740 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.(
8c760 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
8c780 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
8c7a0 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
8c7c0 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;.}....
8c7e0 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(
8c800 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 50 61 63 6b $version,.'Composer\Package\Pack
8c820 61 67 65 27 29 3b 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 age');.$package->setRepository($
8c840 74 68 69 73 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 this);..if.($package.instanceof.
8c860 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 61 6c 69 61 73 65 64 20 3d 20 24 70 61 63 6b AliasPackage).{.$aliased.=.$pack
8c880 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 24 61 6c 69 61 73 65 64 2d 3e 73 65 74 age->getAliasOf();.$aliased->set
8c8a0 52 65 70 6f 73 69 74 6f 72 79 28 24 74 68 69 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 Repository($this);..$this->provi
8c8c0 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 20 3d 20 24 ders[$name][$version['uid']].=.$
8c8e0 61 6c 69 61 73 65 64 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 5b 24 6e 61 6d 65 5d aliased;.$this->providers[$name]
8c900 5b 24 76 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 2e 27 2d 61 6c 69 61 73 27 5d 20 3d 20 24 70 61 [$version['uid'].'-alias'].=.$pa
8c920 63 6b 61 67 65 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 42 79 55 69 64 5b ckage;....$this->providersByUid[
8c940 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 65 3b 0a 7d 20 65 $version['uid']].=.$package;.}.e
8c960 6c 73 65 20 7b 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 lse.{.$this->providers[$name][$v
8c980 65 72 73 69 6f 6e 5b 27 75 69 64 27 5d 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 24 74 68 69 73 ersion['uid']].=.$package;.$this
8c9a0 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 27 5d ->providersByUid[$version['uid']
8c9c0 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 20 75 6e 73 65 74 28 24 72 6f 6f 74 41 6c ].=.$package;.}....unset($rootAl
8c9e0 69 61 73 44 61 74 61 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 6f 6f 74 iasData);..if.(isset($this->root
8ca00 41 6c 69 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 Aliases[$package->getName()][$pa
8ca20 63 6b 61 67 65 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 ckage->getVersion()])).{.$rootAl
8ca40 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
8ca60 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 56 ckage->getName()][$package->getV
8ca80 65 72 73 69 6f 6e 28 29 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e ersion()];.}.elseif.($package.in
8caa0 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 20 26 26 20 69 73 73 65 74 28 24 stanceof.AliasPackage.&&.isset($
8cac0 74 68 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 this->rootAliases[$package->getN
8cae0 61 6d 65 28 29 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 2d 3e 67 ame()][$package->getAliasOf()->g
8cb00 65 74 56 65 72 73 69 6f 6e 28 29 5d 29 29 20 7b 0a 24 72 6f 6f 74 41 6c 69 61 73 44 61 74 61 20 etVersion()])).{.$rootAliasData.
8cb20 3d 20 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 67 65 2d 3e 67 =.$this->rootAliases[$package->g
8cb40 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 73 4f 66 28 29 etName()][$package->getAliasOf()
8cb60 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 5d 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 72 ->getVersion()];.}..if.(isset($r
8cb80 6f 6f 74 41 6c 69 61 73 44 61 74 61 29 29 20 7b 0a 24 61 6c 69 61 73 20 3d 20 24 74 68 69 73 2d ootAliasData)).{.$alias.=.$this-
8cba0 3e 63 72 65 61 74 65 41 6c 69 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2c 20 24 72 >createAliasPackage($package,.$r
8cbc0 6f 6f 74 41 6c 69 61 73 44 61 74 61 5b 27 61 6c 69 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d ootAliasData['alias_normalized']
8cbe0 2c 20 24 72 6f 6f 74 41 6c 69 61 73 44 61 74 61 5b 27 61 6c 69 61 73 27 5d 29 3b 0a 24 61 6c 69 ,.$rootAliasData['alias']);.$ali
8cc00 61 73 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 73 as->setRepository($this);..$this
8cc20 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 64 ->providers[$name][$version['uid
8cc40 27 5d 2e 27 2d 72 6f 6f 74 27 5d 20 3d 20 24 61 6c 69 61 73 3b 0a 24 74 68 69 73 2d 3e 70 72 6f '].'-root'].=.$alias;.$this->pro
8cc60 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 2d 72 6f vidersByUid[$version['uid'].'-ro
8cc80 6f 74 27 5d 20 3d 20 24 61 6c 69 61 73 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 ot'].=.$alias;.}.}.}.}..return.$
8cca0 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 72 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 72 this->providers[$name];.}.....pr
8ccc0 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 28 29 0a 7b 0a otected.function.initialize().{.
8cce0 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 24 72 65 70 6f 44 61 74 61 parent::initialize();..$repoData
8cd00 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 44 61 74 61 46 72 6f 6d 53 65 72 76 65 72 28 29 3b 0a .=.$this->loadDataFromServer();.
8cd20 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 44 61 74 61 20 61 73 20 24 70 61 63 6b 61 67 65 29 .foreach.($repoData.as.$package)
8cd40 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 74 68 69 73 2d 3e 63 72 65 61 .{.$this->addPackage($this->crea
8cd60 74 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 50 61 tePackage($package,.'Composer\Pa
8cd80 63 6b 61 67 65 5c 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 67 65 27 29 29 3b 0a 7d 0a 7d 0a 0a 0a ckage\CompletePackage'));.}.}...
8cda0 0a 0a 0a 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 ....public.function.addPackage(P
8cdc0 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 65 ackageInterface.$package).{.pare
8cde0 6e 74 3a 3a 61 64 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d nt::addPackage($package);.$this-
8ce00 3e 63 6f 6e 66 69 67 75 72 65 50 61 63 6b 61 67 65 54 72 61 6e 73 70 6f 72 74 4f 70 74 69 6f 6e >configurePackageTransportOption
8ce20 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 s($package);.}..protected.functi
8ce40 6f 6e 20 6c 6f 61 64 52 6f 6f 74 53 65 72 76 65 72 46 69 6c 65 28 29 0a 7b 0a 69 66 20 28 6e 75 on.loadRootServerFile().{.if.(nu
8ce60 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 44 61 74 61 29 20 7b 0a 72 65 74 75 72 6e ll.!==.$this->rootData).{.return
8ce80 20 24 74 68 69 73 2d 3e 72 6f 6f 74 44 61 74 61 3b 0a 7d 0a 0a 69 66 20 28 21 65 78 74 65 6e 73 .$this->rootData;.}..if.(!extens
8cea0 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 27 68 74 74 70 73 27 ion_loaded('openssl').&&.'https'
8cec0 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 75 72 6c 2c 20 30 2c 20 35 29 29 20 7b .===.substr($this->url,.0,.5)).{
8cee0 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 59 6f .throw.new.\RuntimeException('Yo
8cf00 75 20 6d 75 73 74 20 65 6e 61 62 6c 65 20 74 68 65 20 6f 70 65 6e 73 73 6c 20 65 78 74 65 6e 73 u.must.enable.the.openssl.extens
8cf20 69 6f 6e 20 69 6e 20 79 6f 75 72 20 70 68 70 2e 69 6e 69 20 74 6f 20 6c 6f 61 64 20 69 6e 66 6f ion.in.your.php.ini.to.load.info
8cf40 72 6d 61 74 69 6f 6e 20 66 72 6f 6d 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 7d 0a 0a 24 rmation.from.'.$this->url);.}..$
8cf60 6a 73 6f 6e 55 72 6c 50 61 72 74 73 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 74 68 69 73 2d 3e jsonUrlParts.=.parse_url($this->
8cf80 75 72 6c 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6a 73 6f 6e 55 72 6c 50 61 72 74 73 5b 27 url);..if.(isset($jsonUrlParts['
8cfa0 70 61 74 68 27 5d 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 6a 73 6f path']).&&.false.!==.strpos($jso
8cfc0 6e 55 72 6c 50 61 72 74 73 5b 27 70 61 74 68 27 5d 2c 20 27 2e 6a 73 6f 6e 27 29 29 20 7b 0a 24 nUrlParts['path'],.'.json')).{.$
8cfe0 6a 73 6f 6e 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 jsonUrl.=.$this->url;.}.else.{.$
8d000 6a 73 6f 6e 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 75 72 6c 20 2e 20 27 2f 70 61 63 6b 61 67 65 jsonUrl.=.$this->url...'/package
8d020 73 2e 6a 73 6f 6e 27 3b 0a 7d 0a 0a 24 64 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 66 65 74 63 68 s.json';.}..$data.=.$this->fetch
8d040 46 69 6c 65 28 24 6a 73 6f 6e 55 72 6c 2c 20 27 70 61 63 6b 61 67 65 73 2e 6a 73 6f 6e 27 29 3b File($jsonUrl,.'packages.json');
8d060 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 64 61 74 61 5b 27 6e 6f 74 69 66 79 2d 62 61 74 63 68 ..if.(!empty($data['notify-batch
8d080 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 69 66 79 55 72 6c 20 3d 20 24 74 68 69 73 2d '])).{.$this->notifyUrl.=.$this-
8d0a0 3e 63 61 6e 6f 6e 69 63 61 6c 69 7a 65 55 72 6c 28 24 64 61 74 61 5b 27 6e 6f 74 69 66 79 2d 62 >canonicalizeUrl($data['notify-b
8d0c0 61 74 63 68 27 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 65 6d 70 74 79 28 24 64 61 74 61 5b atch']);.}.elseif.(!empty($data[
8d0e0 27 6e 6f 74 69 66 79 5f 62 61 74 63 68 27 5d 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 6e 6f 74 'notify_batch'])).{...$this->not
8d100 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(
8d120 24 64 61 74 61 5b 27 6e 6f 74 69 66 79 5f 62 61 74 63 68 27 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 $data['notify_batch']);.}.elseif
8d140 20 28 21 65 6d 70 74 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 .(!empty($data['notify'])).{.$th
8d160 69 73 2d 3e 6e 6f 74 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 is->notifyUrl.=.$this->canonical
8d180 69 7a 65 55 72 6c 28 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 izeUrl($data['notify']);.}..if.(
8d1a0 21 65 6d 70 74 79 28 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 !empty($data['search'])).{.$this
8d1c0 2d 3e 73 65 61 72 63 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 ->searchUrl.=.$this->canonicaliz
8d1e0 65 55 72 6c 28 24 64 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 eUrl($data['search']);.}..if.(!e
8d200 6d 70 74 79 28 24 64 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 mpty($data['mirrors'])).{.foreac
8d220 68 20 28 24 64 61 74 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 h.($data['mirrors'].as.$mirror).
8d240 7b 0a 69 66 20 28 21 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 {.if.(!empty($mirror['git-url'])
8d260 29 20 7b 0a 24 74 68 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 ).{.$this->sourceMirrors['git'][
8d280 5d 20 3d 20 61 72 72 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 ].=.array('url'.=>.$mirror['git-
8d2a0 75 72 6c 27 5d 2c 20 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 url'],.'preferred'.=>.!empty($mi
8d2c0 72 72 6f 72 5b 27 70 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 rror['preferred']));.}.if.(!empt
8d2e0 79 28 24 6d 69 72 72 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 y($mirror['hg-url'])).{.$this->s
8d300 6f 75 72 63 65 4d 69 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 ourceMirrors['hg'][].=.array('ur
8d320 6c 27 20 3d 3e 20 24 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 l'.=>.$mirror['hg-url'],.'prefer
8d340 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 72 65 66 65 72 72 65 red'.=>.!empty($mirror['preferre
8d360 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 6f 72 5b 27 64 69 73 d']));.}.if.(!empty($mirror['dis
8d380 74 2d 75 72 6c 27 5d 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 t-url'])).{.$this->distMirrors[]
8d3a0 20 3d 20 61 72 72 61 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 .=.array('url'.=>.$mirror['dist-
8d3c0 75 72 6c 27 5d 2c 20 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 url'],.'preferred'.=>.!empty($mi
8d3e0 72 72 6f 72 5b 27 70 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 rror['preferred']));.}.}.}..if.(
8d400 21 65 6d 70 74 79 28 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 !empty($data['warning'])).{.$thi
8d420 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 57 61 72 6e s->io->writeError('<warning>Warn
8d440 69 6e 67 20 66 72 6f 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 ing.from.'.$this->url.':.'.$data
8d460 5b 27 77 61 72 6e 69 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 ['warning'].'</warning>');.}..if
8d480 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 2d 6c 61 7a 79 2d 75 .(!empty($data['providers-lazy-u
8d4a0 72 6c 27 5d 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 rl'])).{.$this->lazyProvidersUrl
8d4c0 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 61 74 61 5b .=.$this->canonicalizeUrl($data[
8d4e0 27 70 72 6f 76 69 64 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 'providers-lazy-url']);.$this->h
8d500 61 73 50 72 6f 76 69 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 asProviders.=.true;.}..if.($this
8d520 2d 3e 61 6c 6c 6f 77 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 ->allowSslDowngrade).{.$this->ur
8d540 6c 20 3d 20 73 74 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 l.=.str_replace('https://',.'htt
8d560 70 3a 2f 2f 27 2c 20 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 p://',.$this->url);.$this->baseU
8d580 72 6c 20 3d 20 73 74 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 rl.=.str_replace('https://',.'ht
8d5a0 74 70 3a 2f 2f 27 2c 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 tp://',.$this->baseUrl);.}..if.(
8d5c0 21 65 6d 70 74 79 28 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 !empty($data['providers-url'])).
8d5e0 7b 0a 24 74 68 69 73 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 {.$this->providersUrl.=.$this->c
8d600 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 65 72 73 2d anonicalizeUrl($data['providers-
8d620 75 72 6c 27 5d 29 3b 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 url']);.$this->hasProviders.=.tr
8d640 75 65 3b 0a 7d 0a 0a 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 ue;.}..if.(!empty($data['provide
8d660 72 73 27 5d 29 20 7c 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 rs']).||.!empty($data['providers
8d680 2d 69 6e 63 6c 75 64 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 -includes'])).{.$this->hasProvid
8d6a0 65 72 73 20 3d 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 6f 6f ers.=.true;.}..return.$this->roo
8d6c0 74 44 61 74 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 tData.=.$data;.}..protected.func
8d6e0 74 69 6f 6e 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 tion.canonicalizeUrl($url).{.if.
8d700 28 27 2f 27 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 ('/'.===.$url[0]).{.return.preg_
8d720 72 65 70 6c 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 replace('{(https?://[^/]+).*}i',
8d740 20 27 24 31 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 .'$1'...$url,.$this->url);.}..re
8d760 74 75 72 6e 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 turn.$url;.}..protected.function
8d780 20 6c 6f 61 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 .loadDataFromServer().{.$data.=.
8d7a0 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 0a 0a 72 65 $this->loadRootServerFile();..re
8d7c0 74 75 72 6e 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 turn.$this->loadIncludes($data);
8d7e0 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 64 50 72 6f 76 69 .}..protected.function.loadProvi
8d800 64 65 72 4c 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 derListings($data).{.if.(isset($
8d820 64 61 74 61 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 data['providers'])).{.if.(!is_ar
8d840 72 61 79 28 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 ray($this->providerListing)).{.$
8d860 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 28 29 3b this->providerListing.=.array();
8d880 0a 7d 0a 24 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 .}.$this->providerListing.=.arra
8d8a0 79 5f 6d 65 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 y_merge($this->providerListing,.
8d8c0 24 64 61 74 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 $data['providers']);.}..if.($thi
8d8e0 73 2d 3e 70 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 s->providersUrl.&&.isset($data['
8d900 70 72 6f 76 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 provider-includes'])).{.$include
8d920 73 20 3d 20 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 s.=.$data['provider-includes'];.
8d940 66 6f 72 65 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 foreach.($includes.as.$include.=
8d960 3e 20 24 6d 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 >.$metadata).{.$url.=.$this->bas
8d980 65 55 72 6c 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 eUrl...'/'...str_replace('%hash%
8d9a0 27 2c 20 24 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 ',.$metadata['sha256'],.$include
8d9c0 29 3b 0a 24 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 );.$cacheKey.=.str_replace(array
8d9e0 28 27 25 68 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 ('%hash%','$'),.'',.$include);.i
8da00 66 20 28 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 4b 65 f.($this->cache->sha256($cacheKe
8da20 79 29 20 3d 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 y).===.$metadata['sha256']).{.$i
8da40 6e 63 6c 75 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 ncludedData.=.json_decode($this-
8da60 3e 63 61 63 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 >cache->read($cacheKey),.true);.
8da80 7d 20 65 6c 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 }.else.{.$includedData.=.$this->
8daa0 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 24 6d 65 74 61 fetchFile($url,.$cacheKey,.$meta
8dac0 64 61 74 61 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 data['sha256']);.}..$this->loadP
8dae0 72 6f 76 69 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 roviderListings($includedData);.
8db00 7d 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 70 72 6f 76 69 64 65 }.}.elseif.(isset($data['provide
8db20 72 73 2d 69 6e 63 6c 75 64 65 73 27 5d 29 29 20 7b 0a 0a 20 24 69 6e 63 6c 75 64 65 73 20 3d 20 rs-includes'])).{...$includes.=.
8db40 24 64 61 74 61 5b 27 70 72 6f 76 69 64 65 72 73 2d 69 6e 63 6c 75 64 65 73 27 5d 3b 0a 66 6f 72 $data['providers-includes'];.for
8db60 65 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 each.($includes.as.$include.=>.$
8db80 6d 65 74 61 64 61 74 61 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 73 68 metadata).{.if.($this->cache->sh
8dba0 61 32 35 36 28 24 69 6e 63 6c 75 64 65 29 20 3d 3d 3d 20 24 6d 65 74 61 64 61 74 61 5b 27 73 68 a256($include).===.$metadata['sh
8dbc0 61 32 35 36 27 5d 29 20 7b 0a 24 69 6e 63 6c 75 64 65 64 44 61 74 61 20 3d 20 6a 73 6f 6e 5f 64 a256']).{.$includedData.=.json_d
8dbe0 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 69 6e 63 6c 75 64 ecode($this->cache->read($includ
8dc00 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 64 65 64 44 61 74 e),.true);.}.else.{.$includedDat
8dc20 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 75 64 65 2c 20 6e a.=.$this->fetchFile($include,.n
8dc40 75 6c 6c 2c 20 24 6d 65 74 61 64 61 74 61 5b 27 73 68 61 32 35 36 27 5d 29 3b 0a 7d 0a 0a 24 74 ull,.$metadata['sha256']);.}..$t
8dc60 68 69 73 2d 3e 6c 6f 61 64 50 72 6f 76 69 64 65 72 4c 69 73 74 69 6e 67 73 28 24 69 6e 63 6c 75 his->loadProviderListings($inclu
8dc80 64 65 64 44 61 74 61 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 dedData);.}.}.}..protected.funct
8dca0 69 6f 6e 20 6c 6f 61 64 49 6e 63 6c 75 64 65 73 28 24 64 61 74 61 29 0a 7b 0a 24 70 61 63 6b 61 ion.loadIncludes($data).{.$packa
8dcc0 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 64 61 ges.=.array();....if.(!isset($da
8dce0 74 61 5b 27 70 61 63 6b 61 67 65 73 27 5d 29 20 26 26 20 21 69 73 73 65 74 28 24 64 61 74 61 5b ta['packages']).&&.!isset($data[
8dd00 27 69 6e 63 6c 75 64 65 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 61 20 61 'includes'])).{.foreach.($data.a
8dd20 73 20 24 70 6b 67 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 6b 67 5b 27 76 65 72 73 69 6f 6e s.$pkg).{.foreach.($pkg['version
8dd40 73 27 5d 20 61 73 20 24 6d 65 74 61 64 61 74 61 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 s'].as.$metadata).{.$packages[].
8dd60 3d 20 24 6d 65 74 61 64 61 74 61 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 =.$metadata;.}.}..return.$packag
8dd80 65 73 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 70 61 63 6b 61 67 65 73 es;.}..if.(isset($data['packages
8dda0 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 61 5b 27 70 61 63 6b 61 67 65 73 27 '])).{.foreach.($data['packages'
8ddc0 5d 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 ].as.$package.=>.$versions).{.fo
8dde0 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.=>.
8de00 24 6d 65 74 61 64 61 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 $metadata).{.$packages[].=.$meta
8de20 64 61 74 61 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 69 6e data;.}.}.}..if.(isset($data['in
8de40 63 6c 75 64 65 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 61 5b 27 69 6e 63 cludes'])).{.foreach.($data['inc
8de60 6c 75 64 65 73 27 5d 20 61 73 20 24 69 6e 63 6c 75 64 65 20 3d 3e 20 24 6d 65 74 61 64 61 74 61 ludes'].as.$include.=>.$metadata
8de80 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 73 68 61 31 28 24 69 6e 63 6c ).{.if.($this->cache->sha1($incl
8dea0 75 64 65 29 20 3d 3d 3d 20 24 6d 65 74 61 64 61 74 61 5b 27 73 68 61 31 27 5d 29 20 7b 0a 24 69 ude).===.$metadata['sha1']).{.$i
8dec0 6e 63 6c 75 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 ncludedData.=.json_decode($this-
8dee0 3e 63 61 63 68 65 2d 3e 72 65 61 64 28 24 69 6e 63 6c 75 64 65 29 2c 20 74 72 75 65 29 3b 0a 7d >cache->read($include),.true);.}
8df00 20 65 6c 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 .else.{.$includedData.=.$this->f
8df20 65 74 63 68 46 69 6c 65 28 24 69 6e 63 6c 75 64 65 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 73 20 etchFile($include);.}.$packages.
8df40 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 70 61 63 6b 61 67 65 73 2c 20 24 74 68 69 73 2d 3e =.array_merge($packages,.$this->
8df60 6c 6f 61 64 49 6e 63 6c 75 64 65 73 28 24 69 6e 63 6c 75 64 65 64 44 61 74 61 29 29 3b 0a 7d 0a loadIncludes($includedData));.}.
8df80 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 }..return.$packages;.}..protecte
8dfa0 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 50 61 63 6b 61 67 65 28 61 72 72 61 79 20 24 d.function.createPackage(array.$
8dfc0 64 61 74 61 2c 20 24 63 6c 61 73 73 29 0a 7b 0a 74 72 79 20 7b 0a 69 66 20 28 21 69 73 73 65 74 data,.$class).{.try.{.if.(!isset
8dfe0 28 24 64 61 74 61 5b 27 6e 6f 74 69 66 69 63 61 74 69 6f 6e 2d 75 72 6c 27 5d 29 29 20 7b 0a 24 ($data['notification-url'])).{.$
8e000 64 61 74 61 5b 27 6e 6f 74 69 66 69 63 61 74 69 6f 6e 2d 75 72 6c 27 5d 20 3d 20 24 74 68 69 73 data['notification-url'].=.$this
8e020 2d 3e 6e 6f 74 69 66 79 55 72 6c 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 ->notifyUrl;.}..$package.=.$this
8e040 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 64 61 74 61 2c 20 27 43 6f 6d 70 6f 73 65 72 5c ->loader->load($data,.'Composer\
8e060 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 3b 0a 69 66 20 28 69 Package\CompletePackage');.if.(i
8e080 73 73 65 74 28 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 sset($this->sourceMirrors[$packa
8e0a0 67 65 2d 3e 67 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 ge->getSourceType()])).{.$packag
8e0c0 65 2d 3e 73 65 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 e->setSourceMirrors($this->sourc
8e0e0 65 4d 69 72 72 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 eMirrors[$package->getSourceType
8e100 28 29 5d 29 3b 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 ()]);.}.$package->setDistMirrors
8e120 28 24 74 68 69 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 ($this->distMirrors);.$this->con
8e140 66 69 67 75 72 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 figurePackageTransportOptions($p
8e160 61 63 6b 61 67 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 ackage);..return.$package;.}.cat
8e180 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 77 20 6e 65 77 20 5c ch.(\Exception.$e).{.throw.new.\
8e1a0 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 6c 6f 61 64 RuntimeException('Could.not.load
8e1c0 20 70 61 63 6b 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 .package.'.(isset($data['name'])
8e1e0 20 3f 20 24 64 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 .?.$data['name'].:.json_encode($
8e200 64 61 74 61 29 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 data)).'.in.'.$this->url.':.['.g
8e220 65 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 et_class($e).'].'.$e->getMessage
8e240 28 29 2c 20 30 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 (),.0,.$e);.}.}..protected.funct
8e260 69 6f 6e 20 66 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 ion.fetchFile($filename,.$cacheK
8e280 65 79 20 3d 20 6e 75 6c 6c 2c 20 24 73 68 61 32 35 36 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 ey.=.null,.$sha256.=.null).{.if.
8e2a0 28 6e 75 6c 6c 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 (null.===.$cacheKey).{.$cacheKey
8e2c0 20 3d 20 24 66 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 .=.$filename;.$filename.=.$this-
8e2e0 3e 62 61 73 65 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 >baseUrl.'/'.$filename;.}....if.
8e300 28 28 24 70 6f 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 (($pos.=.strpos($filename,.'$'))
8e320 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 2e 2a 7d 69 27 .&&.preg_match('{^https?://.*}i'
8e340 2c 20 24 66 69 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 ,.$filename)).{.$filename.=.subs
8e360 74 72 28 24 66 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 tr($filename,.0,.$pos)...'%24'..
8e380 20 73 75 62 73 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 .substr($filename,.$pos.+.1);.}.
8e3a0 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 65 73 2d 2d .$retries.=.3;.while.($retries--
8e3c0 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 65 6e 74 20 ).{.try.{.$preFileDownloadEvent.
8e3e0 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 6c 75 67 69 =.new.PreFileDownloadEvent(Plugi
8e400 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 24 74 68 69 nEvents::PRE_FILE_DOWNLOAD,.$thi
8e420 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 73 2d 3e 65 s->rfs,.$filename);.if.($this->e
8e440 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 6e 74 44 69 ventDispatcher).{.$this->eventDi
8e460 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 6f 77 6e 6c spatcher->dispatch($preFileDownl
8e480 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 65 44 6f 77 oadEvent->getName(),.$preFileDow
8e4a0 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 70 61 72 73 nloadEvent);.}..$hostname.=.pars
8e4c0 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 54 29 20 3f e_url($filename,.PHP_URL_HOST).?
8e4e0 3a 20 24 66 69 6c 65 6e 61 6d 65 3b 0a 24 6a 73 6f 6e 20 3d 20 24 70 72 65 46 69 6c 65 44 6f 77 :.$filename;.$json.=.$preFileDow
8e500 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 65 6d 28 nloadEvent->getRemoteFilesystem(
8e520 29 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 68 6f 73 74 6e 61 6d 65 2c 20 24 66 69 6c 65 6e )->getContents($hostname,.$filen
8e540 61 6d 65 2c 20 66 61 6c 73 65 29 3b 0a 69 66 20 28 24 73 68 61 32 35 36 20 26 26 20 24 73 68 61 ame,.false);.if.($sha256.&&.$sha
8e560 32 35 36 20 21 3d 3d 20 68 61 73 68 28 27 73 68 61 32 35 36 27 2c 20 24 6a 73 6f 6e 29 29 20 7b 256.!==.hash('sha256',.$json)).{
8e580 0a 69 66 20 28 24 72 65 74 72 69 65 73 29 20 7b 0a 75 73 6c 65 65 70 28 31 30 30 30 30 30 29 3b .if.($retries).{.usleep(100000);
8e5a0 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 74 68 72 6f 77 20 6e 65 77 20 52 65 70 6f 73 ..continue;.}....throw.new.Repos
8e5c0 69 74 6f 72 79 53 65 63 75 72 69 74 79 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 63 6f 6e 74 itorySecurityException('The.cont
8e5e0 65 6e 74 73 20 6f 66 20 27 2e 24 66 69 6c 65 6e 61 6d 65 2e 27 20 64 6f 20 6e 6f 74 20 6d 61 74 ents.of.'.$filename.'.do.not.mat
8e600 63 68 20 69 74 73 20 73 69 67 6e 61 74 75 72 65 2e 20 54 68 69 73 20 73 68 6f 75 6c 64 20 69 6e ch.its.signature..This.should.in
8e620 64 69 63 61 74 65 20 61 20 6d 61 6e 2d 69 6e 2d 74 68 65 2d 6d 69 64 64 6c 65 20 61 74 74 61 63 dicate.a.man-in-the-middle.attac
8e640 6b 2e 20 54 72 79 20 72 75 6e 6e 69 6e 67 20 63 6f 6d 70 6f 73 65 72 20 61 67 61 69 6e 20 61 6e k..Try.running.composer.again.an
8e660 64 20 72 65 70 6f 72 74 20 74 68 69 73 20 69 66 20 79 6f 75 20 74 68 69 6e 6b 20 69 74 20 69 73 d.report.this.if.you.think.it.is
8e680 20 61 20 6d 69 73 74 61 6b 65 2e 27 29 3b 0a 7d 0a 24 64 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c .a.mistake.');.}.$data.=.JsonFil
8e6a0 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 6a 73 6f 6e 2c 20 24 66 69 6c 65 6e 61 6d 65 29 3b 0a e::parseJson($json,.$filename);.
8e6c0 69 66 20 28 24 63 61 63 68 65 4b 65 79 29 20 7b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 77 if.($cacheKey).{.$this->cache->w
8e6e0 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
8e700 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.(
8e720 24 72 65 74 72 69 65 73 29 20 7b 0a 75 73 6c 65 65 70 28 31 30 30 30 30 30 29 3b 0a 63 6f 6e 74 $retries).{.usleep(100000);.cont
8e740 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 65 70 6f 73 inue;.}..if.($e.instanceof.Repos
8e760 69 74 6f 72 79 53 65 63 75 72 69 74 79 45 78 63 65 70 74 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 itorySecurityException).{.throw.
8e780 24 65 3b 0a 7d 0a 0a 69 66 20 28 24 63 61 63 68 65 4b 65 79 20 26 26 20 28 24 63 6f 6e 74 65 6e $e;.}..if.($cacheKey.&&.($conten
8e7a0 74 73 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 ts.=.$this->cache->read($cacheKe
8e7c0 79 29 29 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 29 y))).{.if.(!$this->degradedMode)
8e7e0 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
8e800 6e 67 3e 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 67 ng>'.$e->getMessage().'</warning
8e820 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 3c 77 61 72 >');.$this->io->writeError('<war
8e840 6e 69 6e 67 3e 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 ning>'.$this->url.'.could.not.be
8e860 20 66 75 6c 6c 79 20 6c 6f 61 64 65 64 2c 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 .fully.loaded,.package.informati
8e880 6f 6e 20 77 61 73 20 6c 6f 61 64 65 64 20 66 72 6f 6d 20 74 68 65 20 6c 6f 63 61 6c 20 63 61 63 on.was.loaded.from.the.local.cac
8e8a0 68 65 20 61 6e 64 20 6d 61 79 20 62 65 20 6f 75 74 20 6f 66 20 64 61 74 65 3c 2f 77 61 72 6e 69 he.and.may.be.out.of.date</warni
8e8c0 6e 67 3e 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 20 3d 20 74 ng>');.}.$this->degradedMode.=.t
8e8e0 72 75 65 3b 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 rue;.$data.=.JsonFile::parseJson
8e900 28 24 63 6f 6e 74 65 6e 74 73 2c 20 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 67 65 74 52 6f 6f ($contents,.$this->cache->getRoo
8e920 74 28 29 2e 24 63 61 63 68 65 4b 65 79 29 3b 0a 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 74 68 72 6f 77 t().$cacheKey);..break;.}..throw
8e940 20 24 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 0a 3c 3f 70 68 .$e;.}.}..return.$data;.}.}.<?ph
8e960 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\
8e980 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 67 Repository;..use.Composer\Packag
8e9a0 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 63 6c 61 73 73 20 e\PackageInterface;.......class.
8e9c0 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 52 CompositeRepository.implements.R
8e9e0 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 70 72 69 76 61 74 65 epositoryInterface.{.....private
8ea00 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 .$repositories;......public.func
8ea20 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 72 65 70 6f 73 69 74 6f tion.__construct(array.$reposito
8ea40 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 61 72 ries).{.$this->repositories.=.ar
8ea60 72 61 79 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 ray();.foreach.($repositories.as
8ea80 20 24 72 65 70 6f 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 .$repo).{.$this->addRepository($
8eaa0 72 65 70 6f 29 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 repo);.}.}.......public.function
8eac0 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 68 69 .getRepositories().{.return.$thi
8eae0 73 2d 3e 72 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 s->repositories;.}.....public.fu
8eb00 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 6e 74 65 72 66 61 nction.hasPackage(PackageInterfa
8eb20 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 69 73 2d 3e 72 ce.$package).{.foreach.($this->r
8eb40 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 0a 69 epositories.as.$repository).{..i
8eb60 66 20 28 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b f.($repository->hasPackage($pack
8eb80 61 67 65 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 age)).{.return.true;.}.}..return
8eba0 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 66 69 .false;.}.....public.function.fi
8ebc0 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 29 0a 7b 0a ndPackage($name,.$constraint).{.
8ebe0 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.
8ec00 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 72 65 70 6f $repository).{..$package.=.$repo
8ec20 73 69 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 sitory->findPackage($name,.$cons
8ec40 74 72 61 69 6e 74 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 traint);.if.(null.!==.$package).
8ec60 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e {.return.$package;.}.}..return.n
8ec80 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 66 69 6e 64 50 ull;.}.....public.function.findP
8eca0 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 6e 75 6c ackages($name,.$constraint.=.nul
8ecc0 6c 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 65 61 63 l).{.$packages.=.array();.foreac
8ece0 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 73 h.($this->repositories.as.$repos
8ed00 69 74 6f 72 79 29 20 7b 0a 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 72 65 70 6f 73 69 74 itory).{..$packages[].=.$reposit
8ed20 6f 72 79 2d 3e 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 ory->findPackages($name,.$constr
8ed40 61 69 6e 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 20 3f 20 63 61 6c aint);.}..return.$packages.?.cal
8ed60 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',
8ed80 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 0a 70 75 62 .$packages).:.array();.}.....pub
8eda0 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
8edc0 65 20 3d 20 30 29 0a 7b 0a 24 6d 61 74 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 e.=.0).{.$matches.=.array();.for
8ede0 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 24 72 65 each.($this->repositories.as.$re
8ee00 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 24 6d 61 74 63 68 65 73 5b 5d 20 3d 20 24 72 65 70 6f 73 pository).{..$matches[].=.$repos
8ee20 69 74 6f 72 79 2d 3e 73 65 61 72 63 68 28 24 71 75 65 72 79 2c 20 24 6d 6f 64 65 29 3b 0a 7d 0a itory->search($query,.$mode);.}.
8ee40 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 20 3f 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e .return.$matches.?.call_user_fun
8ee60 63 5f 61 72 72 61 79 28 27 61 72 72 61 79 5f 6d 65 72 67 65 27 2c 20 24 6d 61 74 63 68 65 73 29 c_array('array_merge',.$matches)
8ee80 20 3a 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 74 69 6f .:.array();.}.....public.functio
8eea0 6e 20 67 65 74 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 61 72 n.getPackages().{.$packages.=.ar
8eec0 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
8eee0 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 67 65 73 ies.as.$repository).{..$packages
8ef00 5b 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b [].=.$repository->getPackages();
8ef20 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 20 3f 20 63 61 6c 6c 5f 75 73 65 72 .}..return.$packages.?.call_user
8ef40 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 70 61 63 6b _func_array('array_merge',.$pack
8ef60 61 67 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 69 63 20 66 75 ages).:.array();.}.....public.fu
8ef80 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 61 67 65 49 6e 74 65 nction.removePackage(PackageInte
8efa0 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 69 73 rface.$package).{.foreach.($this
8efc0 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).{
8efe0 0a 0a 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 70 61 ..$repository->removePackage($pa
8f000 63 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 ckage);.}.}.....public.function.
8f020 63 6f 75 6e 74 28 29 0a 7b 0a 24 74 6f 74 61 6c 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 24 count().{.$total.=.0;.foreach.($
8f040 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 74 6f 72 this->repositories.as.$repositor
8f060 79 29 20 7b 0a 0a 24 74 6f 74 61 6c 20 2b 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 63 6f 75 y).{..$total.+=.$repository->cou
8f080 6e 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6f 74 61 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 nt();.}..return.$total;.}......p
8f0a0 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 52 65 70 ublic.function.addRepository(Rep
8f0c0 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 72 79 29 0a 7b 0a ositoryInterface.$repository).{.
8f0e0 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 66 20 73 65 6c 66 29 if.($repository.instanceof.self)
8f100 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 67 65 74 52 65 70 6f .{.foreach.($repository->getRepo
8f120 73 69 74 6f 72 69 65 73 28 29 20 61 73 20 24 72 65 70 6f 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 sitories().as.$repo).{.$this->ad
8f140 64 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 dRepository($repo);.}.}.else.{.$
8f160 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 73 69 74 6f this->repositories[].=.$reposito
8f180 72 79 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 ry;.}.}.}.<?php............names
8f1a0 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 0a 0a 0a pace.Composer\Repository;.......
8f1c0 69 6e 74 65 72 66 61 63 65 20 43 6f 6e 66 69 67 75 72 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 interface.ConfigurableRepository
8f1e0 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 20 67 65 74 52 Interface.{.public.function.getR
8f200 65 70 6f 43 6f 6e 66 69 67 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a epoConfig();.}.<?php............
8f220 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 0a namespace.Composer\Repository;..
8f240 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.
8f260 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
8f280 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 44 75 6d 70 65 72 der;.use.Composer\Package\Dumper
8f2a0 5c 41 72 72 61 79 44 75 6d 70 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 73 \ArrayDumper;........class.Files
8f2c0 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 57 72 69 74 61 62 6c 65 ystemRepository.extends.Writable
8f2e0 41 72 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 66 69 6c 65 3b ArrayRepository.{.private.$file;
8f300 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
8f320 63 74 28 4a 73 6f 6e 46 69 6c 65 20 24 72 65 70 6f 73 69 74 6f 72 79 46 69 6c 65 29 0a 7b 0a 24 ct(JsonFile.$repositoryFile).{.$
8f340 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 0a this->file.=.$repositoryFile;.}.
8f360 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 7a ....protected.function.initializ
8f380 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 20 e().{.parent::initialize();..if.
8f3a0 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 72 (!$this->file->exists()).{.retur
8f3c0 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 66 n;.}..try.{.$packages.=.$this->f
8f3e0 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 63 ile->read();..if.(!is_array($pac
8f400 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 56 kages)).{.throw.new.\UnexpectedV
8f420 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 70 alueException('Could.not.parse.p
8f440 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 27 ackage.list.from.the.repository'
8f460 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 74 );.}.}.catch.(\Exception.$e).{.t
8f480 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 74 hrow.new.InvalidRepositoryExcept
8f4a0 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 20 ion('Invalid.repository.data.in.
8f4c0 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 6b '.$this->file->getPath().',.pack
8f4e0 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 74 ages.could.not.be.loaded:.['.get
8f500 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 29 _class($e).'].'.$e->getMessage()
8f520 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 28 );.}..$loader.=.new.ArrayLoader(
8f540 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 20 null,.true);.foreach.($packages.
8f560 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 6c as.$packageData).{.$package.=.$l
8f580 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 73 oader->load($packageData);.$this
8f5a0 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 62 ->addPackage($package);.}.}..pub
8f5c0 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 70 lic.function.reload().{.$this->p
8f5e0 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 7a ackages.=.null;.$this->initializ
8f600 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 65 e();.}.....public.function.write
8f620 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 20 ().{.$data.=.array();.$dumper.=.
8f640 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 68 new.ArrayDumper();..foreach.($th
8f660 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 70 is->getCanonicalPackages().as.$p
8f680 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 6d ackage).{.$data[].=.$dumper->dum
8f6a0 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 69 p($package);.}..$this->file->wri
8f6c0 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 0a te($data);.}.}.<?php............
8f6e0 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 0a namespace.Composer\Repository;..
8f700 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 73 .......class.InstalledArrayRepos
8f720 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 73 itory.extends.WritableArrayRepos
8f740 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 69 itory.implements.InstalledReposi
8f760 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 0a toryInterface.{.}.<?php.........
8f780 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 79 ...namespace.Composer\Repository
8f7a0 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 65 ;.......class.InstalledFilesyste
8f7c0 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 65 mRepository.extends.FilesystemRe
8f7e0 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 70 pository.implements.InstalledRep
8f800 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 0a ositoryInterface.{.}.<?php......
8f820 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
8f840 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 64 ory;.........interface.Installed
8f860 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 74 RepositoryInterface.extends.Writ
8f880 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 68 ableRepositoryInterface.{.}.<?ph
8f8a0 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\
8f8c0 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 52 Repository;.......class.InvalidR
8f8e0 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 65 epositoryException.extends.\Exce
8f900 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 73 ption.{.}.<?php............names
8f920 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
8f940 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 64 omposer\Package\Loader\ArrayLoad
8f960 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 5c er;.use.Composer\Package\Loader\
8f980 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 61 ValidatingArrayLoader;.......cla
8f9a0 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 72 ss.PackageRepository.extends.Arr
8f9c0 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 0a ayRepository.{.private.$config;.
8f9e0 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
8fa00 74 28 61 72 72 61 79 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 t(array.$config).{.$this->config
8fa20 20 3d 20 24 63 6f 6e 66 69 67 5b 27 70 61 63 6b 61 67 65 27 5d 3b 0a 0a 0a 20 69 66 20 28 21 69 .=.$config['package'];....if.(!i
8fa40 73 5f 6e 75 6d 65 72 69 63 28 6b 65 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 29 29 20 7b s_numeric(key($this->config))).{
8fa60 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 28 24 74 68 69 73 2d 3e 63 6f .$this->config.=.array($this->co
8fa80 6e 66 69 67 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 nfig);.}.}.....protected.functio
8faa0 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c n.initialize().{.parent::initial
8fac0 69 7a 65 28 29 3b 0a 0a 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 56 61 6c 69 64 61 74 69 6e 67 ize();..$loader.=.new.Validating
8fae0 41 72 72 61 79 4c 6f 61 64 65 72 28 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 2c 20 66 61 6c ArrayLoader(new.ArrayLoader,.fal
8fb00 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 61 73 20 24 se);.foreach.($this->config.as.$
8fb20 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 24 6c 6f 61 package).{.try.{.$package.=.$loa
8fb40 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 20 28 5c 45 der->load($package);.}.catch.(\E
8fb60 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 61 6c 69 64 xception.$e).{.throw.new.Invalid
8fb80 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 69 74 6f 72 RepositoryException('A.repositor
8fba0 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 20 61 6e 20 y.of.type."package".contains.an.
8fbc0 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 27 2e 24 65 invalid.package.definition:.'.$e
8fbe0 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 70 61 63 6b ->getMessage()."\n\nInvalid.pack
8fc00 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 64 65 28 24 age.definition:\n".json_encode($
8fc20 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 61 67 65 28 package));.}..$this->addPackage(
8fc40 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 0a 0a 0a 0a $package);.}.}.}.<?php..........
8fc60 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 3b ..namespace.Composer\Repository;
8fc80 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
8fca0 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 72 ser\IO\IOInterface;.use.Composer
8fcc0 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 50 61 63 \Json\JsonFile;.use.Composer\Pac
8fce0 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 43 6f 6d kage\Loader\ArrayLoader;.use.Com
8fd00 70 6f 73 65 72 5c 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 poser\Package\Locker;.use.Compos
8fd20 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 47 75 65 73 73 65 er\Package\Version\VersionGuesse
8fd40 72 3b 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 50 61 r;.use.Composer\Semver\VersionPa
8fd60 72 73 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 rser;.use.Composer\Util\ProcessE
8fd80 78 65 63 75 74 6f 72 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 xecutor;........................
8fda0 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 74 68 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e ......class.PathRepository.exten
8fdc0 64 73 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 ds.ArrayRepository.implements.Co
8fde0 6e 66 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 nfigurableRepositoryInterface.{.
8fe00 0a 0a 0a 70 72 69 76 61 74 65 20 24 6c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 ...private.$loader;.....private.
8fe20 24 76 65 72 73 69 6f 6e 47 75 65 73 73 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 75 72 $versionGuesser;.....private.$ur
8fe40 6c 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a l;.....private.$repoConfig;.....
8fe60 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 private.$process;.........public
8fe80 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 72 65 70 .function.__construct(array.$rep
8fea0 6f 43 6f 6e 66 69 67 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 oConfig,.IOInterface.$io,.Config
8fec0 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 .$config).{.if.(!isset($repoConf
8fee0 69 67 5b 27 75 72 6c 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 ig['url'])).{.throw.new.\Runtime
8ff00 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 73 70 65 63 69 66 79 20 74 68 65 20 Exception('You.must.specify.the.
8ff20 60 75 72 6c 60 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 70 61 74 68 `url`.configuration.for.the.path
8ff40 20 72 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 .repository');.}..$this->loader.
8ff60 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 28 29 3b 0a 24 74 68 69 73 2d 3e 75 72 6c 20 =.new.ArrayLoader();.$this->url.
8ff80 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 70 72 6f =.$repoConfig['url'];.$this->pro
8ffa0 63 65 73 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 cess.=.new.ProcessExecutor($io);
8ffc0 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 47 75 65 73 73 65 72 20 3d 20 6e 65 77 20 56 65 72 .$this->versionGuesser.=.new.Ver
8ffe0 73 69 6f 6e 47 75 65 73 73 65 72 28 24 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 sionGuesser($config,.$this->proc
90000 65 73 73 2c 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 29 3b 0a 24 74 68 69 73 ess,.new.VersionParser());.$this
90020 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 3b 0a 0a 70 61 72 ->repoConfig.=.$repoConfig;..par
90040 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 ent::__construct();.}..public.fu
90060 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.
90080 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 $this->repoConfig;.}.......prote
900a0 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
900c0 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 ent::initialize();..foreach.($th
900e0 69 73 2d 3e 67 65 74 55 72 6c 4d 61 74 63 68 65 73 28 29 20 61 73 20 24 75 72 6c 29 20 7b 0a 24 is->getUrlMatches().as.$url).{.$
90100 70 61 74 68 20 3d 20 72 65 61 6c 70 61 74 68 28 24 75 72 6c 29 20 2e 20 27 2f 27 3b 0a 24 63 6f path.=.realpath($url)...'/';.$co
90120 6d 70 6f 73 65 72 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 mposerFilePath.=.$path.'composer
90140 2e 6a 73 6f 6e 27 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 .json';..if.(!file_exists($compo
90160 73 65 72 46 69 6c 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 serFilePath)).{.continue;.}..$js
90180 6f 6e 20 3d 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 on.=.file_get_contents($composer
901a0 46 69 6c 65 50 61 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 FilePath);.$package.=.JsonFile::
901c0 70 61 72 73 65 4a 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 parseJson($json,.$composerFilePa
901e0 74 68 29 3b 0a 24 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 th);.$package['dist'].=.array(.'
90200 74 79 70 65 27 20 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 type'.=>.'path',.'url'.=>.$url,.
90220 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 27 27 2c 0a 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 'reference'.=>.'',.);..if.(!isse
90240 74 28 24 70 61 63 6b 61 67 65 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 t($package['version'])).{.$packa
90260 67 65 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 47 75 ge['version'].=.$this->versionGu
90280 65 73 73 65 72 2d 3e 67 75 65 73 73 56 65 72 73 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 24 70 esser->guessVersion($package,.$p
902a0 61 74 68 29 20 3f 3a 20 27 64 65 76 2d 6d 61 73 74 65 72 27 3b 0a 7d 0a 69 66 20 28 69 73 5f 64 ath).?:.'dev-master';.}.if.(is_d
902c0 69 72 28 24 70 61 74 68 2e 27 2f 2e 67 69 74 27 29 20 26 26 20 30 20 3d 3d 3d 20 24 74 68 69 73 ir($path.'/.git').&&.0.===.$this
902e0 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 31 20 ->process->execute('git.log.-n1.
90300 2d 2d 70 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 --pretty=%H',.$output,.$path)).{
90320 0a 24 70 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 .$package['dist']['reference'].=
90340 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 63 6b 61 67 .trim($output);.}.else.{.$packag
90360 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 4c 6f 63 6b 65 72 3a e['dist']['reference'].=.Locker:
90380 3a 67 65 74 43 6f 6e 74 65 6e 74 48 61 73 68 28 24 6a 73 6f 6e 29 3b 0a 7d 0a 0a 24 70 61 63 6b :getContentHash($json);.}..$pack
903a0 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 70 61 63 6b 61 age.=.$this->loader->load($packa
903c0 67 65 29 3b 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 ge);.$this->addPackage($package)
903e0 3b 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 ;.}..if.(count($this->getPackage
90400 73 28 29 29 20 3d 3d 20 30 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 s()).==.0).{.throw.new.\RuntimeE
90420 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4e 6f 20 60 63 6f 6d 70 6f 73 65 72 2e 6a xception(sprintf('No.`composer.j
90440 73 6f 6e 60 20 66 69 6c 65 20 66 6f 75 6e 64 20 69 6e 20 61 6e 79 20 70 61 74 68 20 72 65 70 6f son`.file.found.in.any.path.repo
90460 73 69 74 6f 72 79 20 69 6e 20 22 25 73 22 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 29 3b 0a 7d sitory.in."%s"',.$this->url));.}
90480 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 55 72 6c .}.......private.function.getUrl
904a0 4d 61 74 63 68 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 67 6c 6f 62 28 24 74 68 69 73 2d 3e 75 Matches().{.return.glob($this->u
904c0 72 6c 2c 20 47 4c 4f 42 5f 4d 41 52 4b 20 7c 20 47 4c 4f 42 5f 4f 4e 4c 59 44 49 52 29 3b 0a 7d rl,.GLOB_MARK.|.GLOB_ONLYDIR);.}
904e0 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
90500 6d 70 6f 73 65 72 5c 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 mposer\Repository\Pear;..use.Com
90520 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 0a 0a 0a poser\Util\RemoteFilesystem;....
90540 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 42 61 73 65 43 68 61 6e 6e 65 6c 52 .....abstract.class.BaseChannelR
90560 65 61 64 65 72 0a 7b 0a 0a 0a 0a 63 6f 6e 73 74 20 43 48 41 4e 4e 45 4c 5f 4e 53 20 3d 20 27 68 eader.{....const.CHANNEL_NS.=.'h
90580 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 63 68 61 6e 6e 65 6c 2d 31 2e 30 27 3b ttp://pear.php.net/channel-1.0';
905a0 0a 63 6f 6e 73 74 20 41 4c 4c 5f 43 41 54 45 47 4f 52 49 45 53 5f 4e 53 20 3d 20 27 68 74 74 70 .const.ALL_CATEGORIES_NS.=.'http
905c0 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 72 65 73 74 2e 61 6c 6c 63 61 74 65 ://pear.php.net/dtd/rest.allcate
905e0 67 6f 72 69 65 73 27 3b 0a 63 6f 6e 73 74 20 43 41 54 45 47 4f 52 59 5f 50 41 43 4b 41 47 45 53 gories';.const.CATEGORY_PACKAGES
90600 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 2f _INFO_NS.=.'http://pear.php.net/
90620 64 74 64 2f 72 65 73 74 2e 63 61 74 65 67 6f 72 79 70 61 63 6b 61 67 65 69 6e 66 6f 27 3b 0a 63 dtd/rest.categorypackageinfo';.c
90640 6f 6e 73 74 20 41 4c 4c 5f 50 41 43 4b 41 47 45 53 5f 4e 53 20 3d 20 27 68 74 74 70 3a 2f 2f 70 onst.ALL_PACKAGES_NS.=.'http://p
90660 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 72 65 73 74 2e 61 6c 6c 70 61 63 6b 61 67 65 73 ear.php.net/dtd/rest.allpackages
90680 27 3b 0a 63 6f 6e 73 74 20 41 4c 4c 5f 52 45 4c 45 41 53 45 53 5f 4e 53 20 3d 20 27 68 74 74 70 ';.const.ALL_RELEASES_NS.=.'http
906a0 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 72 65 73 74 2e 61 6c 6c 72 65 6c 65 ://pear.php.net/dtd/rest.allrele
906c0 61 73 65 73 27 3b 0a 63 6f 6e 73 74 20 50 41 43 4b 41 47 45 5f 49 4e 46 4f 5f 4e 53 20 3d 20 27 ases';.const.PACKAGE_INFO_NS.=.'
906e0 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 74 2e 70 61 63 http://pear.php.net/dtd/rest.pac
90700 6b 61 67 65 27 3b 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 66 73 3b 0a 0a 70 72 6f 74 65 63 74 65 kage';...private.$rfs;..protecte
90720 64 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 52 65 6d 6f 74 65 46 69 6c d.function.__construct(RemoteFil
90740 65 73 79 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 esystem.$rfs).{.$this->rfs.=.$rf
90760 73 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 s;.}..........protected.function
90780 20 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 70 61 74 68 29 0a .requestContent($origin,.$path).
907a0 7b 0a 24 75 72 6c 20 3d 20 72 74 72 69 6d 28 24 6f 72 69 67 69 6e 2c 20 27 2f 27 29 20 2e 20 27 {.$url.=.rtrim($origin,.'/')...'
907c0 2f 27 20 2e 20 6c 74 72 69 6d 28 24 70 61 74 68 2c 20 27 2f 27 29 3b 0a 24 63 6f 6e 74 65 6e 74 /'...ltrim($path,.'/');.$content
907e0 20 3d 20 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 6f 72 69 67 .=.$this->rfs->getContents($orig
90800 69 6e 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 29 3b 0a 69 66 20 28 21 24 63 6f 6e 74 65 6e 74 29 in,.$url,.false);.if.(!$content)
90820 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
90840 65 70 74 69 6f 6e 28 27 54 68 65 20 50 45 41 52 20 63 68 61 6e 6e 65 6c 20 61 74 20 27 20 2e 20 eption('The.PEAR.channel.at.'...
90860 24 75 72 6c 20 2e 20 27 20 64 69 64 20 6e 6f 74 20 72 65 73 70 6f 6e 64 2e 27 29 3b 0a 7d 0a 0a $url...'.did.not.respond.');.}..
90880 72 65 74 75 72 6e 20 24 63 6f 6e 74 65 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 return.$content;.}..........prot
908a0 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 71 75 65 73 74 58 6d 6c 28 24 6f 72 69 67 69 ected.function.requestXml($origi
908c0 6e 2c 20 24 70 61 74 68 29 0a 7b 0a 0a 20 24 78 6d 6c 20 3d 20 73 69 6d 70 6c 65 78 6d 6c 5f 6c n,.$path).{...$xml.=.simplexml_l
908e0 6f 61 64 5f 73 74 72 69 6e 67 28 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 43 6f 6e 74 65 6e 74 oad_string($this->requestContent
90900 28 24 6f 72 69 67 69 6e 2c 20 24 70 61 74 68 29 2c 20 22 53 69 6d 70 6c 65 58 4d 4c 45 6c 65 6d ($origin,.$path),."SimpleXMLElem
90920 65 6e 74 22 2c 20 4c 49 42 58 4d 4c 5f 4e 4f 45 52 52 4f 52 29 3b 0a 0a 69 66 20 28 66 61 6c 73 ent",.LIBXML_NOERROR);..if.(fals
90940 65 20 3d 3d 20 24 78 6d 6c 29 20 7b 0a 24 75 72 6c 20 3d 20 72 74 72 69 6d 28 24 6f 72 69 67 69 e.==.$xml).{.$url.=.rtrim($origi
90960 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 2f 27 n,.'/')...'/'...ltrim($path,.'/'
90980 29 3b 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
909a0 65 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 eption(sprintf('The.PEAR.channel
909c0 20 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 .at.'...$origin...'.is.broken..(
909e0 49 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 Invalid.XML.at.file.`%s`)',.$pat
90a00 68 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 h));.}..return.$xml;.}.}.<?php..
90a20 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
90a40 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 43 68 61 6e 6e 65 ository\Pear;.......class.Channe
90a60 6c 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 lInfo.{.private.$name;.private.$
90a80 61 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 alias;.private.$packages;.......
90aa0 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 6e 61 6d public.function.__construct($nam
90ac0 65 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 e,.$alias,.array.$packages).{.$t
90ae0 68 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 his->name.=.$name;.$this->alias.
90b00 3d 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 =.$alias;.$this->packages.=.$pac
90b20 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 20 67 kages;.}.......public.function.g
90b40 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 6d 65 3b 0a 7d etName().{.return.$this->name;.}
90b60 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 6c 69 61 73 28 .......public.function.getAlias(
90b80 29 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 ).{.return.$this->alias;.}......
90ba0 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 73 28 29 0a 7b .public.function.getPackages().{
90bc0 0a 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 .return.$this->packages;.}.}.<?p
90be0 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
90c00 5c 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 \Repository\Pear;..use.Composer\
90c20 55 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 Util\RemoteFilesystem;.........c
90c40 6c 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 lass.ChannelReader.extends.BaseC
90c60 68 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 hannelReader.{..private.$readerM
90c80 61 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 ap;..public.function.__construct
90ca0 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 70 61 72 65 6e 74 (RemoteFilesystem.$rfs).{.parent
90cc0 3a 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 ::__construct($rfs);..$rest10rea
90ce0 64 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 der.=.new.ChannelRest10Reader($r
90d00 66 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 fs);.$rest11reader.=.new.Channel
90d20 52 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 Rest11Reader($rfs);..$this->read
90d40 65 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 erMap.=.array(.'REST1.3'.=>.$res
90d60 74 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 t11reader,.'REST1.2'.=>.$rest11r
90d80 65 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 eader,.'REST1.1'.=>.$rest11reade
90da0 72 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 r,.'REST1.0'.=>.$rest10reader,.)
90dc0 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 72 65 61 64 ;.}.........public.function.read
90de0 28 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 ($url).{.$xml.=.$this->requestXm
90e00 6c 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 l($url,."/channel.xml");..$chann
90e20 65 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 elName.=.(string).$xml->name;.$c
90e40 68 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 hannelSummary.=.(string).$xml->s
90e60 75 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 ummary;.$channelAlias.=.(string)
90e80 20 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 .$xml->suggestedalias;..$support
90ea0 65 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 edVersions.=.array_keys($this->r
90ec0 65 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 eaderMap);.$selectedRestVersion.
90ee0 3d 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 =.$this->selectRestVersion($xml,
90f00 20 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 .$supportedVersions);.if.(!$sele
90f20 63 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 ctedRestVersion).{.throw.new.\Un
90f40 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 28 27 expectedValueException(sprintf('
90f60 50 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 PEAR.repository.%s.does.not.supp
90f80 6f 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 orts.any.of.%s.protocols.',.$url
90fa0 2c 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 ,.implode(',.',.$supportedVersio
90fc0 6e 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 ns)));.}..$reader.=.$this->reade
90fe0 72 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 rMap[$selectedRestVersion['versi
91000 6f 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 on']];.$packageDefinitions.=.$re
91020 61 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 ader->read($selectedRestVersion[
91040 27 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 'baseUrl']);..return.new.Channel
91060 49 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 Info($channelName,.$channelAlias
91080 2c 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 ,.$packageDefinitions);.}.......
910a0 0a 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 ..private.function.selectRestVer
910c0 73 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 sion($channelXml,.$supportedVers
910e0 69 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 ions).{.$channelXml->registerXPa
91100 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 48 41 4e 4e 45 4c 5f thNamespace('ns',.self::CHANNEL_
91120 4e 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 NS);..foreach.($supportedVersion
91140 73 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 s.as.$version).{.$xpathTest.=."n
91160 73 3a 73 65 72 76 65 72 73 2f 6e 73 3a 70 72 69 6d 61 72 79 2f 6e 73 3a 72 65 73 74 2f 6e 73 3a s:servers/ns:primary/ns:rest/ns:
91180 62 61 73 65 75 72 6c 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 baseurl[@type='{$version}']";.$t
911a0 65 73 74 52 65 73 75 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 estResult.=.$channelXml->xpath($
911c0 78 70 61 74 68 54 65 73 74 29 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 74 65 73 74 52 65 73 75 6c xpathTest);.if.(count($testResul
911e0 74 29 20 3e 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 76 65 72 73 69 6f 6e 27 t).>.0).{.return.array('version'
91200 20 3d 3e 20 24 76 65 72 73 69 6f 6e 2c 20 27 62 61 73 65 55 72 6c 27 20 3d 3e 20 28 73 74 72 69 .=>.$version,.'baseUrl'.=>.(stri
91220 6e 67 29 20 24 74 65 73 74 52 65 73 75 6c 74 5b 30 5d 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e ng).$testResult[0]);.}.}..return
91240 20 6e 75 6c 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 65 .null;.}.}.<?php............name
91260 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;.
91280 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 6f .use.Composer\Downloader\Transpo
912a0 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 rtException;.............class.C
912c0 68 61 6e 6e 65 6c 52 65 73 74 31 30 52 65 61 64 65 72 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 hannelRest10Reader.extends.BaseC
912e0 68 61 6e 6e 65 6c 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 hannelReader.{.private.$dependen
91300 63 79 52 65 61 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 cyReader;..public.function.__con
91320 73 74 72 75 63 74 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 struct($rfs).{.parent::__constru
91340 63 74 28 24 72 66 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 ct($rfs);..$this->dependencyRead
91360 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 50 61 72 73 65 72 er.=.new.PackageDependencyParser
91380 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 69 6f 6e 20 72 65 ();.}.........public.function.re
913a0 61 64 28 24 62 61 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 ad($baseUrl).{.return.$this->rea
913c0 64 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 70 dPackages($baseUrl);.}.........p
913e0 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 73 28 24 62 61 rivate.function.readPackages($ba
91400 73 65 55 72 6c 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 78 6d seUrl).{.$result.=.array();..$xm
91420 6c 50 61 74 68 20 3d 20 27 2f 70 2f 70 61 63 6b 61 67 65 73 2e 78 6d 6c 27 3b 0a 24 78 6d 6c 20 lPath.=.'/p/packages.xml';.$xml.
91440 3d 20 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 =.$this->requestXml($baseUrl,.$x
91460 6d 6c 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 mlPath);.$xml->registerXPathName
91480 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 41 4c 4c 5f 50 41 43 4b 41 47 45 53 5f 4e space('ns',.self::ALL_PACKAGES_N
914a0 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 78 6d 6c 2d 3e 78 70 61 74 68 28 27 6e 73 3a 70 27 29 S);.foreach.($xml->xpath('ns:p')
914c0 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 28 73 74 72 .as.$node).{.$packageName.=.(str
914e0 69 6e 67 29 20 24 6e 6f 64 65 3b 0a 24 70 61 63 6b 61 67 65 49 6e 66 6f 20 3d 20 24 74 68 69 73 ing).$node;.$packageInfo.=.$this
91500 2d 3e 72 65 61 64 50 61 63 6b 61 67 65 28 24 62 61 73 65 55 72 6c 2c 20 24 70 61 63 6b 61 67 65 ->readPackage($baseUrl,.$package
91520 4e 61 6d 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 Name);.$result[].=.$packageInfo;
91540 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
91560 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 28 24 62 61 73 rivate.function.readPackage($bas
91580 65 55 72 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b 0a 24 78 6d 6c 50 61 74 68 20 3d eUrl,.$packageName).{.$xmlPath.=
915a0 20 27 2f 70 2f 27 20 2e 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 .'/p/'...strtolower($packageName
915c0 29 20 2e 20 27 2f 69 6e 66 6f 2e 78 6d 6c 27 3b 0a 24 78 6d 6c 20 3d 20 24 74 68 69 73 2d 3e 72 )...'/info.xml';.$xml.=.$this->r
915e0 65 71 75 65 73 74 58 6d 6c 28 24 62 61 73 65 55 72 6c 2c 20 24 78 6d 6c 50 61 74 68 29 3b 0a 24 equestXml($baseUrl,.$xmlPath);.$
91600 78 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 xml->registerXPathNamespace('ns'
91620 2c 20 73 65 6c 66 3a 3a 50 41 43 4b 41 47 45 5f 49 4e 46 4f 5f 4e 53 29 3b 0a 0a 24 63 68 61 6e ,.self::PACKAGE_INFO_NS);..$chan
91640 6e 65 6c 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c 2d 3e 63 3b 0a 24 70 61 63 nelName.=.(string).$xml->c;.$pac
91660 6b 61 67 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c 2d 3e 6e 3b 0a 24 6c 69 kageName.=.(string).$xml->n;.$li
91680 63 65 6e 73 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c 2d 3e 6c 3b 0a 24 73 68 6f 72 74 cense.=.(string).$xml->l;.$short
916a0 44 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c 2d 3e 73 3b 0a Description.=.(string).$xml->s;.
916c0 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 78 6d 6c 2d 3e 64 3b $description.=.(string).$xml->d;
916e0 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 61 63 6b 61 67 65 49 6e 66 6f 28 0a 24 63 68 61 6e 6e ..return.new.PackageInfo(.$chann
91700 65 6c 4e 61 6d 65 2c 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 0a 24 6c 69 63 65 6e 73 65 2c 0a elName,.$packageName,.$license,.
91720 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 2c 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 2c $shortDescription,.$description,
91740 0a 24 74 68 69 73 2d 3e 72 65 61 64 50 61 63 6b 61 67 65 52 65 6c 65 61 73 65 73 28 24 62 61 73 .$this->readPackageReleases($bas
91760 65 55 72 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a eUrl,.$packageName).);.}........
91780 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
917a0 65 6c 65 61 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 eleases($baseUrl,.$packageName).
917c0 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 74 72 79 20 7b 0a 24 78 6d 6c {.$result.=.array();..try.{.$xml
917e0 50 61 74 68 20 3d 20 27 2f 72 2f 27 20 2e 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 61 63 6b 61 Path.=.'/r/'...strtolower($packa
91800 67 65 4e 61 6d 65 29 20 2e 20 27 2f 61 6c 6c 72 65 6c 65 61 73 65 73 2e 78 6d 6c 27 3b 0a 24 78 geName)...'/allreleases.xml';.$x
91820 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 65 55 72 6c 2c ml.=.$this->requestXml($baseUrl,
91840 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 50 61 74 68 4e .$xmlPath);.$xml->registerXPathN
91860 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 52 45 4c 45 41 53 45 amespace('ns',.self::ALL_RELEASE
91880 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 28 27 6e 73 3a S_NS);.foreach.($xml->xpath('ns:
918a0 72 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 20 r').as.$node).{.$releaseVersion.
918c0 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d 3e 76 3b 0a 24 72 65 6c 65 61 73 65 53 74 61 =.(string).$node->v;.$releaseSta
918e0 62 69 6c 69 74 79 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d 3e 73 3b 0a 0a 74 72 79 bility.=.(string).$node->s;..try
91900 20 7b 0a 24 72 65 73 75 6c 74 5b 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 5d 20 3d 20 6e 65 .{.$result[$releaseVersion].=.ne
91920 77 20 52 65 6c 65 61 73 65 49 6e 66 6f 28 0a 24 72 65 6c 65 61 73 65 53 74 61 62 69 6c 69 74 79 w.ReleaseInfo(.$releaseStability
91940 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 73 65 44 65 70 65 6e ,.$this->readPackageReleaseDepen
91960 64 65 6e 63 69 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 2c 20 dencies($baseUrl,.$packageName,.
91980 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 29 0a 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 $releaseVersion).);.}.catch.(Tra
919a0 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 78 63 65 70 74 69 6f 6e 29 20 7b 0a 69 66 nsportException.$exception).{.if
919c0 20 28 24 65 78 63 65 70 74 69 6f 6e 2d 3e 67 65 74 43 6f 64 65 28 29 20 21 3d 20 34 30 34 29 20 .($exception->getCode().!=.404).
919e0 7b 0a 74 68 72 6f 77 20 24 65 78 63 65 70 74 69 6f 6e 3b 0a 7d 0a 7d 0a 7d 0a 7d 20 63 61 74 63 {.throw.$exception;.}.}.}.}.catc
91a00 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 6f 6e h.(TransportException.$exception
91a20 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 21 3d ).{.if.($exception->getCode().!=
91a40 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 0a 72 .404).{.throw.$exception;.}.}..r
91a60 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 0a 70 72 69 76 61 eturn.$result;.}...........priva
91a80 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 50 61 63 6b 61 67 65 52 65 6c 65 61 73 65 44 65 te.function.readPackageReleaseDe
91aa0 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 67 65 4e 61 6d pendencies($baseUrl,.$packageNam
91ac0 65 2c 20 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 24 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 e,.$version).{.$dependencyReader
91ae0 20 3d 20 6e 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 .=.new.PackageDependencyParser()
91b00 3b 0a 0a 24 64 65 70 74 68 50 61 74 68 20 3d 20 27 2f 72 2f 27 20 2e 20 73 74 72 74 6f 6c 6f 77 ;..$depthPath.=.'/r/'...strtolow
91b20 65 72 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 20 2e 20 27 2f 64 65 70 73 2e 27 20 2e 20 24 76 er($packageName)...'/deps.'...$v
91b40 65 72 73 69 6f 6e 20 2e 20 27 2e 74 78 74 27 3b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 24 74 68 69 ersion...'.txt';.$content.=.$thi
91b60 73 2d 3e 72 65 71 75 65 73 74 43 6f 6e 74 65 6e 74 28 24 62 61 73 65 55 72 6c 2c 20 24 64 65 70 s->requestContent($baseUrl,.$dep
91b80 74 68 50 61 74 68 29 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 thPath);.$dependencyArray.=.unse
91ba0 72 69 61 6c 69 7a 65 28 24 63 6f 6e 74 65 6e 74 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 64 65 rialize($content);.$result.=.$de
91bc0 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 2d 3e 62 75 69 6c 64 44 65 70 65 6e 64 65 6e 63 79 49 pendencyReader->buildDependencyI
91be0 6e 66 6f 28 24 64 65 70 65 6e 64 65 6e 63 79 41 72 72 61 79 29 3b 0a 0a 72 65 74 75 72 6e 20 24 nfo($dependencyArray);..return.$
91c00 72 65 73 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 result;.}.}.<?php............nam
91c20 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 65 61 72 3b espace.Composer\Repository\Pear;
91c40 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 68 61 6e 6e 65 6c 52 65 73 74 31 31 52 65 ...........class.ChannelRest11Re
91c60 61 64 65 72 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 0a 7b ader.extends.BaseChannelReader.{
91c80 0a 70 72 69 76 61 74 65 20 24 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 3b 0a 0a 70 75 62 .private.$dependencyReader;..pub
91ca0 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 72 66 73 29 0a 7b lic.function.__construct($rfs).{
91cc0 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 66 73 29 3b 0a 0a 24 74 68 .parent::__construct($rfs);..$th
91ce0 69 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 20 3d 20 6e 65 77 20 50 61 63 6b 61 is->dependencyReader.=.new.Packa
91d00 67 65 44 65 70 65 6e 64 65 6e 63 79 50 61 72 73 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a geDependencyParser();.}.........
91d20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 28 24 62 61 73 65 55 72 6c 29 0a 7b public.function.read($baseUrl).{
91d40 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 64 43 68 61 6e 6e 65 6c 50 61 63 6b 61 67 .return.$this->readChannelPackag
91d60 65 73 28 24 62 61 73 65 55 72 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 es($baseUrl);.}.........private.
91d80 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 43 68 61 6e 6e 65 6c 50 61 63 6b 61 67 65 73 28 24 62 61 function.readChannelPackages($ba
91da0 73 65 55 72 6c 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 78 6d seUrl).{.$result.=.array();..$xm
91dc0 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 65 55 72 6c 2c 20 l.=.$this->requestXml($baseUrl,.
91de0 22 2f 63 2f 63 61 74 65 67 6f 72 69 65 73 2e 78 6d 6c 22 29 3b 0a 24 78 6d 6c 2d 3e 72 65 67 69 "/c/categories.xml");.$xml->regi
91e00 73 74 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 sterXPathNamespace('ns',.self::A
91e20 4c 4c 5f 43 41 54 45 47 4f 52 49 45 53 5f 4e 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 78 6d 6c LL_CATEGORIES_NS);.foreach.($xml
91e40 2d 3e 78 70 61 74 68 28 27 6e 73 3a 63 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 63 61 74 ->xpath('ns:c').as.$node).{.$cat
91e60 65 67 6f 72 79 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 3b 0a 24 63 61 74 egoryName.=.(string).$node;.$cat
91e80 65 67 6f 72 79 50 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 64 43 61 74 65 67 egoryPackages.=.$this->readCateg
91ea0 6f 72 79 50 61 63 6b 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 oryPackages($baseUrl,.$categoryN
91ec0 61 6d 65 29 3b 0a 24 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 ame);.$result.=.array_merge($res
91ee0 75 6c 74 2c 20 24 63 61 74 65 67 6f 72 79 50 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 72 65 74 75 ult,.$categoryPackages);.}..retu
91f00 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 rn.$result;.}..........private.f
91f20 75 6e 63 74 69 6f 6e 20 72 65 61 64 43 61 74 65 67 6f 72 79 50 61 63 6b 61 67 65 73 28 24 62 61 unction.readCategoryPackages($ba
91f40 73 65 55 72 6c 2c 20 24 63 61 74 65 67 6f 72 79 4e 61 6d 65 29 0a 7b 0a 24 72 65 73 75 6c 74 20 seUrl,.$categoryName).{.$result.
91f60 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 63 61 74 65 67 6f 72 79 50 61 74 68 20 3d 20 27 2f 63 2f =.array();..$categoryPath.=.'/c/
91f80 27 2e 75 72 6c 65 6e 63 6f 64 65 28 24 63 61 74 65 67 6f 72 79 4e 61 6d 65 29 2e 27 2f 70 61 63 '.urlencode($categoryName).'/pac
91fa0 6b 61 67 65 73 69 6e 66 6f 2e 78 6d 6c 27 3b 0a 24 78 6d 6c 20 3d 20 24 74 68 69 73 2d 3e 72 65 kagesinfo.xml';.$xml.=.$this->re
91fc0 71 75 65 73 74 58 6d 6c 28 24 62 61 73 65 55 72 6c 2c 20 24 63 61 74 65 67 6f 72 79 50 61 74 68 questXml($baseUrl,.$categoryPath
91fe0 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 61 63 65 28 );.$xml->registerXPathNamespace(
92000 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 43 41 54 45 47 4f 52 59 5f 50 41 43 4b 41 47 45 53 5f 49 4e 'ns',.self::CATEGORY_PACKAGES_IN
92020 46 4f 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 28 27 6e 73 FO_NS);.foreach.($xml->xpath('ns
92040 3a 70 69 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 49 6e 66 6f 20 3d :pi').as.$node).{.$packageInfo.=
92060 20 24 74 68 69 73 2d 3e 70 61 72 73 65 50 61 63 6b 61 67 65 28 24 6e 6f 64 65 29 3b 0a 24 72 65 .$this->parsePackage($node);.$re
92080 73 75 6c 74 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 3b 0a 7d 0a 0a 72 65 74 75 72 6e sult[].=.$packageInfo;.}..return
920a0 20 24 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 .$result;.}........private.funct
920c0 69 6f 6e 20 70 61 72 73 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 49 6e 66 6f 29 0a 7b ion.parsePackage($packageInfo).{
920e0 0a 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 68 4e 61 6d 65 .$packageInfo->registerXPathName
92100 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 4b 41 space('ns',.self::CATEGORY_PACKA
92120 47 45 53 5f 49 4e 46 4f 5f 4e 53 29 3b 0a 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 28 73 74 GES_INFO_NS);.$channelName.=.(st
92140 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 70 2d 3e 63 3b 0a 24 70 61 63 6b 61 ring).$packageInfo->p->c;.$packa
92160 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 49 6e 66 6f 2d 3e geName.=.(string).$packageInfo->
92180 70 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 70 61 63 6b 61 p->n;.$license.=.(string).$packa
921a0 67 65 49 6e 66 6f 2d 3e 70 2d 3e 6c 3b 0a 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 20 geInfo->p->l;.$shortDescription.
921c0 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 73 3b 0a 24 =.(string).$packageInfo->p->s;.$
921e0 64 65 73 63 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 description.=.(string).$packageI
92200 6e 66 6f 2d 3e 70 2d 3e 64 3b 0a 0a 24 64 65 70 65 6e 64 65 6e 63 69 65 73 20 3d 20 61 72 72 61 nfo->p->d;..$dependencies.=.arra
92220 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 78 70 61 74 y();.foreach.($packageInfo->xpat
92240 68 28 27 6e 73 3a 64 65 70 73 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 64 65 70 65 6e 64 h('ns:deps').as.$node).{.$depend
92260 65 6e 63 79 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 encyVersion.=.(string).$node->v;
92280 0a 24 64 65 70 65 6e 64 65 6e 63 79 41 72 72 61 79 20 3d 20 75 6e 73 65 72 69 61 6c 69 7a 65 28 .$dependencyArray.=.unserialize(
922a0 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d 3e 64 29 3b 0a 0a 24 64 65 70 65 6e 64 65 6e 63 79 (string).$node->d);..$dependency
922c0 49 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 2d 3e Info.=.$this->dependencyReader->
922e0 62 75 69 6c 64 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 64 65 70 65 6e 64 65 6e 63 79 41 buildDependencyInfo($dependencyA
92300 72 72 61 79 29 3b 0a 0a 24 64 65 70 65 6e 64 65 6e 63 69 65 73 5b 24 64 65 70 65 6e 64 65 6e 63 rray);..$dependencies[$dependenc
92320 79 56 65 72 73 69 6f 6e 5d 20 3d 20 24 64 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 3b 0a 7d 0a 0a yVersion].=.$dependencyInfo;.}..
92340 24 72 65 6c 65 61 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 72 65 6c 65 61 73 65 73 49 6e $releases.=.array();.$releasesIn
92360 66 6f 20 3d 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 78 70 61 74 68 28 27 6e 73 3a 61 2f 6e fo.=.$packageInfo->xpath('ns:a/n
92380 73 3a 72 27 29 3b 0a 69 66 20 28 24 72 65 6c 65 61 73 65 73 49 6e 66 6f 29 20 7b 0a 66 6f 72 65 s:r');.if.($releasesInfo).{.fore
923a0 61 63 68 20 28 24 72 65 6c 65 61 73 65 73 49 6e 66 6f 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 ach.($releasesInfo.as.$node).{.$
923c0 72 65 6c 65 61 73 65 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 releaseVersion.=.(string).$node-
923e0 3e 76 3b 0a 24 72 65 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 >v;.$releaseStability.=.(string)
92400 20 24 6e 6f 64 65 2d 3e 73 3b 0a 24 72 65 6c 65 61 73 65 73 5b 24 72 65 6c 65 61 73 65 56 65 72 .$node->s;.$releases[$releaseVer
92420 73 69 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 sion].=.new.ReleaseInfo(.$releas
92440 65 53 74 61 62 69 6c 69 74 79 2c 0a 69 73 73 65 74 28 24 64 65 70 65 6e 64 65 6e 63 69 65 73 5b eStability,.isset($dependencies[
92460 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 5d 29 20 3f 20 24 64 65 70 65 6e 64 65 6e 63 69 65 $releaseVersion]).?.$dependencie
92480 73 5b 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 5d 20 3a 20 6e 65 77 20 44 65 70 65 6e 64 65 s[$releaseVersion].:.new.Depende
924a0 6e 63 79 49 6e 66 6f 28 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 28 29 29 0a 29 3b 0a 7d 0a 7d ncyInfo(array(),.array()).);.}.}
924c0 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 61 63 6b 61 67 65 49 6e 66 6f 28 0a 24 63 68 61 6e 6e ..return.new.PackageInfo(.$chann
924e0 65 6c 4e 61 6d 65 2c 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 0a 24 6c 69 63 65 6e 73 65 2c 0a elName,.$packageName,.$license,.
92500 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 2c 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 2c $shortDescription,.$description,
92520 0a 24 72 65 6c 65 61 73 65 73 0a 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a .$releases.);.}.}.<?php.........
92540 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 79 ...namespace.Composer\Repository
92560 5c 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 70 65 6e 64 65 6e 63 79 43 6f 6e \Pear;.......class.DependencyCon
92580 73 74 72 61 69 6e 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 74 79 70 65 3b 0a 70 72 69 76 61 74 65 straint.{.private.$type;.private
925a0 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 70 72 69 76 61 74 65 20 24 63 68 61 6e 6e 65 6c 4e 61 .$constraint;.private.$channelNa
925c0 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 0a 0a 0a 0a 0a 0a me;.private.$packageName;.......
925e0 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 74 79 .public.function.__construct($ty
92600 70 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 2c 20 24 pe,.$constraint,.$channelName,.$
92620 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 79 70 65 20 3d 20 24 74 79 packageName).{.$this->type.=.$ty
92640 70 65 3b 0a 24 74 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 pe;.$this->constraint.=.$constra
92660 69 6e 74 3b 0a 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 24 63 68 61 6e 6e int;.$this->channelName.=.$chann
92680 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 20 3d 20 24 70 61 elName;.$this->packageName.=.$pa
926a0 63 6b 61 67 65 4e 61 6d 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 ckageName;.}..public.function.ge
926c0 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 tChannelName().{.return.$this->c
926e0 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 hannelName;.}..public.function.g
92700 65 74 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 etConstraint().{.return.$this->c
92720 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 onstraint;.}..public.function.ge
92740 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 tPackageName().{.return.$this->p
92760 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 63 74 69 6f 6e 20 67 ackageName;.}..public.function.g
92780 65 74 54 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 3b 0a 7d etType().{.return.$this->type;.}
927a0 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
927c0 6d 70 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 mposer\Repository\Pear;.......cl
927e0 61 73 73 20 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 0a 7b 0a 70 72 69 76 61 74 65 20 24 72 65 ass.DependencyInfo.{.private.$re
92800 71 75 69 72 65 73 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 61 6c 73 3b 0a 0a 0a 0a 0a quires;.private.$optionals;.....
92820 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 72 65 .public.function.__construct($re
92840 71 75 69 72 65 73 2c 20 24 6f 70 74 69 6f 6e 61 6c 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 71 quires,.$optionals).{.$this->req
92860 75 69 72 65 73 20 3d 20 24 72 65 71 75 69 72 65 73 3b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e uires.=.$requires;.$this->option
92880 61 6c 73 20 3d 20 24 6f 70 74 69 6f 6e 61 6c 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 als.=.$optionals;.}.....public.f
928a0 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 71 75 69 72 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 unction.getRequires().{.return.$
928c0 74 68 69 73 2d 3e 72 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e this->requires;.}.....public.fun
928e0 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 61 6c 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 ction.getOptionals().{.return.$t
92900 68 69 73 2d 3e 6f 70 74 69 6f 6e 61 6c 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a his->optionals;.}.}.<?php.......
92920 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
92940 72 79 5c 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 63 6b 61 67 65 44 65 70 65 ry\Pear;.......class.PackageDepe
92960 6e 64 65 6e 63 79 50 61 72 73 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ndencyParser.{.......public.func
92980 74 69 6f 6e 20 62 75 69 6c 64 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 64 65 70 41 72 72 tion.buildDependencyInfo($depArr
929a0 61 79 29 0a 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 64 65 70 41 72 72 61 79 29 29 20 ay).{.if.(!is_array($depArray)).
929c0 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 61 72 72 61 {.return.new.DependencyInfo(arra
929e0 79 28 29 2c 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 48 y(),.array());.}.if.(!$this->isH
92a00 61 73 68 28 24 64 65 70 41 72 72 61 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 44 65 70 ash($depArray)).{.return.new.Dep
92a20 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 74 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 65 6e 64 65 6e endencyInfo($this->buildDependen
92a40 63 79 31 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 2c 20 61 72 72 61 79 28 29 29 3b 0a 7d cy10Info($depArray),.array());.}
92a60 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 65 6e 64 65 6e 63 79 32 ..return.$this->buildDependency2
92a80 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0Info($depArray);.}.............
92aa0 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 44 65 70 65 6e 64 65 6e 63 .private.function.buildDependenc
92ac0 79 31 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 0a 7b 0a 73 74 61 74 69 63 20 24 64 65 70 y10Info($depArray).{.static.$dep
92ae0 31 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 20 3d 20 61 72 72 61 79 28 27 68 61 73 27 20 3d 3e 10toOperatorMap.=.array('has'.=>
92b00 20 27 3d 3d 27 2c 20 27 65 71 27 20 3d 3e 20 27 3d 3d 27 2c 20 27 67 65 27 20 3d 3e 20 27 3e 3d .'==',.'eq'.=>.'==',.'ge'.=>.'>=
92b20 27 2c 20 27 67 74 27 20 3d 3e 20 27 3e 27 2c 20 27 6c 65 27 20 3d 3e 20 27 3c 3d 27 2c 20 27 6c ',.'gt'.=>.'>',.'le'.=>.'<=',.'l
92b40 74 27 20 3d 3e 20 27 3c 27 2c 20 27 6e 6f 74 27 20 3d 3e 20 27 21 3d 27 29 3b 0a 0a 24 72 65 73 t'.=>.'<',.'not'.=>.'!=');..$res
92b60 75 6c 74 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 70 41 72 72 ult.=.array();..foreach.($depArr
92b80 61 79 20 61 73 20 24 64 65 70 49 74 65 6d 29 20 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 64 65 70 ay.as.$depItem).{.if.(empty($dep
92ba0 49 74 65 6d 5b 27 72 65 6c 27 5d 29 20 7c 7c 20 21 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 Item['rel']).||.!array_key_exist
92bc0 73 28 24 64 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 2c 20 24 64 65 70 31 30 74 6f 4f 70 65 72 61 s($depItem['rel'],.$dep10toOpera
92be0 74 6f 72 4d 61 70 29 29 20 7b 0a 0a 20 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 64 65 70 54 79 torMap)).{...continue;.}..$depTy
92c00 70 65 20 3d 20 21 65 6d 70 74 79 28 24 64 65 70 49 74 65 6d 5b 27 6f 70 74 69 6f 6e 61 6c 27 5d pe.=.!empty($depItem['optional']
92c20 29 20 26 26 20 27 79 65 73 27 20 3d 3d 20 24 64 65 70 49 74 65 6d 5b 27 6f 70 74 69 6f 6e 61 6c ).&&.'yes'.==.$depItem['optional
92c40 27 5d 0a 3f 20 27 6f 70 74 69 6f 6e 61 6c 27 0a 3a 20 27 72 65 71 75 69 72 65 64 27 3b 0a 24 64 '].?.'optional'.:.'required';.$d
92c60 65 70 54 79 70 65 20 3d 20 27 6e 6f 74 27 20 3d 3d 20 24 64 65 70 49 74 65 6d 5b 27 72 65 6c 27 epType.=.'not'.==.$depItem['rel'
92c80 5d 0a 3f 20 27 63 6f 6e 66 6c 69 63 74 73 27 0a 3a 20 24 64 65 70 54 79 70 65 3b 0a 0a 24 64 65 ].?.'conflicts'.:.$depType;..$de
92ca0 70 56 65 72 73 69 6f 6e 20 3d 20 21 65 6d 70 74 79 28 24 64 65 70 49 74 65 6d 5b 27 76 65 72 73 pVersion.=.!empty($depItem['vers
92cc0 69 6f 6e 27 5d 29 20 3f 20 24 74 68 69 73 2d 3e 70 61 72 73 65 56 65 72 73 69 6f 6e 28 24 64 65 ion']).?.$this->parseVersion($de
92ce0 70 49 74 65 6d 5b 27 76 65 72 73 69 6f 6e 27 5d 29 20 3a 20 27 2a 27 3b 0a 0a 0a 20 24 64 65 70 pItem['version']).:.'*';....$dep
92d00 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 28 27 68 61 73 27 20 3d 3d 20 24 64 VersionConstraint.=.('has'.==.$d
92d20 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 20 7c 7c 20 27 6e 6f 74 27 20 3d 3d 20 24 64 65 70 49 74 epItem['rel'].||.'not'.==.$depIt
92d40 65 6d 5b 27 72 65 6c 27 5d 29 20 26 26 20 27 2a 27 20 3d 3d 20 24 64 65 70 56 65 72 73 69 6f 6e em['rel']).&&.'*'.==.$depVersion
92d60 0a 3f 20 27 2a 27 0a 3a 20 24 64 65 70 31 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 5b 24 64 65 .?.'*'.:.$dep10toOperatorMap[$de
92d80 70 49 74 65 6d 5b 27 72 65 6c 27 5d 5d 20 2e 20 24 64 65 70 56 65 72 73 69 6f 6e 3b 0a 0a 73 77 pItem['rel']]...$depVersion;..sw
92da0 69 74 63 68 20 28 24 64 65 70 49 74 65 6d 5b 27 74 79 70 65 27 5d 29 20 7b 0a 63 61 73 65 20 27 itch.($depItem['type']).{.case.'
92dc0 70 68 70 27 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 27 70 68 70 27 3b 0a 24 php':.$depChannelName.=.'php';.$
92de0 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 27 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 depPackageName.=.'';.break;.case
92e00 20 27 70 6b 67 27 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 21 65 6d 70 74 79 .'pkg':.$depChannelName.=.!empty
92e20 28 24 64 65 70 49 74 65 6d 5b 27 63 68 61 6e 6e 65 6c 27 5d 29 20 3f 20 24 64 65 70 49 74 65 6d ($depItem['channel']).?.$depItem
92e40 5b 27 63 68 61 6e 6e 65 6c 27 5d 20 3a 20 27 70 65 61 72 2e 70 68 70 2e 6e 65 74 27 3b 0a 24 64 ['channel'].:.'pear.php.net';.$d
92e60 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 64 65 70 49 74 65 6d 5b 27 6e 61 6d 65 27 5d epPackageName.=.$depItem['name']
92e80 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 65 78 74 27 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c ;.break;.case.'ext':.$depChannel
92ea0 4e 61 6d 65 20 3d 20 27 65 78 74 27 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 Name.=.'ext';.$depPackageName.=.
92ec0 24 64 65 70 49 74 65 6d 5b 27 6e 61 6d 65 27 5d 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 6f $depItem['name'];.break;.case.'o
92ee0 73 27 3a 0a 63 61 73 65 20 27 73 61 70 69 27 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 s':.case.'sapi':.$depChannelName
92f00 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 0a 62 72 65 .=.'';.$depPackageName.=.'';.bre
92f20 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 27 ak;.default:.$depChannelName.=.'
92f40 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 61 6b 3b 0a ';.$depPackageName.=.'';.break;.
92f60 7d 0a 0a 69 66 20 28 27 27 20 21 3d 20 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 29 20 7b 0a }..if.(''.!=.$depChannelName).{.
92f80 24 72 65 73 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 $result[].=.new.DependencyConstr
92fa0 61 69 6e 74 28 0a 24 64 65 70 54 79 70 65 2c 0a 24 64 65 70 56 65 72 73 69 6f 6e 43 6f 6e 73 74 aint(.$depType,.$depVersionConst
92fc0 72 61 69 6e 74 2c 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 2c 0a 24 64 65 70 50 61 63 6b raint,.$depChannelName,.$depPack
92fe0 61 67 65 4e 61 6d 65 0a 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a ageName.);.}.}..return.$result;.
93000 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 62 75 69 6c 64 44 }........private.function.buildD
93020 65 70 65 6e 64 65 6e 63 79 32 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 0a 7b 0a 24 72 65 ependency20Info($depArray).{.$re
93040 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6f 70 74 69 6f 6e 61 6c 73 20 3d 20 61 72 72 sult.=.array();.$optionals.=.arr
93060 61 79 28 29 3b 0a 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 61 6c 73 20 3d 20 61 72 72 61 79 28 ay();.$defaultOptionals.=.array(
93080 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 41 72 72 61 79 20 61 73 20 24 64 65 70 54 79 70 );.foreach.($depArray.as.$depTyp
930a0 65 20 3d 3e 20 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 e.=>.$depTypeGroup).{.if.(!is_ar
930c0 72 61 79 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a ray($depTypeGroup)).{.continue;.
930e0 7d 0a 69 66 20 28 27 72 65 71 75 69 72 65 64 27 20 3d 3d 20 24 64 65 70 54 79 70 65 20 7c 7c 20 }.if.('required'.==.$depType.||.
93100 27 6f 70 74 69 6f 6e 61 6c 27 20 3d 3d 20 24 64 65 70 54 79 70 65 29 20 7b 0a 66 6f 72 65 61 63 'optional'.==.$depType).{.foreac
93120 68 20 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 20 61 73 20 24 64 65 70 49 74 65 6d 54 79 70 65 h.($depTypeGroup.as.$depItemType
93140 20 3d 3e 20 24 64 65 70 49 74 65 6d 29 20 7b 0a 73 77 69 74 63 68 20 28 24 64 65 70 49 74 65 6d .=>.$depItem).{.switch.($depItem
93160 54 79 70 65 29 20 7b 0a 63 61 73 65 20 27 70 68 70 27 3a 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 Type).{.case.'php':.$result[].=.
93180 6e 65 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 new.DependencyConstraint(.$depTy
931a0 70 65 2c 0a 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 pe,.$this->parse20VersionConstra
931c0 69 6e 74 28 24 64 65 70 49 74 65 6d 29 2c 0a 27 70 68 70 27 2c 0a 27 27 0a 29 3b 0a 62 72 65 61 int($depItem),.'php',.''.);.brea
931e0 6b 3b 0a 63 61 73 65 20 27 70 61 63 6b 61 67 65 27 3a 0a 24 64 65 70 73 20 3d 20 24 74 68 69 73 k;.case.'package':.$deps.=.$this
93200 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 28 24 64 65 ->buildDepPackageConstraints($de
93220 70 49 74 65 6d 2c 20 24 64 65 70 54 79 70 65 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 pItem,.$depType);.$result.=.arra
93240 79 5f 6d 65 72 67 65 28 24 72 65 73 75 6c 74 2c 20 24 64 65 70 73 29 3b 0a 62 72 65 61 6b 3b 0a y_merge($result,.$deps);.break;.
93260 63 61 73 65 20 27 65 78 74 65 6e 73 69 6f 6e 27 3a 0a 24 64 65 70 73 20 3d 20 24 74 68 69 73 2d case.'extension':.$deps.=.$this-
93280 3e 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 24 64 >buildDepExtensionConstraints($d
932a0 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 74 20 3d 20 61 72 72 epItem,.$depType);.$result.=.arr
932c0 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 0a 62 72 65 61 6b 3b ay_merge($result,.$deps);.break;
932e0 0a 63 61 73 65 20 27 73 75 62 70 61 63 6b 61 67 65 27 3a 0a 24 64 65 70 73 20 3d 20 24 74 68 69 .case.'subpackage':.$deps.=.$thi
93300 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 28 24 64 s->buildDepPackageConstraints($d
93320 65 70 49 74 65 6d 2c 20 27 72 65 70 6c 61 63 65 73 27 29 3b 0a 24 64 65 66 61 75 6c 74 4f 70 74 epItem,.'replaces');.$defaultOpt
93340 69 6f 6e 61 6c 73 20 2b 3d 20 24 64 65 70 73 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 6f 73 ionals.+=.$deps;.break;.case.'os
93360 27 3a 0a 63 61 73 65 20 27 70 65 61 72 69 6e 73 74 61 6c 6c 65 72 27 3a 0a 62 72 65 61 6b 3b 0a ':.case.'pearinstaller':.break;.
93380 64 65 66 61 75 6c 74 3a 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 27 67 default:.break;.}.}.}.elseif.('g
933a0 72 6f 75 70 27 20 3d 3d 20 24 64 65 70 54 79 70 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e roup'.==.$depType).{.if.($this->
933c0 69 73 48 61 73 68 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 29 20 7b 0a 24 64 65 70 54 79 70 isHash($depTypeGroup)).{.$depTyp
933e0 65 47 72 6f 75 70 20 3d 20 61 72 72 61 79 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 3b 0a 7d eGroup.=.array($depTypeGroup);.}
93400 0a 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
93420 49 74 65 6d 29 20 7b 0a 24 67 72 6f 75 70 4e 61 6d 65 20 3d 20 24 64 65 70 49 74 65 6d 5b 27 61 Item).{.$groupName.=.$depItem['a
93440 74 74 72 69 62 73 27 5d 5b 27 6e 61 6d 65 27 5d 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 6f 70 ttribs']['name'];.if.(!isset($op
93460 74 69 6f 6e 61 6c 73 5b 24 67 72 6f 75 70 4e 61 6d 65 5d 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 61 tionals[$groupName])).{.$optiona
93480 6c 73 5b 24 67 72 6f 75 70 4e 61 6d 65 5d 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 69 66 20 ls[$groupName].=.array();.}..if.
934a0 28 69 73 73 65 74 28 24 64 65 70 49 74 65 6d 5b 27 73 75 62 70 61 63 6b 61 67 65 27 5d 29 29 20 (isset($depItem['subpackage'])).
934c0 7b 0a 24 6f 70 74 69 6f 6e 61 6c 73 5b 24 67 72 6f 75 70 4e 61 6d 65 5d 20 2b 3d 20 24 74 68 69 {.$optionals[$groupName].+=.$thi
934e0 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 28 24 64 s->buildDepPackageConstraints($d
93500 65 70 49 74 65 6d 5b 27 73 75 62 70 61 63 6b 61 67 65 27 5d 2c 20 27 72 65 70 6c 61 63 65 73 27 epItem['subpackage'],.'replaces'
93520 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 73 75 6c 74 20 2b 3d 20 24 74 68 69 73 2d 3e 62 75 );.}.else.{.$result.+=.$this->bu
93540 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 64 65 70 49 74 65 ildDepPackageConstraints($depIte
93560 6d 5b 27 70 61 63 6b 61 67 65 27 5d 2c 20 27 6f 70 74 69 6f 6e 61 6c 27 29 3b 0a 7d 0a 7d 0a 7d m['package'],.'optional');.}.}.}
93580 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 61 6c 73 29 .}..if.(count($defaultOptionals)
935a0 20 3e 20 30 29 20 7b 0a 24 6f 70 74 69 6f 6e 61 6c 73 5b 27 2a 27 5d 20 3d 20 24 64 65 66 61 75 .>.0).{.$optionals['*'].=.$defau
935c0 6c 74 4f 70 74 69 6f 6e 61 6c 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 44 65 70 65 6e ltOptionals;.}..return.new.Depen
935e0 64 65 6e 63 79 49 6e 66 6f 28 24 72 65 73 75 6c 74 2c 20 24 6f 70 74 69 6f 6e 61 6c 73 29 3b 0a dencyInfo($result,.$optionals);.
93600 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 62 75 69 6c 64 }.........private.function.build
93620 44 65 70 45 78 74 65 6e 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 64 65 70 49 74 65 6d DepExtensionConstraints($depItem
93640 2c 20 24 64 65 70 54 79 70 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 48 61 73 68 28 ,.$depType).{.if.($this->isHash(
93660 24 64 65 70 49 74 65 6d 29 29 20 7b 0a 24 64 65 70 49 74 65 6d 20 3d 20 61 72 72 61 79 28 24 64 $depItem)).{.$depItem.=.array($d
93680 65 70 49 74 65 6d 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 epItem);.}..$result.=.array();.f
936a0 6f 72 65 61 63 68 20 28 24 64 65 70 49 74 65 6d 20 61 73 20 24 73 75 62 44 65 70 49 74 65 6d 29 oreach.($depItem.as.$subDepItem)
936c0 20 7b 0a 24 64 65 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 .{.$depChannelName.=.'ext';.$dep
936e0 50 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 PackageName.=.$subDepItem['name'
93700 5d 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 ];.$depVersionConstraint.=.$this
93720 2d 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 ->parse20VersionConstraint($subD
93740 65 70 49 74 65 6d 29 3b 0a 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 6e 65 77 20 44 65 70 65 6e 64 epItem);..$result[].=.new.Depend
93760 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
93780 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
937a0 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.$
937c0 72 65 73 75 6c 74 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 result;.}.........private.functi
937e0 6f 6e 20 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 28 24 64 on.buildDepPackageConstraints($d
93800 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 3e 69 epItem,.$depType).{.if.($this->i
93820 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 61 72 sHash($depItem)).{.$depItem.=.ar
93840 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 72 61 ray($depItem);.}..$result.=.arra
93860 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 44 65 y();.foreach.($depItem.as.$subDe
93880 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 24 73 75 62 44 pItem).{.$depChannelName.=.$subD
938a0 65 70 49 74 65 6d 5b 27 63 68 61 6e 6e 65 6c 27 5d 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 epItem['channel'];.$depPackageNa
938c0 6d 65 20 3d 20 24 73 75 62 44 65 70 49 74 65 6d 5b 27 6e 61 6d 65 27 5d 3b 0a 24 64 65 70 56 65 me.=.$subDepItem['name'];.$depVe
938e0 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 32 30 rsionConstraint.=.$this->parse20
93900 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 24 73 75 62 44 65 70 49 74 65 6d 29 3b 0a VersionConstraint($subDepItem);.
93920 69 66 20 28 69 73 73 65 74 28 24 73 75 62 44 65 70 49 74 65 6d 5b 27 63 6f 6e 66 6c 69 63 74 73 if.(isset($subDepItem['conflicts
93940 27 5d 29 29 20 7b 0a 24 64 65 70 54 79 70 65 20 3d 20 27 63 6f 6e 66 6c 69 63 74 73 27 3b 0a 7d '])).{.$depType.=.'conflicts';.}
93960 0a 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 63 79 43 6f 6e 73 ..$result[].=.new.DependencyCons
93980 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 69 6f 6e 43 6f 6e traint(.$depType,.$depVersionCon
939a0 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 24 64 65 70 50 61 straint,.$depChannelName,.$depPa
939c0 63 6b 61 67 65 4e 61 6d 65 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a ckageName.);.}..return.$result;.
939e0 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 61 72 73 65 32 }........private.function.parse2
93a00 30 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 61 72 72 61 79 20 24 64 61 74 61 29 0a 0VersionConstraint(array.$data).
93a20 7b 0a 73 74 61 74 69 63 20 24 64 65 70 32 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 20 3d 20 61 {.static.$dep20toOperatorMap.=.a
93a40 72 72 61 79 28 27 68 61 73 27 20 3d 3e 20 27 3d 3d 27 2c 20 27 6d 69 6e 27 20 3d 3e 20 27 3e 3d rray('has'.=>.'==',.'min'.=>.'>=
93a60 27 2c 20 27 6d 61 78 27 20 3d 3e 20 27 3c 3d 27 2c 20 27 65 78 63 6c 75 64 65 27 20 3d 3e 20 27 ',.'max'.=>.'<=',.'exclude'.=>.'
93a80 21 3d 27 29 3b 0a 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 76 61 6c !=');..$versions.=.array();.$val
93aa0 75 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 64 61 74 61 2c ues.=.array_intersect_key($data,
93ac0 20 24 64 65 70 32 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 29 3b 0a 69 66 20 28 30 20 3d 3d 20 .$dep20toOperatorMap);.if.(0.==.
93ae0 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 27 2a 27 3b 0a 7d 0a count($values)).{.return.'*';.}.
93b00 69 66 20 28 69 73 73 65 74 28 24 76 61 6c 75 65 73 5b 27 6d 69 6e 27 5d 29 20 26 26 20 69 73 73 if.(isset($values['min']).&&.iss
93b20 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 64 61 74 61 5b et($values['exclude']).&&.$data[
93b40 27 6d 69 6e 27 5d 20 3d 3d 20 24 64 61 74 61 5b 27 65 78 63 6c 75 64 65 27 5d 29 20 7b 0a 24 76 'min'].==.$data['exclude']).{.$v
93b60 65 72 73 69 6f 6e 73 5b 5d 20 3d 20 27 3e 27 20 2e 20 24 74 68 69 73 2d 3e 70 61 72 73 65 56 65 ersions[].=.'>'...$this->parseVe
93b80 72 73 69 6f 6e 28 24 76 61 6c 75 65 73 5b 27 6d 69 6e 27 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 20 rsion($values['min']);.}.elseif.
93ba0 28 69 73 73 65 74 28 24 76 61 6c 75 65 73 5b 27 6d 61 78 27 5d 29 20 26 26 20 69 73 73 65 74 28 (isset($values['max']).&&.isset(
93bc0 24 76 61 6c 75 65 73 5b 27 65 78 63 6c 75 64 65 27 5d 29 20 26 26 20 24 64 61 74 61 5b 27 6d 61 $values['exclude']).&&.$data['ma
93be0 78 27 5d 20 3d 3d 20 24 64 61 74 61 5b 27 65 78 63 6c 75 64 65 27 5d 29 20 7b 0a 24 76 65 72 73 x'].==.$data['exclude']).{.$vers
93c00 69 6f 6e 73 5b 5d 20 3d 20 27 3c 27 20 2e 20 24 74 68 69 73 2d 3e 70 61 72 73 65 56 65 72 73 69 ions[].=.'<'...$this->parseVersi
93c20 6f 6e 28 24 76 61 6c 75 65 73 5b 27 6d 61 78 27 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 on($values['max']);.}.else.{.for
93c40 65 61 63 68 20 28 24 76 61 6c 75 65 73 20 61 73 20 24 6f 70 20 3d 3e 20 24 76 65 72 73 69 6f 6e each.($values.as.$op.=>.$version
93c60 29 20 7b 0a 69 66 20 28 27 65 78 63 6c 75 64 65 27 20 3d 3d 20 24 6f 70 20 26 26 20 69 73 5f 61 ).{.if.('exclude'.==.$op.&&.is_a
93c80 72 72 61 79 28 24 76 65 72 73 69 6f 6e 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 76 65 72 73 rray($version)).{.foreach.($vers
93ca0 69 6f 6e 20 61 73 20 24 76 65 72 73 69 6f 6e 50 61 72 74 29 20 7b 0a 24 76 65 72 73 69 6f 6e 73 ion.as.$versionPart).{.$versions
93cc0 5b 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 [].=.$dep20toOperatorMap[$op]...
93ce0 24 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 50 61 72 74 $this->parseVersion($versionPart
93d00 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e 73 5b 5d 20 3d 20 24 64 65 70 );.}.}.else.{.$versions[].=.$dep
93d20 32 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 5b 24 6f 70 5d 20 2e 20 24 74 68 69 73 2d 3e 70 61 20toOperatorMap[$op]...$this->pa
93d40 72 73 65 56 65 72 73 69 6f 6e 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 rseVersion($version);.}.}.}..ret
93d60 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 2c 27 2c 20 24 76 65 72 73 69 6f 6e 73 29 3b 0a 7d 0a 0a urn.implode(',',.$versions);.}..
93d80 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 56 65 72 73 ......private.function.parseVers
93da0 69 6f 6e 28 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 ion($version).{.if.(preg_match('
93dc0 7b 5e 76 3f 28 5c 64 7b 31 2c 33 7d 29 28 5c 2e 5c 64 2b 29 3f 28 5c 2e 5c 64 2b 29 3f 28 5c 2e {^v?(\d{1,3})(\.\d+)?(\.\d+)?(\.
93de0 5c 64 2b 29 3f 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 \d+)?}i',.$version,.$matches)).{
93e00 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 0a 2e 28 21 65 6d 70 74 79 .$version.=.$matches[1]..(!empty
93e20 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 32 5d 20 3a 20 27 2e ($matches[2]).?.$matches[2].:.'.
93e40 30 27 29 0a 2e 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 20 3f 20 24 6d 61 74 0')..(!empty($matches[3]).?.$mat
93e60 63 68 65 73 5b 33 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 ches[3].:.'.0')..(!empty($matche
93e80 73 5b 34 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 34 5d 20 3a 20 27 2e 30 27 29 3b 0a 0a 72 65 s[4]).?.$matches[4].:.'.0');..re
93ea0 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d turn.$version;.}..return.null;.}
93ec0 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 73 48 61 73 68 28 ........private.function.isHash(
93ee0 61 72 72 61 79 20 24 61 72 72 61 79 29 0a 7b 0a 72 65 74 75 72 6e 20 21 61 72 72 61 79 5f 6b 65 array.$array).{.return.!array_ke
93f00 79 5f 65 78 69 73 74 73 28 31 2c 20 24 61 72 72 61 79 29 20 26 26 20 21 61 72 72 61 79 5f 6b 65 y_exists(1,.$array).&&.!array_ke
93f20 79 5f 65 78 69 73 74 73 28 30 2c 20 24 61 72 72 61 79 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a y_exists(0,.$array);.}.}.<?php..
93f40 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
93f60 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 6b 61 67 ository\Pear;.......class.Packag
93f80 65 49 6e 66 6f 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 70 72 eInfo.{.private.$channelName;.pr
93fa0 69 76 61 74 65 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 6c 69 63 ivate.$packageName;.private.$lic
93fc0 65 6e 73 65 3b 0a 70 72 69 76 61 74 65 20 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 3b ense;.private.$shortDescription;
93fe0 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 61 74 65 20 24 .private.$description;.private.$
94000 72 65 6c 65 61 73 65 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 releases;..........public.functi
94020 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 2c 20 24 70 61 on.__construct($channelName,.$pa
94040 63 6b 61 67 65 4e 61 6d 65 2c 20 24 6c 69 63 65 6e 73 65 2c 20 24 73 68 6f 72 74 44 65 73 63 72 ckageName,.$license,.$shortDescr
94060 69 70 74 69 6f 6e 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 72 65 6c 65 61 73 65 73 29 iption,.$description,.$releases)
94080 0a 7b 0a 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 24 63 68 61 6e 6e 65 6c .{.$this->channelName.=.$channel
940a0 4e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 70 61 63 6b Name;.$this->packageName.=.$pack
940c0 61 67 65 4e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 20 3d 20 24 6c 69 63 65 6e ageName;.$this->license.=.$licen
940e0 73 65 3b 0a 24 74 68 69 73 2d 3e 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 73 se;.$this->shortDescription.=.$s
94100 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 hortDescription;.$this->descript
94120 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 72 65 6c 65 61 ion.=.$description;.$this->relea
94140 73 65 73 20 3d 20 24 72 65 6c 65 61 73 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 ses.=.$releases;.}.....public.fu
94160 6e 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 nction.getChannelName().{.return
94180 20 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 .$this->channelName;.}.....publi
941a0 63 20 66 75 6e 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 c.function.getPackageName().{.re
941c0 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 70 turn.$this->packageName;.}.....p
941e0 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 69 6f 6e 28 29 0a ublic.function.getDescription().
94200 7b 0a 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 {.return.$this->description;.}..
94220 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 68 6f 72 74 44 65 73 63 72 ...public.function.getShortDescr
94240 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 73 68 6f 72 74 44 65 iption().{.return.$this->shortDe
94260 73 63 72 69 70 74 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 scription;.}.....public.function
94280 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 73 2d 3e 6c 69 .getLicense().{.return.$this->li
942a0 63 65 6e 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 67 65 74 cense;.}.....public.function.get
942c0 52 65 6c 65 61 73 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6c 65 61 Releases().{.return.$this->relea
942e0 73 65 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 ses;.}.}.<?php............namesp
94300 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 0a 0a ace.Composer\Repository\Pear;...
94320 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 6c 65 61 73 65 49 6e 66 6f 0a 7b 0a 70 72 69 76 61 74 65 20 ....class.ReleaseInfo.{.private.
94340 24 73 74 61 62 69 6c 69 74 79 3b 0a 70 72 69 76 61 74 65 20 24 64 65 70 65 6e 64 65 6e 63 79 49 $stability;.private.$dependencyI
94360 6e 66 6f 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 nfo;......public.function.__cons
94380 74 72 75 63 74 28 24 73 74 61 62 69 6c 69 74 79 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 49 6e 66 truct($stability,.$dependencyInf
943a0 6f 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 20 3d 20 24 73 74 61 62 69 6c 69 o).{.$this->stability.=.$stabili
943c0 74 79 3b 0a 24 74 68 69 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 20 3d 20 24 64 65 70 ty;.$this->dependencyInfo.=.$dep
943e0 65 6e 64 65 6e 63 79 49 6e 66 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 endencyInfo;.}.....public.functi
94400 6f 6e 20 67 65 74 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 29 0a 7b 0a 72 65 74 75 72 6e 20 on.getDependencyInfo().{.return.
94420 24 74 68 69 73 2d 3e 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 $this->dependencyInfo;.}.....pub
94440 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 0a 7b 0a 72 65 lic.function.getStability().{.re
94460 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 turn.$this->stability;.}.}.<?php
94480 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 52 ............namespace.Composer\R
944a0 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 49 4f 5c 49 4f 49 6e epository;..use.Composer\IO\IOIn
944c0 74 65 72 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 56 65 72 terface;.use.Composer\Semver\Ver
944e0 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
94500 6f 72 79 5c 50 65 61 72 5c 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 ory\Pear\ChannelReader;.use.Comp
94520 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 75 73 oser\Package\CompletePackage;.us
94540 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 5c 43 68 61 6e 6e e.Composer\Repository\Pear\Chann
94560 65 6c 49 6e 66 6f 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 elInfo;.use.Composer\EventDispat
94580 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 6f 73 cher\EventDispatcher;.use.Compos
945a0 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 73 65 72 5c 53 65 er\Package\Link;.use.Composer\Se
945c0 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 65 20 mver\Constraint\Constraint;.use.
945e0 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 0a Composer\Util\RemoteFilesystem;.
94600 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 65 use.Composer\Config;.use.Compose
94620 72 5c 46 61 63 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 65 61 72 52 r\Factory;...........class.PearR
94640 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 69 74 6f 72 epository.extends.ArrayRepositor
94660 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 65 70 6f 73 69 74 y.implements.ConfigurableReposit
94680 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 75 72 6c 3b 0a 70 72 69 oryInterface.{.private.$url;.pri
946a0 76 61 74 65 20 24 69 6f 3b 0a 70 72 69 76 61 74 65 20 24 72 66 73 3b 0a 70 72 69 76 61 74 65 20 vate.$io;.private.$rfs;.private.
946c0 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 70 72 69 76 61 74 65 20 24 72 65 70 6f 43 6f 6e $versionParser;.private.$repoCon
946e0 66 69 67 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 76 65 6e 64 6f 72 41 6c 69 61 73 3b 0a 0a fig;.....private.$vendorAlias;..
94700 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
94720 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 6f 2c 20 y.$repoConfig,.IOInterface.$io,.
94740 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 20 Config.$config,.EventDispatcher.
94760 24 64 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 73 79 $dispatcher.=.null,.RemoteFilesy
94780 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 stem.$rfs.=.null).{.if.(!preg_ma
947a0 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 67 5b tch('{^https?://}',.$repoConfig[
947c0 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 3d 20 'url'])).{.$repoConfig['url'].=.
947e0 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 7d 0a 'http://'.$repoConfig['url'];.}.
94800 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 66 69 .$urlBits.=.parse_url($repoConfi
94820 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 27 73 g['url']);.if.(empty($urlBits['s
94840 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 73 74 cheme']).||.empty($urlBits['host
94860 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 6c 75 '])).{.throw.new.\UnexpectedValu
94880 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 66 6f eException('Invalid.url.given.fo
948a0 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 69 67 r.PEAR.repository:.'.$repoConfig
948c0 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 6d 28 ['url']);.}..$this->url.=.rtrim(
948e0 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 73 2d $repoConfig['url'],.'/');.$this-
94900 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 3a 20 >io.=.$io;.$this->rfs.=.$rfs.?:.
94920 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(
94940 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 6e 64 $this->io,.$config);.$this->vend
94960 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 65 6e orAlias.=.isset($repoConfig['ven
94980 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 6e 64 dor-alias']).?.$repoConfig['vend
949a0 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 69 6f or-alias'].:.null;.$this->versio
949c0 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();.$
949e0 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 3b 0a this->repoConfig.=.$repoConfig;.
94a00 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 69 67 }..public.function.getRepoConfig
94a20 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 0a 7d ().{.return.$this->repoConfig;.}
94a40 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 28 ..protected.function.initialize(
94a60 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 69 73 ).{.parent::initialize();..$this
94a80 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 20 50 ->io->writeError('Initializing.P
94aa0 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 0a 24 EAR.repository.'.$this->url);..$
94ac0 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 69 73 reader.=.new.ChannelReader($this
94ae0 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 72 65 ->rfs);.try.{.$channelInfo.=.$re
94b00 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 68 20 ader->read($this->url);.}.catch.
94b20 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 72 69 (\Exception.$e).{.$this->io->wri
94b40 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 6f 72 teError('<warning>PEAR.repositor
94b60 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 74 20 y.from.'.$this->url.'.could.not.
94b80 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 27 3c be.loaded..'.$e->getMessage().'<
94ba0 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 67 65 /warning>');..return;.}.$package
94bc0 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 65 73 s.=.$this->buildComposerPackages
94be0 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 61 72 ($channelInfo,.$this->versionPar
94c00 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 61 63 ser);.foreach.($packages.as.$pac
94c20 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
94c40 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 69 6f ge);.}.}.........private.functio
94c60 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 6c 49 n.buildComposerPackages(ChannelI
94c80 6e 66 6f 20 24 63 68 61 6e 6e 65 6c 49 6e 66 6f 2c 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 20 nfo.$channelInfo,.VersionParser.
94ca0 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 $versionParser).{.$result.=.arra
94cc0 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 68 61 6e 6e 65 6c 49 6e 66 6f 2d 3e 67 65 74 50 y();.foreach.($channelInfo->getP
94ce0 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 29 ackages().as.$packageDefinition)
94d00 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d 3e .{.foreach.($packageDefinition->
94d20 67 65 74 52 65 6c 65 61 73 65 73 28 29 20 61 73 20 24 76 65 72 73 69 6f 6e 20 3d 3e 20 24 72 65 getReleases().as.$version.=>.$re
94d40 6c 65 61 73 65 49 6e 66 6f 29 20 7b 0a 74 72 79 20 7b 0a 24 6e 6f 72 6d 61 6c 69 7a 65 64 56 65 leaseInfo).{.try.{.$normalizedVe
94d60 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 69 7a rsion.=.$versionParser->normaliz
94d80 65 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 55 6e 65 78 70 65 63 74 65 e($version);.}.catch.(\Unexpecte
94da0 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d dValueException.$e).{.if.($this-
94dc0 3e 69 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 >io->isVerbose()).{.$this->io->w
94de0 72 69 74 65 45 72 72 6f 72 28 27 43 6f 75 6c 64 20 6e 6f 74 20 6c 6f 61 64 20 27 2e 24 70 61 63 riteError('Could.not.load.'.$pac
94e00 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 65 4e 61 6d 65 28 29 kageDefinition->getPackageName()
94e20 2e 27 20 27 2e 24 76 65 72 73 69 6f 6e 2e 27 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 .'.'.$version.':.'.$e->getMessag
94e40 65 28 29 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 50 61 e());.}.continue;.}..$composerPa
94e60 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 65 72 ckageName.=.$this->buildComposer
94e80 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 6f 6e 2d 3e PackageName($packageDefinition->
94ea0 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 66 69 6e 69 getChannelName(),.$packageDefini
94ec0 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 0a 20 24 75 tion->getPackageName());......$u
94ee0 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 6c 29 3b 0a rlBits.=.parse_url($this->url);.
94f00 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 63 68 65 6d $scheme.=.(isset($urlBits['schem
94f20 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 5b 27 73 63 e']).&&.'https'.===.$urlBits['sc
94f40 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 6f 70 65 6e heme'].&&.extension_loaded('open
94f60 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 64 69 73 74 ssl')).?.'https'.:.'http';.$dist
94f80 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 44 65 66 69 Url.=."{$scheme}://{$packageDefi
94fa0 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 74 2f 7b 24 nition->getChannelName()}/get/{$
94fc0 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 65 4e 61 6d packageDefinition->getPackageNam
94fe0 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 69 72 65 73 e()}-{$version}.tgz";..$requires
95000 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 79 28 29 3b .=.array();.$suggests.=.array();
95020 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 61 63 65 73 .$conflicts.=.array();.$replaces
95040 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 6c 49 6e 66 .=.array();......if.($channelInf
95060 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 6e 69 74 69 o->getName().==.$packageDefiniti
95080 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 70 6f 73 65 on->getChannelName()).{.$compose
950a0 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 43 6f 6d 70 rPackageAlias.=.$this->buildComp
950c0 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 2d 3e 67 65 oserPackageName($channelInfo->ge
950e0 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 2d 3e 67 65 tAlias(),.$packageDefinition->ge
95100 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 72 61 69 6e tPackageName());.$aliasConstrain
95120 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 72 6d 61 6c t.=.new.Constraint('==',.$normal
95140 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 6e 65 77 20 izedVersion);.$replaces[].=.new.
95160 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 63 6f 6d 70 Link($composerPackageName,.$comp
95180 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 74 72 61 69 oserPackageAlias,.$aliasConstrai
951a0 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 69 61 73 43 nt,.'replaces',.(string).$aliasC
951c0 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 24 74 68 69 onstraint);.}....if.(!empty($thi
951e0 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 65 6e 64 6f s->vendorAlias).&&.($this->vendo
95200 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 66 6f 2d 3e rAlias.!=.'pear-'.$channelInfo->
95220 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 67 65 74 4e getAlias().||.$channelInfo->getN
95240 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 3e 67 65 74 ame().!=.$packageDefinition->get
95260 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 50 61 63 6b ChannelName()).).{.$composerPack
95280 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 69 61 73 7d ageAlias.=."{$this->vendorAlias}
952a0 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 65 /{$packageDefinition->getPackage
952c0 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 20 6e 65 77 Name()}";.$aliasConstraint.=.new
952e0 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 64 56 65 72 .Constraint('==',.$normalizedVer
95300 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 6b 28 24 63 sion);.$replaces[].=.new.Link($c
95320 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 72 50 61 63 omposerPackageName,.$composerPac
95340 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 20 27 72 65 kageAlias,.$aliasConstraint,.'re
95360 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 74 72 61 69 places',.(string).$aliasConstrai
95380 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 6f 2d 3e 67 nt);.}..foreach.($releaseInfo->g
953a0 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 72 65 73 28 etDependencyInfo()->getRequires(
953c0 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 7b 0a 24 64 ).as.$dependencyConstraint).{.$d
953e0 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 2d 3e 62 75 ependencyPackageName.=.$this->bu
95400 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 6e 64 65 6e ildComposerPackageName($dependen
95420 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 28 29 2c 20 cyConstraint->getChannelName(),.
95440 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 63 6b 61 67 $dependencyConstraint->getPackag
95460 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 73 69 6f 6e eName());.$constraint.=.$version
95480 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 70 65 6e 64 Parser->parseConstraints($depend
954a0 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 74 28 29 29 encyConstraint->getConstraint())
954c0 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 50 61 63 6b ;.$link.=.new.Link($composerPack
954e0 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 61 6d 65 2c ageName,.$dependencyPackageName,
95500 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 73 74 72 61 .$constraint,.$dependencyConstra
95520 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 6f 6e 73 74 int->getType(),.$dependencyConst
95540 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 74 63 68 20 raint->getConstraint());.switch.
95560 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 79 70 65 28 ($dependencyConstraint->getType(
95580 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 72 65 73 5b )).{.case.'required':.$requires[
955a0 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 6c 69 63 74 ].=.$link;.break;.case.'conflict
955c0 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 65 61 6b 3b s':.$conflicts[].=.$link;.break;
955e0 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 5d 20 3d 20 .case.'replaces':.$replaces[].=.
95600 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 24 72 65 6c $link;.break;.}.}..foreach.($rel
95620 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 29 2d 3e 67 easeInfo->getDependencyInfo()->g
95640 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 64 65 70 65 etOptionals().as.$group.=>.$depe
95660 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 20 28 24 64 ndencyConstraints).{.foreach.($d
95680 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 65 6e 64 65 ependencyConstraints.as.$depende
956a0 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 50 61 63 6b ncyConstraint).{.$dependencyPack
956c0 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 65 72 50 61 ageName.=.$this->buildComposerPa
956e0 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 69 6e 74 2d ckageName($dependencyConstraint-
95700 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 63 79 43 6f >getChannelName(),.$dependencyCo
95720 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 0a 24 73 75 nstraint->getPackageName());.$su
95740 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 79 50 61 63 ggests[$group.'-'.$dependencyPac
95760 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 72 61 69 6e kageName].=.$dependencyConstrain
95780 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 63 6b 61 67 t->getConstraint();.}.}..$packag
957a0 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 70 6f 73 65 e.=.new.CompletePackage($compose
957c0 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 73 69 6f 6e rPackageName,.$normalizedVersion
957e0 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 70 65 28 27 ,.$version);.$package->setType('
95800 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 74 44 65 73 pear-library');.$package->setDes
95820 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 3e 67 65 74 cription($packageDefinition->get
95840 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 74 4c 69 63 Description());.$package->setLic
95860 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 6e 2d 3e 67 ense(array($packageDefinition->g
95880 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 44 69 73 74 etLicense()));.$package->setDist
958a0 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 69 73 74 55 Type('file');.$package->setDistU
958c0 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 75 74 6f 6c rl($distUrl);.$package->setAutol
958e0 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 79 28 27 27 oad(array('classmap'.=>.array(''
95900 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 68 73 28 61 )));.$package->setIncludePaths(a
95920 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 75 69 72 65 rray('/'));.$package->setRequire
95940 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 6f 6e 66 6c s($requires);.$package->setConfl
95960 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 73 65 74 53 icts($conflicts);.$package->setS
95980 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 2d 3e 73 65 uggests($suggests);.$package->se
959a0 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 74 5b 5d 20 tReplaces($replaces);.$result[].
959c0 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 75 6c 74 3b =.$package;.}.}..return.$result;
959e0 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 6d 70 6f 73 .}..private.function.buildCompos
95a00 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 24 70 61 63 erPackageName($channelName,.$pac
95a20 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 68 61 6e 6e kageName).{.if.('php'.===.$chann
95a40 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 20 28 27 65 elName).{.return."php";.}.if.('e
95a60 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 72 6e 20 22 xt'.===.$channelName).{.return."
95a80 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 72 6e 20 22 ext-{$packageName}";.}..return."
95aa0 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 65 4e 61 6d pear-{$channelName}/{$packageNam
95ac0 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 6d 65 73 70 e}";.}.}.<?php............namesp
95ae0 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
95b00 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 50 61 63 6b mposer\Config;.use.Composer\Pack
95b20 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
95b40 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 75 73 65 20 er\Package\CompletePackage;.use.
95b60 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 72 3b 0a 75 Composer\Semver\VersionParser;.u
95b80 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 49 6e 74 65 72 66 61 se.Composer\Plugin\PluginInterfa
95ba0 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 ce;.....class.PlatformRepository
95bc0 20 65 78 74 65 6e 64 73 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 0a 7b 0a 63 6f 6e 73 74 .extends.ArrayRepository.{.const
95be0 20 50 4c 41 54 46 4f 52 4d 5f 50 41 43 4b 41 47 45 5f 52 45 47 45 58 20 3d 20 27 7b 5e 28 3f 3a .PLATFORM_PACKAGE_REGEX.=.'{^(?:
95c00 70 68 70 28 3f 3a 2d 36 34 62 69 74 29 3f 7c 68 68 76 6d 7c 28 3f 3a 65 78 74 7c 6c 69 62 29 2d php(?:-64bit)?|hhvm|(?:ext|lib)-
95c20 5b 5e 2f 5d 2b 29 24 7d 69 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 76 65 [^/]+)$}i';.........private.$ove
95c40 72 72 69 64 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 rrides.=.array();..public.functi
95c60 6f 6e 20 5f 5f 63 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 on.__construct(array.$packages.=
95c80 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 20 24 6f 76 65 72 72 69 64 65 73 20 3d 20 61 72 72 .array(),.array.$overrides.=.arr
95ca0 61 79 28 29 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 6f 76 65 72 72 69 64 65 73 20 61 73 20 24 ay()).{.foreach.($overrides.as.$
95cc0 6e 61 6d 65 20 3d 3e 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 76 65 72 72 name.=>.$version).{.$this->overr
95ce0 69 64 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 5d 20 3d 20 61 72 72 61 79 28 ides[strtolower($name)].=.array(
95d00 27 6e 61 6d 65 27 20 3d 3e 20 24 6e 61 6d 65 2c 20 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 76 'name'.=>.$name,.'version'.=>.$v
95d20 65 72 73 69 6f 6e 29 3b 0a 7d 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 ersion);.}.parent::__construct($
95d40 70 61 63 6b 61 67 65 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 packages);.}..protected.function
95d60 20 69 6e 69 74 69 61 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 .initialize().{.parent::initiali
95d80 7a 65 28 29 3b 0a 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 ze();..$versionParser.=.new.Vers
95da0 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 0a 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 ionParser();......foreach.($this
95dc0 2d 3e 6f 76 65 72 72 69 64 65 73 20 61 73 20 24 6f 76 65 72 72 69 64 65 29 20 7b 0a 0a 20 69 66 ->overrides.as.$override).{...if
95de0 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 73 65 6c 66 3a 3a 50 4c 41 54 46 4f 52 4d 5f 50 41 43 .(!preg_match(self::PLATFORM_PAC
95e00 4b 41 47 45 5f 52 45 47 45 58 2c 20 24 6f 76 65 72 72 69 64 65 5b 27 6e 61 6d 65 27 5d 29 29 20 KAGE_REGEX,.$override['name'])).
95e20 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
95e40 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 70 6c 61 74 66 6f 72 6d 20 70 61 63 6b 61 67 65 20 ption('Invalid.platform.package.
95e60 6e 61 6d 65 20 69 6e 20 63 6f 6e 66 69 67 2e 70 6c 61 74 66 6f 72 6d 3a 20 27 2e 24 6f 76 65 72 name.in.config.platform:.'.$over
95e80 72 69 64 65 5b 27 6e 61 6d 65 27 5d 29 3b 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 ride['name']);.}..$version.=.$ve
95ea0 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 6f 76 65 72 72 69 64 65 rsionParser->normalize($override
95ec0 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 6e 65 77 20 43 6f 6d ['version']);.$package.=.new.Com
95ee0 70 6c 65 74 65 50 61 63 6b 61 67 65 28 24 6f 76 65 72 72 69 64 65 5b 27 6e 61 6d 65 27 5d 2c 20 pletePackage($override['name'],.
95f00 24 76 65 72 73 69 6f 6e 2c 20 24 6f 76 65 72 72 69 64 65 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b $version,.$override['version']);
95f20 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 27 50 61 63 6b 61 .$package->setDescription('Packa
95f40 67 65 20 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61 20 63 6f 6e 66 69 67 2e 70 6c 61 74 66 6f 72 ge.overridden.via.config.platfor
95f60 6d 27 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 61 67 65 m');.parent::addPackage($package
95f80 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 49 6e 74 );.}..$prettyVersion.=.PluginInt
95fa0 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 76 65 72 erface::PLUGIN_API_VERSION;.$ver
95fc0 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
95fe0 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 75 67 69 ($prettyVersion);.$composerPlugi
96000 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 6f 6d 70 nApi.=.new.CompletePackage('comp
96020 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 70 72 65 oser-plugin-api',.$version,.$pre
96040 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 70 69 2d ttyVersion);.$composerPluginApi-
96060 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 20 50 6c >setDescription('The.Composer.Pl
96080 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 28 24 63 ugin.API');.$this->addPackage($c
960a0 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 65 74 74 omposerPluginApi);..try.{.$prett
960c0 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 69 6f 6e yVersion.=.PHP_VERSION;.$version
960e0 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 24 70 72 .=.$versionParser->normalize($pr
96100 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 65 63 74 ettyVersion);.}.catch.(\Unexpect
96120 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 79 56 65 edValueException.$e).{.$prettyVe
96140 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 2d 5d 2b rsion.=.preg_replace('#^([^~+-]+
96160 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 76 65 72 ).*$#',.'$1',.PHP_VERSION);.$ver
96180 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
961a0 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 65 77 20 ($prettyVersion);.}..$php.=.new.
961c0 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 6f 6e 2c CompletePackage('php',.$version,
961e0 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 73 63 72 .$prettyVersion);.$php->setDescr
96200 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 3b 0a 24 iption('The.PHP.interpreter');.$
96220 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 50 48 50 this->addPackage($php);..if.(PHP
96240 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 65 77 20 _INT_SIZE.===.8).{.$php64.=.new.
96260 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 24 76 65 CompletePackage('php-64bit',.$ve
96280 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 34 2d 3e rsion,.$prettyVersion);.$php64->
962a0 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 70 72 65 setDescription('The.PHP.interpre
962c0 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 67 65 28 ter,.64bit');.$this->addPackage(
962e0 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 20 3d 20 $php64);.}..$loadedExtensions.=.
96300 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 6f 72 65 get_loaded_extensions();....fore
96320 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 6d 65 29 ach.($loadedExtensions.as.$name)
96340 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 27 73 74 .{.if.(in_array($name,.array('st
96360 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 3b 0a 7d andard',.'Core'))).{.continue;.}
96380 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 78 74 65 ..$reflExt.=.new.\ReflectionExte
963a0 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 72 73 69 nsion($name);.try.{.$prettyVersi
963c0 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 24 76 65 on.=.$reflExt->getVersion();.$ve
963e0 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 69 7a rsion.=.$versionParser->normaliz
96400 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 55 6e 65 e($prettyVersion);.}.catch.(\Une
96420 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 70 72 65 xpectedValueException.$e).{.$pre
96440 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 24 76 65 ttyVersion.=.'0';.$version.=.$ve
96460 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 79 56 65 rsionParser->normalize($prettyVe
96480 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 69 73 2d rsion);.}..$packageName.=.$this-
964a0 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 74 20 3d >buildPackageName($name);.$ext.=
964c0 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 4e 61 6d .new.CompletePackage($packageNam
964e0 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 0a 24 65 e,.$version,.$prettyVersion);.$e
96500 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 6d 65 2e xt->setDescription('The.'.$name.
96520 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 50 61 63 '.PHP.extension');.$this->addPac
96540 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 28 24 6c kage($ext);.}........foreach.($l
96560 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 70 72 65 oadedExtensions.as.$name).{.$pre
96580 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 73 77 69 74 63 68 20 28 24 6e 61 6d 65 ttyVersion.=.null;.switch.($name
965a0 29 20 7b 0a 63 61 73 65 20 27 63 75 72 6c 27 3a 0a 24 63 75 72 6c 56 65 72 73 69 6f 6e 20 3d 20 ).{.case.'curl':.$curlVersion.=.
965c0 63 75 72 6c 5f 76 65 72 73 69 6f 6e 28 29 3b 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d curl_version();.$prettyVersion.=
965e0 20 24 63 75 72 6c 56 65 72 73 69 6f 6e 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 62 72 65 61 6b 3b .$curlVersion['version'];.break;
96600 0a 0a 63 61 73 65 20 27 69 63 6f 6e 76 27 3a 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d ..case.'iconv':.$prettyVersion.=
96620 20 49 43 4f 4e 56 5f 56 45 52 53 49 4f 4e 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 69 6e .ICONV_VERSION;.break;..case.'in
96640 74 6c 27 3a 0a 24 6e 61 6d 65 20 3d 20 27 49 43 55 27 3b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 tl':.$name.=.'ICU';.if.(defined(
96660 27 49 4e 54 4c 5f 49 43 55 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a 24 70 72 65 74 74 79 56 65 'INTL_ICU_VERSION')).{.$prettyVe
96680 72 73 69 6f 6e 20 3d 20 49 4e 54 4c 5f 49 43 55 5f 56 45 52 53 49 4f 4e 3b 0a 7d 20 65 6c 73 65 rsion.=.INTL_ICU_VERSION;.}.else
966a0 20 7b 0a 24 72 65 66 6c 65 63 74 6f 72 20 3d 20 6e 65 77 20 5c 52 65 66 6c 65 63 74 69 6f 6e 45 .{.$reflector.=.new.\ReflectionE
966c0 78 74 65 6e 73 69 6f 6e 28 27 69 6e 74 6c 27 29 3b 0a 0a 6f 62 5f 73 74 61 72 74 28 29 3b 0a 24 xtension('intl');..ob_start();.$
966e0 72 65 66 6c 65 63 74 6f 72 2d 3e 69 6e 66 6f 28 29 3b 0a 24 6f 75 74 70 75 74 20 3d 20 6f 62 5f reflector->info();.$output.=.ob_
96700 67 65 74 5f 63 6c 65 61 6e 28 29 3b 0a 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 49 43 55 20 get_clean();..preg_match('/^ICU.
96720 76 65 72 73 69 6f 6e 20 3d 3e 20 28 2e 2a 29 24 2f 6d 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 6d version.=>.(.*)$/m',.$output,.$m
96740 61 74 63 68 65 73 29 3b 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 atches);.$prettyVersion.=.$match
96760 65 73 5b 31 5d 3b 0a 7d 0a 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 6c 69 62 78 6d 6c 27 3a es[1];.}..break;..case.'libxml':
96780 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 4c 49 42 58 4d 4c 5f 44 4f 54 54 45 44 5f .$prettyVersion.=.LIBXML_DOTTED_
967a0 56 45 52 53 49 4f 4e 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 6f 70 65 6e 73 73 6c 27 3a VERSION;.break;..case.'openssl':
967c0 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 70 6c 61 63 65 5f 63 .$prettyVersion.=.preg_replace_c
967e0 61 6c 6c 62 61 63 6b 28 27 7b 5e 28 3f 3a 4f 70 65 6e 53 53 4c 5c 73 2a 29 3f 28 5b 30 2d 39 2e allback('{^(?:OpenSSL\s*)?([0-9.
96800 5d 2b 29 28 5b 61 2d 7a 5d 3f 29 2e 2a 7d 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6d 61 74 63 ]+)([a-z]?).*}',.function.($matc
96820 68 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 5b 31 5d 20 2e 20 28 65 6d 70 74 79 28 24 h).{.return.$match[1]...(empty($
96840 6d 61 74 63 68 5b 32 5d 29 20 3f 20 27 27 20 3a 20 27 2e 27 2e 28 6f 72 64 28 24 6d 61 74 63 68 match[2]).?.''.:.'.'.(ord($match
96860 5b 32 5d 29 20 2d 20 39 36 29 29 3b 0a 7d 2c 20 4f 50 45 4e 53 53 4c 5f 56 45 52 53 49 4f 4e 5f [2]).-.96));.},.OPENSSL_VERSION_
96880 54 45 58 54 29 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 70 63 72 65 27 3a 0a 24 70 72 65 TEXT);.break;..case.'pcre':.$pre
968a0 74 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 7b 5e 28 5c 53 ttyVersion.=.preg_replace('{^(\S
968c0 2b 29 2e 2a 7d 27 2c 20 27 24 31 27 2c 20 50 43 52 45 5f 56 45 52 53 49 4f 4e 29 3b 0a 62 72 65 +).*}',.'$1',.PCRE_VERSION);.bre
968e0 61 6b 3b 0a 0a 63 61 73 65 20 27 75 75 69 64 27 3a 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e ak;..case.'uuid':.$prettyVersion
96900 20 3d 20 70 68 70 76 65 72 73 69 6f 6e 28 27 75 75 69 64 27 29 3b 0a 62 72 65 61 6b 3b 0a 0a 63 .=.phpversion('uuid');.break;..c
96920 61 73 65 20 27 78 73 6c 27 3a 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 4c 49 42 58 ase.'xsl':.$prettyVersion.=.LIBX
96940 53 4c 54 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 64 65 66 61 SLT_DOTTED_VERSION;.break;..defa
96960 75 6c 74 3a 0a 0a 20 63 6f 6e 74 69 6e 75 65 20 32 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 76 65 72 ult:...continue.2;.}..try.{.$ver
96980 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
969a0 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
969c0 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 63 6f 6e 74 69 pectedValueException.$e).{.conti
969e0 6e 75 65 3b 0a 7d 0a 0a 24 6c 69 62 20 3d 20 6e 65 77 20 43 6f 6d 70 6c 65 74 65 50 61 63 6b 61 nue;.}..$lib.=.new.CompletePacka
96a00 67 65 28 27 6c 69 62 2d 27 2e 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 ge('lib-'.$name,.$version,.$pret
96a20 74 79 56 65 72 73 69 6f 6e 29 3b 0a 24 6c 69 62 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e tyVersion);.$lib->setDescription
96a40 28 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 29 3b 0a 24 ('The.'.$name.'.PHP.library');.$
96a60 74 68 69 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 this->addPackage($lib);.}..if.(d
96a80 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 74 72 79 20 7b 0a efined('HHVM_VERSION')).{.try.{.
96aa0 24 70 72 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 $prettyVersion.=.HHVM_VERSION;.$
96ac0 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
96ae0 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 55 ize($prettyVersion);.}.catch.(\U
96b00 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 70 nexpectedValueException.$e).{.$p
96b20 72 65 74 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 rettyVersion.=.preg_replace('#^(
96b40 5b 5e 7e 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 [^~+-]+).*$#',.'$1',.HHVM_VERSIO
96b60 4e 29 3b 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 N);.$version.=.$versionParser->n
96b80 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 0a 0a 24 68 68 ormalize($prettyVersion);.}..$hh
96ba0 76 6d 20 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 vm.=.new.CompletePackage('hhvm',
96bc0 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 0a 24 68 68 76 .$version,.$prettyVersion);.$hhv
96be0 6d 2d 3e 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 m->setDescription('The.HHVM.Runt
96c00 69 6d 65 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 ime.(64bit)');.$this->addPackage
96c20 28 24 68 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 ($hhvm);.}.}.....public.function
96c40 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 70 61 .addPackage(PackageInterface.$pa
96c60 63 6b 61 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 ckage).{...if.(isset($this->over
96c80 72 69 64 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 rides[strtolower($package->getNa
96ca0 6d 65 28 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 me())])).{.$overrider.=.$this->f
96cc0 69 6e 64 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 indPackage($package->getName(),.
96ce0 27 2a 27 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 '*');.$overrider->setDescription
96d00 28 24 6f 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 ($overrider->getDescription().'.
96d20 28 61 63 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 (actual:.'.$package->getPrettyVe
96d40 72 73 69 6f 6e 28 29 2e 27 29 27 29 3b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 70 61 72 65 6e 74 3a 3a rsion().')');.return;.}.parent::
96d60 61 64 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 addPackage($package);.}..private
96d80 20 66 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 .function.buildPackageName($name
96da0 29 0a 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 ).{.return.'ext-'...str_replace(
96dc0 27 20 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 '.',.'-',.$name);.}.}.<?php.....
96de0 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
96e00 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 50 61 63 6b tory;..use.Composer\Package\Pack
96e20 61 67 65 49 6e 74 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 ageInterface;.........interface.
96e40 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 5c 43 6f 75 RepositoryInterface.extends.\Cou
96e60 6e 74 61 62 6c 65 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 ntable.{.const.SEARCH_FULLTEXT.=
96e80 20 30 3b 0a 63 6f 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 .0;.const.SEARCH_NAME.=.1;......
96ea0 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 50 61 ...public.function.hasPackage(Pa
96ec0 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);.......
96ee0 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 6b 61 67 65 28 24 ...public.function.findPackage($
96f00 6e 61 6d 65 2c 20 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 name,.$constraint);..........pub
96f20 6c 69 63 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 lic.function.findPackages($name,
96f40 20 24 63 6f 6e 73 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 .$constraint.=.null);.......publ
96f60 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 3b 0a 0a 0a 0a 0a 0a ic.function.getPackages();......
96f80 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 79 ...public.function.search($query
96fa0 2c 20 24 6d 6f 64 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 ,.$mode.=.0);.}.<?php...........
96fc0 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;.
96fe0 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
97000 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\
97020 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;
97040 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
97060 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 52 65 6d 6f 74 65 erface;.use.Composer\Util\Remote
97080 46 69 6c 65 73 79 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 Filesystem;.........class.Reposi
970a0 74 6f 72 79 4d 61 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 toryManager.{.private.$localRepo
970c0 73 69 74 6f 72 79 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 sitory;.private.$repositories.=.
970e0 61 72 72 61 79 28 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 array();.private.$repositoryClas
97100 73 65 73 20 3d 20 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 ses.=.array();.private.$io;.priv
97120 61 74 65 20 24 63 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 ate.$config;.private.$eventDispa
97140 74 63 68 65 72 3b 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 tcher;.private.$rfs;..public.fun
97160 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
97180 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
971a0 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 52 65 6d 6f er.$eventDispatcher.=.null,.Remo
971c0 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 24 74 68 69 teFilesystem.$rfs.=.null).{.$thi
971e0 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 6f s->io.=.$io;.$this->config.=.$co
97200 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 20 3d 20 24 nfig;.$this->eventDispatcher.=.$
97220 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 3d 20 24 72 eventDispatcher;.$this->rfs.=.$r
97240 66 73 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 66 fs;.}..........public.function.f
97260 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 29 0a 7b indPackage($name,.$constraint).{
97280 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 20 61 73 .foreach.($this->repositories.as
972a0 20 24 72 65 70 6f 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 .$repository).{.if.($package.=.$
972c0 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 61 6d 65 2c 20 24 repository->findPackage($name,.$
972e0 63 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 3b 0a constraint)).{.return.$package;.
97300 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 6f 6e 20 66 }.}.}..........public.function.f
97320 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 29 0a indPackages($name,.$constraint).
97340 7b 0a 24 70 61 63 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 {.$packages.=.array();..foreach.
97360 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 74 ($this->repositories.as.$reposit
97380 6f 72 79 29 20 7b 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 ory).{.$packages.=.array_merge($
973a0 70 61 63 6b 61 67 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 packages,.$repository->findPacka
973c0 67 65 73 28 24 6e 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 ges($name,.$constraint));.}..ret
973e0 75 72 6e 20 24 70 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 urn.$packages;.}.......public.fu
97400 6e 63 74 69 6f 6e 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 nction.addRepository(RepositoryI
97420 6e 74 65 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 72 nterface.$repository).{.$this->r
97440 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 0a 0a epositories[].=.$repository;.}..
97460 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 65 61 74 65 52 65 ........public.function.createRe
97480 70 6f 73 69 74 6f 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 pository($type,.$config).{.if.(!
974a0 69 73 73 65 74 28 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 isset($this->repositoryClasses[$
974c0 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 6c 69 64 41 72 67 75 type])).{.throw.new.\InvalidArgu
974e0 6d 65 6e 74 45 78 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 mentException('Repository.type.i
97500 73 20 6e 6f 74 20 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 s.not.registered:.'.$type);.}..$
97520 63 6c 61 73 73 20 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 class.=.$this->repositoryClasses
97540 5b 24 74 79 70 65 5d 3b 0a 0a 0a 24 72 65 66 6c 4d 65 74 68 6f 64 20 3d 20 6e 65 77 20 5c 52 65 [$type];...$reflMethod.=.new.\Re
97560 66 6c 65 63 74 69 6f 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 flectionMethod($class,.'__constr
97580 75 63 74 27 29 3b 0a 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 uct');.$params.=.$reflMethod->ge
975a0 74 50 61 72 61 6d 65 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 tParameters();.if.(isset($params
975c0 5b 34 5d 29 20 26 26 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 [4]).&&.$params[4]->getClass().&
975e0 26 20 24 70 61 72 61 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 &.$params[4]->getClass()->getNam
97600 65 28 29 20 3d 3d 3d 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 e().===.'Composer\Util\RemoteFil
97620 65 73 79 73 74 65 6d 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 esystem').{.return.new.$class($c
97640 6f 6e 66 69 67 2c 20 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 onfig,.$this->io,.$this->config,
97660 20 24 74 68 69 73 2d 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 .$this->eventDispatcher,.$this->
97680 72 66 73 29 3b 0a 7d 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 rfs);.}..return.new.$class($conf
976a0 69 67 2c 20 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 ig,.$this->io,.$this->config,.$t
976c0 68 69 73 2d 3e 65 76 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 his->eventDispatcher);.}........
976e0 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 43 6c 61 public.function.setRepositoryCla
97700 73 73 28 24 74 79 70 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 ss($type,.$class).{.$this->repos
97720 69 74 6f 72 79 43 6c 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 itoryClasses[$type].=.$class;.}.
97740 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 6f 73 69 74 ......public.function.getReposit
97760 6f 72 69 65 73 28 29 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 ories().{.return.$this->reposito
97780 72 69 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 73 65 ries;.}.......public.function.se
977a0 74 4c 6f 63 61 6c 52 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 tLocalRepository(WritableReposit
977c0 6f 72 79 49 6e 74 65 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 oryInterface.$repository).{.$thi
977e0 73 2d 3e 6c 6f 63 61 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 s->localRepository.=.$repository
97800 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 4c 6f 63 ;.}.......public.function.getLoc
97820 61 6c 52 65 70 6f 73 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 alRepository().{.return.$this->l
97840 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ocalRepository;.}........public.
97860 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 0a function.getLocalRepositories().
97880 7b 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 69 73 20 6d 65 74 68 6f 64 20 69 73 20 {.trigger_error('This.method.is.
978a0 64 65 70 72 65 63 61 74 65 64 2c 20 75 73 65 20 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f deprecated,.use.getLocalReposito
978c0 72 79 20 69 6e 73 74 65 61 64 20 73 69 6e 63 65 20 74 68 65 20 67 65 74 4c 6f 63 61 6c 44 65 76 ry.instead.since.the.getLocalDev
978e0 52 65 70 6f 73 69 74 6f 72 79 20 69 73 20 6e 6f 77 20 67 6f 6e 65 27 2c 20 45 5f 55 53 45 52 5f Repository.is.now.gone',.E_USER_
97900 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 74 68 69 73 DEPRECATED);..return.array($this
97920 2d 3e 6c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a ->localRepository);.}.}.<?php...
97940 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
97960 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 70 6f 73 69 74 6f 72 79 53 65 sitory;.......class.RepositorySe
97980 63 75 72 69 74 79 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 curityException.extends.\Excepti
979a0 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 73 70 61 63 on.{.}.<?php............namespac
979c0 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 20 e.Composer\Repository\Vcs;..use.
979e0 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 6e Composer\Cache;.use.Composer\Con
97a00 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;
97a20 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 0a .use.Composer\IO\IOInterface;...
97a40 0a 0a 63 6c 61 73 73 20 47 69 74 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 20 65 78 74 65 6e ..class.GitBitbucketDriver.exten
97a60 64 73 20 56 63 73 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 ds.VcsDriver.implements.VcsDrive
97a80 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 3b 0a 70 rInterface.{.protected.$cache;.p
97aa0 72 6f 74 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 rotected.$owner;.protected.$repo
97ac0 73 69 74 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 sitory;.protected.$tags;.protect
97ae0 65 64 20 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 ed.$branches;.protected.$rootIde
97b00 6e 74 69 66 69 65 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 20 ntifier;.protected.$infoCache.=.
97b20 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 69 array();.....public.function.ini
97b40 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 68 74 74 70 73 3f tialize().{.preg_match('#^https?
97b60 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 28 2e 2b 3f 29 5c ://bitbucket\.org/([^/]+)/(.+?)\
97b80 2e 67 69 74 24 23 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 2c 20 24 6d 61 74 63 68 29 3b 0a 24 74 .git$#',.$this->url,.$match);.$t
97ba0 68 69 73 2d 3e 6f 77 6e 65 72 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 24 74 68 69 73 2d 3e 72 his->owner.=.$match[1];.$this->r
97bc0 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 24 74 68 69 73 2d 3e 6f 72 epository.=.$match[2];.$this->or
97be0 69 67 69 6e 55 72 6c 20 3d 20 27 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 27 3b 0a 24 74 68 69 73 iginUrl.=.'bitbucket.org';.$this
97c00 2d 3e 63 61 63 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 ->cache.=.new.Cache($this->io,.$
97c20 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 72 65 70 6f 2d 64 69 this->config->get('cache-repo-di
97c40 72 27 29 2e 27 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 r').'/'.$this->originUrl.'/'.$th
97c60 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 29 is->owner.'/'.$this->repository)
97c80 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 6f 6f 74 49 ;.}.....public.function.getRootI
97ca0 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 24 74 68 69 73 dentifier().{.if.(null.===.$this
97cc0 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 ->rootIdentifier).{.$resource.=.
97ce0 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 69 2e 62 69 74 $this->getScheme()...'://api.bit
97d00 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 2f 27 2e 24 74 bucket.org/1.0/repositories/'.$t
97d20 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 6f 72 79 his->owner.'/'.$this->repository
97d40 3b 0a 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 ;.$repoData.=.JsonFile::parseJso
97d60 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 65 29 2c n($this->getContents($resource),
97d80 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 .$resource);.$this->rootIdentifi
97da0 65 72 20 3d 20 21 65 6d 70 74 79 28 24 72 65 70 6f 44 61 74 61 5b 27 6d 61 69 6e 5f 62 72 61 6e er.=.!empty($repoData['main_bran
97dc0 63 68 27 5d 29 20 3f 20 24 72 65 70 6f 44 61 74 61 5b 27 6d 61 69 6e 5f 62 72 61 6e 63 68 27 5d ch']).?.$repoData['main_branch']
97de0 20 3a 20 27 6d 61 73 74 65 72 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f .:.'master';.}..return.$this->ro
97e00 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 74 otIdentifier;.}.....public.funct
97e20 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 75 72 6c ion.getUrl().{.return.$this->url
97e40 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 6f 75 72 63 ;.}.....public.function.getSourc
97e60 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 79 28 27 74 e($identifier).{.return.array('t
97e80 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 73 2d 3e 67 ype'.=>.'git',.'url'.=>.$this->g
97ea0 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 6e 74 69 66 etUrl(),.'reference'.=>.$identif
97ec0 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 67 65 74 44 ier);.}.....public.function.getD
97ee0 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 74 68 69 73 2d ist($identifier).{.$url.=.$this-
97f00 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 74 2e 6f 72 67 >getScheme()...'://bitbucket.org
97f20 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
97f40 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 2e 7a 69 70 27 itory.'/get/'.$identifier.'.zip'
97f60 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 7a 69 70 27 2c ;..return.array('type'.=>.'zip',
97f80 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 20 3d 3e 20 24 .'url'.=>.$url,.'reference'.=>.$
97fa0 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 3b 0a 7d 0a 0a identifier,.'shasum'.=>.'');.}..
97fc0 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 49 6e ...public.function.getComposerIn
97fe0 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 20 28 70 72 65 formation($identifier).{.if.(pre
98000 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 24 69 64 65 6e g_match('{[a-f0-9]{40}}i',.$iden
98020 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 63 68 65 2d 3e tifier).&&.$res.=.$this->cache->
98040 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 3e 69 6e 66 6f read($identifier)).{.$this->info
98060 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
98080 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
980a0 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])).{.
980c0 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 29 20 2e $resource.=.$this->getScheme()..
980e0 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 77 6e 65 .'://bitbucket.org/'.$this->owne
98100 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 72 61 77 2f 27 2e r.'/'.$this->repository.'/raw/'.
98120 24 69 64 65 6e 74 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 63 $identifier.'/composer.json';.$c
98140 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 omposer.=.$this->getContents($re
98160 73 6f 75 72 63 65 29 3b 0a 69 66 20 28 21 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 72 65 74 75 72 source);.if.(!$composer).{.retur
98180 6e 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 n;.}..$composer.=.JsonFile::pars
981a0 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 65 29 3b 0a 0a 69 66 eJson($composer,.$resource);..if
981c0 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 20 7b 0a 24 72 .(empty($composer['time'])).{.$r
981e0 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()...'
98200 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
98220 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->
98240 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 69 64 65 6e 74 repository.'/changesets/'.$ident
98260 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 65 3a 3a 70 61 ifier;.$changeset.=.JsonFile::pa
98280 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 65 73 6f rseJson($this->getContents($reso
982a0 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 72 5b 27 74 69 urce),.$resource);.$composer['ti
982c0 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 70 27 5d 3b 0a me'].=.$changeset['timestamp'];.
982e0 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 7d }..if.(preg_match('{[a-f0-9]{40}
98300 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 61 63 68 }i',.$identifier)).{.$this->cach
98320 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 63 6f 64 e->write($identifier,.json_encod
98340 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 43 61 63 e($composer));.}..$this->infoCac
98360 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 7d 0a 0a he[$identifier].=.$composer;.}..
98380 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 74 69 66 return.$this->infoCache[$identif
983a0 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 65 74 54 ier];.}.....public.function.getT
983c0 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 3e 74 61 67 73 ags().{.if.(null.===.$this->tags
983e0 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 65 ).{.$resource.=.$this->getScheme
98400 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 31 2e 30 2f 72 ()...'://api.bitbucket.org/1.0/r
98420 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 24 epositories/'.$this->owner.'/'.$
98440 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 74 61 67 73 44 this->repository.'/tags';.$tagsD
98460 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-
98480 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
984a0 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 0a 66 6f 72 65 ce);.$this->tags.=.array();.fore
984c0 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 64 61 74 61 29 ach.($tagsData.as.$tag.=>.$data)
984e0 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 61 5b 27 72 61 .{.$this->tags[$tag].=.$data['ra
98500 77 5f 6e 6f 64 65 27 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 w_node'];.}.}..return.$this->tag
98520 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
98540 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
98560 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
98580 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/
985a0 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.
985c0 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
985e0 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
98600 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
98620 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.
98640 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.
98660 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
98680 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
986a0 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
986c0 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
986e0 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.
98700 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).{.
98720 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
98740 75 63 6b 65 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 ucket\.org/([^/]+)/(.+?)\.git$#'
98760 2c 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 ,.$url)).{.return.false;.}..if.(
98780 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 20 7b 0a !extension_loaded('openssl')).{.
987a0 69 66 20 28 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 if.($io->isVerbose()).{.$io->wri
987c0 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 65 74 20 67 69 74 20 teError('Skipping.Bitbucket.git.
987e0 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 74 68 65 20 driver.for.'.$url.'.because.the.
98800 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 73 69 6e 67 OpenSSL.PHP.extension.is.missing
98820 2e 27 29 3b 0a 7d 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 .');.}..return.false;.}..return.
98840 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
98860 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
98880 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 43 se.Composer\Json\JsonFile;.use.C
988a0 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
988c0 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 20 e.Composer\Util\Filesystem;.use.
988e0 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 6c 3b 0a 75 73 Composer\Util\Git.as.GitUtil;.us
98900 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
98920 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 6e 66 omposer\Cache;.use.Composer\Conf
98940 69 67 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 44 72 69 76 65 72 20 65 78 74 65 6e 64 73 20 ig;.....class.GitDriver.extends.
98960 56 63 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 VcsDriver.{.protected.$cache;.pr
98980 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 68 otected.$tags;.protected.$branch
989a0 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 70 es;.protected.$rootIdentifier;.p
989c0 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 24 69 6e rotected.$repoDir;.protected.$in
989e0 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 20 66 75 foCache.=.array();.....public.fu
98a00 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 65 73 79 nction.initialize().{.if.(Filesy
98a20 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 29 20 7b stem::isLocalPath($this->url)).{
98a40 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 0a 24 63 .$this->repoDir.=.$this->url;.$c
98a60 61 63 68 65 55 72 6c 20 3d 20 72 65 61 6c 70 61 74 68 28 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a acheUrl.=.realpath($this->url);.
98a80 7d 20 65 6c 73 65 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 }.else.{.$this->repoDir.=.$this-
98aa0 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 69 72 27 29 20 2e 20 >config->get('cache-vcs-dir')...
98ac0 27 2f 27 20 2e 20 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 '/'...preg_replace('{[^a-z0-9.]}
98ae0 69 27 2c 20 27 2d 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 20 2e 20 27 2f 27 3b 0a 0a 47 69 74 i',.'-',.$this->url)...'/';..Git
98b00 55 74 69 6c 3a 3a 63 6c 65 61 6e 45 6e 76 28 29 3b 0a 0a 24 66 73 20 3d 20 6e 65 77 20 46 69 6c Util::cleanEnv();..$fs.=.new.Fil
98b20 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 45 esystem();.$fs->ensureDirectoryE
98b40 78 69 73 74 73 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 3b 0a xists(dirname($this->repoDir));.
98b60 0a 69 66 20 28 21 69 73 5f 77 72 69 74 61 62 6c 65 28 64 69 72 6e 61 6d 65 28 24 74 68 69 73 2d .if.(!is_writable(dirname($this-
98b80 3e 72 65 70 6f 44 69 72 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 >repoDir))).{.throw.new.\Runtime
98ba0 45 78 63 65 70 74 69 6f 6e 28 27 43 61 6e 20 6e 6f 74 20 63 6c 6f 6e 65 20 27 2e 24 74 68 69 73 Exception('Can.not.clone.'.$this
98bc0 2d 3e 75 72 6c 2e 27 20 74 6f 20 61 63 63 65 73 73 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d ->url.'.to.access.package.inform
98be0 61 74 69 6f 6e 2e 20 54 68 65 20 22 27 2e 64 69 72 6e 61 6d 65 28 24 74 68 69 73 2d 3e 72 65 70 ation..The."'.dirname($this->rep
98c00 6f 44 69 72 29 2e 27 22 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 6e 6f 74 20 77 72 69 74 61 62 oDir).'".directory.is.not.writab
98c20 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 7d 0a 0a 69 66 le.by.the.current.user.');.}..if
98c40 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 73 73 68 3a 2f 2f 5b 5e 40 5d 2b 40 5b 5e 3a 5d .(preg_match('{^ssh://[^@]+@[^:]
98c60 2b 3a 5b 5e 30 2d 39 5d 2b 7d 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 29 20 7b 0a 74 68 72 6f +:[^0-9]+}',.$this->url)).{.thro
98c80 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(
98ca0 27 54 68 65 20 73 6f 75 72 63 65 20 55 52 4c 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 69 'The.source.URL.'.$this->url.'.i
98cc0 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 65 20 s.invalid,.ssh.URLs.should.have.
98ce0 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 2e 27 a.port.number.after.":".'."\n".'
98d00 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 61 74 Use.ssh://git@example.com:22/pat
98d20 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 20 69 h.or.just.git@example.com:path.i
98d40 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 20 70 f.you.do.not.want.to.provide.a.p
98d60 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 24 67 assword.or.custom.port.');.}..$g
98d80 69 74 55 74 69 6c 20 3d 20 6e 65 77 20 47 69 74 55 74 69 6c 28 24 74 68 69 73 2d 3e 69 6f 2c 20 itUtil.=.new.GitUtil($this->io,.
98da0 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 2c 20 24 $this->config,.$this->process,.$
98dc0 66 73 29 3b 0a 0a 0a 20 69 66 20 28 69 73 5f 64 69 72 28 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 fs);....if.(is_dir($this->repoDi
98de0 72 29 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 r).&&.0.===.$this->process->exec
98e00 75 74 65 28 27 67 69 74 20 72 65 76 2d 70 61 72 73 65 20 2d 2d 67 69 74 2d 64 69 72 27 2c 20 24 ute('git.rev-parse.--git-dir',.$
98e20 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 20 26 26 20 74 72 69 6d 28 output,.$this->repoDir).&&.trim(
98e40 24 6f 75 74 70 75 74 29 20 3d 3d 3d 20 27 2e 27 29 20 7b 0a 74 72 79 20 7b 0a 24 63 6f 6d 6d 61 $output).===.'.').{.try.{.$comma
98e60 6e 64 43 61 6c 6c 61 62 6c 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 75 72 6c 29 20 7b 0a 72 ndCallable.=.function.($url).{.r
98e80 65 74 75 72 6e 20 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 eturn.sprintf('git.remote.set-ur
98ea0 6c 20 6f 72 69 67 69 6e 20 25 73 20 26 26 20 67 69 74 20 72 65 6d 6f 74 65 20 75 70 64 61 74 65 l.origin.%s.&&.git.remote.update
98ec0 20 2d 2d 70 72 75 6e 65 20 6f 72 69 67 69 6e 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f .--prune.origin',.ProcessExecuto
98ee0 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 29 3b 0a 7d 3b 0a 24 67 69 74 55 74 69 6c 2d 3e 72 r::escape($url));.};.$gitUtil->r
98f00 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 24 74 68 69 unCommand($commandCallable,.$thi
98f20 73 2d 3e 75 72 6c 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 7d 20 63 61 74 63 68 s->url,.$this->repoDir);.}.catch
98f40 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 72 .(\Exception.$e).{.$this->io->wr
98f60 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 75 70 64 61 74 iteError('<error>Failed.to.updat
98f80 65 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 2c 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d e.'.$this->url.',.package.inform
98fa0 61 74 69 6f 6e 20 66 72 6f 6d 20 74 68 69 73 20 72 65 70 6f 73 69 74 6f 72 79 20 6d 61 79 20 62 ation.from.this.repository.may.b
98fc0 65 20 6f 75 74 64 61 74 65 64 20 28 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 e.outdated.('.$e->getMessage().'
98fe0 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 72 )</error>');.}.}.else.{...$fs->r
99000 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 0a emoveDirectory($this->repoDir);.
99020 0a 24 72 65 70 6f 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 3b 0a 24 63 6f 6d .$repoDir.=.$this->repoDir;.$com
99040 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 75 72 6c 29 20 75 mandCallable.=.function.($url).u
99060 73 65 20 28 24 72 65 70 6f 44 69 72 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 se.($repoDir).{.return.sprintf('
99080 67 69 74 20 63 6c 6f 6e 65 20 2d 2d 6d 69 72 72 6f 72 20 25 73 20 25 73 27 2c 20 50 72 6f 63 65 git.clone.--mirror.%s.%s',.Proce
990a0 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 73 ssExecutor::escape($url),.Proces
990c0 73 45 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 72 65 70 6f 44 69 72 29 29 3b 0a 7d 3b sExecutor::escape($repoDir));.};
990e0 0a 0a 24 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 64 43 ..$gitUtil->runCommand($commandC
99100 61 6c 6c 61 62 6c 65 2c 20 24 74 68 69 73 2d 3e 75 72 6c 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f allable,.$this->url,.$this->repo
99120 44 69 72 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 24 63 61 63 68 65 55 72 6c 20 3d 20 24 74 68 69 73 Dir,.true);.}..$cacheUrl.=.$this
99140 2d 3e 75 72 6c 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 3b 0a 24 74 68 69 ->url;.}..$this->getTags();.$thi
99160 73 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 s->getBranches();..$this->cache.
99180 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 3e 63 6f =.new.Cache($this->io,.$this->co
991a0 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 2f 27 2e nfig->get('cache-repo-dir').'/'.
991c0 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 20 27 2d preg_replace('{[^a-z0-9.]}i',.'-
991e0 27 2c 20 24 63 61 63 68 65 55 72 6c 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e ',.$cacheUrl));.}.....public.fun
99200 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 69 66 20 28 ction.getRootIdentifier().{.if.(
99220 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 65 72 29 20 null.===.$this->rootIdentifier).
99240 7b 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 27 6d 61 73 74 65 {.$this->rootIdentifier.=.'maste
99260 72 27 3b 0a 0a 0a 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 r';....$this->process->execute('
99280 67 69 74 20 62 72 61 6e 63 68 20 2d 2d 6e 6f 2d 63 6f 6c 6f 72 27 2c 20 24 6f 75 74 70 75 74 2c git.branch.--no-color',.$output,
992a0 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 24 74 .$this->repoDir);.$branches.=.$t
992c0 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 75 74 his->process->splitLines($output
992e0 29 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 27 2a 20 6d 61 73 74 65 72 27 2c 20 24 62 72 );.if.(!in_array('*.master',.$br
99300 61 6e 63 68 65 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 62 72 61 6e 63 68 65 73 20 61 73 anches)).{.foreach.($branches.as
99320 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 20 70 72 65 67 5f .$branch).{.if.($branch.&&.preg_
99340 6d 61 74 63 68 28 27 7b 5e 5c 2a 20 2b 28 5c 53 2b 29 7d 27 2c 20 24 62 72 61 6e 63 68 2c 20 24 match('{^\*.+(\S+)}',.$branch,.$
99360 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 20 match)).{.$this->rootIdentifier.
99380 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 =.$match[1];.break;.}.}.}.}..ret
993a0 75 72 6e 20 24 74 68 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 urn.$this->rootIdentifier;.}....
993c0 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 74 75 .public.function.getUrl().{.retu
993e0 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 66 75 6e 63 rn.$this->url;.}.....public.func
99400 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 7b 0a 72 65 tion.getSource($identifier).{.re
99420 74 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 turn.array('type'.=>.'git',.'url
99440 27 20 3d 3e 20 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 28 29 2c 20 27 72 65 66 65 72 65 6e 63 65 '.=>.$this->getUrl(),.'reference
99460 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 69 63 20 '.=>.$identifier);.}.....public.
99480 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 0a 7b 0a function.getDist($identifier).{.
994a0 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 74 69 return.null;.}.....public.functi
994c0 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 6e 74 on.getComposerInformation($ident
994e0 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 61 2d 66 30 2d ifier).{.if.(preg_match('{[a-f0-
99500 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 65 73 20 9]{40}}i',.$identifier).&&.$res.
99520 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 69 65 72 =.$this->cache->read($identifier
99540 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 74 69 66 69 65 )).{.$this->infoCache[$identifie
99560 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 65 73 29 3b 0a r].=.JsonFile::parseJson($res);.
99580 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 63 68 65 5b 24 }..if.(!isset($this->infoCache[$
995a0 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 20 73 70 72 69 identifier])).{.$resource.=.spri
995c0 6e 74 66 28 27 25 73 3a 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 2c 20 50 72 6f 63 65 73 73 45 ntf('%s:composer.json',.ProcessE
995e0 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 29 3b 0a 24 xecutor::escape($identifier));.$
99600 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 72 69 6e 74 66 28 27 this->process->execute(sprintf('
99620 67 69 74 20 73 68 6f 77 20 25 73 27 2c 20 24 72 65 73 6f 75 72 63 65 29 2c 20 24 63 6f 6d 70 6f git.show.%s',.$resource),.$compo
99640 73 65 72 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 0a 69 66 20 28 21 74 72 69 6d ser,.$this->repoDir);..if.(!trim
99660 28 24 63 6f 6d 70 6f 73 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f ($composer)).{.return;.}..$compo
99680 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 6f ser.=.JsonFile::parseJson($compo
996a0 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 6d ser,.$resource);..if.(empty($com
996c0 70 6f 73 65 72 5b 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 poser['time'])).{.$this->process
996e0 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 67 69 74 20 6c 6f 67 20 2d 31 20 2d 2d ->execute(sprintf('git.log.-1.--
99700 66 6f 72 6d 61 74 3d 25 25 61 74 20 25 73 27 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 format=%%at.%s',.ProcessExecutor
99720 3a 3a 65 73 63 61 70 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 2c 20 24 6f 75 74 70 75 74 2c ::escape($identifier)),.$output,
99740 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 .$this->repoDir);.$date.=.new.\D
99760 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 77 20 5c ateTime('@'.trim($output),.new.\
99780 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 72 5b DateTimeZone('UTC'));.$composer[
997a0 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 20 48 'time'].=.$date->format('Y-m-d.H
997c0 3a 69 3a 73 27 29 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 :i:s');.}..if.(preg_match('{[a-f
997e0 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 29 20 7b 0a 24 74 68 0-9]{40}}i',.$identifier)).{.$th
99800 69 73 2d 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 is->cache->write($identifier,.js
99820 6f 6e 5f 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 on_encode($composer));.}..$this-
99840 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
99860 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[
99880 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
998a0 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
998c0 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(
998e0 29 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 67 69 74 );..$this->process->execute('git
99900 20 73 68 6f 77 2d 72 65 66 20 2d 2d 74 61 67 73 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 .show-ref.--tags',.$output,.$thi
99920 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6f 75 74 70 75 74 20 3d 20 s->repoDir);.foreach.($output.=.
99940 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
99960 75 74 29 20 61 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 ut).as.$tag).{.if.($tag.&&.preg_
99980 6d 61 74 63 68 28 27 7b 5e 28 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 29 20 72 65 66 73 2f 74 61 67 match('{^([a-f0-9]{40}).refs/tag
999a0 73 2f 28 5c 53 2b 29 24 7d 27 2c 20 24 74 61 67 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 s/(\S+)$}',.$tag,.$match)).{.$th
999c0 69 73 2d 3e 74 61 67 73 5b 24 6d 61 74 63 68 5b 32 5d 5d 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b is->tags[$match[2]].=.$match[1];
999e0 0a 7d 0a 7d 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 .}.}.}..return.$this->tags;.}...
99a00 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 63 68 65 73 28 29 0a ..public.function.getBranches().
99a20 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 6e 63 68 65 73 29 20 {.if.(null.===.$this->branches).
99a40 7b 0a 24 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 70 {.$branches.=.array();..$this->p
99a60 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 68 20 2d 2d 6e 6f rocess->execute('git.branch.--no
99a80 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 75 74 70 75 74 2c -color.--no-abbrev.-v',.$output,
99aa0 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
99ac0 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
99ae0 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 20 21 70 72 65 s.$branch).{.if.($branch.&&.!pre
99b00 67 5f 6d 61 74 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 g_match('{^.*[^/]+/HEAD.}',.$bra
99b20 6e 63 68 29 29 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 nch)).{.if.(preg_match('{^(?:\*.
99b40 29 3f 20 2a 28 5c 53 2b 29 20 2a 28 5b 61 2d 66 30 2d 39 5d 2b 29 28 3f 3a 20 2e 2a 29 3f 24 7d )?.*(\S+).*([a-f0-9]+)(?:..*)?$}
99b60 27 2c 20 24 62 72 61 6e 63 68 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 ',.$branch,.$match)).{.$branches
99b80 5b 24 6d 61 74 63 68 5b 31 5d 5d 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 7d 0a 7d 0a 0a [$match[1]].=.$match[2];.}.}.}..
99ba0 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 20 3d 20 24 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a $this->branches.=.$branches;.}..
99bc0 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 75 return.$this->branches;.}.....pu
99be0 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 4f blic.static.function.supports(IO
99c00 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 24 Interface.$io,.Config.$config,.$
99c20 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 70 72 65 67 5f 6d url,.$deep.=.false).{.if.(preg_m
99c40 61 74 63 68 28 27 23 28 5e 67 69 74 3a 2f 2f 7c 5c 2e 67 69 74 24 7c 67 69 74 28 3f 3a 6f 6c 69 atch('#(^git://|\.git$|git(?:oli
99c60 74 65 29 3f 40 7c 2f 2f 67 69 74 5c 2e 7c 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 29 23 69 27 2c te)?@|//git\.|//github.com/)#i',
99c80 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 66 20 28 .$url)).{.return.true;.}....if.(
99ca0 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 72 6c 29 29 20 7b Filesystem::isLocalPath($url)).{
99cc0 0a 24 75 72 6c 20 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 .$url.=.Filesystem::getPlatformP
99ce0 61 74 68 28 24 75 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 ath($url);.if.(!is_dir($url)).{.
99d00 72 65 74 75 72 6e 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 return.false;.}..$process.=.new.
99d20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 24 69 6f 29 3b 0a 0a 20 69 66 20 28 24 70 72 6f ProcessExecutor($io);...if.($pro
99d40 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 74 61 67 27 2c 20 24 6f 75 74 70 75 74 cess->execute('git.tag',.$output
99d60 2c 20 24 75 72 6c 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 ,.$url).===.0).{.return.true;.}.
99d80 7d 0a 0a 69 66 20 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 }..if.(!$deep).{.return.false;.}
99da0 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 65 63 75 74 6f 72 ..$process.=.new.ProcessExecutor
99dc0 28 24 69 6f 29 3b 0a 69 66 20 28 24 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 ($io);.if.($process->execute('gi
99de0 74 20 6c 73 2d 72 65 6d 6f 74 65 20 2d 2d 68 65 61 64 73 20 27 20 2e 20 50 72 6f 63 65 73 73 45 t.ls-remote.--heads.'...ProcessE
99e00 78 65 63 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 2c 20 24 6f 75 74 70 75 74 29 20 xecutor::escape($url),.$output).
99e20 3d 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 ===.0).{.return.true;.}..return.
99e40 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 61 6d 65 false;.}.}.<?php............name
99e60 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 56 63 73 3b 0a 0a space.Composer\Repository\Vcs;..
99e80 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 65 use.Composer\Config;.use.Compose
99ea0 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 3b r\Downloader\TransportException;
99ec0 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 0a 75 73 65 .use.Composer\Json\JsonFile;.use
99ee0 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 49 4f .Composer\Cache;.use.Composer\IO
99f00 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 55 74 69 6c 5c \IOInterface;.use.Composer\Util\
99f20 47 69 74 48 75 62 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 48 75 62 44 72 69 76 65 72 20 65 GitHub;.....class.GitHubDriver.e
99f40 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 65 64 20 24 63 61 xtends.VcsDriver.{.protected.$ca
99f60 63 68 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 77 6e 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 che;.protected.$owner;.protected
99f80 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 67 73 3b 0a 70 .$repository;.protected.$tags;.p
99fa0 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 63 74 65 64 20 24 72 rotected.$branches;.protected.$r
99fc0 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 24 68 61 73 49 73 73 ootIdentifier;.protected.$hasIss
99fe0 75 65 73 3b 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 ues;.protected.$infoCache.=.arra
9a000 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 73 50 72 69 76 61 74 65 20 3d 20 66 61 6c 73 y();.protected.$isPrivate.=.fals
9a020 65 3b 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 67 69 74 44 72 69 76 65 72 3b 0a 0a e;.......protected.$gitDriver;..
9a040 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 0a ...public.function.initialize().
9a060 7b 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 28 3f 3a 28 3f 3a 68 74 74 70 73 3f 7c 67 69 74 {.preg_match('#^(?:(?:https?|git
9a080 29 3a 2f 2f 28 5b 5e 2f 5d 2b 29 2f 7c 67 69 74 40 28 5b 5e 3a 5d 2b 29 3a 29 28 5b 5e 2f 5d 2b )://([^/]+)/|git@([^:]+):)([^/]+
9a0a0 29 2f 28 2e 2b 3f 29 28 3f 3a 5c 2e 67 69 74 7c 2f 29 3f 24 23 27 2c 20 24 74 68 69 73 2d 3e 75 )/(.+?)(?:\.git|/)?$#',.$this->u
9a0c0 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 3d 20 24 6d 61 74 rl,.$match);.$this->owner.=.$mat
9a0e0 63 68 5b 33 5d 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 6d 61 74 63 ch[3];.$this->repository.=.$matc
9a100 68 5b 34 5d 3b 0a 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d 20 21 65 6d 70 74 79 28 h[4];.$this->originUrl.=.!empty(
9a120 24 6d 61 74 63 68 5b 31 5d 29 20 3f 20 24 6d 61 74 63 68 5b 31 5d 20 3a 20 24 6d 61 74 63 68 5b $match[1]).?.$match[1].:.$match[
9a140 32 5d 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d 3d 3d 20 27 77 77 2];.if.($this->originUrl.===.'ww
9a160 77 2e 67 69 74 68 75 62 2e 63 6f 6d 27 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 w.github.com').{.$this->originUr
9a180 6c 20 3d 20 27 67 69 74 68 75 62 2e 63 6f 6d 27 3b 0a 7d 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 l.=.'github.com';.}.$this->cache
9a1a0 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 3e 63 .=.new.Cache($this->io,.$this->c
9a1c0 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 2f 27 onfig->get('cache-repo-dir').'/'
9a1e0 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 77 6e .$this->originUrl.'/'.$this->own
9a200 65 72 2e 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 69 66 20 28 er.'/'.$this->repository);..if.(
9a220 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 6e 6f 2d 61 70 69 27 isset($this->repoConfig['no-api'
9a240 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 5b 27 6e 6f 2d 61 70 69 27 ]).&&.$this->repoConfig['no-api'
9a260 5d 29 20 7b 0a 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 ]).{.$this->setupGitDriver($this
9a280 2d 3e 75 72 6c 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 65 74 63 68 ->url);..return;.}..$this->fetch
9a2a0 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 RootIdentifier();.}..public.func
9a2c0 74 69 6f 6e 20 67 65 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 tion.getRepositoryUrl().{.return
9a2e0 20 27 68 74 74 70 73 3a 2f 2f 27 2e 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2e 27 2f 27 .'https://'.$this->originUrl.'/'
9a300 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
9a320 6f 72 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 67 65 74 52 6f ory;.}.....public.function.getRo
9a340 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 otIdentifier().{.if.($this->gitD
9a360 72 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 river).{.return.$this->gitDriver
9a380 2d 3e 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e ->getRootIdentifier();.}..return
9a3a0 20 24 74 68 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 .$this->rootIdentifier;.}.....pu
9a3c0 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 69 66 20 28 24 74 68 blic.function.getUrl().{.if.($th
9a3e0 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
9a400 69 74 44 72 69 76 65 72 2d 3e 67 65 74 55 72 6c 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 68 itDriver->getUrl();.}..return.'h
9a420 74 74 70 73 3a 2f 2f 27 20 2e 20 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 2e 20 27 2f ttps://'...$this->originUrl...'/
9a440 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 69 '.$this->owner.'/'.$this->reposi
9a460 74 6f 72 79 2e 27 2e 67 69 74 27 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e tory.'.git';.}.....protected.fun
9a480 63 74 69 6f 6e 20 67 65 74 41 70 69 55 72 6c 28 29 0a 7b 0a 69 66 20 28 27 67 69 74 68 75 62 2e ction.getApiUrl().{.if.('github.
9a4a0 63 6f 6d 27 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 29 20 7b 0a 24 61 70 com'.===.$this->originUrl).{.$ap
9a4c0 69 55 72 6c 20 3d 20 27 61 70 69 2e 67 69 74 68 75 62 2e 63 6f 6d 27 3b 0a 7d 20 65 6c 73 65 20 iUrl.=.'api.github.com';.}.else.
9a4e0 7b 0a 24 61 70 69 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 2e 20 27 {.$apiUrl.=.$this->originUrl...'
9a500 2f 61 70 69 2f 76 33 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 68 74 74 70 73 3a 2f 2f 27 20 2e /api/v3';.}..return.'https://'..
9a520 20 24 61 70 69 55 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 .$apiUrl;.}.....public.function.
9a540 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 69 66 20 28 24 74 68 getSource($identifier).{.if.($th
9a560 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
9a580 69 74 44 72 69 76 65 72 2d 3e 67 65 74 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 itDriver->getSource($identifier)
9a5a0 3b 0a 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 50 72 69 76 61 74 65 29 20 7b 0a 0a 20 0a 20 ;.}.if.($this->isPrivate).{.....
9a5c0 24 75 72 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 53 73 68 55 72 6c 28 29 3b 0a $url.=.$this->generateSshUrl();.
9a5e0 7d 20 65 6c 73 65 20 7b 0a 24 75 72 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 28 29 3b }.else.{.$url.=.$this->getUrl();
9a600 0a 7d 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 67 69 74 27 .}..return.array('type'.=>.'git'
9a620 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 20 3d 3e 20 ,.'url'.=>.$url,.'reference'.=>.
9a640 24 69 64 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 $identifier);.}.....public.funct
9a660 69 6f 6e 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 ion.getDist($identifier).{.$url.
9a680 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/'
9a6a0 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
9a6c0 6f 72 79 2e 27 2f 7a 69 70 62 61 6c 6c 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 0a 72 65 ory.'/zipball/'.$identifier;..re
9a6e0 74 75 72 6e 20 61 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 turn.array('type'.=>.'zip',.'url
9a700 27 20 3d 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 '.=>.$url,.'reference'.=>.$ident
9a720 69 66 69 65 72 2c 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 ifier,.'shasum'.=>.'');.}.....pu
9a740 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 72 6d 61 blic.function.getComposerInforma
9a760 74 69 6f 6e 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 tion($identifier).{.if.($this->g
9a780 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 69 74 44 72 69 itDriver).{.return.$this->gitDri
9a7a0 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 64 65 ver->getComposerInformation($ide
9a7c0 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 61 ntifier);.}..if.(preg_match('{[a
9a7e0 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 24 -f0-9]{40}}i',.$identifier).&&.$
9a800 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 69 res.=.$this->cache->read($identi
9a820 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 74 fier)).{.$this->infoCache[$ident
9a840 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 65 ifier].=.JsonFile::parseJson($re
9a860 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 63 s);.}..if.(!isset($this->infoCac
9a880 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a 24 6e 6f 74 46 6f 75 6e 64 52 65 74 he[$identifier])).{.$notFoundRet
9a8a0 72 69 65 73 20 3d 20 32 3b 0a 77 68 69 6c 65 20 28 24 6e 6f 74 46 6f 75 6e 64 52 65 74 72 69 65 ries.=.2;.while.($notFoundRetrie
9a8c0 73 29 20 7b 0a 74 72 79 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 s).{.try.{.$resource.=.$this->ge
9a8e0 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 77 6e tApiUrl()...'/repos/'.$this->own
9a900 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 63 6f 6e 74 65 er.'/'.$this->repository.'/conte
9a920 6e 74 73 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 3f 72 65 66 3d 27 2e 75 72 6c 65 6e 63 6f 64 nts/composer.json?ref='.urlencod
9a940 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 4a 73 6f 6e e($identifier);.$resource.=.Json
9a960 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 74 65 6e File::parseJson($this->getConten
9a980 74 73 28 24 72 65 73 6f 75 72 63 65 29 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 72 65 73 6f 75 ts($resource));.if.(empty($resou
9a9a0 72 63 65 5b 27 63 6f 6e 74 65 6e 74 27 5d 29 20 7c 7c 20 24 72 65 73 6f 75 72 63 65 5b 27 65 6e rce['content']).||.$resource['en
9a9c0 63 6f 64 69 6e 67 27 5d 20 21 3d 3d 20 27 62 61 73 65 36 34 27 20 7c 7c 20 21 28 24 63 6f 6d 70 coding'].!==.'base64'.||.!($comp
9a9e0 6f 73 65 72 20 3d 20 62 61 73 65 36 34 5f 64 65 63 6f 64 65 28 24 72 65 73 6f 75 72 63 65 5b 27 oser.=.base64_decode($resource['
9aa00 63 6f 6e 74 65 6e 74 27 5d 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d content']))).{.throw.new.\Runtim
9aa20 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 72 65 74 72 69 65 76 65 20 63 eException('Could.not.retrieve.c
9aa40 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 6f 72 20 27 2e 24 69 64 65 6e 74 69 66 69 65 72 29 3b omposer.json.for.'.$identifier);
9aa60 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 .}.break;.}.catch.(TransportExce
9aa80 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 34 30 34 20 21 3d 3d 20 24 65 2d 3e 67 65 74 43 ption.$e).{.if.(404.!==.$e->getC
9aaa0 6f 64 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 0a 20 0a 20 24 6e 6f 74 46 6f ode()).{.throw.$e;.}......$notFo
9aac0 75 6e 64 52 65 74 72 69 65 73 2d 2d 3b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 6e 75 6c 6c 3b 0a undRetries--;.$composer.=.null;.
9aae0 7d 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 70 6f 73 65 72 20 }.}..if.($composer).{.$composer.
9ab00 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 6f 73 65 72 2c =.JsonFile::parseJson($composer,
9ab20 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 6d 70 6f 73 65 .$resource);..if.(empty($compose
9ab40 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 74 68 69 73 2d r['time'])).{.$resource.=.$this-
9ab60 3e 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 >getApiUrl()...'/repos/'.$this->
9ab80 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 2f 63 6f owner.'/'.$this->repository.'/co
9aba0 6d 6d 69 74 73 2f 27 2e 75 72 6c 65 6e 63 6f 64 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a mmits/'.urlencode($identifier);.
9abc0 24 63 6f 6d 6d 69 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 $commit.=.JsonFile::parseJson($t
9abe0 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 65 his->getContents($resource),.$re
9ac00 73 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 6f source);.$composer['time'].=.$co
9ac20 6d 6d 69 74 5b 27 63 6f 6d 6d 69 74 27 5d 5b 27 63 6f 6d 6d 69 74 74 65 72 27 5d 5b 27 64 61 74 mmit['commit']['committer']['dat
9ac40 65 27 5d 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 e'];.}.if.(!isset($composer['sup
9ac60 70 6f 72 74 27 5d 5b 27 73 6f 75 72 63 65 27 5d 29 29 20 7b 0a 24 6c 61 62 65 6c 20 3d 20 61 72 port']['source'])).{.$label.=.ar
9ac80 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 68 69 73 2d 3e 67 ray_search($identifier,.$this->g
9aca0 65 74 54 61 67 73 28 29 29 20 3f 3a 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 69 64 65 6e 74 etTags()).?:.array_search($ident
9acc0 69 66 69 65 72 2c 20 24 74 68 69 73 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 29 20 3f 3a 20 ifier,.$this->getBranches()).?:.
9ace0 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 24 63 6f 6d 70 6f 73 65 72 5b 27 73 75 70 70 6f 72 74 27 $identifier;.$composer['support'
9ad00 5d 5b 27 73 6f 75 72 63 65 27 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 68 74 74 70 73 3a 2f 2f 25 ]['source'].=.sprintf('https://%
9ad20 73 2f 25 73 2f 25 73 2f 74 72 65 65 2f 25 73 27 2c 20 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 s/%s/%s/tree/%s',.$this->originU
9ad40 72 6c 2c 20 24 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 rl,.$this->owner,.$this->reposit
9ad60 6f 72 79 2c 20 24 6c 61 62 65 6c 29 3b 0a 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 6f 6d 70 ory,.$label);.}.if.(!isset($comp
9ad80 6f 73 65 72 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 73 73 75 65 73 27 5d 29 20 26 26 20 24 74 oser['support']['issues']).&&.$t
9ada0 68 69 73 2d 3e 68 61 73 49 73 73 75 65 73 29 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 5b 27 73 75 70 his->hasIssues).{.$composer['sup
9adc0 70 6f 72 74 27 5d 5b 27 69 73 73 75 65 73 27 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 68 74 74 70 port']['issues'].=.sprintf('http
9ade0 73 3a 2f 2f 25 73 2f 25 73 2f 25 73 2f 69 73 73 75 65 73 27 2c 20 24 74 68 69 73 2d 3e 6f 72 69 s://%s/%s/%s/issues',.$this->ori
9ae00 67 69 6e 55 72 6c 2c 20 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2c 20 24 74 68 69 73 2d 3e 72 65 70 ginUrl,.$this->owner,.$this->rep
9ae20 6f 73 69 74 6f 72 79 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b ository);.}.}..if.(preg_match('{
9ae40 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 29 29 20 7b [a-f0-9]{40}}i',.$identifier)).{
9ae60 0a 24 74 68 69 73 2d 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 .$this->cache->write($identifier
9ae80 2c 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 7d 0a 0a 24 74 ,.json_encode($composer));.}..$t
9aea0 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 24 63 his->infoCache[$identifier].=.$c
9aec0 6f 6d 70 6f 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 omposer;.}..return.$this->infoCa
9aee0 63 68 65 5b 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 che[$identifier];.}.....public.f
9af00 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 unction.getTags().{.if.($this->g
9af20 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 69 74 44 72 69 itDriver).{.return.$this->gitDri
9af40 76 65 72 2d 3e 67 65 74 54 61 67 73 28 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 ver->getTags();.}.if.(null.===.$
9af60 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 3d 20 61 72 72 61 this->tags).{.$this->tags.=.arra
9af80 79 28 29 3b 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 y();.$resource.=.$this->getApiUr
9afa0 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.'/'
9afc0 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 3f 70 65 72 5f 70 61 .$this->repository.'/tags?per_pa
9afe0 67 65 3d 31 30 30 27 3b 0a 0a 64 6f 20 7b 0a 24 74 61 67 73 44 61 74 61 20 3d 20 4a 73 6f 6e 46 ge=100';..do.{.$tagsData.=.JsonF
9b000 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
9b020 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 72 65 61 63 s($resource),.$resource);.foreac
9b040 68 20 28 24 74 61 67 73 44 61 74 61 20 61 73 20 24 74 61 67 29 20 7b 0a 24 74 68 69 73 2d 3e 74 h.($tagsData.as.$tag).{.$this->t
9b060 61 67 73 5b 24 74 61 67 5b 27 6e 61 6d 65 27 5d 5d 20 3d 20 24 74 61 67 5b 27 63 6f 6d 6d 69 74 ags[$tag['name']].=.$tag['commit
9b080 27 5d 5b 27 73 68 61 27 5d 3b 0a 7d 0a 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d ']['sha'];.}..$resource.=.$this-
9b0a0 3e 67 65 74 4e 65 78 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 >getNextPage();.}.while.($resour
9b0c0 63 65 29 3b 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 ce);.}..return.$this->tags;.}...
9b0e0 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 63 68 65 73 28 29 0a ..public.function.getBranches().
9b100 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 72 65 74 75 72 6e {.if.($this->gitDriver).{.return
9b120 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 .$this->gitDriver->getBranches()
9b140 3b 0a 7d 0a 69 66 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 ;.}.if.(null.===.$this->branches
9b160 29 20 7b 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 24 ).{.$this->branches.=.array();.$
9b180 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 20 2e 20 resource.=.$this->getApiUrl()...
9b1a0 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 68 69 73 '/repos/'.$this->owner.'/'.$this
9b1c0 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 67 69 74 2f 72 65 66 73 2f 68 65 61 64 73 3f 70 65 ->repository.'/git/refs/heads?pe
9b1e0 72 5f 70 61 67 65 3d 31 30 30 27 3b 0a 0a 24 62 72 61 6e 63 68 42 6c 61 63 6b 6c 69 73 74 20 3d r_page=100';..$branchBlacklist.=
9b200 20 61 72 72 61 79 28 27 67 68 2d 70 61 67 65 73 27 29 3b 0a 0a 64 6f 20 7b 0a 24 62 72 61 6e 63 .array('gh-pages');..do.{.$branc
9b220 68 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 74 68 69 hData.=.JsonFile::parseJson($thi
9b240 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 6f s->getContents($resource),.$reso
9b260 75 72 63 65 29 3b 0a 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 urce);.foreach.($branchData.as.$
9b280 62 72 61 6e 63 68 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 62 72 61 6e 63 68 branch).{.$name.=.substr($branch
9b2a0 5b 27 72 65 66 27 5d 2c 20 31 31 29 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 6e 61 6d ['ref'],.11);.if.(!in_array($nam
9b2c0 65 2c 20 24 62 72 61 6e 63 68 42 6c 61 63 6b 6c 69 73 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 62 e,.$branchBlacklist)).{.$this->b
9b2e0 72 61 6e 63 68 65 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 62 72 61 6e 63 68 5b 27 6f 62 6a 65 63 74 ranches[$name].=.$branch['object
9b300 27 5d 5b 27 73 68 61 27 5d 3b 0a 7d 0a 7d 0a 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 ']['sha'];.}.}..$resource.=.$thi
9b320 73 2d 3e 67 65 74 4e 65 78 74 50 61 67 65 28 29 3b 0a 7d 20 77 68 69 6c 65 20 28 24 72 65 73 6f s->getNextPage();.}.while.($reso
9b340 75 72 63 65 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 urce);.}..return.$this->branches
9b360 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
9b380 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.
9b3a0 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).{.
9b3c0 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 28 28 3f 3a 68 74 74 70 73 3f 7c 67 69 if.(!preg_match('#^((?:https?|gi
9b3e0 74 29 3a 2f 2f 28 5b 5e 2f 5d 2b 29 2f 7c 67 69 74 40 28 5b 5e 3a 5d 2b 29 3a 29 28 5b 5e 2f 5d t)://([^/]+)/|git@([^:]+):)([^/]
9b400 2b 29 2f 28 2e 2b 3f 29 28 3f 3a 5c 2e 67 69 74 7c 2f 29 3f 24 23 27 2c 20 24 75 72 6c 2c 20 24 +)/(.+?)(?:\.git|/)?$#',.$url,.$
9b420 6d 61 74 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 6f 72 matches)).{.return.false;.}..$or
9b440 69 67 69 6e 55 72 6c 20 3d 20 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 20 3f 20 iginUrl.=.!empty($matches[2]).?.
9b460 24 6d 61 74 63 68 65 73 5b 32 5d 20 3a 20 24 6d 61 74 63 68 65 73 5b 33 5d 3b 0a 69 66 20 28 21 $matches[2].:.$matches[3];.if.(!
9b480 69 6e 5f 61 72 72 61 79 28 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 77 77 77 5c 2e 7d 69 in_array(preg_replace('{^www\.}i
9b4a0 27 2c 20 27 27 2c 20 24 6f 72 69 67 69 6e 55 72 6c 29 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 ',.'',.$originUrl),.$config->get
9b4c0 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 75 72 6e 20 66 61 ('github-domains'))).{.return.fa
9b4e0 6c 73 65 3b 0a 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 lse;.}..if.(!extension_loaded('o
9b500 70 65 6e 73 73 6c 27 29 29 20 7b 0a 69 66 20 28 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 penssl')).{.if.($io->isVerbose()
9b520 29 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 ).{.$io->writeError('Skipping.Gi
9b540 74 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 tHub.driver.for.'.$url.'.because
9b560 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 69 .the.OpenSSL.PHP.extension.is.mi
9b580 73 73 69 6e 67 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 ssing.');.}..return.false;.}..re
9b5a0 74 75 72 6e 20 74 72 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 turn.true;.}.......protected.fun
9b5c0 63 74 69 6f 6e 20 67 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 ction.generateSshUrl().{.return.
9b5e0 27 67 69 74 40 27 20 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 'git@'...$this->originUrl...':'.
9b600 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 6f $this->owner.'/'.$this->reposito
9b620 72 79 2e 27 2e 67 69 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 ry.'.git';.}.....protected.funct
9b640 69 6f 6e 20 67 65 74 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 ion.getContents($url,.$fetchingR
9b660 65 70 6f 44 61 74 61 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 epoData.=.false).{.try.{.return.
9b680 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 20 63 61 74 parent::getContents($url);.}.cat
9b6a0 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 24 67 69 ch.(TransportException.$e).{.$gi
9b6c0 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,
9b6e0 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 2c 20 .$this->config,.$this->process,.
9b700 24 74 68 69 73 2d 3e 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 $this->remoteFilesystem);..switc
9b720 68 20 28 24 65 2d 3e 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 h.($e->getCode()).{.case.401:.ca
9b740 73 65 20 34 30 34 3a 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 se.404:...if.(!$fetchingRepoData
9b760 29 20 7b 0a 74 68 72 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 ).{.throw.$e;.}..if.($gitHubUtil
9b780 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 67 69 6e 55 72 ->authorizeOAuth($this->originUr
9b7a0 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 74 65 6e 74 73 l)).{.return.parent::getContents
9b7c0 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 69 73 49 6e 74 ($url);.}..if.(!$this->io->isInt
9b7e0 65 72 61 63 74 69 76 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 eractive()).{.return.$this->atte
9b800 6d 70 74 43 6c 6f 6e 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 mptCloneFallback();.}..$gitHubUt
9b820 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 76 65 6c 79 28 il->authorizeOAuthInteractively(
9b840 24 74 68 69 73 2d 3e 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 $this->originUrl,.'Your.GitHub.c
9b860 72 65 64 65 6e 74 69 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 redentials.are.required.to.fetch
9b880 20 70 72 69 76 61 74 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 .private.repository.metadata.(<i
9b8a0 6e 66 6f 3e 27 2e 24 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 nfo>'.$this->url.'</info>)');..r
9b8c0 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);
9b8e0 0a 0a 63 61 73 65 20 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 ..case.403:.if.(!$this->io->hasA
9b900 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 29 20 uthentication($this->originUrl).
9b920 26 26 20 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 74 68 28 24 &&.$gitHubUtil->authorizeOAuth($
9b940 74 68 69 73 2d 3e 6f 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 this->originUrl)).{.return.paren
9b960 74 3a 3a 67 65 74 43 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 t::getContents($url);.}..if.(!$t
9b980 68 69 73 2d 3e 69 6f 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 his->io->isInteractive().&&.$fet
9b9a0 63 68 69 6e 67 52 65 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 chingRepoData).{.return.$this->a
9b9c0 74 74 65 6d 70 74 43 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 ttemptCloneFallback();.}..$rateL
9b9e0 69 6d 69 74 65 64 20 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 imited.=.false;.foreach.($e->get
9ba00 48 65 61 64 65 72 73 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 Headers().as.$header).{.if.(preg
9ba20 5f 6d 61 74 63 68 28 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 _match('{^X-RateLimit-Remaining:
9ba40 20 2a 30 24 7d 69 27 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 .*0$}i',.trim($header))).{.$rate
9ba60 4c 69 6d 69 74 65 64 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 Limited.=.true;.}.}..if.(!$this-
9ba80 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
9baa0 69 67 69 6e 55 72 6c 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 iginUrl)).{.if.(!$this->io->isIn
9bac0 74 65 72 61 63 74 69 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 teractive()).{.$this->io->writeE
9bae0 72 72 6f 72 28 27 3c 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 rror('<error>GitHub.API.limit.ex
9bb00 68 61 75 73 74 65 64 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 hausted..Failed.to.get.metadata.
9bb20 66 6f 72 20 74 68 65 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 for.the.'.$this->url.'.repositor
9bb40 79 2c 20 74 72 79 20 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 y,.try.running.in.interactive.mo
9bb60 64 65 20 73 6f 20 74 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 de.so.that.you.can.enter.your.Gi
9bb80 74 48 75 62 20 63 72 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 tHub.credentials.to.increase.the
9bba0 20 41 50 49 20 6c 69 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 .API.limit</error>');.throw.$e;.
9bbc0 7d 0a 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 74 68 49 6e }..$gitHubUtil->authorizeOAuthIn
9bbe0 74 65 72 61 63 74 69 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 teractively($this->originUrl,.'A
9bc00 50 49 20 6c 69 6d 69 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 PI.limit.exhausted..Enter.your.G
9bc20 69 74 48 75 62 20 63 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 itHub.credentials.to.get.a.large
9bc40 72 20 41 50 49 20 6c 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 r.API.limit.(<info>'.$this->url.
9bc60 27 3c 2f 69 6e 66 6f 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 '</info>)');..return.parent::get
9bc80 43 6f 6e 74 65 6e 74 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 Contents($url);.}..if.($rateLimi
9bca0 74 65 64 29 20 7b 0a 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 ted).{.$rateLimit.=.$this->getRa
9bcc0 74 65 4c 69 6d 69 74 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 teLimit($e->getHeaders());.$this
9bce0 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 0a 27 3c 65 72 72 6f ->io->writeError(sprintf(.'<erro
9bd00 72 3e 47 69 74 48 75 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 r>GitHub.API.limit.(%d.calls/hr)
9bd20 20 69 73 20 65 78 68 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 .is.exhausted..You.are.already.a
9bd40 75 74 68 6f 72 69 7a 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 uthorized.so.you.have.to.wait.un
9bd60 74 69 6c 20 25 73 20 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 til.%s.before.doing.more.request
9bd80 73 3c 2f 65 72 72 6f 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 s</error>',.$rateLimit['limit'],
9bda0 0a 24 72 61 74 65 4c 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 .$rateLimit['reset'].));.}..thro
9bdc0 77 20 24 65 3b 0a 0a 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 w.$e;..default:.throw.$e;.}.}.}.
9bde0 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 52 61 ........protected.function.getRa
9be00 74 65 4c 69 6d 69 74 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 teLimit(array.$headers).{.$rateL
9be20 69 6d 69 74 20 3d 20 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 imit.=.array(.'limit'.=>.'?',.'r
9be40 65 73 65 74 27 20 3d 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 eset'.=>.'?',.);..foreach.($head
9be60 65 72 73 20 61 73 20 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 ers.as.$header).{.$header.=.trim
9be80 28 24 68 65 61 64 65 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 ($header);.if.(false.===.strpos(
9bea0 24 68 65 61 64 65 72 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 $header,.'X-RateLimit-')).{.cont
9bec0 69 6e 75 65 3b 0a 7d 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 inue;.}.list($type,.$value).=.ex
9bee0 70 6c 6f 64 65 28 27 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 plode(':',.$header,.2);.switch.(
9bf00 24 74 79 70 65 29 20 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 $type).{.case.'X-RateLimit-Limit
9bf20 27 3a 0a 24 72 61 74 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 ':.$rateLimit['limit'].=.(int).t
9bf40 72 69 6d 28 24 76 61 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 rim($value);.break;.case.'X-Rate
9bf60 4c 69 6d 69 74 2d 52 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 Limit-Reset':.$rateLimit['reset'
9bf80 5d 20 3d 20 64 61 74 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 ].=.date('Y-m-d.H:i:s',.(int).tr
9bfa0 69 6d 28 24 76 61 6c 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 im($value));.break;.}.}..return.
9bfc0 24 72 61 74 65 4c 69 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 $rateLimit;.}.......protected.fu
9bfe0 6e 63 74 69 6f 6e 20 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 nction.fetchRootIdentifier().{.$
9c000 72 65 70 6f 44 61 74 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 repoDataUrl.=.$this->getApiUrl()
9c020 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
9c040 68 69 73 2d 3e 72 65 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 his->repository;..$repoData.=.Js
9c060 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 74 onFile::parseJson($this->getCont
9c080 65 6e 74 73 28 24 72 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 ents($repoDataUrl,.true),.$repoD
9c0a0 61 74 61 55 72 6c 29 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 ataUrl);.if.(null.===.$repoData.
9c0c0 26 26 20 6e 75 6c 6c 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 &&.null.!==.$this->gitDriver).{.
9c0e0 72 65 74 75 72 6e 3b 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 return;.}..$this->owner.=.$repoD
9c100 61 74 61 5b 27 6f 77 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 ata['owner']['login'];.$this->re
9c120 70 6f 73 69 74 6f 72 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 pository.=.$repoData['name'];..$
9c140 74 68 69 73 2d 3e 69 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 this->isPrivate.=.!empty($repoDa
9c160 74 61 5b 27 70 72 69 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 ta['private']);.if.(isset($repoD
9c180 61 74 61 5b 27 64 65 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 ata['default_branch'])).{.$this-
9c1a0 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 64 65 66 >rootIdentifier.=.$repoData['def
9c1c0 61 75 6c 74 5f 62 72 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 ault_branch'];.}.elseif.(isset($
9c1e0 72 65 70 6f 44 61 74 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 repoData['master_branch'])).{.$t
9c200 68 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 his->rootIdentifier.=.$repoData[
9c220 27 6d 61 73 74 65 72 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 'master_branch'];.}.else.{.$this
9c240 2d 3e 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 7d 0a 24 ->rootIdentifier.=.'master';.}.$
9c260 74 68 69 73 2d 3e 68 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 this->hasIssues.=.!empty($repoDa
9c280 74 61 5b 27 68 61 73 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 ta['has_issues']);.}..protected.
9c2a0 66 75 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 function.attemptCloneFallback().
9c2c0 7b 0a 24 74 68 69 73 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 {.$this->isPrivate.=.true;..try.
9c2e0 7b 0a 0a 20 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 72 28 {.........$this->setupGitDriver(
9c300 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 75 72 $this->generateSshUrl());..retur
9c320 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 24 65 n;.}.catch.(\RuntimeException.$e
9c340 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 24 74 ).{.$this->gitDriver.=.null;..$t
9c360 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 69 6c his->io->writeError('<error>Fail
9c380 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 61 74 ed.to.clone.the.'.$this->generat
9c3a0 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 6e 6e eSshUrl().'.repository,.try.runn
9c3c0 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 74 20 ing.in.interactive.mode.so.that.
9c3e0 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 65 64 65 6e you.can.enter.your.GitHub.creden
9c400 74 69 61 6c 73 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 tials</error>');.throw.$e;.}.}..
9c420 70 72 6f 74 65 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 protected.function.setupGitDrive
9c440 72 28 24 75 72 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 r($url).{.$this->gitDriver.=.new
9c460 20 47 69 74 44 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 .GitDriver(.array('url'.=>.$url)
9c480 2c 0a 24 74 68 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 ,.$this->io,.$this->config,.$thi
9c4a0 73 2d 3e 70 72 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 s->process,.$this->remoteFilesys
9c4c0 74 65 6d 0a 29 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 tem.);.$this->gitDriver->initial
9c4e0 69 7a 65 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 67 65 74 ize();.}..protected.function.get
9c500 4e 65 78 74 50 61 67 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 NextPage().{.$headers.=.$this->r
9c520 65 6d 6f 74 65 46 69 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 emoteFilesystem->getLastHeaders(
9c540 29 3b 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 );.foreach.($headers.as.$header)
9c560 20 7b 0a 69 66 20 28 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 .{.if.(substr($header,.0,.5).===
9c580 20 27 4c 69 6e 6b 3a 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 .'Link:').{.$links.=.explode(','
9c5a0 2c 20 73 75 62 73 74 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 ,.substr($header,.5));.foreach.(
9c5c0 24 6c 69 6e 6b 73 20 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 $links.as.$link).{.if.(preg_matc
9c5e0 68 28 27 7b 3c 28 2e 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 h('{<(.+?)>;.*rel="next"}',.$lin
9c600 6b 2c 20 24 6d 61 74 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 k,.$match)).{.return.$match[1];.
9c620 7d 0a 7d 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
9c640 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 56 63 73 3b 0a espace.Composer\Repository\Vcs;.
9c660 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
9c680 65 72 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 er\Cache;.use.Composer\IO\IOInte
9c6a0 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
9c6c0 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 54 72 61 6e 73 e;.use.Composer\Downloader\Trans
9c6e0 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 55 74 69 6c portException;.use.Composer\Util
9c700 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 65 72 5c \RemoteFilesystem;.use.Composer\
9c720 55 74 69 6c 5c 47 69 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 Util\GitLab;........class.GitLab
9c740 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 0a 70 72 69 76 61 Driver.extends.VcsDriver.{.priva
9c760 74 65 20 24 73 63 68 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 te.$scheme;.private.$owner;.priv
9c780 61 74 65 20 24 72 65 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 ate.$repository;..private.$cache
9c7a0 3b 0a 70 72 69 76 61 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 ;.private.$infoCache.=.array();.
9c7c0 0a 0a 0a 0a 70 72 69 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 ....private.$project;.....privat
9c7e0 65 20 24 63 6f 6d 6d 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 e.$commits.=.array();.....privat
9c800 65 20 24 74 61 67 73 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 e.$tags;.....private.$branches;.
9c820 0a 0a 0a 0a 0a 0a 70 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 ......protected.$gitDriver;..con
9c840 73 74 20 55 52 4c 5f 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 st.URL_REGEX.=.'#^(?:(?P<scheme>
9c860 68 74 74 70 73 3f 29 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 https?)://(?P<domain>.+?)/|git@(
9c880 3f 50 3c 64 6f 6d 61 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 ?P<domain2>[^:]+):)(?P<owner>[^/
9c8a0 5d 2b 29 2f 28 3f 50 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 ]+)/(?P<repo>[^/]+?)(?:\.git|/)?
9c8c0 24 23 27 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 69 6e 69 74 $#';........public.function.init
9c8e0 69 61 6c 69 7a 65 28 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 ialize().{.if.(!preg_match(self:
9c900 3a 55 52 4c 5f 52 45 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 :URL_REGEX,.$this->url,.$match))
9c920 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
9c940 65 70 74 69 6f 6e 28 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 eption('The.URL.provided.is.inva
9c960 6c 69 64 2e 20 49 74 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 lid..It.must.be.the.HTTP.URL.of.
9c980 61 20 47 69 74 4c 61 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 a.GitLab.project.');.}..$this->s
9c9a0 63 68 65 6d 65 20 3d 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 cheme.=.!empty($match['scheme'])
9c9c0 20 3f 20 24 6d 61 74 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 .?.$match['scheme'].:.'https';.$
9c9e0 74 68 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 this->originUrl.=.!empty($match[
9ca00 27 64 6f 6d 61 69 6e 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 'domain']).?.$match['domain'].:.
9ca20 24 6d 61 74 63 68 5b 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 $match['domain2'];.$this->owner.
9ca40 3d 20 24 6d 61 74 63 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 =.$match['owner'];.$this->reposi
9ca60 74 6f 72 79 20 3d 20 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 tory.=.preg_replace('#(\.git)$#'
9ca80 2c 20 27 27 2c 20 24 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 ,.'',.$match['repo']);..$this->c
9caa0 61 63 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 ache.=.new.Cache($this->io,.$thi
9cac0 73 2d 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 s->config->get('cache-repo-dir')
9cae0 2e 27 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 .'/'.$this->originUrl.'/'.$this-
9cb00 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 29 3b 0a 0a >owner.'/'.$this->repository);..
9cb20 24 74 68 69 73 2d 3e 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 $this->fetchProject();.}........
9cb40 70 75 62 6c 69 63 20 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 public.function.setRemoteFilesys
9cb60 74 65 6d 28 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 tem(RemoteFilesystem.$remoteFile
9cb80 73 79 73 74 65 6d 29 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 system).{.$this->remoteFilesyste
9cba0 6d 20 3d 20 24 72 65 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 m.=.$remoteFilesystem;.}........
9cbc0 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
9cbe0 72 6d 61 74 69 6f 6e 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 rmation($identifier).{...if.(!pr
9cc00 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 24 69 64 65 eg_match('{[a-f0-9]{40}}i',.$ide
9cc20 6e 74 69 66 69 65 72 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 ntifier)).{.$branches.=.$this->g
9cc40 65 74 42 72 61 6e 63 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 etBranches();.if.(isset($branche
9cc60 73 5b 24 69 64 65 6e 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 s[$identifier])).{.$identifier.=
9cc80 20 24 62 72 61 6e 63 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 .$branches[$identifier];.}.}..if
9cca0 20 28 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 69 .(isset($this->infoCache[$identi
9ccc0 66 69 65 72 5d 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 fier])).{.return.$this->infoCach
9cce0 65 5b 24 69 64 65 6e 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 e[$identifier];.}..if.(preg_matc
9cd00 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
9cd20 29 20 26 26 20 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 ).&&.$res.=.$this->cache->read($
9cd40 69 64 65 6e 74 69 66 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 identifier)).{.return.$this->inf
9cd60 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 6c 65 3a 3a oCache[$identifier].=.JsonFile::
9cd80 70 61 72 73 65 4a 73 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 parseJson($res,.$res);.}..try.{.
9cda0 24 63 6f 6d 70 6f 73 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 $composer.=.$this->fetchComposer
9cdc0 46 69 6c 65 28 24 69 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 File($identifier);.}.catch.(Tran
9cde0 73 70 6f 72 74 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 sportException.$e).{.if.($e->get
9ce00 43 6f 64 65 28 29 20 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 Code().!==.404).{.throw.$e;.}.$c
9ce20 6f 6d 70 6f 73 65 72 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 omposer.=.false;.}..if.($compose
9ce40 72 20 26 26 20 21 69 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 r.&&.!isset($composer['time']).&
9ce60 26 20 69 73 73 65 74 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 &.isset($this->commits[$identifi
9ce80 65 72 5d 29 29 20 7b 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 er])).{.$composer['time'].=.$thi
9cea0 73 2d 3e 63 6f 6d 6d 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 s->commits[$identifier]['committ
9cec0 65 64 5f 64 61 74 65 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 ed_date'];.}..if.(preg_match('{[
9cee0 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 29 20 7b 0a a-f0-9]{40}}i',.$identifier)).{.
9cf00 24 74 68 69 73 2d 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 $this->cache->write($identifier,
9cf20 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 7d 0a 0a 72 65 74 .json_encode($composer));.}..ret
9cf40 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 65 72 urn.$this->infoCache[$identifier
9cf60 5d 20 3d 20 24 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 ].=.$composer;.}.....public.func
9cf80 74 69 6f 6e 20 67 65 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 tion.getRepositoryUrl().{.return
9cfa0 20 24 74 68 69 73 2d 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 .$this->project['ssh_url_to_repo
9cfc0 27 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 55 72 6c '];.}.....public.function.getUrl
9cfe0 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 77 65 62 5f ().{.return.$this->project['web_
9d000 75 72 6c 27 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 url'];.}.....public.function.get
9d020 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 74 68 69 73 Dist($identifier).{.$url.=.$this
9d040 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 61 72 63 68 69 ->getApiUrl().'/repository/archi
9d060 76 65 2e 7a 69 70 3f 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 ve.zip?sha='.$identifier;..retur
9d080 6e 20 61 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 n.array('type'.=>.'zip',.'url'.=
9d0a0 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
9d0c0 65 72 2c 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 er,.'shasum'.=>.'');.}.....publi
9d0e0 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 65 72 c.function.getSource($identifier
9d100 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 74 27 ).{.return.array('type'.=>.'git'
9d120 2c 20 27 75 72 6c 27 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 ,.'url'.=>.$this->getRepositoryU
9d140 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 6e 74 69 66 69 65 72 rl(),.'reference'.=>.$identifier
9d160 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 52 6f 6f 74 );.}.....public.function.getRoot
9d180 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 69 73 2d 3e 70 72 6f Identifier().{.return.$this->pro
9d1a0 6a 65 63 74 5b 27 64 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 ject['default_branch'];.}.....pu
9d1c0 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
9d1e0 20 28 21 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 62 72 61 .(!$this->branches).{.$this->bra
9d200 6e 63 68 65 73 20 3d 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 nches.=.$this->getReferences('br
9d220 61 6e 63 68 65 73 27 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 anches');.}..return.$this->branc
9d240 68 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 54 61 hes;.}.....public.function.getTa
9d260 67 73 28 29 0a 7b 0a 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 gs().{.if.(!$this->tags).{.$this
9d280 2d 3e 74 61 67 73 20 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 ->tags.=.$this->getReferences('t
9d2a0 61 67 73 27 29 3b 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 ags');.}..return.$this->tags;.}.
9d2c0 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 66 65 74 63 68 ........protected.function.fetch
9d2e0 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 0a 7b 0a 24 72 65 73 ComposerFile($identifier).{.$res
9d300 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 2e 27 2f 72 65 70 ource.=.$this->getApiUrl().'/rep
9d320 6f 73 69 74 6f 72 79 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 ository/blobs/'.$identifier.'?fi
9d340 6c 65 70 61 74 68 3d 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 lepath=composer.json';..return.J
9d360 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
9d380 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 7d 0a tents($resource),.$resource);.}.
9d3a0 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 69 55 72 6c 28 29 0a ....public.function.getApiUrl().
9d3c0 7b 0a 72 65 74 75 72 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 {.return.$this->scheme.'://'.$th
9d3e0 69 73 2d 3e 6f 72 69 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 is->originUrl.'/api/v3/projects/
9d400 27 2e 24 74 68 69 73 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 '.$this->owner.'%2F'.$this->repo
9d420 73 69 74 6f 72 79 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 sitory;.}.......protected.functi
9d440 6f 6e 20 67 65 74 52 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 on.getReferences($type).{.$resou
9d460 72 63 65 20 3d 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 rce.=.$this->getApiUrl().'/repos
9d480 69 74 6f 72 79 2f 27 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 itory/'.$type;..$data.=.JsonFile
9d4a0 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($
9d4c0 72 65 73 6f 75 72 63 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 resource),.$resource);..$referen
9d4e0 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 64 61 74 61 20 61 ces.=.array();..foreach.($data.a
9d500 73 20 24 64 61 74 75 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 s.$datum).{.$references[$datum['
9d520 6e 61 6d 65 27 5d 5d 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 name']].=.$datum['commit']['id']
9d540 3b 0a 0a 0a 20 0a 20 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 ;......$this->commits[$datum['co
9d560 6d 6d 69 74 27 5d 5b 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 mmit']['id']].=.$datum['commit']
9d580 3b 0a 7d 0a 0a 72 65 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 ;.}..return.$references;.}..prot
9d5a0 65 63 74 65 64 20 66 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 ected.function.fetchProject().{.
9d5c0 0a 20 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()
9d5e0 3b 0a 24 74 68 69 73 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 ;.$this->project.=.JsonFile::par
9d600 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
9d620 72 63 65 2c 20 74 72 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 rce,.true),.$resource);.}..prote
9d640 63 74 65 64 20 66 75 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 cted.function.attemptCloneFallba
9d660 63 6b 28 29 0a 7b 0a 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 ck().{.try.{.......$this->setupG
9d680 69 74 44 72 69 76 65 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 itDriver($this->generateSshUrl()
9d6a0 29 3b 0a 0a 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 );..return;.}.catch.(\RuntimeExc
9d6c0 65 70 74 69 6f 6e 20 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 eption.$e).{.$this->gitDriver.=.
9d6e0 6e 75 6c 6c 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 65 null;..$this->io->writeError('<e
9d700 72 72 6f 72 3e 46 61 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 rror>Failed.to.clone.the.'.$this
9d720 2d 3e 67 65 6e 65 72 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 ->generateSshUrl().'.repository,
9d740 20 74 72 79 20 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 .try.running.in.interactive.mode
9d760 20 73 6f 20 74 68 61 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 .so.that.you.can.enter.your.cred
9d780 65 6e 74 69 61 6c 73 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 entials</error>');.throw.$e;.}.}
9d7a0 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 6e 65 72 61 .......protected.function.genera
9d7c0 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 2e 20 24 74 68 teSshUrl().{.return.'git@'...$th
9d7e0 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 6f 77 6e 65 72 is->originUrl...':'.$this->owner
9d800 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 74 27 3b 0a 7d .'/'.$this->repository.'.git';.}
9d820 0a 0a 70 72 6f 74 65 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 ..protected.function.setupGitDri
9d840 76 65 72 28 24 75 72 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 ver($url).{.$this->gitDriver.=.n
9d860 65 77 20 47 69 74 44 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 ew.GitDriver(.array('url'.=>.$ur
9d880 6c 29 2c 0a 24 74 68 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 l),.$this->io,.$this->config,.$t
9d8a0 68 69 73 2d 3e 70 72 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 his->process,.$this->remoteFiles
9d8c0 79 73 74 65 6d 0a 29 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 ystem.);.$this->gitDriver->initi
9d8e0 61 6c 69 7a 65 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 alize();.}.....protected.functio
9d900 6e 20 67 65 74 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 n.getContents($url,.$fetchingRep
9d920 6f 44 61 74 61 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 oData.=.false).{.try.{.return.pa
9d940 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 20 63 61 74 63 68 rent::getContents($url);.}.catch
9d960 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 24 67 69 74 4c .(TransportException.$e).{.$gitL
9d980 61 62 55 74 69 6c 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 abUtil.=.new.GitLab($this->io,.$
9d9a0 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 2c 20 24 74 this->config,.$this->process,.$t
9d9c0 68 69 73 2d 3e 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 his->remoteFilesystem);..switch.
9d9e0 28 24 65 2d 3e 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 ($e->getCode()).{.case.401:.case
9da00 20 34 30 34 3a 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 .404:...if.(!$fetchingRepoData).
9da20 7b 0a 74 68 72 6f 77 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 {.throw.$e;.}..if.($gitLabUtil->
9da40 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 29 authorizeOAuth($this->originUrl)
9da60 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 74 65 6e 74 73 28 24 ).{.return.parent::getContents($
9da80 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 69 73 49 6e 74 65 72 url);.}..if.(!$this->io->isInter
9daa0 61 63 74 69 76 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 active()).{.return.$this->attemp
9dac0 74 43 6c 6f 6e 65 46 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 tCloneFallback();.}.$this->io->w
9dae0 72 69 74 65 45 72 72 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 riteError('<warning>Failed.to.do
9db00 77 6e 6c 6f 61 64 20 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 wnload.'...$this->owner...'/'...
9db20 24 74 68 69 73 2d 3e 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 $this->repository...':'...$e->ge
9db40 74 4d 65 73 73 61 67 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 tMessage()...'</warning>');.$git
9db60 4c 61 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 LabUtil->authorizeOAuthInteracti
9db80 76 65 6c 79 28 24 74 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 vely($this->originUrl,.'Your.cre
9dba0 64 65 6e 74 69 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 dentials.are.required.to.fetch.p
9dbc0 72 69 76 61 74 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 rivate.repository.metadata.(<inf
9dbe0 6f 3e 27 2e 24 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 o>'.$this->url.'</info>)');..ret
9dc00 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 0a urn.parent::getContents($url);..
9dc20 63 61 73 65 20 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 case.403:.if.(!$this->io->hasAut
9dc40 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 29 20 26 26 hentication($this->originUrl).&&
9dc60 20 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 68 28 24 74 68 .$gitLabUtil->authorizeOAuth($th
9dc80 69 73 2d 3e 6f 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 is->originUrl)).{.return.parent:
9dca0 3a 67 65 74 43 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 :getContents($url);.}..if.(!$thi
9dcc0 73 2d 3e 69 6f 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 s->io->isInteractive().&&.$fetch
9dce0 69 6e 67 52 65 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 ingRepoData).{.return.$this->att
9dd00 65 6d 70 74 43 6c 6f 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 emptCloneFallback();.}..throw.$e
9dd20 3b 0a 0a 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 ;..default:.throw.$e;.}.}.}.....
9dd40 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 70 6f 72 ...public.static.function.suppor
9dd60 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 6f 6e 66 ts(IOInterface.$io,.Config.$conf
9dd80 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 20 28 21 ig,.$url,.$deep.=.false).{.if.(!
9dda0 70 72 65 67 5f 6d 61 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 preg_match(self::URL_REGEX,.$url
9ddc0 2c 20 24 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 73 ,.$match)).{.return.false;.}..$s
9dde0 63 68 65 6d 65 20 3d 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 cheme.=.!empty($match['scheme'])
9de00 20 3f 20 24 6d 61 74 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 .?.$match['scheme'].:.'https';.$
9de20 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 27 64 6f 6d 61 69 originUrl.=.!empty($match['domai
9de40 6e 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 n']).?.$match['domain'].:.$match
9de60 5b 27 64 6f 6d 61 69 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 ['domain2'];..if.(!in_array($ori
9de80 67 69 6e 55 72 6c 2c 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 ginUrl,.(array).$config->get('gi
9dea0 74 6c 61 62 2d 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 tlab-domains'))).{.return.false;
9dec0 0a 7d 0a 0a 69 66 20 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 .}..if.('https'.===.$scheme.&&.!
9dee0 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 69 extension_loaded('openssl')).{.i
9df00 66 20 28 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 f.($io->isVerbose()).{.$io->writ
9df20 65 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 66 6f 72 20 27 2e e('Skipping.GitLab.driver.for.'.
9df40 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 20 50 48 50 20 65 $url.'.because.the.OpenSSL.PHP.e
9df60 78 74 65 6e 73 69 6f 6e 20 69 73 20 6d 69 73 73 69 6e 67 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 xtension.is.missing.');.}..retur
9df80 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
9dfa0 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
9dfc0 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
9dfe0 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
9e000 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
9e020 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
9e040 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
9e060 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.
9e080 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
9e0a0 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
9e0c0 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;.
9e0e0 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();.
9e100 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()
9e120 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
9e140 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/([^/]+)/([^/]+)/?$#',.$
9e160 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
9e180 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.
9e1a0 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.=.
9e1c0 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.=.
9e1e0 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
9e200 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
9e220 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.
9e240 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
9e260 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(
9e280 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
9e2a0 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
9e2c0 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
9e2e0 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
9e300 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';.
9e320 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(
9e340 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),.$
9e360 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
9e380 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'])
9e3a0 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(
9e3c0 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.
9e3e0 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.'
9e400 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
9e420 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
9e440 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['
9e460 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
9e480 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
9e4a0 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
9e4c0 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
9e4e0 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
9e500 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
9e520 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
9e540 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
9e560 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.=.$
9e580 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
9e5a0 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->
9e5c0 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.'
9e5e0 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'.=>.'
9e600 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'
9e620 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'.=>.'')
9e640 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
9e660 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
9e680 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',.
9e6a0 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
9e6c0 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-
9e6e0 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
9e700 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
9e720 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]
9e740 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
9e760 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/
9e780 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.'/'.
9e7a0 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
9e7c0 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
9e7e0 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
9e800 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
9e820 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
9e840 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;.
9e860 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
9e880 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)
9e8a0 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']))
9e8c0 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(
9e8e0 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
9e900 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
9e920 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/'.$
9e940 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
9e960 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(
9e980 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
9e9a0 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
9e9c0 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
9e9e0 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-
9ea00 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_
9ea20 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
9ea40 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
9ea60 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
9ea80 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
9eaa0 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-
9eac0 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
9eae0 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/
9eb00 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.
9eb20 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';.$
9eb40 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($
9eb60 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
9eb80 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();
9eba0 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.=>.$
9ebc0 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
9ebe0 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
9ec00 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
9ec20 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
9ec40 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
9ec60 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
9ec80 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/
9eca0 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.
9ecc0 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
9ece0 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
9ed00 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
9ed20 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.
9ed40 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.
9ed60 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
9ed80 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
9eda0 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
9edc0 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
9ede0 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.
9ee00 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).{.
9ee20 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
9ee40 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/([^/]+)/([^/]+)/?$#',
9ee60 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.(!
9ee80 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 69 extension_loaded('openssl')).{.i
9eea0 66 20 28 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 f.($io->isVerbose()).{.$io->writ
9eec0 65 45 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 68 67 20 64 72 eError('Skipping.Bitbucket.hg.dr
9eee0 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 74 68 65 20 4f 70 iver.for.'.$url.'.because.the.Op
9ef00 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 73 69 6e 67 2e 27 enSSL.PHP.extension.is.missing.'
9ef20 29 3b 0a 7d 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 );.}..return.false;.}..return.tr
9ef40 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 70 61 ue;.}.}.<?php............namespa
9ef60 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
9ef80 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 4a .Composer\Config;.use.Composer\J
9efa0 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 6c 5c son\JsonFile;.use.Composer\Util\
9efc0 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
9efe0 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 5c 49 il\Filesystem;.use.Composer\IO\I
9f000 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 67 44 72 69 76 65 72 20 65 OInterface;.....class.HgDriver.e
9f020 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 65 64 20 24 74 61 xtends.VcsDriver.{.protected.$ta
9f040 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 63 74 gs;.protected.$branches;.protect
9f060 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 24 72 ed.$rootIdentifier;.protected.$r
9f080 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 20 61 epoDir;.protected.$infoCache.=.a
9f0a0 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 69 74 rray();.....public.function.init
9f0c0 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 6f 63 ialize().{.if.(Filesystem::isLoc
9f0e0 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 65 70 alPath($this->url)).{.$this->rep
9f100 6f 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 61 63 oDir.=.$this->url;.}.else.{.$cac
9f120 68 65 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 27 63 61 63 68 heDir.=.$this->config->get('cach
9f140 65 2d 76 63 73 2d 64 69 72 27 29 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 20 3d 20 24 63 e-vcs-dir');.$this->repoDir.=.$c
9f160 61 63 68 65 44 69 72 20 2e 20 27 2f 27 20 2e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b acheDir...'/'...preg_replace('{[
9f180 5e 61 2d 7a 30 2d 39 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 20 2e 20 ^a-z0-9]}i',.'-',.$this->url)...
9f1a0 27 2f 27 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 3b 0a 24 66 '/';..$fs.=.new.Filesystem();.$f
9f1c0 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 63 61 63 68 65 44 s->ensureDirectoryExists($cacheD
9f1e0 69 72 29 3b 0a 0a 69 66 20 28 21 69 73 5f 77 72 69 74 61 62 6c 65 28 64 69 72 6e 61 6d 65 28 24 ir);..if.(!is_writable(dirname($
9f200 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 this->repoDir))).{.throw.new.\Ru
9f220 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 61 6e 20 6e 6f 74 20 63 6c 6f 6e 65 20 27 2e ntimeException('Can.not.clone.'.
9f240 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 74 6f 20 61 63 63 65 73 73 20 70 61 63 6b 61 67 65 20 69 $this->url.'.to.access.package.i
9f260 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 65 20 22 27 2e 24 63 61 63 68 65 44 69 72 2e 27 22 20 nformation..The."'.$cacheDir.'".
9f280 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
9f2a0 20 63 75 72 72 65 6e 74 20 75 73 65 72 2e 27 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 64 69 .current.user.');.}....if.(is_di
9f2c0 72 28 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 r($this->repoDir).&&.0.===.$this
9f2e0 2d 3e 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 ->process->execute('hg.summary',
9f300 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 29 20 7b 0a 69 66 20 .$output,.$this->repoDir)).{.if.
9f320 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 27 (0.!==.$this->process->execute('
9f340 68 67 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 hg.pull',.$output,.$this->repoDi
9f360 72 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 65 72 r)).{.$this->io->writeError('<er
9f380 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 2d 3e 75 72 ror>Failed.to.update.'.$this->ur
9f3a0 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 6d 20 74 68 l.',.package.information.from.th
9f3c0 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 64 20 28 27 is.repository.may.be.outdated.('
9f3e0 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 74 70 75 74 28 .$this->process->getErrorOutput(
9f400 29 2e 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 ).')</error>');.}.}.else.{...$fs
9f420 2d 3e 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 ->removeDirectory($this->repoDir
9f440 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 65 73 73 2d 3e 65 78 );..if.(0.!==.$this->process->ex
9f460 65 63 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 ecute(sprintf('hg.clone.--noupda
9f480 74 65 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 te.%s.%s',.ProcessExecutor::esca
9f4a0 70 65 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 pe($this->url),.ProcessExecutor:
9f4c0 3a 65 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 :escape($this->repoDir)),.$outpu
9f4e0 74 2c 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 t,.$cacheDir)).{.$output.=.$this
9f500 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 3b 0a 0a 69 66 ->process->getErrorOutput();..if
9f520 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(
9f540 27 68 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 'hg.--version',.$ignoredOutput))
9f560 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('
9f580 46 61 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 Failed.to.clone.'.$this->url.',.
9f5a0 68 67 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 hg.was.not.found,.check.that.it.
9f5c0 69 73 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 is.installed.and.in.your.PATH.en
9f5e0 76 2e 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 v.'..."\n\n"...$this->process->g
9f600 65 74 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 etErrorOutput());.}..throw.new.\
9f620 52 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 63 6c 6f 6e RuntimeException('Failed.to.clon
9f640 65 20 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 e.'.$this->url.',.could.not.read
9f660 20 70 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 .packages.from.it'..."\n\n"..$ou
9f680 74 70 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 tput);.}.}.}..$this->getTags();.
9f6a0 24 74 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 $this->getBranches();.}.....publ
9f6c0 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 0a ic.function.getRootIdentifier().
9f6e0 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 69 {.if.(null.===.$this->rootIdenti
9f700 66 69 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 fier).{.$this->process->execute(
9f720 73 70 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 sprintf('hg.tip.--template."{nod
9f740 65 7d 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 e}"'),.$output,.$this->repoDir);
9f760 0a 24 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 .$output.=.$this->process->split
9f780 4c 69 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 Lines($output);.$this->rootIdent
9f7a0 69 66 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 ifier.=.$output[0];.}..return.$t
9f7c0 68 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 his->rootIdentifier;.}.....publi
9f7e0 63 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 c.function.getUrl().{.return.$th
9f800 69 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 is->url;.}.....public.function.g
9f820 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 75 72 6e 20 61 etSource($identifier).{.return.a
9f840 72 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 rray('type'.=>.'hg',.'url'.=>.$t
9f860 68 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 his->getUrl(),.'reference'.=>.$i
9f880 64 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 dentifier);.}.....public.functio
9f8a0 6e 20 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 n.getDist($identifier).{.return.
9f8c0 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 67 65 74 43 null;.}.....public.function.getC
9f8e0 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 0a omposerInformation($identifier).
9f900 7b 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 63 68 65 5b 24 69 {.if.(!isset($this->infoCache[$i
9f920 64 65 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 dentifier])).{.$this->process->e
9f940 78 65 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 xecute(sprintf('hg.cat.-r.%s.com
9f960 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 65 73 poser.json',.ProcessExecutor::es
9f980 63 61 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 cape($identifier)),.$composer,.$
9f9a0 74 68 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 this->repoDir);..if.(!trim($comp
9f9c0 6f 73 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 oser)).{.return;.}..$composer.=.
9f9e0 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 6f 73 65 72 2c 20 24 JsonFile::parseJson($composer,.$
9fa00 69 64 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 identifier);..if.(empty($compose
9fa20 72 5b 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 r['time'])).{.$this->process->ex
9fa40 65 63 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 ecute(sprintf('hg.log.--template
9fa60 20 22 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 ."{date|rfc3339date}".-r.%s',.Pr
9fa80 6f 63 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 ocessExecutor::escape($identifie
9faa0 72 29 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 r)),.$output,.$this->repoDir);.$
9fac0 64 61 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 date.=.new.\DateTime(trim($outpu
9fae0 74 29 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 t),.new.\DateTimeZone('UTC'));.$
9fb00 63 6f 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 composer['time'].=.$date->format
9fb20 28 27 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 ('Y-m-d.H:i:s');.}.$this->infoCa
9fb40 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 7d 0a che[$identifier].=.$composer;.}.
9fb60 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 74 69 .return.$this->infoCache[$identi
9fb80 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 65 74 fier];.}.....public.function.get
9fba0 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 3e 74 61 67 Tags().{.if.(null.===.$this->tag
9fbc0 73 29 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 s).{.$tags.=.array();..$this->pr
9fbe0 6f 63 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 ocess->execute('hg.tags',.$outpu
9fc00 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 24 74 68 t,.$this->repoDir);.foreach.($th
9fc20 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 75 74 29 is->process->splitLines($output)
9fc40 20 61 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 .as.$tag).{.if.($tag.&&.preg_mat
9fc60 63 68 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 ch('(^([^\s]+)\s+\d+:(.*)$)',.$t
9fc80 61 67 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 ag,.$match)).{.$tags[$match[1]].
9fca0 3d 20 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 =.$match[2];.}.}.unset($tags['ti
9fcc0 70 27 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 p']);..$this->tags.=.$tags;.}..r
9fce0 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.
9fd00 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
9fd20 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
9fd40 65 73 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 es.=.array();.$bookmarks.=.array
9fd60 28 29 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 ();..$this->process->execute('hg
9fd80 20 62 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 .branches',.$output,.$this->repo
9fda0 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 2d 3e 73 Dir);.foreach.($this->process->s
9fdc0 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 29 20 7b plitLines($output).as.$branch).{
9fde0 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 28 5e 28 5b .if.($branch.&&.preg_match('(^([
9fe00 5e 5c 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 ^\s]+)\s+\d+:([a-f0-9]+))',.$bra
9fe20 6e 63 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 nch,.$match)).{.$branches[$match
9fe40 5b 31 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 [1]].=.$match[2];.}.}..$this->pr
9fe60 6f 63 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 ocess->execute('hg.bookmarks',.$
9fe80 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 66 6f 72 65 61 63 68 output,.$this->repoDir);.foreach
9fea0 20 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 .($this->process->splitLines($ou
9fec0 74 70 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 tput).as.$branch).{.if.($branch.
9fee0 26 26 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 &&.preg_match('(^(?:[\s*]*)([^\s
9ff00 5d 2b 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 ]+)\s+\d+:(.*)$)',.$branch,.$mat
9ff20 63 68 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 ch)).{.$bookmarks[$match[1]].=.$
9ff40 6d 61 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 match[2];.}.}....$this->branches
9ff60 20 3d 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 .=.array_merge($bookmarks,.$bran
9ff80 63 68 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 ches);.}..return.$this->branches
9ffa0 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
9ffc0 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.
9ffe0 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).{.
a0000 69 66 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 if.(preg_match('#(^(?:https?|ssh
a0020 29 3a 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 )://(?:[^@]@)?bitbucket.org|http
a0040 73 3a 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 s://(?:.*?)\.kilnhg.com)#i',.$ur
a0060 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 66 20 28 46 69 6c 65 l)).{.return.true;.}....if.(File
a0080 73 79 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 system::isLocalPath($url)).{.$ur
a00a0 6c 20 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 l.=.Filesystem::getPlatformPath(
a00c0 24 75 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 $url);.if.(!is_dir($url)).{.retu
a00e0 72 6e 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 rn.false;.}..$process.=.new.Proc
a0100 65 73 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 essExecutor();...if.($process->e
a0120 78 65 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 xecute('hg.summary',.$output,.$u
a0140 72 6c 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 rl).===.0).{.return.true;.}.}..i
a0160 66 20 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 f.(!$deep).{.return.false;.}..$p
a0180 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 65 63 rocessExecutor.=.new.ProcessExec
a01a0 75 74 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 utor();.$exit.=.$processExecutor
a01c0 2d 3e 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 ->execute(sprintf('hg.identify.%
a01e0 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 24 75 72 6c s',.ProcessExecutor::escape($url
a0200 29 29 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 )),.$ignored);..return.$exit.===
a0220 20 30 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 .0;.}.}.<?php............namespa
a0240 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
a0260 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 49 .Composer\Config;.use.Composer\I
a0280 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 55 74 69 6c O\IOInterface;.use.Composer\Util
a02a0 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
a02c0 74 69 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 til\Perforce;.....class.Perforce
a02e0 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 0a 70 72 6f 74 65 Driver.extends.VcsDriver.{.prote
a0300 63 74 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 cted.$depot;.protected.$branch;.
a0320 70 72 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 protected.$perforce;.protected.$
a0340 63 6f 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 composerInfo;.protected.$compose
a0360 72 49 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 rInfoIdentifier;.....public.func
a0380 74 69 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 tion.initialize().{.$this->depot
a03a0 20 3d 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 .=.$this->repoConfig['depot'];.$
a03c0 74 68 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 this->branch.=.'';.if.(!empty($t
a03e0 68 69 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 his->repoConfig['branch'])).{.$t
a0400 68 69 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 his->branch.=.$this->repoConfig[
a0420 27 62 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 'branch'];.}..$this->initPerforc
a0440 65 28 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 e($this->repoConfig);.$this->per
a0460 66 6f 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 force->p4Login($this->io);.$this
a0480 2d 3e 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 ->perforce->checkStream($this->d
a04a0 65 70 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 epot);..$this->perforce->writeP4
a04c0 43 6c 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 ClientSpec();.$this->perforce->c
a04e0 6f 6e 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 onnectClient();..return.true;.}.
a0500 0a 70 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 .private.function.initPerforce($
a0520 72 65 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 repoConfig).{.if.(!empty($this->
a0540 70 65 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 perforce)).{.return;.}..$repoDir
a0560 20 3d 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 .=.$this->config->get('cache-vcs
a0580 2d 64 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 -dir')...'/'...$this->depot;.$th
a05a0 69 73 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 is->perforce.=.Perforce::create(
a05c0 24 72 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 $repoConfig,.$this->getUrl(),.$r
a05e0 65 70 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 epoDir,.$this->process,.$this->i
a0600 6f 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 43 6f 6d o);.}.....public.function.getCom
a0620 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).{.
a0640 69 66 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 if.(!empty($this->composerInfoId
a0660 65 6e 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 entifier)).{.if.(strcmp($identif
a0680 69 65 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 ier,.$this->composerInfoIdentifi
a06a0 65 72 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 er).===.0).{.return.$this->compo
a06c0 73 65 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 serInfo;.}.}.$composer_info.=.$t
a06e0 68 69 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 his->perforce->getComposerInform
a0700 61 74 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 ation($identifier);..return.$com
a0720 70 6f 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 poser_info;.}.....public.functio
a0740 6e 20 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 n.getRootIdentifier().{.return.$
a0760 74 68 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 this->branch;.}.....public.funct
a0780 69 6f 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 ion.getBranches().{.$branches.=.
a07a0 24 74 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 $this->perforce->getBranches();.
a07c0 0a 72 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 .return.$branches;.}.....public.
a07e0 66 75 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 function.getTags().{.$tags.=.$th
a0800 69 73 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 is->perforce->getTags();..return
a0820 20 24 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 .$tags;.}.....public.function.ge
a0840 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 6c 6c tDist($identifier).{.return.null
a0860 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 6f 75 72 63 ;.}.....public.function.getSourc
a0880 65 28 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 e($identifier).{.$source.=.array
a08a0 28 0a 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 (.'type'.=>.'perforce',.'url'.=>
a08c0 20 24 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 .$this->repoConfig['url'],.'refe
a08e0 72 65 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 rence'.=>.$identifier,.'p4user'.
a0900 3d 3e 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 =>.$this->perforce->getUser(),.)
a0920 3b 0a 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 ;..return.$source;.}.....public.
a0940 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
a0960 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 68 61 73 ->url;.}.....public.function.has
a0980 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 0a 7b 0a 24 74 68 69 ComposerFile($identifier).{.$thi
a09a0 73 2d 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 s->composerInfo.=.$this->perforc
a09c0 65 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 27 2f 2f 27 20 2e e->getComposerInformation('//'..
a09e0 20 24 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 .$this->depot...'/'...$identifie
a0a00 72 29 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 r);.$this->composerInfoIdentifie
a0a20 72 20 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 r.=.$identifier;..return.!empty(
a0a40 24 74 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 $this->composerInfo);.}.....publ
a0a60 69 63 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 ic.function.getContents($url).{.
a0a80 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 73 74 61 74 69 return.false;.}.....public.stati
a0aa0 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 20 c.function.supports(IOInterface.
a0ac0 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 70 $io,.Config.$config,.$url,.$deep
a0ae0 20 3d 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 .=.false).{.if.($deep.||.preg_ma
a0b00 74 63 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 tch('#\b(perforce|p4)\b#i',.$url
a0b20 29 29 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 )).{.return.Perforce::checkServe
a0b40 72 45 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 rExists($url,.new.ProcessExecuto
a0b60 72 28 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 r($io));.}..return.false;.}.....
a0b80 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 0a 7b 0a 24 74 68 69 public.function.cleanup().{.$thi
a0ba0 73 2d 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 s->perforce->cleanupClientSpec()
a0bc0 3b 0a 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 ;.$this->perforce.=.null;.}..pub
a0be0 6c 69 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 lic.function.getDepot().{.return
a0c00 20 24 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 .$this->depot;.}..public.functio
a0c20 6e 20 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 n.getBranch().{.return.$this->br
a0c40 61 6e 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 anch;.}.}.<?php............names
a0c60 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
a0c80 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 73 65 72 5c se.Composer\Cache;.use.Composer\
a0ca0 43 6f 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 Config;.use.Composer\Json\JsonFi
a0cc0 6c 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 le;.use.Composer\Util\ProcessExe
a0ce0 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 46 69 6c 65 73 79 73 cutor;.use.Composer\Util\Filesys
a0d00 74 65 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 tem;.use.Composer\Util\Svn.as.Sv
a0d20 6e 55 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 nUtil;.use.Composer\IO\IOInterfa
a0d40 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 54 72 61 6e ce;.use.Composer\Downloader\Tran
a0d60 73 70 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 sportException;......class.SvnDr
a0d80 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 0a 0a 0a 70 72 6f 74 iver.extends.VcsDriver.{....prot
a0da0 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 62 61 73 65 55 72 6c ected.$cache;.protected.$baseUrl
a0dc0 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 24 62 72 ;.protected.$tags;.protected.$br
a0de0 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 66 69 65 anches;.protected.$rootIdentifie
a0e00 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 20 61 72 72 61 79 28 r;.protected.$infoCache.=.array(
a0e20 29 3b 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 );..protected.$trunkPath.=.'trun
a0e40 6b 27 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 k';.protected.$branchesPath.=.'b
a0e60 72 61 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 ranches';.protected.$tagsPath.=.
a0e80 27 74 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 'tags';.protected.$packagePath.=
a0ea0 20 27 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 .'';.protected.$cacheCredentials
a0ec0 20 3d 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 .=.true;.....private.$util;.....
a0ee0 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 0a 24 public.function.initialize().{.$
a0f00 74 68 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 this->url.=.$this->baseUrl.=.rtr
a0f20 69 6d 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 im(self::normalizeUrl($this->url
a0f40 29 2c 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 ),.'/');..SvnUtil::cleanEnv();..
a0f60 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 74 72 75 if.(isset($this->repoConfig['tru
a0f80 6e 6b 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 nk-path'])).{.$this->trunkPath.=
a0fa0 20 24 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 .$this->repoConfig['trunk-path']
a0fc0 3b 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 ;.}.if.(isset($this->repoConfig[
a0fe0 27 62 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 'branches-path'])).{.$this->bran
a1000 63 68 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 chesPath.=.$this->repoConfig['br
a1020 61 6e 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 anches-path'];.}.if.(isset($this
a1040 2d 3e 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 ->repoConfig['tags-path'])).{.$t
a1060 68 69 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 his->tagsPath.=.$this->repoConfi
a1080 67 5b 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 g['tags-path'];.}.if.(array_key_
a10a0 65 78 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 exists('svn-cache-credentials',.
a10c0 24 74 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 $this->repoConfig)).{.$this->cac
a10e0 68 65 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 heCredentials.=.(bool).$this->re
a1100 70 6f 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 poConfig['svn-cache-credentials'
a1120 5d 3b 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 ];.}.if.(isset($this->repoConfig
a1140 5b 27 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 ['package-path'])).{.$this->pack
a1160 61 67 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 agePath.=.'/'...trim($this->repo
a1180 43 6f 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 Config['package-path'],.'/');.}.
a11a0 0a 69 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 .if.(false.!==.($pos.=.strrpos($
a11c0 74 68 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 this->url,.'/'...$this->trunkPat
a11e0 68 29 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 h))).{.$this->baseUrl.=.substr($
a1200 74 68 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 this->url,.0,.$pos);.}..$this->c
a1220 61 63 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 ache.=.new.Cache($this->io,.$thi
a1240 73 2d 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 s->config->get('cache-repo-dir')
a1260 2e 27 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 .'/'.preg_replace('{[^a-z0-9.]}i
a1280 27 2c 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 ',.'-',.$this->baseUrl));..$this
a12a0 2d 3e 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 ->getBranches();.$this->getTags(
a12c0 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 52 6f 6f 74 );.}.....public.function.getRoot
a12e0 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 69 73 2d 3e 72 6f 6f Identifier().{.return.$this->roo
a1300 74 49 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 tIdentifier.?:.$this->trunkPath;
a1320 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 29 0a .}.....public.function.getUrl().
a1340 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 6c 69 {.return.$this->url;.}.....publi
a1360 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 65 72 c.function.getSource($identifier
a1380 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 73 76 6e 27 ).{.return.array('type'.=>.'svn'
a13a0 2c 20 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 ,.'url'.=>.$this->baseUrl,.'refe
a13c0 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 0a 70 75 rence'.=>.$identifier);.}.....pu
a13e0 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 66 69 65 blic.function.getDist($identifie
a1400 72 29 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 r).{.return.null;.}.....public.f
a1420 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($
a1440 69 64 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 identifier).{.$identifier.=.'/'.
a1460 2e 20 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 ..trim($identifier,.'/')...'/';.
a1480 0a 69 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 .if.($res.=.$this->cache->read($
a14a0 69 64 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 identifier.'.json')).{.$this->in
a14c0 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 6c 65 3a foCache[$identifier].=.JsonFile:
a14e0 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 65 74 28 :parseJson($res);.}..if.(!isset(
a1500 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 20 $this->infoCache[$identifier])).
a1520 7b 0a 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 {.preg_match('{^(.+?)(@\d+)?/$}'
a1540 2c 20 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 ,.$identifier,.$match);.if.(!emp
a1560 74 79 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 ty($match[2])).{.$path.=.$match[
a1580 31 5d 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 1];.$rev.=.$match[2];.}.else.{.$
a15a0 70 61 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 path.=.$identifier;.$rev.=.'';.}
a15c0 0a 0a 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 ..try.{.$resource.=.$path.'compo
a15e0 73 65 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 ser.json';.$output.=.$this->exec
a1600 75 74 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 ute('svn.cat',.$this->baseUrl...
a1620 24 72 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 $resource...$rev);.if.(!trim($ou
a1640 74 70 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 tput)).{.return;.}.}.catch.(\Run
a1660 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 20 6e 65 77 20 54 72 timeException.$e).{.throw.new.Tr
a1680 61 6e 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 ansportException($e->getMessage(
a16a0 29 29 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 ));.}..$composer.=.JsonFile::par
a16c0 73 65 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 seJson($output,.$this->baseUrl..
a16e0 20 24 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 .$resource...$rev);..if.(empty($
a1700 63 6f 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 composer['time'])).{.$output.=.$
a1720 74 68 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 this->execute('svn.info',.$this-
a1740 3e 62 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 >baseUrl...$path...$rev);.foreac
a1760 68 20 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 h.($this->process->splitLines($o
a1780 75 74 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 utput).as.$line).{.if.($line.&&.
a17a0 70 72 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 preg_match('{^Last.Changed.Date:
a17c0 20 28 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 .([^(]+)}',.$line,.$match)).{.$d
a17e0 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 5b 31 5d 2c 20 6e ate.=.new.\DateTime($match[1],.n
a1800 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 6d 70 6f ew.\DateTimeZone('UTC'));.$compo
a1820 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 59 2d 6d ser['time'].=.$date->format('Y-m
a1840 2d 64 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 -d.H:i:s');.break;.}.}.}..$this-
a1860 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 2e 27 2e 6a 73 6f 6e >cache->write($identifier.'.json
a1880 27 2c 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 ',.json_encode($composer));.$thi
a18a0 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 6d s->infoCache[$identifier].=.$com
a18c0 70 6f 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 poser;.}..return.$this->infoCach
a18e0 65 5b 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 e[$identifier];.}.....public.fun
a1900 63 74 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 ction.getTags().{.if.(null.===.$
a1920 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 3d 20 61 72 72 61 this->tags).{.$this->tags.=.arra
a1940 79 28 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 y();..if.($this->tagsPath.!==.fa
a1960 6c 73 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 lse).{.$output.=.$this->execute(
a1980 27 73 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 'svn.ls.--verbose',.$this->baseU
a19a0 72 6c 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 rl...'/'...$this->tagsPath);.if.
a19c0 28 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 ($output).{.foreach.($this->proc
a19e0 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 6c 69 6e ess->splitLines($output).as.$lin
a1a00 65 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 e).{.$line.=.trim($line);.if.($l
a1a20 69 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 ine.&&.preg_match('{^\s*(\S+).*?
a1a40 28 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 (\S+)\s*$}',.$line,.$match)).{.i
a1a60 66 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 f.(isset($match[1]).&&.isset($ma
a1a80 74 63 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 tch[2]).&&.$match[2].!==.'./').{
a1aa0 0a 24 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 .$this->tags[rtrim($match[2],.'/
a1ac0 27 29 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 ')].=.$this->buildIdentifier(.'/
a1ae0 27 20 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 '...$this->tagsPath...'/'...$mat
a1b00 63 68 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 ch[2],.$match[1].);.}.}.}.}.}.}.
a1b20 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 62 6c 69 .return.$this->tags;.}.....publi
a1b40 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 20 28 6e c.function.getBranches().{.if.(n
a1b60 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
a1b80 2d 3e 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 ->branches.=.array();..if.(false
a1ba0 20 3d 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 .===.$this->trunkPath).{.$trunkP
a1bc0 61 72 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 arent.=.$this->baseUrl...'/';.}.
a1be0 65 6c 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 else.{.$trunkParent.=.$this->bas
a1c00 65 55 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 eUrl...'/'...$this->trunkPath;.}
a1c20 0a 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 76 6e 20 ..$output.=.$this->execute('svn.
a1c40 6c 73 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 ls.--verbose',.$trunkParent);.if
a1c60 20 28 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 .($output).{.foreach.($this->pro
a1c80 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 6c 69 cess->splitLines($output).as.$li
a1ca0 6e 65 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 ne).{.$line.=.trim($line);.if.($
a1cc0 6c 69 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 line.&&.preg_match('{^\s*(\S+).*
a1ce0 3f 28 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 ?(\S+)\s*$}',.$line,.$match)).{.
a1d00 69 66 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 if.(isset($match[1]).&&.isset($m
a1d20 61 74 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 atch[2]).&&.$match[2].===.'./').
a1d40 7b 0a 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 {.$this->branches['trunk'].=.$th
a1d60 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 2e 20 24 74 68 69 73 is->buildIdentifier(.'/'...$this
a1d80 2d 3e 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 ->trunkPath,.$match[1].);.$this-
a1da0 3e 72 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 >rootIdentifier.=.$this->branche
a1dc0 73 5b 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 s['trunk'];.break;.}.}.}.}.unset
a1de0 28 24 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 ($output);..if.($this->branchesP
a1e00 61 74 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 ath.!==.false).{.$output.=.$this
a1e20 2d 3e 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 ->execute('svn.ls.--verbose',.$t
a1e40 68 69 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 his->baseUrl...'/'...$this->bran
a1e60 63 68 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 chesPath);.if.($output).{.foreac
a1e80 68 20 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 h.($this->process->splitLines(tr
a1ea0 69 6d 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 im($output)).as.$line).{.$line.=
a1ec0 20 74 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 .trim($line);.if.($line.&&.preg_
a1ee0 6d 61 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 match('{^\s*(\S+).*?(\S+)\s*$}',
a1f00 20 24 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 .$line,.$match)).{.if.(isset($ma
a1f20 74 63 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 tch[1]).&&.isset($match[2]).&&.$
a1f40 6d 61 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 match[2].!==.'./').{.$this->bran
a1f60 63 68 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 ches[rtrim($match[2],.'/')].=.$t
a1f80 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 2e 20 24 74 68 69 his->buildIdentifier(.'/'...$thi
a1fa0 73 2d 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 s->branchesPath...'/'...$match[2
a1fc0 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 65 74 ],.$match[1].);.}.}.}.}.}.}..ret
a1fe0 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 6c 69 urn.$this->branches;.}.....publi
a2000 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 74 c.static.function.supports(IOInt
a2020 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 6c erface.$io,.Config.$config,.$url
a2040 2c 20 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 ,.$deep.=.false).{.$url.=.self::
a2060 6e 6f 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 normalizeUrl($url);.if.(preg_mat
a2080 63 68 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 ch('#(^svn://|^svn\+ssh://|svn\.
a20a0 29 23 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 )#i',.$url)).{.return.true;.}...
a20c0 20 69 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 .if.(!$deep.&&.!Filesystem::isLo
a20e0 63 61 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 calPath($url)).{.return.false;.}
a2100 0a 0a 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 ..$processExecutor.=.new.Process
a2120 45 78 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 Executor();..$exit.=.$processExe
a2140 63 75 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 cutor->execute(."svn.info.--non-
a2160 69 6e 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 interactive.{$url}",.$ignoredOut
a2180 70 75 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 put.);..if.($exit.===.0).{...ret
a21a0 75 72 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 urn.true;.}..if.(false.!==.strip
a21c0 6f 73 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 os($processExecutor->getErrorOut
a21e0 70 75 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 put(),.'authorization.failed:'))
a2200 20 7b 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 .{.....return.true;.}..return.fa
a2220 6c 73 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 lse;.}.........protected.static.
a2240 66 75 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 function.normalizeUrl($url).{.$f
a2260 73 20 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 s.=.new.Filesystem();.if.($fs->i
a2280 73 41 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 sAbsolutePath($url)).{.return.'f
a22a0 69 6c 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 ile://'...strtr($url,.'\\',.'/')
a22c0 3b 0a 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 ;.}..return.$url;.}...........pr
a22e0 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 24 63 6f 6d 6d 61 6e otected.function.execute($comman
a2300 64 2c 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 d,.$url).{.if.(null.===.$this->u
a2320 74 69 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 til).{.$this->util.=.new.SvnUtil
a2340 28 24 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 ($this->baseUrl,.$this->io,.$thi
a2360 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 0a 24 74 68 69 s->config,.$this->process);.$thi
a2380 73 2d 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 s->util->setCacheCredentials($th
a23a0 69 73 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 is->cacheCredentials);.}..try.{.
a23c0 72 65 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 return.$this->util->execute($com
a23e0 6d 61 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 mand,.$url);.}.catch.(\RuntimeEx
a2400 63 65 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 ception.$e).{.if.(0.!==.$this->p
a2420 72 6f 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 rocess->execute('svn.--version',
a2440 20 24 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 .$ignoredOutput)).{.throw.new.\R
a2460 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 6c 6f 61 64 20 untimeException('Failed.to.load.
a2480 27 2e 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 '.$this->url.',.svn.was.not.foun
a24a0 64 2c 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 d,.check.that.it.is.installed.an
a24c0 64 20 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 d.in.your.PATH.env.'..."\n\n"...
a24e0 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 28 29 $this->process->getErrorOutput()
a2500 29 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 );.}..throw.new.\RuntimeExceptio
a2520 6e 28 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 n(.'Repository.'.$this->url.'.co
a2540 75 6c 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 uld.not.be.processed,.'.$e->getM
a2560 65 73 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 essage().);.}.}..........protect
a2580 65 64 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 ed.function.buildIdentifier($bas
a25a0 65 44 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 eDir,.$revision).{.return.rtrim(
a25c0 24 62 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 $baseDir,.'/')...$this->packageP
a25e0 61 74 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 ath...'/@'...$revision;.}.}.<?ph
a2600 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\
a2620 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 44 6f Repository\Vcs;..use.Composer\Do
a2640 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
a2660 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 46 .Composer\Config;.use.Composer\F
a2680 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 74 65 72 66 actory;.use.Composer\IO\IOInterf
a26a0 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
a26c0 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
a26e0 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 46 69 Filesystem;.use.Composer\Util\Fi
a2700 6c 65 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 lesystem;.......abstract.class.V
a2720 63 73 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 csDriver.implements.VcsDriverInt
a2740 65 72 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 erface.{..protected.$url;..prote
a2760 63 74 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 cted.$originUrl;..protected.$rep
a2780 6f 43 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 oConfig;..protected.$io;..protec
a27a0 74 65 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 ted.$config;..protected.$process
a27c0 3b 0a 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 ;..protected.$remoteFilesystem;.
a27e0 0a 0a 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 ..........final.public.function.
a2800 5f 5f 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 __construct(array.$repoConfig,.I
a2820 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,.
a2840 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 2c ProcessExecutor.$process.=.null,
a2860 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 73 .RemoteFilesystem.$remoteFilesys
a2880 74 65 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 tem.=.null).{.if.(Filesystem::is
a28a0 4c 6f 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 LocalPath($repoConfig['url'])).{
a28c0 0a 24 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 .$repoConfig['url'].=.Filesystem
a28e0 3a 3a 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 ::getPlatformPath($repoConfig['u
a2900 72 6c 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 rl']);.}..$this->url.=.$repoConf
a2920 69 67 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 ig['url'];.$this->originUrl.=.$r
a2940 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 72 65 70 6f 43 6f 6e epoConfig['url'];.$this->repoCon
a2960 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 69 6f 20 3d 20 24 fig.=.$repoConfig;.$this->io.=.$
a2980 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
a29a0 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 72 is->process.=.$process.?:.new.Pr
a29c0 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 72 65 6d 6f 74 ocessExecutor($io);.$this->remot
a29e0 65 46 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 eFilesystem.=.$remoteFilesystem.
a2a00 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 69 6c 65 73 79 73 74 ?:.Factory::createRemoteFilesyst
a2a20 65 6d 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 em($this->io,.$config);.}.....pu
a2a40 62 6c 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 blic.function.hasComposerFile($i
a2a60 64 65 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 dentifier).{.try.{.return.(bool)
a2a80 20 24 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 .$this->getComposerInformation($
a2aa0 69 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 identifier);.}.catch.(TransportE
a2ac0 78 63 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 xception.$e).{.}..return.false;.
a2ae0 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 67 65 74 }.........protected.function.get
a2b00 53 63 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 Scheme().{.if.(extension_loaded(
a2b20 27 6f 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 'openssl')).{.return.'https';.}.
a2b40 0a 72 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 .return.'http';.}.........protec
a2b60 74 65 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 ted.function.getContents($url).{
a2b80 0a 72 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 .return.$this->remoteFilesystem-
a2ba0 3e 67 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 >getContents($this->originUrl,.$
a2bc0 75 72 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 url,.false);.}.....public.functi
a2be0 6f 6e 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 on.cleanup().{.return;.}.}.<?php
a2c00 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 52 ............namespace.Composer\R
a2c20 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 6f 6e epository\Vcs;..use.Composer\Con
a2c40 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 63 65 fig;.use.Composer\IO\IOInterface
a2c60 3b 0a 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 ;.....interface.VcsDriverInterfa
a2c80 63 65 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 ce.{....public.function.initiali
a2ca0 7a 65 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 ze();........public.function.get
a2cc0 43 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 ComposerInformation($identifier)
a2ce0 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 6f 6f 74 49 ;.......public.function.getRootI
a2d00 64 65 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 dentifier();.......public.functi
a2d20 6f 6e 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 on.getBranches();.......public.f
a2d40 75 6e 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 unction.getTags();......public.f
a2d60 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 3b 0a 0a 0a unction.getDist($identifier);...
a2d80 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 24 69 64 ...public.function.getSource($id
a2da0 65 6e 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 entifier);.......public.function
a2dc0 20 67 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 .getUrl();.........public.functi
a2de0 6f 6e 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 on.hasComposerFile($identifier);
a2e00 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 6e 75 70 28 29 3b 0a .....public.function.cleanup();.
a2e20 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
a2e40 20 73 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 .supports(IOInterface.$io,.Confi
a2e60 67 20 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 g.$config,.$url,.$deep.=.false);
a2e80 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
a2ea0 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
a2ec0 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 3b 0a \Downloader\TransportException;.
a2ee0 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 56 63 73 44 use.Composer\Repository\Vcs\VcsD
a2f00 72 69 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 53 65 6d riverInterface;.use.Composer\Sem
a2f20 76 65 72 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 ver\VersionParser;.use.Composer\
a2f40 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.
a2f60 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 61 6c 69 64 61 74 69 Composer\Package\Loader\Validati
a2f80 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 65 72 5c 50 61 63 6b ngArrayLoader;.use.Composer\Pack
a2fa0 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 45 78 63 65 70 74 69 age\Loader\InvalidPackageExcepti
a2fc0 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 4c 6f 61 64 65 72 5c on;.use.Composer\Package\Loader\
a2fe0 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 6f 73 65 72 5c 45 76 LoaderInterface;.use.Composer\Ev
a3000 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
a3020 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.
a3040 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 56 63 73 52 65 Composer\Config;.....class.VcsRe
a3060 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 69 74 6f 72 79 pository.extends.ArrayRepository
a3080 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 65 70 6f 73 69 74 6f .implements.ConfigurableReposito
a30a0 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 75 72 6c 3b 0a 70 72 ryInterface.{.protected.$url;.pr
a30c0 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 74 65 63 74 65 64 20 otected.$packageName;.protected.
a30e0 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 70 72 6f 74 65 63 74 $verbose;.protected.$io;.protect
a3100 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 72 73 69 6f 6e 50 61 ed.$config;.protected.$versionPa
a3120 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 6f 74 65 63 74 65 64 rser;.protected.$type;.protected
a3140 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 43 6f 6e 66 69 67 3b .$loader;.protected.$repoConfig;
a3160 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 63 75 72 72 65 64 20 .protected.$branchErrorOccurred.
a3180 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 20 5f 5f 63 6f 6e 73 =.false;..public.function.__cons
a31a0 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 72 truct(array.$repoConfig,.IOInter
a31c0 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
a31e0 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 61 72 ispatcher.$dispatcher.=.null,.ar
a3200 72 61 79 20 24 64 72 69 76 65 72 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 72 ray.$drivers.=.null).{.$this->dr
a3220 69 76 65 72 73 20 3d 20 24 64 72 69 76 65 72 73 20 3f 3a 20 61 72 72 61 79 28 0a 27 67 69 74 68 ivers.=.$drivers.?:.array(.'gith
a3240 75 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 56 63 73 5c ub'.=>.'Composer\Repository\Vcs\
a3260 47 69 74 48 75 62 44 72 69 76 65 72 27 2c 0a 27 67 69 74 6c 61 62 27 20 3d 3e 20 27 43 6f 6d 70 GitHubDriver',.'gitlab'.=>.'Comp
a3280 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 47 69 74 4c 61 62 44 72 69 76 65 72 oser\Repository\Vcs\GitLabDriver
a32a0 27 2c 0a 27 67 69 74 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 ',.'git-bitbucket'.=>.'Composer\
a32c0 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 47 69 74 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 Repository\Vcs\GitBitbucketDrive
a32e0 72 27 2c 0a 27 67 69 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 r',.'git'.=>.'Composer\Repositor
a3300 79 5c 56 63 73 5c 47 69 74 44 72 69 76 65 72 27 2c 0a 27 68 67 2d 62 69 74 62 75 63 6b 65 74 27 y\Vcs\GitDriver',.'hg-bitbucket'
a3320 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 48 67 42 .=>.'Composer\Repository\Vcs\HgB
a3340 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 27 2c 0a 27 68 67 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 itbucketDriver',.'hg'.=>.'Compos
a3360 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 48 67 44 72 69 76 65 72 27 2c 0a 27 70 65 er\Repository\Vcs\HgDriver',.'pe
a3380 72 66 6f 72 63 65 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 rforce'.=>.'Composer\Repository\
a33a0 56 63 73 5c 50 65 72 66 6f 72 63 65 44 72 69 76 65 72 27 2c 0a 0a 20 27 73 76 6e 27 20 3d 3e 20 Vcs\PerforceDriver',...'svn'.=>.
a33c0 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 53 76 6e 44 72 69 76 'Composer\Repository\Vcs\SvnDriv
a33e0 65 72 27 2c 0a 29 3b 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 er',.);..$this->url.=.$repoConfi
a3400 67 5b 27 75 72 6c 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 g['url'];.$this->io.=.$io;.$this
a3420 2d 3e 74 79 70 65 20 3d 20 69 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 74 79 70 65 ->type.=.isset($repoConfig['type
a3440 27 5d 29 20 3f 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 74 79 70 65 27 5d 20 3a 20 27 76 63 73 ']).?.$repoConfig['type'].:.'vcs
a3460 27 3b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 65 20 3d 20 24 69 6f 2d 3e 69 73 56 65 72 79 56 ';.$this->verbose.=.$io->isVeryV
a3480 65 72 62 6f 73 65 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 erbose();.$this->config.=.$confi
a34a0 67 3b 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 g;.$this->repoConfig.=.$repoConf
a34c0 69 67 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 ig;.}..public.function.getRepoCo
a34e0 6e 66 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 nfig().{.return.$this->repoConfi
a3500 67 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4c 6f 61 64 65 72 28 g;.}..public.function.setLoader(
a3520 4c 6f 61 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 LoaderInterface.$loader).{.$this
a3540 2d 3e 6c 6f 61 64 65 72 20 3d 20 24 6c 6f 61 64 65 72 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 ->loader.=.$loader;.}..public.fu
a3560 6e 63 74 69 6f 6e 20 67 65 74 44 72 69 76 65 72 28 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 nction.getDriver().{.if.(isset($
a3580 74 68 69 73 2d 3e 64 72 69 76 65 72 73 5b 24 74 68 69 73 2d 3e 74 79 70 65 5d 29 29 20 7b 0a 24 this->drivers[$this->type])).{.$
a35a0 63 6c 61 73 73 20 3d 20 24 74 68 69 73 2d 3e 64 72 69 76 65 72 73 5b 24 74 68 69 73 2d 3e 74 79 class.=.$this->drivers[$this->ty
a35c0 70 65 5d 3b 0a 24 64 72 69 76 65 72 20 3d 20 6e 65 77 20 24 63 6c 61 73 73 28 24 74 68 69 73 2d pe];.$driver.=.new.$class($this-
a35e0 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 3e 63 >repoConfig,.$this->io,.$this->c
a3600 6f 6e 66 69 67 29 3b 0a 24 64 72 69 76 65 72 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a onfig);.$driver->initialize();..
a3620 72 65 74 75 72 6e 20 24 64 72 69 76 65 72 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 return.$driver;.}..foreach.($thi
a3640 73 2d 3e 64 72 69 76 65 72 73 20 61 73 20 24 64 72 69 76 65 72 29 20 7b 0a 69 66 20 28 24 64 72 s->drivers.as.$driver).{.if.($dr
a3660 69 76 65 72 3a 3a 73 75 70 70 6f 72 74 73 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d iver::supports($this->io,.$this-
a3680 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 29 20 7b 0a 24 64 72 69 76 65 72 20 >config,.$this->url)).{.$driver.
a36a0 3d 20 6e 65 77 20 24 64 72 69 76 65 72 28 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 2c =.new.$driver($this->repoConfig,
a36c0 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 24 64 72 69 .$this->io,.$this->config);.$dri
a36e0 76 65 72 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 ver->initialize();..return.$driv
a3700 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 64 72 69 76 65 72 73 er;.}.}..foreach.($this->drivers
a3720 20 61 73 20 24 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 .as.$driver).{.if.($driver::supp
a3740 6f 72 74 73 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 2c 20 24 orts($this->io,.$this->config,.$
a3760 74 68 69 73 2d 3e 75 72 6c 2c 20 74 72 75 65 29 29 20 7b 0a 24 64 72 69 76 65 72 20 3d 20 6e 65 this->url,.true)).{.$driver.=.ne
a3780 77 20 24 64 72 69 76 65 72 28 24 74 68 69 73 2d 3e 72 65 70 6f 43 6f 6e 66 69 67 2c 20 24 74 68 w.$driver($this->repoConfig,.$th
a37a0 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 24 64 72 69 76 65 72 2d is->io,.$this->config);.$driver-
a37c0 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 0a >initialize();..return.$driver;.
a37e0 7d 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 64 49 6e 76 61 6c 69 }.}.}..public.function.hadInvali
a3800 64 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 61 6e dBranches().{.return.$this->bran
a3820 63 68 45 72 72 6f 72 4f 63 63 75 72 72 65 64 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 chErrorOccurred;.}..protected.fu
a3840 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 3a 3a 69 6e nction.initialize().{.parent::in
a3860 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 24 76 65 72 62 6f 73 65 20 3d 20 24 74 68 69 73 2d 3e 76 itialize();..$verbose.=.$this->v
a3880 65 72 62 6f 73 65 3b 0a 0a 24 64 72 69 76 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 72 69 erbose;..$driver.=.$this->getDri
a38a0 76 65 72 28 29 3b 0a 69 66 20 28 21 24 64 72 69 76 65 72 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 ver();.if.(!$driver).{.throw.new
a38c0 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 4e 6f 20 64 .\InvalidArgumentException('No.d
a38e0 72 69 76 65 72 20 66 6f 75 6e 64 20 74 6f 20 68 61 6e 64 6c 65 20 56 43 53 20 72 65 70 6f 73 69 river.found.to.handle.VCS.reposi
a3900 74 6f 72 79 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 76 65 tory.'.$this->url);.}..$this->ve
a3920 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 72 3b rsionParser.=.new.VersionParser;
a3940 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 6f .if.(!$this->loader).{.$this->lo
a3960 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 28 24 74 68 69 73 2d 3e 76 65 ader.=.new.ArrayLoader($this->ve
a3980 72 73 69 6f 6e 50 61 72 73 65 72 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 69 66 20 28 24 64 72 69 76 rsionParser);.}..try.{.if.($driv
a39a0 65 72 2d 3e 68 61 73 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 24 64 72 69 76 65 72 2d 3e 67 65 74 er->hasComposerFile($driver->get
a39c0 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 29 29 20 7b 0a 24 64 61 74 61 20 3d 20 24 64 72 RootIdentifier())).{.$data.=.$dr
a39e0 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 64 72 iver->getComposerInformation($dr
a3a00 69 76 65 72 2d 3e 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 29 3b 0a 24 74 68 69 iver->getRootIdentifier());.$thi
a3a20 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 21 65 6d 70 74 79 28 24 64 61 74 61 5b 27 6e s->packageName.=.!empty($data['n
a3a40 61 6d 65 27 5d 29 20 3f 20 24 64 61 74 61 5b 27 6e 61 6d 65 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d ame']).?.$data['name'].:.null;.}
a3a60 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.($
a3a80 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 72 6f 72 verbose).{.$this->io->writeError
a3aa0 28 27 3c 65 72 72 6f 72 3e 53 6b 69 70 70 65 64 20 70 61 72 73 69 6e 67 20 27 2e 24 64 72 69 76 ('<error>Skipped.parsing.'.$driv
a3ac0 65 72 2d 3e 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 2e 27 2c 20 27 2e 24 65 2d er->getRootIdentifier().',.'.$e-
a3ae0 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 7d 0a 0a >getMessage().'</error>');.}.}..
a3b00 66 6f 72 65 61 63 68 20 28 24 64 72 69 76 65 72 2d 3e 67 65 74 54 61 67 73 28 29 20 61 73 20 24 foreach.($driver->getTags().as.$
a3b20 74 61 67 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 29 20 7b 0a 24 6d 73 67 20 3d 20 27 52 65 tag.=>.$identifier).{.$msg.=.'Re
a3b40 61 64 69 6e 67 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 6f 66 20 3c 69 6e 66 6f 3e 27 20 2e ading.composer.json.of.<info>'..
a3b60 20 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 20 3f 3a 20 24 74 68 69 73 2d 3e 75 .($this->packageName.?:.$this->u
a3b80 72 6c 29 20 2e 20 27 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 74 61 rl)...'</info>.(<comment>'...$ta
a3ba0 67 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 27 3b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 g...'</comment>)';.if.($verbose)
a3bc0 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 73 67 29 3b 0a .{.$this->io->writeError($msg);.
a3be0 7d 20 65 6c 73 65 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 }.else.{.$this->io->overwriteErr
a3c00 6f 72 28 24 6d 73 67 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 0a 20 24 74 61 67 20 3d 20 73 74 72 or($msg,.false);.}....$tag.=.str
a3c20 5f 72 65 70 6c 61 63 65 28 27 72 65 6c 65 61 73 65 2d 27 2c 20 27 27 2c 20 24 74 61 67 29 3b 0a _replace('release-',.'',.$tag);.
a3c40 0a 69 66 20 28 21 24 70 61 72 73 65 64 54 61 67 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 .if.(!$parsedTag.=.$this->valida
a3c60 74 65 54 61 67 28 24 74 61 67 29 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 teTag($tag)).{.if.($verbose).{.$
a3c80 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 53 this->io->writeError('<warning>S
a3ca0 6b 69 70 70 65 64 20 74 61 67 20 27 2e 24 74 61 67 2e 27 2c 20 69 6e 76 61 6c 69 64 20 74 61 67 kipped.tag.'.$tag.',.invalid.tag
a3cc0 20 6e 61 6d 65 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d .name</warning>');.}.continue;.}
a3ce0 0a 0a 74 72 79 20 7b 0a 69 66 20 28 21 24 64 61 74 61 20 3d 20 24 64 72 69 76 65 72 2d 3e 67 65 ..try.{.if.(!$data.=.$driver->ge
a3d00 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 6e 74 69 66 69 65 72 tComposerInformation($identifier
a3d20 29 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 3e 69 6f 2d 3e )).{.if.($verbose).{.$this->io->
a3d40 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 64 20 74 61 67 writeError('<warning>Skipped.tag
a3d60 20 27 2e 24 74 61 67 2e 27 2c 20 6e 6f 20 63 6f 6d 70 6f 73 65 72 20 66 69 6c 65 3c 2f 77 61 72 .'.$tag.',.no.composer.file</war
a3d80 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 ning>');.}.continue;.}....if.(is
a3da0 73 65 74 28 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 24 64 61 74 61 5b 27 set($data['version'])).{.$data['
a3dc0 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 3d 20 24 74 68 69 73 2d 3e 76 65 version_normalized'].=.$this->ve
a3de0 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 64 61 74 61 5b 27 76 65 rsionParser->normalize($data['ve
a3e00 72 73 69 6f 6e 27 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 64 61 74 61 5b 27 76 65 72 73 rsion']);.}.else.{...$data['vers
a3e20 69 6f 6e 27 5d 20 3d 20 24 74 61 67 3b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 ion'].=.$tag;.$data['version_nor
a3e40 6d 61 6c 69 7a 65 64 27 5d 20 3d 20 24 70 61 72 73 65 64 54 61 67 3b 0a 7d 0a 0a 0a 20 24 64 61 malized'].=.$parsedTag;.}....$da
a3e60 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b ta['version'].=.preg_replace('{[
a3e80 2e 2d 5d 3f 64 65 76 24 7d 69 27 2c 20 27 27 2c 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 .-]?dev$}i',.'',.$data['version'
a3ea0 5d 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 20 ]);.$data['version_normalized'].
a3ec0 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 5e 64 65 76 2d 7c 5b 2e 2d 5d 3f 64 65 76 =.preg_replace('{(^dev-|[.-]?dev
a3ee0 24 29 7d 69 27 2c 20 27 27 2c 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c $)}i',.'',.$data['version_normal
a3f00 69 7a 65 64 27 5d 29 3b 0a 0a 0a 20 69 66 20 28 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e ized']);....if.($data['version_n
a3f20 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 21 3d 3d 20 24 70 61 72 73 65 64 54 61 67 29 20 7b 0a 69 66 ormalized'].!==.$parsedTag).{.if
a3f40 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
a3f60 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 24 74 61 67 ror('<warning>Skipped.tag.'.$tag
a3f80 2e 27 2c 20 74 61 67 20 28 27 2e 24 70 61 72 73 65 64 54 61 67 2e 27 29 20 64 6f 65 73 20 6e 6f .',.tag.('.$parsedTag.').does.no
a3fa0 74 20 6d 61 74 63 68 20 76 65 72 73 69 6f 6e 20 28 27 2e 24 64 61 74 61 5b 27 76 65 72 73 69 6f t.match.version.('.$data['versio
a3fc0 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 2e 27 29 20 69 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 n_normalized'].').in.composer.js
a3fe0 6f 6e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 on</warning>');.}.continue;.}..i
a4000 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 74 65 45 f.($verbose).{.$this->io->writeE
a4020 72 72 6f 72 28 27 49 6d 70 6f 72 74 69 6e 67 20 74 61 67 20 27 2e 24 74 61 67 2e 27 20 28 27 2e rror('Importing.tag.'.$tag.'.('.
a4040 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 2e 27 29 27 29 $data['version_normalized'].')')
a4060 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 74 68 69 73 2d 3e 6c 6f ;.}..$this->addPackage($this->lo
a4080 61 64 65 72 2d 3e 6c 6f 61 64 28 24 74 68 69 73 2d 3e 70 72 65 50 72 6f 63 65 73 73 28 24 64 72 ader->load($this->preProcess($dr
a40a0 69 76 65 72 2c 20 24 64 61 74 61 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 29 29 3b 0a 7d 20 63 iver,.$data,.$identifier)));.}.c
a40c0 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 76 65 72 62 atch.(\Exception.$e).{.if.($verb
a40e0 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 77 ose).{.$this->io->writeError('<w
a4100 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 27 2e 28 arning>Skipped.tag.'.$tag.',.'.(
a4120 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
a4140 20 3f 20 27 6e 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 27 20 .?.'no.composer.file.was.found'.
a4160 3a 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 :.$e->getMessage()).'</warning>'
a4180 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 76 65 72 62 6f 73 );.}.continue;.}.}..if.(!$verbos
a41a0 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 28 27 e).{.$this->io->overwriteError('
a41c0 27 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 72 69 76 65 72 2d 3e ',.false);.}..foreach.($driver->
a41e0 67 65 74 42 72 61 6e 63 68 65 73 28 29 20 61 73 20 24 62 72 61 6e 63 68 20 3d 3e 20 24 69 64 65 getBranches().as.$branch.=>.$ide
a4200 6e 74 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 ntifier).{.$msg.=.'Reading.compo
a4220 73 65 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 ser.json.of.<info>'...($this->pa
a4240 63 6b 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 ckageName.?:.$this->url)...'</in
a4260 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 62 72 61 6e 63 68 20 2e 20 27 3c 2f 63 fo>.(<comment>'...$branch...'</c
a4280 6f 6d 6d 65 6e 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 omment>)';.if.($verbose).{.$this
a42a0 2d 3e 69 6f 2d 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 ->io->writeError($msg);.}.else.{
a42c0 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 28 24 6d 73 67 2c .$this->io->overwriteError($msg,
a42e0 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 70 61 72 73 65 64 42 72 61 6e 63 68 20 3d .false);.}..if.(!$parsedBranch.=
a4300 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 42 72 61 6e 63 68 28 24 62 72 61 6e 63 68 29 29 .$this->validateBranch($branch))
a4320 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 3e 69 6f 2d 3e 77 72 .{.if.($verbose).{.$this->io->wr
a4340 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 64 20 62 72 61 6e 63 iteError('<warning>Skipped.branc
a4360 68 20 27 2e 24 62 72 61 6e 63 68 2e 27 2c 20 69 6e 76 61 6c 69 64 20 6e 61 6d 65 3c 2f 77 61 72 h.'.$branch.',.invalid.name</war
a4380 6e 69 6e 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 ning>');.}.continue;.}..try.{.if
a43a0 20 28 21 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 .(!$data.=.$driver->getComposerI
a43c0 6e 66 6f 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 nformation($identifier)).{.if.($
a43e0 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 72 6f 72 verbose).{.$this->io->writeError
a4400 28 27 3c 77 61 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 ('<warning>Skipped.branch.'.$bra
a4420 6e 63 68 2e 27 2c 20 6e 6f 20 63 6f 6d 70 6f 73 65 72 20 66 69 6c 65 3c 2f 77 61 72 6e 69 6e 67 nch.',.no.composer.file</warning
a4440 3e 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 24 64 61 74 61 5b 27 76 65 72 >');.}.continue;.}....$data['ver
a4460 73 69 6f 6e 27 5d 20 3d 20 24 62 72 61 6e 63 68 3b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e sion'].=.$branch;.$data['version
a4480 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 3d 20 24 70 61 72 73 65 64 42 72 61 6e 63 68 3b 0a 0a _normalized'].=.$parsedBranch;..
a44a0 0a 20 69 66 20 28 27 64 65 76 2d 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 70 61 72 73 65 64 42 ..if.('dev-'.===.substr($parsedB
a44c0 72 61 6e 63 68 2c 20 30 2c 20 34 29 20 7c 7c 20 27 39 39 39 39 39 39 39 2d 64 65 76 27 20 3d 3d ranch,.0,.4).||.'9999999-dev'.==
a44e0 3d 20 24 70 61 72 73 65 64 42 72 61 6e 63 68 29 20 7b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f =.$parsedBranch).{.$data['versio
a4500 6e 27 5d 20 3d 20 27 64 65 76 2d 27 20 2e 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 3b n'].=.'dev-'...$data['version'];
a4520 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 70 72 65 .}.else.{.$data['version'].=.pre
a4540 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 20 24 g_replace('{(\.9{7})+}',.'.x',.$
a4560 70 61 72 73 65 64 42 72 61 6e 63 68 29 3b 0a 7d 0a 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 parsedBranch);.}..if.($verbose).
a4580 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
a45a0 6e 67 20 62 72 61 6e 63 68 20 27 2e 24 62 72 61 6e 63 68 2e 27 20 28 27 2e 24 64 61 74 61 5b 27 ng.branch.'.$branch.'.('.$data['
a45c0 76 65 72 73 69 6f 6e 27 5d 2e 27 29 27 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 44 61 74 61 20 version'].')');.}..$packageData.
a45e0 3d 20 24 74 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 =.$this->preProcess($driver,.$da
a4600 74 61 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 ta,.$identifier);.$package.=.$th
a4620 69 73 2d 3e 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 is->loader->load($packageData);.
a4640 69 66 20 28 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 56 61 6c if.($this->loader.instanceof.Val
a4660 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 20 26 26 20 24 74 68 69 73 2d 3e 6c 6f 61 idatingArrayLoader.&&.$this->loa
a4680 64 65 72 2d 3e 67 65 74 57 61 72 6e 69 6e 67 73 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 der->getWarnings()).{.throw.new.
a46a0 49 6e 76 61 6c 69 64 50 61 63 6b 61 67 65 45 78 63 65 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6c InvalidPackageException($this->l
a46c0 6f 61 64 65 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 2c 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 oader->getErrors(),.$this->loade
a46e0 72 2d 3e 67 65 74 57 61 72 6e 69 6e 67 73 28 29 2c 20 24 70 61 63 6b 61 67 65 44 61 74 61 29 3b r->getWarnings(),.$packageData);
a4700 0a 7d 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 0a .}.$this->addPackage($package);.
a4720 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 20 }.catch.(TransportException.$e).
a4740 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
a4760 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 62 72 61 6e 63 68 teError('<warning>Skipped.branch
a4780 20 27 2e 24 62 72 61 6e 63 68 2e 27 2c 20 6e 6f 20 63 6f 6d 70 6f 73 65 72 20 66 69 6c 65 20 77 .'.$branch.',.no.composer.file.w
a47a0 61 73 20 66 6f 75 6e 64 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 as.found</warning>');.}.continue
a47c0 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.(
a47e0 21 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 72 !$verbose).{.$this->io->writeErr
a4800 6f 72 28 27 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 45 72 72 6f 72 4f 63 63 75 or('');.}.$this->branchErrorOccu
a4820 72 72 65 64 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 rred.=.true;.$this->io->writeErr
a4840 6f 72 28 27 3c 65 72 72 6f 72 3e 53 6b 69 70 70 65 64 20 62 72 61 6e 63 68 20 27 2e 24 62 72 61 or('<error>Skipped.branch.'.$bra
a4860 6e 63 68 2e 27 2c 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 65 72 72 nch.',.'.$e->getMessage().'</err
a4880 6f 72 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 27 29 or>');.$this->io->writeError('')
a48a0 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 7d 0a 24 64 72 69 76 65 72 2d 3e 63 6c 65 61 6e 75 70 ;.continue;.}.}.$driver->cleanup
a48c0 28 29 3b 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 6f 2d ();..if.(!$verbose).{.$this->io-
a48e0 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 0a 69 >overwriteError('',.false);.}..i
a4900 66 20 28 21 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 29 20 7b 0a 74 68 72 6f f.(!$this->getPackages()).{.thro
a4920 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 74 69 6f 6e w.new.InvalidRepositoryException
a4940 28 27 4e 6f 20 76 61 6c 69 64 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 77 61 73 20 66 6f 75 ('No.valid.composer.json.was.fou
a4960 6e 64 20 69 6e 20 61 6e 79 20 62 72 61 6e 63 68 20 6f 72 20 74 61 67 20 6f 66 20 27 2e 24 74 68 nd.in.any.branch.or.tag.of.'.$th
a4980 69 73 2d 3e 75 72 6c 2e 27 2c 20 63 6f 75 6c 64 20 6e 6f 74 20 6c 6f 61 64 20 61 20 70 61 63 6b is->url.',.could.not.load.a.pack
a49a0 61 67 65 20 66 72 6f 6d 20 69 74 2e 27 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 age.from.it.');.}.}..protected.f
a49c0 75 6e 63 74 69 6f 6e 20 70 72 65 50 72 6f 63 65 73 73 28 56 63 73 44 72 69 76 65 72 49 6e 74 65 unction.preProcess(VcsDriverInte
a49e0 72 66 61 63 65 20 24 64 72 69 76 65 72 2c 20 61 72 72 61 79 20 24 64 61 74 61 2c 20 24 69 64 65 rface.$driver,.array.$data,.$ide
a4a00 6e 74 69 66 69 65 72 29 0a 7b 0a 0a 20 24 64 61 74 61 5b 27 6e 61 6d 65 27 5d 20 3d 20 24 74 68 ntifier).{...$data['name'].=.$th
a4a20 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 20 3f 3a 20 24 64 61 74 61 5b 27 6e 61 6d 65 27 5d is->packageName.?:.$data['name']
a4a40 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 64 61 74 61 5b 27 64 69 73 74 27 5d 29 29 20 7b 0a ;..if.(!isset($data['dist'])).{.
a4a60 24 64 61 74 61 5b 27 64 69 73 74 27 5d 20 3d 20 24 64 72 69 76 65 72 2d 3e 67 65 74 44 69 73 74 $data['dist'].=.$driver->getDist
a4a80 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 64 61 74 ($identifier);.}.if.(!isset($dat
a4aa0 61 5b 27 73 6f 75 72 63 65 27 5d 29 29 20 7b 0a 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 20 a['source'])).{.$data['source'].
a4ac0 3d 20 24 64 72 69 76 65 72 2d 3e 67 65 74 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 =.$driver->getSource($identifier
a4ae0 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 61 74 61 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 );.}..return.$data;.}..private.f
a4b00 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 42 72 61 6e 63 68 28 24 62 72 61 6e 63 68 29 0a unction.validateBranch($branch).
a4b20 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 6f 6e 50 61 72 {.try.{.return.$this->versionPar
a4b40 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 42 72 61 6e 63 68 28 24 62 72 61 6e 63 68 29 3b 0a 7d ser->normalizeBranch($branch);.}
a4b60 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
a4b80 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 74 69 6f 6e 20 76 61 rn.false;.}..private.function.va
a4ba0 6c 69 64 61 74 65 54 61 67 28 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 74 72 79 20 7b 0a 72 65 74 75 lidateTag($version).{.try.{.retu
a4bc0 72 6e 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 69 rn.$this->versionParser->normali
a4be0 7a 65 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f ze($version);.}.catch.(\Exceptio
a4c00 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 7d 0a 3c 3f 70 n.$e).{.}..return.false;.}.}.<?p
a4c20 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
a4c40 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
a4c60 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 57 72 69 ge\AliasPackage;.......class.Wri
a4c80 74 61 62 6c 65 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 tableArrayRepository.extends.Arr
a4ca0 61 79 52 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 57 72 69 74 61 62 6c 65 ayRepository.implements.Writable
a4cc0 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 75 62 6c 69 63 20 RepositoryInterface.{....public.
a4ce0 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 function.write().{.}.....public.
a4d00 66 75 6e 63 74 69 6f 6e 20 72 65 6c 6f 61 64 28 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 function.reload().{.}.....public
a4d20 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 65 73 28 29 .function.getCanonicalPackages()
a4d40 0a 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
a4d60 73 28 29 3b 0a 0a 0a 20 24 70 61 63 6b 61 67 65 73 42 79 4e 61 6d 65 20 3d 20 61 72 72 61 79 28 s();....$packagesByName.=.array(
a4d80 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 6b 61 67 );.foreach.($packages.as.$packag
a4da0 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 42 79 4e 61 6d 65 5b e).{.if.(!isset($packagesByName[
a4dc0 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 20 7c 7c 20 24 70 61 63 6b 61 67 $package->getName()]).||.$packag
a4de0 65 73 42 79 4e 61 6d 65 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 69 6e esByName[$package->getName()].in
a4e00 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
a4e20 65 73 42 79 4e 61 6d 65 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 esByName[$package->getName()].=.
a4e40 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 0a 24 63 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 $package;.}.}..$canonicalPackage
a4e60 73 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 70 61 63 6b 61 67 s.=.array();....foreach.($packag
a4e80 65 73 42 79 4e 61 6d 65 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 77 68 69 6c 65 20 28 24 esByName.as.$package).{.while.($
a4ea0 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)
a4ec0 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 .{.$package.=.$package->getAlias
a4ee0 4f 66 28 29 3b 0a 7d 0a 0a 24 63 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 5b 5d 20 3d 20 Of();.}..$canonicalPackages[].=.
a4f00 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 61 6e 6f 6e 69 63 61 6c 50 61 $package;.}..return.$canonicalPa
a4f20 63 6b 61 67 65 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 ckages;.}.}.<?php............nam
a4f40 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
a4f60 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
a4f80 63 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 57 72 69 74 61 62 6c 65 52 65 70 6f ce;.......interface.WritableRepo
a4fa0 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 52 65 70 6f 73 69 74 6f sitoryInterface.extends.Reposito
a4fc0 72 79 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 69 6f 6e ryInterface.{....public.function
a4fe0 20 77 72 69 74 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 .write();.......public.function.
a5000 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 70 61 63 addPackage(PackageInterface.$pac
a5020 6b 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 72 65 6d kage);.......public.function.rem
a5040 6f 76 65 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 ovePackage(PackageInterface.$pac
a5060 6b 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 67 65 74 kage);.......public.function.get
a5080 43 61 6e 6f 6e 69 63 61 6c 50 61 63 6b 61 67 65 73 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 CanonicalPackages();.....public.
a50a0 66 75 6e 63 74 69 6f 6e 20 72 65 6c 6f 61 64 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a function.reload();.}.<?php......
a50c0 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 63 72 69 70 74 3b ......namespace.Composer\Script;
a50e0 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 65 6e 64 .......class.CommandEvent.extend
a5100 73 20 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 61 6d s.Event.{.}.<?php............nam
a5120 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 73 65 20 43 6f 6d espace.Composer\Script;..use.Com
a5140 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 49 4f 5c poser\Composer;.use.Composer\IO\
a5160 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 45 76 65 6e 74 44 IOInterface;.use.Composer\EventD
a5180 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 20 61 73 20 42 61 73 65 45 76 65 6e 74 3b 0a 0a 0a ispatcher\Event.as.BaseEvent;...
a51a0 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 76 65 6e 74 20 65 78 74 65 6e 64 73 20 42 61 73 65 45 76 65 .....class.Event.extends.BaseEve
a51c0 6e 74 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 0a 0a 0a 0a 70 nt.{....private.$composer;.....p
a51e0 72 69 76 61 74 65 20 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 rivate.$io;.....private.$devMode
a5200 3b 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 5f 5f 63 ;............public.function.__c
a5220 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 onstruct($name,.Composer.$compos
a5240 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 20 3d 20 er,.IOInterface.$io,.$devMode.=.
a5260 66 61 6c 73 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 72 false,.array.$args.=.array(),.ar
a5280 72 61 79 20 24 66 6c 61 67 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a ray.$flags.=.array()).{.parent::
a52a0 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 24 61 72 67 73 2c 20 24 66 6c 61 67 73 __construct($name,.$args,.$flags
a52c0 29 3b 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 );.$this->composer.=.$composer;.
a52e0 24 74 68 69 73 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 $this->io.=.$io;.$this->devMode.
a5300 3d 20 24 64 65 76 4d 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 =.$devMode;.}.......public.funct
a5320 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ion.getComposer().{.return.$this
a5340 2d 3e 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ->composer;.}.......public.funct
a5360 69 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 ion.getIO().{.return.$this->io;.
a5380 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 44 65 76 4d 6f 64 }.......public.function.isDevMod
a53a0 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 65 3b 0a 7d 0a 7d e().{.return.$this->devMode;.}.}
a53c0 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
a53e0 6f 73 65 72 5c 53 63 72 69 70 74 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 oser\Script;..use.Composer\Insta
a5400 6c 6c 65 72 5c 50 61 63 6b 61 67 65 45 76 65 6e 74 20 61 73 20 42 61 73 65 50 61 63 6b 61 67 65 ller\PackageEvent.as.BasePackage
a5420 45 76 65 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 63 6b 61 67 65 45 76 65 6e 74 20 Event;.......class.PackageEvent.
a5440 65 78 74 65 6e 64 73 20 42 61 73 65 50 61 63 6b 61 67 65 45 76 65 6e 74 0a 7b 0a 7d 0a 3c 3f 70 extends.BasePackageEvent.{.}.<?p
a5460 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
a5480 5c 53 63 72 69 70 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 63 72 69 70 74 45 76 65 6e \Script;........class.ScriptEven
a54a0 74 73 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 49 4e 53 54 41 4c 4c 5f 43 4d ts.{........const.PRE_INSTALL_CM
a54c0 44 20 3d 20 27 70 72 65 2d 69 6e 73 74 61 6c 6c 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 D.=.'pre-install-cmd';.........c
a54e0 6f 6e 73 74 20 50 4f 53 54 5f 49 4e 53 54 41 4c 4c 5f 43 4d 44 20 3d 20 27 70 6f 73 74 2d 69 6e onst.POST_INSTALL_CMD.=.'post-in
a5500 73 74 61 6c 6c 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 55 50 stall-cmd';.........const.PRE_UP
a5520 44 41 54 45 5f 43 4d 44 20 3d 20 27 70 72 65 2d 75 70 64 61 74 65 2d 63 6d 64 27 3b 0a 0a 0a 0a DATE_CMD.=.'pre-update-cmd';....
a5540 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 55 50 44 41 54 45 5f 43 4d 44 20 3d 20 27 70 6f .....const.POST_UPDATE_CMD.=.'po
a5560 73 74 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 52 st-update-cmd';.........const.PR
a5580 45 5f 53 54 41 54 55 53 5f 43 4d 44 20 3d 20 27 70 72 65 2d 73 74 61 74 75 73 2d 63 6d 64 27 3b E_STATUS_CMD.=.'pre-status-cmd';
a55a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 53 54 41 54 55 53 5f 43 4d 44 20 3d .........const.POST_STATUS_CMD.=
a55c0 20 27 70 6f 73 74 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 .'post-status-cmd';.........cons
a55e0 74 20 50 52 45 5f 41 55 54 4f 4c 4f 41 44 5f 44 55 4d 50 20 3d 20 27 70 72 65 2d 61 75 74 6f 6c t.PRE_AUTOLOAD_DUMP.=.'pre-autol
a5600 6f 61 64 2d 64 75 6d 70 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 41 55 oad-dump';.........const.POST_AU
a5620 54 4f 4c 4f 41 44 5f 44 55 4d 50 20 3d 20 27 70 6f 73 74 2d 61 75 74 6f 6c 6f 61 64 2d 64 75 6d TOLOAD_DUMP.=.'post-autoload-dum
a5640 70 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 52 4f 4f 54 5f 50 41 43 4b p';.........const.POST_ROOT_PACK
a5660 41 47 45 5f 49 4e 53 54 41 4c 4c 20 3d 20 27 70 6f 73 74 2d 72 6f 6f 74 2d 70 61 63 6b 61 67 65 AGE_INSTALL.=.'post-root-package
a5680 2d 69 6e 73 74 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 43 -install';..........const.POST_C
a56a0 52 45 41 54 45 5f 50 52 4f 4a 45 43 54 5f 43 4d 44 20 3d 20 27 70 6f 73 74 2d 63 72 65 61 74 65 REATE_PROJECT_CMD.=.'post-create
a56c0 2d 70 72 6f 6a 65 63 74 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 -project-cmd';.........const.PRE
a56e0 5f 41 52 43 48 49 56 45 5f 43 4d 44 20 3d 20 27 70 72 65 2d 61 72 63 68 69 76 65 2d 63 6d 64 27 _ARCHIVE_CMD.=.'pre-archive-cmd'
a5700 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 41 52 43 48 49 56 45 5f 43 4d 44 ;.........const.POST_ARCHIVE_CMD
a5720 20 3d 20 27 70 6f 73 74 2d 61 72 63 68 69 76 65 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a .=.'post-archive-cmd';..........
a5740 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 50 41 43 4b 41 47 45 5f 49 4e 53 54 41 4c 4c 20 3d 20 27 70 ..const.PRE_PACKAGE_INSTALL.=.'p
a5760 72 65 2d 70 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c 6c 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f re-package-install';..........co
a5780 6e 73 74 20 50 4f 53 54 5f 50 41 43 4b 41 47 45 5f 49 4e 53 54 41 4c 4c 20 3d 20 27 70 6f 73 74 nst.POST_PACKAGE_INSTALL.=.'post
a57a0 2d 70 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c 6c 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 -package-install';..........cons
a57c0 74 20 50 52 45 5f 50 41 43 4b 41 47 45 5f 55 50 44 41 54 45 20 3d 20 27 70 72 65 2d 70 61 63 6b t.PRE_PACKAGE_UPDATE.=.'pre-pack
a57e0 61 67 65 2d 75 70 64 61 74 65 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 age-update';..........const.POST
a5800 5f 50 41 43 4b 41 47 45 5f 55 50 44 41 54 45 20 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d _PACKAGE_UPDATE.=.'post-package-
a5820 75 70 64 61 74 65 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 update';..........const.PRE_PACK
a5840 41 47 45 5f 55 4e 49 4e 53 54 41 4c 4c 20 3d 20 27 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 6e 69 AGE_UNINSTALL.=.'pre-package-uni
a5860 6e 73 74 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 nstall';..........const.POST_PAC
a5880 4b 41 47 45 5f 55 4e 49 4e 53 54 41 4c 4c 20 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 75 KAGE_UNINSTALL.=.'post-package-u
a58a0 6e 69 6e 73 74 61 6c 6c 27 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 ninstall';.}.<?php............na
a58c0 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 43 6f 6d 70 mespace.Composer\Util;..use.Comp
a58e0 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 49 4f 49 oser\Config;.use.Composer\IO\IOI
a5900 6e 74 65 72 66 61 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 nterface;.....class.AuthHelper.{
a5920 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 63 6f 6e 66 69 .protected.$io;.protected.$confi
a5940 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 73 74 72 75 63 74 28 g;..public.function.__construct(
a5960 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 29 IOInterface.$io,.Config.$config)
a5980 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 69 .{.$this->io.=.$io;.$this->confi
a59a0 67 20 3d 20 24 63 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 g.=.$config;.}..public.function.
a59c0 73 74 6f 72 65 41 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 storeAuth($originUrl,.$storeAuth
a59e0 29 0a 7b 0a 24 73 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 ).{.$store.=.false;.$configSourc
a5a00 65 20 3d 20 24 74 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 e.=.$this->config->getAuthConfig
a5a20 53 6f 75 72 63 65 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 Source();.if.($storeAuth.===.tru
a5a40 65 29 20 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 20 65 e).{.$store.=.$configSource;.}.e
a5a60 6c 73 65 69 66 20 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 lseif.($storeAuth.===.'prompt').
a5a80 7b 0a 24 61 6e 73 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 {.$answer.=.$this->io->askAndVal
a5aa0 69 64 61 74 65 28 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 idate(.'Do.you.want.to.store.cre
a5ac0 64 65 6e 74 69 61 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 dentials.for.'.$originUrl.'.in.'
a5ae0 2e 24 63 6f 6e 66 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 .$configSource->getName().'.?.[Y
a5b00 6e 5d 20 27 2c 0a 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 n].',.function.($value).{.$input
a5b20 20 3d 20 73 74 72 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 .=.strtolower(substr(trim($value
a5b40 29 2c 20 30 2c 20 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 ),.0,.1));.if.(in_array($input,.
a5b60 61 72 72 61 79 28 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 array('y','n'))).{.return.$input
a5b80 3b 0a 7d 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(
a5ba0 27 50 6c 65 61 73 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 'Please.answer.(y)es.or.(n)o');.
a5bc0 7d 2c 0a 6e 75 6c 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 },.null,.'y'.);..if.($answer.===
a5be0 20 27 79 27 29 20 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 .'y').{.$store.=.$configSource;.
a5c00 7d 0a 7d 0a 69 66 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 }.}.if.($store).{.$store->addCon
a5c20 66 69 67 53 65 74 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 figSetting(.'http-basic.'.$origi
a5c40 6e 55 72 6c 2c 0a 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 nUrl,.$this->io->getAuthenticati
a5c60 6f 6e 28 24 6f 72 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 on($originUrl).);.}.}.}.<?php...
a5c80 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 69 6c .........namespace.Composer\Util
a5ca0 3b 0a 0a 0a 0a 0a 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 ;.......class.ComposerMirror.{.p
a5cc0 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 73 73 55 72 6c ublic.static.function.processUrl
a5ce0 28 24 6d 69 72 72 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 ($mirrorUrl,.$packageName,.$vers
a5d00 69 6f 6e 2c 20 24 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 ion,.$reference,.$type).{.if.($r
a5d20 65 66 65 72 65 6e 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 eference).{.$reference.=.preg_ma
a5d40 74 63 68 28 27 7b 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 tch('{^([a-f0-9]*|%reference%)$}
a5d60 27 2c 20 24 72 65 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 ',.$reference).?.$reference.:.md
a5d80 35 28 24 72 65 66 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 5($reference);.}.$version.=.strp
a5da0 6f 73 28 24 76 65 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 os($version,.'/').===.false.?.$v
a5dc0 65 72 73 69 6f 6e 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 ersion.:.md5($version);..return.
a5de0 73 74 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 str_replace(.array('%package%',.
a5e00 27 25 76 65 72 73 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 '%version%',.'%reference%',.'%ty
a5e20 70 65 25 27 29 2c 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 pe%'),.array($packageName,.$vers
a5e40 69 6f 6e 2c 20 24 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 ion,.$reference,.$type),.$mirror
a5e60 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 63 74 69 6f 6e Url.);.}..public.static.function
a5e80 20 70 72 6f 63 65 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 .processGitUrl($mirrorUrl,.$pack
a5ea0 61 67 65 4e 61 6d 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 ageName,.$url,.$type).{.if.(preg
a5ec0 5f 6d 61 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 67 69 _match('#^(?:(?:https?|git)://gi
a5ee0 74 68 75 62 5c 2e 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 thub\.com/|git@github\.com:)([^/
a5f00 5d 2b 29 2f 28 2e 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 ]+)/(.+?)(?:\.git)?$#',.$url,.$m
a5f20 61 74 63 68 29 29 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 atch)).{.$url.=.'gh-'.$match[1].
a5f40 27 2f 27 2e 24 6d 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 '/'.$match[2];.}.elseif.(preg_ma
a5f60 74 63 68 28 27 23 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 tch('#^https://bitbucket\.org/([
a5f80 5e 2f 5d 2b 29 2f 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 ^/]+)/(.+?)(?:\.git)?/?$#',.$url
a5fa0 2c 20 24 6d 61 74 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 ,.$match)).{.$url.=.'bb-'.$match
a5fc0 5b 31 5d 2e 27 2f 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 [1].'/'.$match[2];.}.else.{.$url
a5fe0 20 3d 20 70 72 65 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 .=.preg_replace('{[^a-z0-9_.-]}i
a6000 27 2c 20 27 2d 27 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 ',.'-',.trim($url,.'/'));.}..ret
a6020 75 72 6e 20 73 74 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 urn.str_replace(.array('%package
a6040 25 27 2c 20 27 25 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 %',.'%normalizedUrl%',.'%type%')
a6060 2c 0a 61 72 72 61 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 ,.array($packageName,.$url,.$typ
a6080 65 29 2c 0a 24 6d 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 e),.$mirrorUrl.);.}..public.stat
a60a0 69 63 20 66 75 6e 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 ic.function.processHgUrl($mirror
a60c0 55 72 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 0a Url,.$packageName,.$url,.$type).
a60e0 7b 0a 72 65 74 75 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 {.return.self::processGitUrl($mi
a6100 72 72 6f 72 55 72 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 rrorUrl,.$packageName,.$url,.$ty
a6120 70 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 pe);.}.}.<?php............namesp
a6140 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
a6160 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
a6180 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 61 6c 69 64 61 74 .Composer\Package\Loader\Validat
a61a0 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 65 72 5c 50 61 63 ingArrayLoader;.use.Composer\Pac
a61c0 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 45 78 63 65 70 74 kage\Loader\InvalidPackageExcept
a61e0 69 6f 6e 3b 0a 75 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 ion;.use.Composer\Json\JsonValid
a6200 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 73 65 72 5c 49 4f 5c ationException;.use.Composer\IO\
a6220 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 4a 73 6f 6e 5c 4a IOInterface;.use.Composer\Json\J
a6240 73 6f 6e 46 69 6c 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 sonFile;.use.Composer\Spdx\SpdxL
a6260 69 63 65 6e 73 65 73 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 0a icenses;.use.Composer\Factory;..
a6280 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 7b 0a 70 72 ......class.ConfigValidator.{.pr
a62a0 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 5f 5f 63 6f ivate.$io;..public.function.__co
a62c0 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 74 68 69 73 nstruct(IOInterface.$io).{.$this
a62e0 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 63 20 66 75 ->io.=.$io;.}..........public.fu
a6300 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 79 4c 6f 61 nction.validate($file,.$arrayLoa
a6320 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 69 6e 67 41 derValidationFlags.=.ValidatingA
a6340 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 72 6f 72 73 rrayLoader::CHECK_ALL).{.$errors
a6360 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 20 61 72 72 .=.array();.$publishErrors.=.arr
a6380 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 0a 20 24 6c ay();.$warnings.=.array();....$l
a63a0 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 20 3d 20 6e axValid.=.false;.try.{.$json.=.n
a63c0 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 69 73 2d 3e ew.JsonFile($file,.null,.$this->
a63e0 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 28 29 3b 0a io);.$manifest.=.$json->read();.
a6400 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 69 6c 65 3a .$json->validateSchema(JsonFile:
a6420 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 75 65 3b 0a :LAX_SCHEMA);.$laxValid.=.true;.
a6440 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 61 74 63 68 $json->validateSchema();.}.catch
a6460 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 29 20 7b 0a .(JsonValidationException.$e).{.
a6480 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 24 6d 65 73 foreach.($e->getErrors().as.$mes
a64a0 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 62 6c 69 73 sage).{.if.($laxValid).{.$publis
a64c0 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 20 7b 0a 24 hErrors[].=.$message;.}.else.{.$
a64e0 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 61 74 63 68 errors[].=.$message;.}.}.}.catch
a6500 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 20 3d 20 24 .(\Exception.$e).{.$errors[].=.$
a6520 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 61 79 28 24 e->getMessage();..return.array($
a6540 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 67 errors,.$publishErrors,.$warning
a6560 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 74 5b 27 6c s);.}....if.(!empty($manifest['l
a6580 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 24 6d 61 6e icense'])).{...if.(is_array($man
a65a0 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 20 28 24 6d ifest['license'])).{.foreach.($m
a65c0 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 3e 20 24 6c anifest['license'].as.$key.=>.$l
a65e0 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 3d 3d 3d 20 icense).{.if.('proprietary'.===.
a6600 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 27 6c 69 63 $license).{.unset($manifest['lic
a6620 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 73 65 56 61 ense'][$key]);.}.}.}..$licenseVa
a6640 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 3b 0a 69 66 lidator.=.new.SpdxLicenses();.if
a6660 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 74 5b 27 6c .('proprietary'.!==.$manifest['l
a6680 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 69 66 65 73 icense'].&&.array().!==.$manifes
a66a0 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 69 64 61 74 t['license'].&&.!$licenseValidat
a66c0 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 6e 73 65 27 or->validate($manifest['license'
a66e0 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 0a 27 4c 69 ])).{.$warnings[].=.sprintf(.'Li
a6700 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 20 6c 69 63 cense.%s.is.not.a.valid.SPDX.lic
a6720 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 2f 73 70 64 ense.identifier,.see.https://spd
a6740 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 6e 20 6f 70 x.org/licenses/.if.you.use.an.op
a6760 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 77 61 72 65 en.license.'.."\nIf.the.software
a6780 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 73 65 20 5c .is.closed-source,.you.may.use.\
a67a0 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 0a 6a 73 6f "proprietary\".as.license.",.jso
a67c0 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 5d 29 0a 29 n_encode($manifest['license']).)
a67e0 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 4e 6f 20 6c ;.}.}.else.{.$warnings[].=.'No.l
a6800 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 6d 6d 65 6e icense.specified,.it.is.recommen
a6820 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 72 63 65 20 ded.to.do.so..For.closed-source.
a6840 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 65 74 61 72 software.you.may.use."proprietar
a6860 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 74 28 24 6d y".as.license.';.}..if.(isset($m
a6880 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 69 6e 67 73 anifest['version'])).{.$warnings
a68a0 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 72 65 73 65 [].=.'The.version.field.is.prese
a68c0 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 76 65 20 69 nt,.it.is.recommended.to.leave.i
a68e0 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 69 73 68 65 t.out.if.the.package.is.publishe
a6900 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 70 74 79 28 d.on.Packagist.';.}..if.(!empty(
a6920 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 61 74 63 68 $manifest['name']).&&.preg_match
a6940 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 5d 29 29 20 ('{[A-Z]}',.$manifest['name'])).
a6960 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 65 28 27 7b {.$suggestName.=.preg_replace('{
a6980 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 2d 5a 5d 5b (?:([a-z])([A-Z])|([A-Z])([A-Z][
a69a0 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 6d 61 6e 69 a-z]))}',.'\\1\\3-\\2\\4',.$mani
a69c0 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 3d 20 73 74 fest['name']);.$suggestName.=.st
a69e0 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 62 6c 69 73 rtolower($suggestName);..$publis
a6a00 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 25 73 22 20 hErrors[].=.sprintf(.'Name."%s".
a6a20 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 74 69 63 65 does.not.match.the.best.practice
a6a40 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 65 73 29 2e .(e.g..lower-cased/with-dashes).
a6a60 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 61 64 2e 20 .We.suggest.using."%s".instead..
a6a80 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 20 74 6f 20 As.such.you.will.not.be.able.to.
a6aa0 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 61 6e 69 66 submit.it.to.Packagist.',.$manif
a6ac0 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 0a 7d 0a 0a est['name'],.$suggestName.);.}..
a6ae0 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 29 20 26 26 if.(!empty($manifest['type']).&&
a6b00 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 73 65 72 2d .$manifest['type'].==.'composer-
a6b20 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 22 54 68 65 installer').{.$warnings[].=."The
a6b40 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 61 6c 6c 65 .package.type.'composer-installe
a6b60 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 74 72 69 62 r'.is.deprecated..Please.distrib
a6b80 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 73 20 70 6c ute.your.custom.installers.as.pl
a6ba0 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 3a 2f 2f 67 ugins.from.now.on..See.https://g
a6bc0 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 70 6c 75 67 etcomposer.org/doc/articles/plug
a6be0 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 69 6f 6e 2e ins.md.for.plugin.documentation.
a6c00 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 27 72 65 71 ";.}....if.(isset($manifest['req
a6c20 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 72 65 71 75 uire']).&&.isset($manifest['requ
a6c40 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 64 65 73 20 ire-dev'])).{.$requireOverrides.
a6c60 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 65 73 74 5b =.array_intersect_key($manifest[
a6c80 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 72 65 2d 64 'require'],.$manifest['require-d
a6ca0 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 76 65 72 72 ev']);..if.(!empty($requireOverr
a6cc0 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 65 71 75 69 ides)).{.$plural.=.(count($requi
a6ce0 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 27 69 73 27 reOverrides).>.1).?.'are'.:.'is'
a6d00 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 2c 20 61 72 ;.$warnings[].=.implode(',.',.ar
a6d20 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 2e 20 22 20 ray_keys($requireOverrides))..".
a6d40 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 65 71 75 69 {$plural}.required.both.in.requi
a6d60 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 20 6c 65 61 re.and.require-dev,.this.can.lea
a6d80 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 0a 7d 0a 0a d.to.unexpected.behavior";.}.}..
a6da0 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 5b 27 72 65 ..$require.=.isset($manifest['re
a6dc0 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 65 27 5d 20 quire']).?.$manifest['require'].
a6de0 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 65 74 28 24 :.array();.$requireDev.=.isset($
a6e00 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 6d 61 6e 69 manifest['require-dev']).?.$mani
a6e20 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 29 3b 0a 24 fest['require-dev'].:.array();.$
a6e40 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 69 72 65 2c packages.=.array_merge($require,
a6e60 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 6b 61 67 65 .$requireDev);.foreach.($package
a6e80 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 0a 69 66 20 s.as.$package.=>.$version).{.if.
a6ea0 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 20 3d 3d 3d (preg_match('/#/',.$version).===
a6ec0 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 0a 27 54 68 .1).{.$warnings[].=.sprintf(.'Th
a6ee0 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 6f 20 61 20 e.package."%s".is.pointing.to.a.
a6f00 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 74 69 63 65 commit-ref,.this.is.bad.practice
a6f20 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 73 75 65 73 .and.can.cause.unforeseen.issues
a6f40 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 73 73 65 74 .',.$package.);.}.}....if.(isset
a6f60 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 30 27 5d 5b ($manifest['autoload']['psr-0'][
a6f80 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 69 6e 67 20 ''])).{.$warnings[].=."Defining.
a6fa0 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 20 6e 61 6d autoload.psr-0.with.an.empty.nam
a6fc0 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 66 6f 72 20 espace.prefix.is.a.bad.idea.for.
a6fe0 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 61 6e 69 66 performance";.}.if.(isset($manif
a7000 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 29 29 20 7b est['autoload']['psr-4'][''])).{
a7020 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 6f 6c 6f 61 .$warnings[].=."Defining.autoloa
a7040 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 61 63 65 20 d.psr-4.with.an.empty.namespace.
a7060 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 66 6f 72 6d prefix.is.a.bad.idea.for.perform
a7080 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 77 20 56 61 ance";.}..try.{.$loader.=.new.Va
a70a0 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 79 4c 6f 61 lidatingArrayLoader(new.ArrayLoa
a70c0 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 64 65 72 56 der(),.true,.null,.$arrayLoaderV
a70e0 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 24 6d 61 6e alidationFlags);.if.(!isset($man
a7100 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 73 74 5b 27 ifest['version'])).{.$manifest['
a7120 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 69 73 73 65 version'].=.'1.0.0';.}.if.(!isse
a7140 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 69 66 65 73 t($manifest['name'])).{.$manifes
a7160 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 0a 24 6c 6f t['name'].=.'dummy/dummy';.}.$lo
a7180 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 63 68 20 28 ader->load($manifest);.}.catch.(
a71a0 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 7b 0a 24 65 InvalidPackageException.$e).{.$e
a71c0 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 20 24 65 2d rrors.=.array_merge($errors,.$e-
a71e0 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 3d 20 61 72 >getErrors());.}..$warnings.=.ar
a7200 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 2d 3e 67 65 ray_merge($warnings,.$loader->ge
a7220 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 24 65 72 72 tWarnings());..return.array($err
a7240 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 3b ors,.$publishErrors,.$warnings);
a7260 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.
a7280 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 49 4f 5c Composer\Util;..use.Composer\IO\
a72a0 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 6f 72 48 61 IOInterface;.......class.ErrorHa
a72c0 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 0a 0a 0a 0a ndler.{.private.static.$io;.....
a72e0 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 68 ........public.static.function.h
a7300 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 65 2c 20 24 andle($level,.$message,.$file,.$
a7320 6c 69 6e 65 29 0a 7b 0a 0a 20 69 66 20 28 21 65 72 72 6f 72 5f 72 65 70 6f 72 74 69 6e 67 28 29 line).{...if.(!error_reporting()
a7340 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 69 6e 69 5f 67 65 74 28 27 78 64 65 62 ).{.return;.}..if.(ini_get('xdeb
a7360 75 67 2e 73 63 72 65 61 6d 27 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 5c 6e ug.scream')).{.$message..=."\n\n
a7380 57 61 72 6e 69 6e 67 3a 20 59 6f 75 20 68 61 76 65 20 78 64 65 62 75 67 2e 73 63 72 65 61 6d 20 Warning:.You.have.xdebug.scream.
a73a0 65 6e 61 62 6c 65 64 2c 20 74 68 65 20 77 61 72 6e 69 6e 67 20 61 62 6f 76 65 20 6d 61 79 20 62 enabled,.the.warning.above.may.b
a73c0 65 22 2e 0a 22 5c 6e 61 20 6c 65 67 69 74 69 6d 61 74 65 6c 79 20 73 75 70 70 72 65 73 73 65 64 e".."\na.legitimately.suppressed
a73e0 20 65 72 72 6f 72 20 74 68 61 74 20 79 6f 75 20 77 65 72 65 20 6e 6f 74 20 73 75 70 70 6f 73 65 .error.that.you.were.not.suppose
a7400 64 20 74 6f 20 73 65 65 2e 22 3b 0a 7d 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 21 3d 3d 20 45 5f d.to.see.";.}..if.($level.!==.E_
a7420 44 45 50 52 45 43 41 54 45 44 20 26 26 20 24 6c 65 76 65 6c 20 21 3d 3d 20 45 5f 55 53 45 52 5f DEPRECATED.&&.$level.!==.E_USER_
a7440 44 45 50 52 45 43 41 54 45 44 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 45 72 72 6f 72 45 78 DEPRECATED).{.throw.new.\ErrorEx
a7460 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 2c 20 30 2c 20 24 6c 65 76 65 6c 2c 20 24 66 69 ception($message,.0,.$level,.$fi
a7480 6c 65 2c 20 24 6c 69 6e 65 29 3b 0a 7d 0a 0a 69 66 20 28 73 65 6c 66 3a 3a 24 69 6f 29 20 7b 0a le,.$line);.}..if.(self::$io).{.
a74a0 73 65 6c 66 3a 3a 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 self::$io->writeError('<warning>
a74c0 44 65 70 72 65 63 61 74 69 6f 6e 20 4e 6f 74 69 63 65 3a 20 27 2e 24 6d 65 73 73 61 67 65 2e 27 Deprecation.Notice:.'.$message.'
a74e0 20 69 6e 20 27 2e 24 66 69 6c 65 2e 27 3a 27 2e 24 6c 69 6e 65 2e 27 3c 2f 77 61 72 6e 69 6e 67 .in.'.$file.':'.$line.'</warning
a7500 3e 27 29 3b 0a 69 66 20 28 73 65 6c 66 3a 3a 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 >');.if.(self::$io->isVerbose())
a7520 20 7b 0a 73 65 6c 66 3a 3a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 27 3c 77 61 72 6e 69 .{.self::$io->writeError('<warni
a7540 6e 67 3e 53 74 61 63 6b 20 74 72 61 63 65 3a 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 73 65 6c ng>Stack.trace:</warning>');.sel
a7560 66 3a 3a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 61 72 72 61 79 5f 66 69 6c 74 65 72 28 f::$io->writeError(array_filter(
a7580 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 61 29 20 7b 0a 69 66 20 28 69 73 array_map(function.($a).{.if.(is
a75a0 73 65 74 28 24 61 5b 27 6c 69 6e 65 27 5d 2c 20 24 61 5b 27 66 69 6c 65 27 5d 29 29 20 7b 0a 72 set($a['line'],.$a['file'])).{.r
a75c0 65 74 75 72 6e 20 27 3c 77 61 72 6e 69 6e 67 3e 20 27 2e 24 61 5b 27 66 69 6c 65 27 5d 2e 27 3a eturn.'<warning>.'.$a['file'].':
a75e0 27 2e 24 61 5b 27 6c 69 6e 65 27 5d 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 3b 0a 7d 0a 0a 72 65 '.$a['line'].'</warning>';.}..re
a7600 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 2c 20 61 72 72 61 79 5f 73 6c 69 63 65 28 64 65 62 75 67 5f turn.null;.},.array_slice(debug_
a7620 62 61 63 6b 74 72 61 63 65 28 29 2c 20 32 29 29 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a backtrace(),.2))));.}.}.}.......
a7640 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 67 69 73 74 65 72 28 public.static.function.register(
a7660 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 73 65 74 5f 65 72 IOInterface.$io.=.null).{.set_er
a7680 72 6f 72 5f 68 61 6e 64 6c 65 72 28 61 72 72 61 79 28 5f 5f 43 4c 41 53 53 5f 5f 2c 20 27 68 61 ror_handler(array(__CLASS__,.'ha
a76a0 6e 64 6c 65 27 29 29 3b 0a 73 65 6c 66 3a 3a 24 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 7d 0a 3c 3f ndle'));.self::$io.=.$io;.}.}.<?
a76c0 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
a76e0 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 r\Util;..use.RecursiveDirectoryI
a7700 74 65 72 61 74 6f 72 3b 0a 75 73 65 20 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 terator;.use.RecursiveIteratorIt
a7720 65 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 69 erator;.use.Symfony\Component\Fi
a7740 6e 64 65 72 5c 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 73 79 73 74 nder\Finder;......class.Filesyst
a7760 65 6d 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 0a em.{.private.$processExecutor;..
a7780 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 50 72 6f 63 public.function.__construct(Proc
a77a0 65 73 73 45 78 65 63 75 74 6f 72 20 24 65 78 65 63 75 74 6f 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a essExecutor.$executor.=.null).{.
a77c0 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 3d 20 24 65 78 65 63 75 74 $this->processExecutor.=.$execut
a77e0 6f 72 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 29 3b 0a 7d 0a 0a or.?:.new.ProcessExecutor();.}..
a7800 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 29 0a 7b 0a public.function.remove($file).{.
a7820 69 66 20 28 69 73 5f 64 69 72 28 24 66 69 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 if.(is_dir($file)).{.return.$thi
a7840 73 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 66 69 6c 65 29 3b 0a 7d 0a 0a 69 66 s->removeDirectory($file);.}..if
a7860 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 .(file_exists($file)).{.return.$
a7880 74 68 69 73 2d 3e 75 6e 6c 69 6e 6b 28 24 66 69 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 this->unlink($file);.}..return.f
a78a0 61 6c 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 6e 20 69 alse;.}........public.function.i
a78c0 73 44 69 72 45 6d 70 74 79 28 24 64 69 72 29 0a 7b 0a 24 66 69 6e 64 65 72 20 3d 20 46 69 6e 64 sDirEmpty($dir).{.$finder.=.Find
a78e0 65 72 3a 3a 63 72 65 61 74 65 28 29 0a 2d 3e 69 67 6e 6f 72 65 56 43 53 28 66 61 6c 73 65 29 0a er::create().->ignoreVCS(false).
a7900 2d 3e 69 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 28 66 61 6c 73 65 29 0a 2d 3e 64 65 70 74 68 28 ->ignoreDotFiles(false).->depth(
a7920 30 29 0a 2d 3e 69 6e 28 24 64 69 72 29 3b 0a 0a 72 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 66 69 0).->in($dir);..return.count($fi
a7940 6e 64 65 72 29 20 3d 3d 3d 20 30 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 nder).===.0;.}..public.function.
a7960 65 6d 70 74 79 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 2c 20 24 65 6e 73 75 72 65 44 69 72 65 emptyDirectory($dir,.$ensureDire
a7980 63 74 6f 72 79 45 78 69 73 74 73 20 3d 20 74 72 75 65 29 0a 7b 0a 69 66 20 28 66 69 6c 65 5f 65 ctoryExists.=.true).{.if.(file_e
a79a0 78 69 73 74 73 28 24 64 69 72 29 20 26 26 20 69 73 5f 6c 69 6e 6b 28 24 64 69 72 29 29 20 7b 0a xists($dir).&&.is_link($dir)).{.
a79c0 24 74 68 69 73 2d 3e 75 6e 6c 69 6e 6b 28 24 64 69 72 29 3b 0a 7d 0a 0a 69 66 20 28 24 65 6e 73 $this->unlink($dir);.}..if.($ens
a79e0 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 29 20 7b 0a 24 74 68 69 73 2d 3e 65 6e 73 ureDirectoryExists).{.$this->ens
a7a00 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 64 69 72 29 3b 0a 7d 0a 0a 69 66 20 ureDirectoryExists($dir);.}..if.
a7a20 28 69 73 5f 64 69 72 28 24 64 69 72 29 29 20 7b 0a 24 66 69 6e 64 65 72 20 3d 20 46 69 6e 64 65 (is_dir($dir)).{.$finder.=.Finde
a7a40 72 3a 3a 63 72 65 61 74 65 28 29 0a 2d 3e 69 67 6e 6f 72 65 56 43 53 28 66 61 6c 73 65 29 0a 2d r::create().->ignoreVCS(false).-
a7a60 3e 69 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 28 66 61 6c 73 65 29 0a 2d 3e 64 65 70 74 68 28 30 >ignoreDotFiles(false).->depth(0
a7a80 29 0a 2d 3e 69 6e 28 24 64 69 72 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6e 64 65 72 20 ).->in($dir);..foreach.($finder.
a7aa0 61 73 20 24 70 61 74 68 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 28 28 73 74 72 69 6e as.$path).{.$this->remove((strin
a7ac0 67 29 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c g).$path);.}.}.}............publ
a7ae0 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 ic.function.removeDirectory($dir
a7b00 65 63 74 6f 72 79 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 53 79 6d 6c 69 6e 6b 65 64 ectory).{.if.($this->isSymlinked
a7b20 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 65 63 74 6f 72 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 Directory($directory)).{.return.
a7b40 24 74 68 69 73 2d 3e 75 6e 6c 69 6e 6b 53 79 6d 6c 69 6e 6b 65 64 44 69 72 65 63 74 6f 72 79 28 $this->unlinkSymlinkedDirectory(
a7b60 24 64 69 72 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 $directory);.}..if.(!file_exists
a7b80 28 24 64 69 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 ($directory).||.!is_dir($directo
a7ba0 72 79 29 29 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 ry)).{.return.true;.}..if.(preg_
a7bc0 6d 61 74 63 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 match('{^(?:[a-z]:)?[/\\\\]+$}i'
a7be0 2c 20 24 64 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 ,.$directory)).{.throw.new.\Runt
a7c00 69 6d 65 45 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 imeException('Aborting.an.attemp
a7c20 74 65 64 20 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 ted.deletion.of.'.$directory.',.
a7c40 74 68 69 73 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 this.was.probably.not.intended,.
a7c60 69 66 20 69 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 if.it.is.a.real.use.case.please.
a7c80 72 65 70 6f 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 report.it.');.}..if.(!function_e
a7ca0 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 6e 20 24 74 68 xists('proc_open')).{.return.$th
a7cc0 69 73 2d 3e 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 is->removeDirectoryPhp($director
a7ce0 79 29 3b 0a 7d 0a 0a 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 y);.}..if.(defined('PHP_WINDOWS_
a7d00 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 24 63 6d 64 20 3d 20 73 70 72 69 6e 74 VERSION_BUILD')).{.$cmd.=.sprint
a7d20 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 78 65 63 75 f('rmdir./S./Q.%s',.ProcessExecu
a7d40 74 6f 72 3a 3a 65 73 63 61 70 65 28 72 65 61 6c 70 61 74 68 28 24 64 69 72 65 63 74 6f 72 79 29 tor::escape(realpath($directory)
a7d60 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6d 64 20 3d 20 73 70 72 69 6e 74 66 28 27 72 6d 20 ));.}.else.{.$cmd.=.sprintf('rm.
a7d80 2d 72 66 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 -rf.%s',.ProcessExecutor::escape
a7da0 28 24 64 69 72 65 63 74 6f 72 79 29 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 ($directory));.}..$result.=.$thi
a7dc0 73 2d 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 s->getProcess()->execute($cmd,.$
a7de0 6f 75 74 70 75 74 29 20 3d 3d 3d 20 30 3b 0a 0a 0a 20 63 6c 65 61 72 73 74 61 74 63 61 63 68 65 output).===.0;....clearstatcache
a7e00 28 29 3b 0a 0a 69 66 20 28 24 72 65 73 75 6c 74 20 26 26 20 21 66 69 6c 65 5f 65 78 69 73 74 73 ();..if.($result.&&.!file_exists
a7e20 28 24 64 69 72 65 63 74 6f 72 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a ($directory)).{.return.true;.}..
a7e40 72 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 50 68 70 return.$this->removeDirectoryPhp
a7e60 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ($directory);.}............publi
a7e80 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 50 68 70 28 24 64 c.function.removeDirectoryPhp($d
a7ea0 69 72 65 63 74 6f 72 79 29 0a 7b 0a 24 69 74 20 3d 20 6e 65 77 20 52 65 63 75 72 73 69 76 65 44 irectory).{.$it.=.new.RecursiveD
a7ec0 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 2c 20 52 65 63 irectoryIterator($directory,.Rec
a7ee0 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 49 50 5f 44 4f ursiveDirectoryIterator::SKIP_DO
a7f00 54 53 29 3b 0a 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 TS);.$ri.=.new.RecursiveIterator
a7f20 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 65 72 61 74 6f 72 49 Iterator($it,.RecursiveIteratorI
a7f40 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 6f 72 65 61 63 68 20 terator::CHILD_FIRST);..foreach.
a7f60 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 65 2d 3e 69 73 44 69 ($ri.as.$file).{.if.($file->isDi
a7f80 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 2d 3e 67 65 74 50 61 r()).{.$this->rmdir($file->getPa
a7fa0 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 2d 3e 75 6e 6c 69 6e thname());.}.else.{.$this->unlin
a7fc0 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 7d 0a 7d 0a 0a 72 65 k($file->getPathname());.}.}..re
a7fe0 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 6f 72 79 29 3b 0a 7d turn.$this->rmdir($directory);.}
a8000 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 69 72 65 63 74 6f 72 ..public.function.ensureDirector
a8020 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 28 21 69 73 5f 64 69 yExists($directory).{.if.(!is_di
a8040 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 5f 65 78 69 73 74 73 r($directory)).{.if.(file_exists
a8060 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 20 5c 52 75 6e 74 69 ($directory)).{.throw.new.\Runti
a8080 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 20 65 78 69 73 74 73 meException(.$directory.'.exists
a80a0 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 0a 29 3b 0a 7d 0a 69 .and.is.not.a.directory.'.);.}.i
a80c0 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 37 37 2c 20 74 72 75 f.(!@mkdir($directory,.0777,.tru
a80e0 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 6f e)).{.throw.new.\RuntimeExceptio
a8100 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 65 78 69 73 74 20 61 n(.$directory.'.does.not.exist.a
a8120 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 0a 29 3b 0a 7d 0a 7d nd.could.not.be.created.'.);.}.}
a8140 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 75 6e 6c 69 6e .}.........public.function.unlin
a8160 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 6e 6c 69 6e 6b 49 6d k($path).{.if.(!@$this->unlinkIm
a8180 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 69 66 20 28 21 64 65 plementation($path)).{...if.(!de
a81a0 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 fined('PHP_WINDOWS_VERSION_BUILD
a81c0 27 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 24 74 68 69 73 ').||.(usleep(350000).&&.!@$this
a81e0 2d 3e 75 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 29 20 ->unlinkImplementation($path))).
a8200 7b 0a 24 65 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 24 6d 65 {.$error.=.error_get_last();.$me
a8220 73 73 61 67 65 20 3d 20 27 43 6f 75 6c 64 20 6e 6f 74 20 64 65 6c 65 74 65 20 27 2e 24 70 61 74 ssage.=.'Could.not.delete.'.$pat
a8240 68 2e 27 3a 20 27 20 2e 20 40 24 65 72 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 3b 0a 69 66 20 h.':.'...@$error['message'];.if.
a8260 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 4f 4e 5f 42 55 (defined('PHP_WINDOWS_VERSION_BU
a8280 49 4c 44 27 29 29 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 ILD')).{.$message..=."\nThis.can
a82a0 20 62 65 20 64 75 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 .be.due.to.an.antivirus.or.the.W
a82c0 69 6e 64 6f 77 73 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 indows.Search.Indexer.locking.th
a82e0 65 20 66 69 6c 65 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 e.file.while.they.are.analyzed";
a8300 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(
a8320 24 6d 65 73 73 61 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 $message);.}.}..return.true;.}..
a8340 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 6d 64 69 72 28 24 70 61 .......public.function.rmdir($pa
a8360 74 68 29 0a 7b 0a 69 66 20 28 21 40 72 6d 64 69 72 28 24 70 61 74 68 29 29 20 7b 0a 0a 20 69 66 th).{.if.(!@rmdir($path)).{...if
a8380 20 28 21 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 4f 4e 5f .(!defined('PHP_WINDOWS_VERSION_
a83a0 42 55 49 4c 44 27 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 BUILD').||.(usleep(350000).&&.!@
a83c0 72 6d 64 69 72 28 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 rmdir($path))).{.$error.=.error_
a83e0 67 65 74 5f 6c 61 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 get_last();.$message.=.'Could.no
a8400 74 20 64 65 6c 65 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 t.delete.'.$path.':.'...@$error[
a8420 27 6d 65 73 73 61 67 65 27 5d 3b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 'message'];.if.(defined('PHP_WIN
a8440 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 DOWS_VERSION_BUILD')).{.$message
a8460 20 2e 3d 20 22 5c 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 ..=."\nThis.can.be.due.to.an.ant
a8480 69 76 69 72 75 73 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 ivirus.or.the.Windows.Search.Ind
a84a0 65 78 65 72 20 6c 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 exer.locking.the.file.while.they
a84c0 20 61 72 65 20 61 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 .are.analyzed";.}..throw.new.\Ru
a84e0 6e 74 69 6d 65 45 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 ntimeException($message);.}.}..r
a8500 65 74 75 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 eturn.true;.}...........public.f
a8520 75 6e 63 74 69 6f 6e 20 63 6f 70 79 54 68 65 6e 52 65 6d 6f 76 65 28 24 73 6f 75 72 63 65 2c 20 unction.copyThenRemove($source,.
a8540 24 74 61 72 67 65 74 29 0a 7b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 73 6f 75 72 63 65 29 29 $target).{.if.(!is_dir($source))
a8560 20 7b 0a 63 6f 70 79 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 29 3b 0a 24 74 68 69 73 .{.copy($source,.$target);.$this
a8580 2d 3e 75 6e 6c 69 6e 6b 28 24 73 6f 75 72 63 65 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 ->unlink($source);..return;.}..$
a85a0 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
a85c0 74 6f 72 28 24 73 6f 75 72 63 65 2c 20 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 tor($source,.RecursiveDirectoryI
a85e0 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 65 77 20 52 terator::SKIP_DOTS);.$ri.=.new.R
a8600 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 2c 20 52 65 ecursiveIteratorIterator($it,.Re
a8620 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 53 45 4c 46 5f 46 49 cursiveIteratorIterator::SELF_FI
a8640 52 53 54 29 3b 0a 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 RST);.$this->ensureDirectoryExis
a8660 74 73 28 24 74 61 72 67 65 74 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 69 20 61 73 20 24 66 ts($target);..foreach.($ri.as.$f
a8680 69 6c 65 29 20 7b 0a 24 74 61 72 67 65 74 50 61 74 68 20 3d 20 24 74 61 72 67 65 74 20 2e 20 44 ile).{.$targetPath.=.$target...D
a86a0 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 24 72 69 2d 3e 67 65 74 53 75 62 IRECTORY_SEPARATOR...$ri->getSub
a86c0 50 61 74 68 4e 61 6d 65 28 29 3b 0a 69 66 20 28 24 66 69 6c 65 2d 3e 69 73 44 69 72 28 29 29 20 PathName();.if.($file->isDir()).
a86e0 7b 0a 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 {.$this->ensureDirectoryExists($
a8700 74 61 72 67 65 74 50 61 74 68 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 63 6f 70 79 28 24 66 69 6c 65 targetPath);.}.else.{.copy($file
a8720 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 2c 20 24 74 61 72 67 65 74 50 61 74 68 29 3b 0a 7d ->getPathname(),.$targetPath);.}
a8740 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 50 68 70 28 24 73 .}..$this->removeDirectoryPhp($s
a8760 6f 75 72 63 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 61 6d ource);.}..public.function.renam
a8780 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 74 72 75 65 20 3d e($source,.$target).{.if.(true.=
a87a0 3d 3d 20 40 72 65 6e 61 6d 65 28 24 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 29 29 20 7b 0a ==.@rename($source,.$target)).{.
a87c0 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 return;.}..if.(!function_exists(
a87e0 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 63 6f 'proc_open')).{.return.$this->co
a8800 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 29 3b 0a pyThenRemove($source,.$target);.
a8820 7d 0a 0a 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 }..if.(defined('PHP_WINDOWS_VERS
a8840 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 0a 20 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 ION_BUILD')).{...$command.=.spri
a8860 6e 74 66 28 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 ntf('xcopy.%s.%s./E./I./Q./Y',.P
a8880 72 6f 63 65 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 rocessExecutor::escape($source),
a88a0 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 74 .ProcessExecutor::escape($target
a88c0 29 29 3b 0a 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 ));.$result.=.$this->processExec
a88e0 75 74 6f 72 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 utor->execute($command,.$output)
a8900 3b 0a 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 3d 3d ;....clearstatcache();..if.(0.==
a8920 3d 20 24 72 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 =.$result).{.$this->remove($sour
a8940 63 65 29 3b 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 ce);..return;.}.}.else.{.....$co
a8960 6d 6d 61 6e 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 mmand.=.sprintf('mv.%s.%s',.Proc
a8980 65 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 essExecutor::escape($source),.Pr
a89a0 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 29 29 3b ocessExecutor::escape($target));
a89c0 0a 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 .$result.=.$this->processExecuto
a89e0 72 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 r->execute($command,.$output);..
a8a00 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 3d 3d 3d 20 24 ..clearstatcache();..if.(0.===.$
a8a20 72 65 73 75 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 result).{.return;.}.}..return.$t
a8a40 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 20 24 74 61 his->copyThenRemove($source,.$ta
a8a60 72 67 65 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 rget);.}...........public.functi
a8a80 6f 6e 20 66 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 on.findShortestPath($from,.$to,.
a8aa0 24 64 69 72 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 $directories.=.false).{.if.(!$th
a8ac0 69 73 2d 3e 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 is->isAbsolutePath($from).||.!$t
a8ae0 68 69 73 2d 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 his->isAbsolutePath($to)).{.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 73 70 72 69 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 sprintf('$from.(%s).and.$to.(%s)
a8b40 20 6d 75 73 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 .must.be.absolute.paths.',.$from
a8b60 2c 20 24 74 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 ,.$to));.}..$from.=.lcfirst($thi
a8b80 73 2d 3e 6e 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 s->normalizePath($from));.$to.=.
a8ba0 6c 63 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 74 6f lcfirst($this->normalizePath($to
a8bc0 29 29 3b 0a 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 ));..if.($directories).{.$from.=
a8be0 20 72 74 72 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 .rtrim($from,.'/')...'/dummy_fil
a8c00 65 27 3b 0a 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 e';.}..if.(dirname($from).===.di
a8c20 72 6e 61 6d 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 rname($to)).{.return.'./'.basena
a8c40 6d 65 28 24 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 me($to);.}..$commonPath.=.$to;.w
a8c60 68 69 6c 65 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 hile.(strpos($from.'/',.$commonP
a8c80 61 74 68 2e 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 ath.'/').!==.0.&&.'/'.!==.$commo
a8ca0 6e 50 61 74 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 nPath.&&.!preg_match('{^[a-z]:/?
a8cc0 24 7d 69 27 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 $}i',.$commonPath)).{.$commonPat
a8ce0 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),.
a8d00 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(
a8d20 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).||.'/'.===.$
a8d40 63 6f 6d 6d 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 commonPath).{.return.$to;.}..$co
a8d60 6d 6d 6f 6e 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 mmonPath.=.rtrim($commonPath,.'/
a8d80 27 29 20 2e 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 ')...'/';.$sourcePathDepth.=.sub
a8da0 73 74 72 5f 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 str_count(substr($from,.strlen($
a8dc0 63 6f 6d 6d 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 commonPath)),.'/');.$commonPathC
a8de0 6f 64 65 20 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 ode.=.str_repeat('../',.$sourceP
a8e00 61 74 68 44 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 athDepth);..return.($commonPathC
a8e20 6f 64 65 20 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 ode...substr($to,.strlen($common
a8e40 50 61 74 68 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 Path))).?:.'./';.}...........pub
a8e60 6c 69 63 20 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 lic.function.findShortestPathCod
a8e80 65 28 24 66 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 e($from,.$to,.$directories.=.fal
a8ea0 73 65 29 0a 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 se).{.if.(!$this->isAbsolutePath
a8ec0 28 24 66 72 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 ($from).||.!$this->isAbsolutePat
a8ee0 68 28 24 74 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 h($to)).{.throw.new.\InvalidArgu
a8f00 6d 65 6e 74 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 mentException(sprintf('$from.(%s
a8f20 29 20 61 6e 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 ).and.$to.(%s).must.be.absolute.
a8f40 70 61 74 68 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 paths.',.$from,.$to));.}..$from.
a8f60 3d 20 6c 63 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 =.lcfirst($this->normalizePath($
a8f80 66 72 6f 6d 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 from));.$to.=.lcfirst($this->nor
a8fa0 6d 61 6c 69 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 malizePath($to));..if.($from.===
a8fc0 20 24 74 6f 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 .$to).{.return.$directories.?.'_
a8fe0 5f 44 49 52 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 _DIR__'.:.'__FILE__';.}..$common
a9000 50 61 74 68 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 Path.=.$to;.while.(strpos($from.
a9020 27 2f 27 2c 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 '/',.$commonPath.'/').!==.0.&&.'
a9040 2f 27 20 21 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 /'.!==.$commonPath.&&.!preg_matc
a9060 68 28 27 7b 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 h('{^[a-z]:/?$}i',.$commonPath).
a9080 26 26 20 27 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 &&.'.'.!==.$commonPath).{.$commo
a90a0 6e 50 61 74 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 nPath.=.strtr(dirname($commonPat
a90c0 68 29 2c 20 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 h),.'\\',.'/');.}..if.(0.!==.str
a90e0 70 6f 73 28 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 pos($from,.$commonPath).||.'/'.=
a9100 3d 3d 20 24 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 ==.$commonPath.||.'.'.===.$commo
a9120 6e 50 61 74 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 nPath).{.return.var_export($to,.
a9140 74 72 75 65 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 true);.}..$commonPath.=.rtrim($c
a9160 6f 6d 6d 6f 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 ommonPath,.'/')...'/';.if.(strpo
a9180 73 28 24 74 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 s($to,.$from.'/').===.0).{.retur
a91a0 6e 20 27 5f 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 n.'__DIR__...'.var_export(substr
a91c0 28 24 74 6f 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 ($to,.strlen($from)),.true);.}.$
a91e0 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 63 6f 75 6e 74 28 73 sourcePathDepth.=.substr_count(s
a9200 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 6f 6e 50 61 74 68 29 ubstr($from,.strlen($commonPath)
a9220 29 2c 20 27 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 ),.'/').+.$directories;.$commonP
a9240 61 74 68 43 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 athCode.=.str_repeat('dirname(',
a9260 20 24 73 6f 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 .$sourcePathDepth).'__DIR__'.str
a9280 5f 72 65 70 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 _repeat(')',.$sourcePathDepth);.
a92a0 24 72 65 6c 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 $relTarget.=.substr($to,.strlen(
a92c0 24 63 6f 6d 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 $commonPath));..return.$commonPa
a92e0 74 68 43 6f 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 thCode...(strlen($relTarget).?.'
a9300 2e 27 20 2e 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 .'...var_export('/'...$relTarget
a9320 2c 20 74 72 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 ,.true).:.'');.}........public.f
a9340 75 6e 63 74 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 unction.isAbsolutePath($path).{.
a9360 72 65 74 75 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 return.substr($path,.0,.1).===.'
a9380 2f 27 20 7c 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 /'.||.substr($path,.1,.1).===.':
a93a0 27 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 73 69 ';.}..........public.function.si
a93c0 7a 65 28 24 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 ze($path).{.if.(!file_exists($pa
a93e0 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
a9400 6f 6e 28 22 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 on("$path.does.not.exist.");.}.i
a9420 66 20 28 69 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 f.(is_dir($path)).{.return.$this
a9440 2d 3e 64 69 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 ->directorySize($path);.}..retur
a9460 6e 20 66 69 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 n.filesize($path);.}.........pub
a9480 6c 69 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 lic.function.normalizePath($path
a94a0 29 0a 7b 0a 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 ).{.$parts.=.array();.$path.=.st
a94c0 72 74 72 28 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 rtr($path,.'\\',.'/');.$prefix.=
a94e0 20 27 27 3b 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 .'';.$absolute.=.false;..if.(pre
a9500 67 5f 6d 61 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 g_match('{^([0-9a-z]+:(?://(?:[a
a9520 2d 7a 5d 3a 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 -z]:)?)?)}i',.$path,.$match)).{.
a9540 24 70 72 65 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 $prefix.=.$match[1];.$path.=.sub
a9560 73 74 72 28 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 str($path,.strlen($prefix));.}..
a9580 69 66 20 28 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 if.(substr($path,.0,.1).===.'/')
a95a0 20 7b 0a 24 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 .{.$absolute.=.true;.$path.=.sub
a95c0 73 74 72 28 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 str($path,.1);.}..$up.=.false;.f
a95e0 6f 72 65 61 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 oreach.(explode('/',.$path).as.$
a9600 63 68 75 6e 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 chunk).{.if.('..'.===.$chunk.&&.
a9620 28 24 61 62 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 ($absolute.||.$up)).{.array_pop(
a9640 24 70 61 72 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 $parts);.$up.=.!(empty($parts).|
a9660 7c 20 27 2e 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 |.'..'.===.end($parts));.}.elsei
a9680 66 20 28 27 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 f.('.'.!==.$chunk.&&.''.!==.$chu
a96a0 6e 6b 29 20 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 nk).{.$parts[].=.$chunk;.$up.=.'
a96c0 2e 2e 27 20 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 ..'.!==.$chunk;.}.}..return.$pre
a96e0 66 69 78 2e 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 fix.($absolute.?.'/'.:.'').implo
a9700 64 65 28 27 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 de('/',.$parts);.}........public
a9720 20 73 74 61 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 .static.function.isLocalPath($pa
a9740 74 68 29 0a 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 th).{.return.(bool).preg_match('
a9760 7b 5e 28 66 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 {^(file://|/|[a-z]:[\\\\/]|\.\.[
a9780 5c 5c 5c 5c 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 \\\\/]|[a-z0-9_.-]+[\\\\/])}i',.
a97a0 24 70 61 74 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 $path);.}..public.static.functio
a97c0 6e 20 67 65 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 64 n.getPlatformPath($path).{.if.(d
a97e0 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 4f 4e 5f 42 55 49 4c efined('PHP_WINDOWS_VERSION_BUIL
a9800 44 27 29 29 20 7b 0a 24 70 61 74 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 D')).{.$path.=.preg_replace('{^(
a9820 3f 3a 66 69 6c 65 3a 2f 2f 2f 28 5b 61 2d 7a 5d 29 2f 29 7d 69 27 2c 20 27 66 69 6c 65 3a 2f 2f ?:file:///([a-z])/)}i',.'file://
a9840 24 31 3a 2f 27 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 $1:/',.$path);.}..return.preg_re
a9860 70 6c 61 63 65 28 27 7b 5e 66 69 6c 65 3a 2f 2f 7d 69 27 2c 20 27 27 2c 20 24 70 61 74 68 29 3b place('{^file://}i',.'',.$path);
a9880 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 72 65 63 74 6f 72 79 .}..protected.function.directory
a98a0 53 69 7a 65 28 24 64 69 72 65 63 74 6f 72 79 29 0a 7b 0a 24 69 74 20 3d 20 6e 65 77 20 52 65 63 Size($directory).{.$it.=.new.Rec
a98c0 75 72 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 ursiveDirectoryIterator($directo
a98e0 72 79 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 ry,.RecursiveDirectoryIterator::
a9900 53 4b 49 50 5f 44 4f 54 53 29 3b 0a 24 72 69 20 3d 20 6e 65 77 20 52 65 63 75 72 73 69 76 65 49 SKIP_DOTS);.$ri.=.new.RecursiveI
a9920 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
a9940 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 24 eratorIterator::CHILD_FIRST);..$
a9960 73 69 7a 65 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 69 20 61 73 20 24 66 69 6c 65 29 size.=.0;.foreach.($ri.as.$file)
a9980 20 7b 0a 69 66 20 28 24 66 69 6c 65 2d 3e 69 73 46 69 6c 65 28 29 29 20 7b 0a 24 73 69 7a 65 20 .{.if.($file->isFile()).{.$size.
a99a0 2b 3d 20 24 66 69 6c 65 2d 3e 67 65 74 53 69 7a 65 28 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e +=.$file->getSize();.}.}..return
a99c0 20 24 73 69 7a 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 67 65 .$size;.}..protected.function.ge
a99e0 74 50 72 6f 63 65 73 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 72 6f 63 65 73 73 45 tProcess().{.return.new.ProcessE
a9a00 78 65 63 75 74 6f 72 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 xecutor;.}...........private.fun
a9a20 63 74 69 6f 6e 20 75 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 ction.unlinkImplementation($path
a9a40 29 0a 7b 0a 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 ).{.if.(defined('PHP_WINDOWS_VER
a9a60 53 49 4f 4e 5f 42 55 49 4c 44 27 29 20 26 26 20 69 73 5f 64 69 72 28 24 70 61 74 68 29 20 26 26 SION_BUILD').&&.is_dir($path).&&
a9a80 20 69 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 .is_link($path)).{.return.rmdir(
a9aa0 24 70 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 $path);.}..return.unlink($path);
a9ac0 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 6c 61 74 .}.........public.function.relat
a9ae0 69 76 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 iveSymlink($target,.$link).{.$cw
a9b00 64 20 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 d.=.getcwd();..$relativePath.=.$
a9b20 74 68 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 this->findShortestPath($link,.$t
a9b40 61 72 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 arget);.chdir(dirname($link));.$
a9b60 72 65 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 result.=.@symlink($relativePath,
a9b80 20 24 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 .$link);..chdir($cwd);..return.(
a9ba0 62 6f 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 bool).$result;.}.........public.
a9bc0 66 75 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 function.isSymlinkedDirectory($d
a9be0 69 72 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 irectory).{.if.(!is_dir($directo
a9c00 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 72 65 73 6f 6c 76 65 ry)).{.return.false;.}..$resolve
a9c20 64 20 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 d.=.$this->resolveSymlinkedDirec
a9c40 74 6f 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 torySymlink($directory);..return
a9c60 20 69 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 .is_link($resolved);.}.......pri
a9c80 76 61 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 vate.function.unlinkSymlinkedDir
a9ca0 65 63 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 ectory($directory).{.$resolved.=
a9cc0 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 72 .$this->resolveSymlinkedDirector
a9ce0 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 24 74 ySymlink($directory);..return.$t
a9d00 68 69 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 his->unlink($resolved);.}.......
a9d20 0a 0a 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 ..private.function.resolveSymlin
a9d40 6b 65 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 kedDirectorySymlink($pathname).{
a9d60 0a 69 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 .if.(!is_dir($pathname)).{.retur
a9d80 6e 20 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 n.$pathname;.}..$resolved.=.rtri
a9da0 6d 28 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 m($pathname,.'/');..if.(!strlen(
a9dc0 24 72 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 $resolved)).{.return.$pathname;.
a9de0 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 6f 6c 76 65 64 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a }..return.$resolved;.}.}.<?php..
a9e00 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 69 ..........namespace.Composer\Uti
a9e20 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 73 65 20 43 6f 6d l;..use.Composer\Config;.use.Com
a9e40 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 63 6c 61 73 73 20 poser\IO\IOInterface;.....class.
a9e60 47 69 74 0a 7b 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 64 Git.{..protected.$io;..protected
a9e80 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 0a .$config;..protected.$process;..
a9ea0 70 72 6f 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 protected.$filesystem;..public.f
a9ec0 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.
a9ee0 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 63 $io,.Config.$config,.ProcessExec
a9f00 75 74 6f 72 20 24 70 72 6f 63 65 73 73 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 73 29 0a 7b utor.$process,.Filesystem.$fs).{
a9f20 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 69 67 20 .$this->io.=.$io;.$this->config.
a9f40 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 70 72 6f =.$config;.$this->process.=.$pro
a9f60 63 65 73 73 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 3b 0a 7d cess;.$this->filesystem.=.$fs;.}
a9f80 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 43 6f 6d 6d 61 6e 64 28 24 63 6f ..public.function.runCommand($co
a9fa0 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 24 75 72 6c 2c 20 24 63 77 64 2c 20 24 69 6e 69 74 mmandCallable,.$url,.$cwd,.$init
a9fc0 69 61 6c 43 6c 6f 6e 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 24 69 6e 69 74 69 61 6c ialClone.=.false).{.if.($initial
a9fe0 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 20 3d Clone).{.$origCwd.=.$cwd;.$cwd.=
aa000 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 68 3a .null;.}..if.(preg_match('{^ssh:
aa020 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 29 20 //[^@]+@[^:]+:[^0-9]+}',.$url)).
aa040 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
aa060 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 20 69 ption('The.source.URL.'.$url.'.i
aa080 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 65 20 s.invalid,.ssh.URLs.should.have.
aa0a0 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 2e 27 a.port.number.after.":".'."\n".'
aa0c0 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 61 74 Use.ssh://git@example.com:22/pat
aa0e0 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 20 69 h.or.just.git@example.com:path.i
aa100 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 20 70 f.you.do.not.want.to.provide.a.p
aa120 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 69 66 assword.or.custom.port.');.}..if
aa140 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 72 6f .(!$initialClone).{...$this->pro
aa160 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 20 24 cess->execute('git.remote.-v',.$
aa180 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 27 7b output,.$cwd);.if.(preg_match('{
aa1a0 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 2f 2f ^(?:composer|origin)\s+https?://
aa1c0 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 2c 20 (.+):(.+)@([^/]+)}im',.$output,.
aa1e0 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 6e 74 $match)).{.$this->io->setAuthent
aa200 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 6d 61 ication($match[3],.urldecode($ma
aa220 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 3b 0a tch[1]),.urldecode($match[2]));.
aa240 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 67 2d }.}..$protocols.=.$this->config-
aa260 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 21 69 >get('github-protocols');.if.(!i
aa280 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 65 77 s_array($protocols)).{.throw.new
aa2a0 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 75 65 .\RuntimeException('Config.value
aa2c0 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 20 61 ."github-protocols".must.be.an.a
aa2e0 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 29 29 rray,.got.'.gettype($protocols))
aa300 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 3f 3a 68 74 74 70 ;.}....if.(preg_match('{^(?:http
aa320 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 69 s?|git)://'.self::getGitHubDomai
aa340 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 2c nsRegex($this->config).'/(.*)}',
aa360 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 72 .$url,.$match)).{.$messages.=.ar
aa380 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 70 ray();.foreach.($protocols.as.$p
aa3a0 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 63 rotocol).{.if.('ssh'.===.$protoc
aa3c0 6f 6c 29 20 7b 0a 24 75 72 6c 20 3d 20 22 67 69 74 40 22 20 2e 20 24 6d 61 74 63 68 5b 31 5d 20 ol).{.$url.=."git@"...$match[1].
aa3e0 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 7b 0a 24 75 72 6c ..":"...$match[2];.}.else.{.$url
aa400 20 3d 20 24 70 72 6f 74 6f 63 6f 6c 20 2e 22 3a 2f 2f 22 20 2e 20 24 6d 61 74 63 68 5b 31 5d 20 .=.$protocol.."://"...$match[1].
aa420 2e 20 22 2f 22 20 2e 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 .."/"...$match[2];.}..if.(0.===.
aa440 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 63 61 6c 6c 5f 75 73 65 $this->process->execute(call_use
aa460 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 75 72 6c 29 2c 20 r_func($commandCallable,.$url),.
aa480 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 2c 20 24 63 77 64 29 29 20 7b 0a 72 65 74 75 72 6e 3b $ignoredOutput,.$cwd)).{.return;
aa4a0 0a 7d 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 27 2d 20 27 20 2e 20 24 75 72 6c 20 2e 20 22 .}.$messages[].=.'-.'...$url..."
aa4c0 5c 6e 22 20 2e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 23 5e 23 6d 27 2c 20 27 20 20 27 2c \n"...preg_replace('#^#m',.'..',
aa4e0 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 28 .$this->process->getErrorOutput(
aa500 29 29 3b 0a 69 66 20 28 24 69 6e 69 74 69 61 6c 43 6c 6f 6e 65 29 20 7b 0a 24 74 68 69 73 2d 3e ));.if.($initialClone).{.$this->
aa520 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 6f 72 69 filesystem->removeDirectory($ori
aa540 67 43 77 64 29 3b 0a 7d 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 74 68 72 6f 77 45 78 63 65 70 74 gCwd);.}.}....$this->throwExcept
aa560 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 63 6c 6f 6e 65 20 27 20 2e 20 73 65 6c 66 3a 3a 73 ion('Failed.to.clone.'...self::s
aa580 61 6e 69 74 69 7a 65 55 72 6c 28 24 75 72 6c 29 20 2e 27 20 76 69 61 20 27 2e 69 6d 70 6c 6f 64 anitizeUrl($url)..'.via.'.implod
aa5a0 65 28 27 2c 20 27 2c 20 24 70 72 6f 74 6f 63 6f 6c 73 29 2e 27 20 70 72 6f 74 6f 63 6f 6c 73 2c e(',.',.$protocols).'.protocols,
aa5c0 20 61 62 6f 72 74 69 6e 67 2e 27 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 69 6d 70 6c 6f 64 65 28 22 .aborting.'..."\n\n"...implode("
aa5e0 5c 6e 22 2c 20 24 6d 65 73 73 61 67 65 73 29 2c 20 24 75 72 6c 29 3b 0a 7d 0a 0a 0a 20 24 62 79 \n",.$messages),.$url);.}....$by
aa600 70 61 73 73 53 73 68 46 6f 72 47 69 74 48 75 62 20 3d 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b passSshForGitHub.=.preg_match('{
aa620 5e 67 69 74 40 27 2e 73 65 6c 66 3a 3a 67 65 74 47 69 74 48 75 62 44 6f 6d 61 69 6e 73 52 65 67 ^git@'.self::getGitHubDomainsReg
aa640 65 78 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 2e 27 3a 28 2e 2b 3f 29 5c 2e 67 69 74 24 7d ex($this->config).':(.+?)\.git$}
aa660 69 27 2c 20 24 75 72 6c 29 20 26 26 20 21 69 6e 5f 61 72 72 61 79 28 27 73 73 68 27 2c 20 24 70 i',.$url).&&.!in_array('ssh',.$p
aa680 72 6f 74 6f 63 6f 6c 73 2c 20 74 72 75 65 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 63 61 6c rotocols,.true);..$command.=.cal
aa6a0 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 6c 65 2c 20 24 75 l_user_func($commandCallable,.$u
aa6c0 72 6c 29 3b 0a 0a 69 66 20 28 24 62 79 70 61 73 73 53 73 68 46 6f 72 47 69 74 48 75 62 20 7c 7c rl);..if.($bypassSshForGitHub.||
aa6e0 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 65 28 24 .0.!==.$this->process->execute($
aa700 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 29 20 command,.$ignoredOutput,.$cwd)).
aa720 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 65 6c 66 {...if.(preg_match('{^git@'.self
aa740 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
aa760 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 2c 20 24 onfig).':(.+?)\.git$}i',.$url,.$
aa780 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 41 75 74 match)).{.if.(!$this->io->hasAut
aa7a0 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 74 48 75 hentication($match[1])).{.$gitHu
aa7c0 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 20 24 74 bUtil.=.new.GitHub($this->io,.$t
aa7e0 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 0a 24 6d his->config,.$this->process);.$m
aa800 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 67 20 61 essage.=.'Cloning.failed.using.a
aa820 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 20 65 6e n.ssh.key.for.authentication,.en
aa840 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 6f 20 61 ter.your.GitHub.credentials.to.a
aa860 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 67 69 74 ccess.private.repos';..if.(!$git
aa880 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 68 5b 31 HubUtil->authorizeOAuth($match[1
aa8a0 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 65 28 29 ]).&&.$this->io->isInteractive()
aa8c0 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 74 68 49 ).{.$gitHubUtil->authorizeOAuthI
aa8e0 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 61 67 65 nteractively($match[1],.$message
aa900 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 68 65 6e );.}.}..if.($this->io->hasAuthen
aa920 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 3d 20 24 tication($match[1])).{.$auth.=.$
aa940 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 6d 61 74 this->io->getAuthentication($mat
aa960 63 68 5b 31 5d 29 3b 0a 24 75 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 27 2e 72 61 77 75 72 6c ch[1]);.$url.=.'https://'.rawurl
aa980 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 20 2e 20 27 3a 27 20 encode($auth['username'])...':'.
aa9a0 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 73 77 6f 72 64 27 5d ..rawurlencode($auth['password']
aa9c0 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 74 63 68 5b 32 5d 2e )...'@'.$match[1].'/'.$match[2].
aa9e0 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 73 65 72 5f 66 75 6e '.git';.$command.=.call_user_fun
aaa00 63 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 69 66 20 28 30 c($commandCallable,.$url);.if.(0
aaa20 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 63 6f .===.$this->process->execute($co
aaa40 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 29 20 7b 0a mmand,.$ignoredOutput,.$cwd)).{.
aaa60 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 69 73 41 return;.}.}.}.elseif.($this->isA
aaa80 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 24 6d 61 74 63 uthenticationFailure($url,.$matc
aaaa0 68 29 29 20 7b 20 0a 20 69 66 20 28 73 74 72 70 6f 73 28 24 6d 61 74 63 68 5b 32 5d 2c 20 27 40 h)).{...if.(strpos($match[2],.'@
aaac0 27 29 29 20 7b 0a 6c 69 73 74 28 24 61 75 74 68 50 61 72 74 73 2c 20 24 6d 61 74 63 68 5b 32 5d ')).{.list($authParts,.$match[2]
aaae0 29 20 3d 20 65 78 70 6c 6f 64 65 28 27 40 27 2c 20 24 6d 61 74 63 68 5b 32 5d 2c 20 32 29 3b 0a ).=.explode('@',.$match[2],.2);.
aab00 7d 0a 0a 24 73 74 6f 72 65 41 75 74 68 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 24 74 68 69 73 }..$storeAuth.=.false;.if.($this
aab20 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 6d 61 74 63 68 5b 32 ->io->hasAuthentication($match[2
aab40 5d 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 41 75 74 68 ])).{.$auth.=.$this->io->getAuth
aab60 65 6e 74 69 63 61 74 69 6f 6e 28 24 6d 61 74 63 68 5b 32 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 20 entication($match[2]);.}.elseif.
aab80 28 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 29 29 20 7b 0a 24 ($this->io->isInteractive()).{.$
aaba0 64 65 66 61 75 6c 74 55 73 65 72 6e 61 6d 65 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 69 73 73 65 defaultUsername.=.null;.if.(isse
aabc0 74 28 24 61 75 74 68 50 61 72 74 73 29 20 26 26 20 24 61 75 74 68 50 61 72 74 73 29 20 7b 0a 69 t($authParts).&&.$authParts).{.i
aabe0 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 61 75 74 68 50 61 72 74 73 2c 20 f.(false.!==.strpos($authParts,.
aac00 27 3a 27 29 29 20 7b 0a 6c 69 73 74 28 24 64 65 66 61 75 6c 74 55 73 65 72 6e 61 6d 65 2c 20 29 ':')).{.list($defaultUsername,.)
aac20 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 61 75 74 68 50 61 72 74 73 2c 20 32 29 3b 0a .=.explode(':',.$authParts,.2);.
aac40 7d 20 65 6c 73 65 20 7b 0a 24 64 65 66 61 75 6c 74 55 73 65 72 6e 61 6d 65 20 3d 20 24 61 75 74 }.else.{.$defaultUsername.=.$aut
aac60 68 50 61 72 74 73 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 hParts;.}.}..$this->io->writeErr
aac80 6f 72 28 27 20 20 20 20 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 20 72 65 71 75 69 72 65 64 20 or('....Authentication.required.
aaca0 28 3c 69 6e 66 6f 3e 27 2e 70 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 50 48 50 5f 55 52 4c (<info>'.parse_url($url,.PHP_URL
aacc0 5f 48 4f 53 54 29 2e 27 3c 2f 69 6e 66 6f 3e 29 3a 27 29 3b 0a 24 61 75 74 68 20 3d 20 61 72 72 _HOST).'</info>):');.$auth.=.arr
aace0 61 79 28 0a 27 75 73 65 72 6e 61 6d 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b ay(.'username'.=>.$this->io->ask
aad00 28 27 20 20 20 20 20 20 55 73 65 72 6e 61 6d 65 3a 20 27 2c 20 24 64 65 66 61 75 6c 74 55 73 65 ('......Username:.',.$defaultUse
aad20 72 6e 61 6d 65 29 2c 0a 27 70 61 73 73 77 6f 72 64 27 20 3d 3e 20 24 74 68 69 73 2d 3e 69 6f 2d rname),.'password'.=>.$this->io-
aad40 3e 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 27 20 20 20 20 20 20 50 61 73 73 77 6f 72 >askAndHideAnswer('......Passwor
aad60 64 3a 20 27 29 2c 0a 29 3b 0a 24 73 74 6f 72 65 41 75 74 68 20 3d 20 24 74 68 69 73 2d 3e 63 6f d:.'),.);.$storeAuth.=.$this->co
aad80 6e 66 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 69 66 20 nfig->get('store-auths');.}..if.
aada0 28 24 61 75 74 68 29 20 7b 0a 24 75 72 6c 20 3d 20 24 6d 61 74 63 68 5b 31 5d 2e 72 61 77 75 72 ($auth).{.$url.=.$match[1].rawur
aadc0 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 2e 27 3a 27 2e 72 lencode($auth['username']).':'.r
aade0 61 77 75 72 6c 65 6e 63 6f 64 65 28 24 61 75 74 68 5b 27 70 61 73 73 77 6f 72 64 27 5d 29 2e 27 awurlencode($auth['password']).'
aae00 40 27 2e 24 6d 61 74 63 68 5b 32 5d 2e 24 6d 61 74 63 68 5b 33 5d 3b 0a 0a 24 63 6f 6d 6d 61 6e @'.$match[2].$match[3];..$comman
aae20 64 20 3d 20 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 d.=.call_user_func($commandCalla
aae40 62 6c 65 2c 20 24 75 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 ble,.$url);.if.(0.===.$this->pro
aae60 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 64 cess->execute($command,.$ignored
aae80 4f 75 74 70 75 74 2c 20 24 63 77 64 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 73 65 74 41 Output,.$cwd)).{.$this->io->setA
aaea0 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 28 24 6d 61 74 63 68 5b 32 5d 2c 20 24 61 75 74 68 5b 27 uthentication($match[2],.$auth['
aaec0 75 73 65 72 6e 61 6d 65 27 5d 2c 20 24 61 75 74 68 5b 27 70 61 73 73 77 6f 72 64 27 5d 29 3b 0a username'],.$auth['password']);.
aaee0 24 61 75 74 68 48 65 6c 70 65 72 20 3d 20 6e 65 77 20 41 75 74 68 48 65 6c 70 65 72 28 24 74 68 $authHelper.=.new.AuthHelper($th
aaf00 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 24 61 75 74 68 48 65 6c is->io,.$this->config);.$authHel
aaf20 70 65 72 2d 3e 73 74 6f 72 65 41 75 74 68 28 24 6d 61 74 63 68 5b 32 5d 2c 20 24 73 74 6f 72 65 per->storeAuth($match[2],.$store
aaf40 41 75 74 68 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 69 6e 69 74 Auth);..return;.}.}.}..if.($init
aaf60 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 3e 72 ialClone).{.$this->filesystem->r
aaf80 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 24 74 68 69 emoveDirectory($origCwd);.}.$thi
aafa0 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 20 74 6f 20 65 78 65 s->throwException('Failed.to.exe
aafc0 63 75 74 65 20 27 20 2e 20 73 65 6c 66 3a 3a 73 61 6e 69 74 69 7a 65 55 72 6c 28 24 63 6f 6d 6d cute.'...self::sanitizeUrl($comm
aafe0 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 3e and)..."\n\n"...$this->process->
ab000 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c 20 24 75 72 6c 29 3b 0a 7d 0a 7d 0a 0a 70 72 getErrorOutput(),.$url);.}.}..pr
ab020 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 46 ivate.function.isAuthenticationF
ab040 61 69 6c 75 72 65 28 24 75 72 6c 2c 20 26 24 6d 61 74 63 68 29 0a 7b 0a 69 66 20 28 21 70 72 65 ailure($url,.&$match).{.if.(!pre
ab060 67 5f 6d 61 74 63 68 28 27 7b 28 68 74 74 70 73 3f 3a 2f 2f 29 28 5b 5e 2f 5d 2b 29 28 2e 2a 29 g_match('{(https?://)([^/]+)(.*)
ab080 24 7d 69 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 $}i',.$url,.$match)).{.return.fa
ab0a0 6c 73 65 3b 0a 7d 0a 0a 24 61 75 74 68 46 61 69 6c 75 72 65 73 20 3d 20 61 72 72 61 79 28 27 66 lse;.}..$authFailures.=.array('f
ab0c0 61 74 61 6c 3a 20 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 20 66 61 69 6c 65 64 27 2c 20 27 72 atal:.Authentication.failed',.'r
ab0e0 65 6d 6f 74 65 20 65 72 72 6f 72 3a 20 49 6e 76 61 6c 69 64 20 75 73 65 72 6e 61 6d 65 20 6f 72 emote.error:.Invalid.username.or
ab100 20 70 61 73 73 77 6f 72 64 2e 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 68 46 61 69 6c .password.');.foreach.($authFail
ab120 75 72 65 73 20 61 73 20 24 61 75 74 68 46 61 69 6c 75 72 65 29 20 7b 0a 69 66 20 28 73 74 72 70 ures.as.$authFailure).{.if.(strp
ab140 6f 73 28 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 os($this->process->getErrorOutpu
ab160 74 28 29 2c 20 24 61 75 74 68 46 61 69 6c 75 72 65 29 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a t(),.$authFailure).!==.false).{.
ab180 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 6c 73 65 3b 0a return.true;.}.}..return.false;.
ab1a0 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 6c 65 61 6e 45 }..public.static.function.cleanE
ab1c0 6e 76 28 29 0a 7b 0a 69 66 20 28 69 6e 69 5f 67 65 74 28 27 73 61 66 65 5f 6d 6f 64 65 27 29 20 nv().{.if.(ini_get('safe_mode').
ab1e0 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 69 6e 69 5f 67 65 74 28 27 73 61 66 &&.false.===.strpos(ini_get('saf
ab200 65 5f 6d 6f 64 65 5f 61 6c 6c 6f 77 65 64 5f 65 6e 76 5f 76 61 72 73 27 29 2c 20 27 47 49 54 5f e_mode_allowed_env_vars'),.'GIT_
ab220 41 53 4b 50 41 53 53 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 ASKPASS')).{.throw.new.\RuntimeE
ab240 78 63 65 70 74 69 6f 6e 28 27 73 61 66 65 5f 6d 6f 64 65 20 69 73 20 65 6e 61 62 6c 65 64 20 61 xception('safe_mode.is.enabled.a
ab260 6e 64 20 73 61 66 65 5f 6d 6f 64 65 5f 61 6c 6c 6f 77 65 64 5f 65 6e 76 5f 76 61 72 73 20 64 6f nd.safe_mode_allowed_env_vars.do
ab280 65 73 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 47 49 54 5f 41 53 4b 50 41 53 53 2c 20 63 61 6e 20 es.not.contain.GIT_ASKPASS,.can.
ab2a0 6e 6f 74 20 73 65 74 20 65 6e 76 20 76 61 72 2e 20 59 6f 75 20 63 61 6e 20 64 69 73 61 62 6c 65 not.set.env.var..You.can.disable
ab2c0 20 73 61 66 65 5f 6d 6f 64 65 20 77 69 74 68 20 22 2d 64 73 61 66 65 5f 6d 6f 64 65 3d 30 22 20 .safe_mode.with."-dsafe_mode=0".
ab2e0 77 68 65 6e 20 72 75 6e 6e 69 6e 67 20 63 6f 6d 70 6f 73 65 72 27 29 3b 0a 7d 0a 0a 0a 20 69 66 when.running.composer');.}....if
ab300 20 28 67 65 74 65 6e 76 28 27 47 49 54 5f 41 53 4b 50 41 53 53 27 29 20 21 3d 3d 20 27 65 63 68 .(getenv('GIT_ASKPASS').!==.'ech
ab320 6f 27 29 20 7b 0a 70 75 74 65 6e 76 28 27 47 49 54 5f 41 53 4b 50 41 53 53 3d 65 63 68 6f 27 29 o').{.putenv('GIT_ASKPASS=echo')
ab340 3b 0a 75 6e 73 65 74 28 24 5f 53 45 52 56 45 52 5b 27 47 49 54 5f 41 53 4b 50 41 53 53 27 5d 29 ;.unset($_SERVER['GIT_ASKPASS'])
ab360 3b 0a 7d 0a 0a 0a 20 69 66 20 28 67 65 74 65 6e 76 28 27 47 49 54 5f 44 49 52 27 29 29 20 7b 0a ;.}....if.(getenv('GIT_DIR')).{.
ab380 70 75 74 65 6e 76 28 27 47 49 54 5f 44 49 52 27 29 3b 0a 75 6e 73 65 74 28 24 5f 53 45 52 56 45 putenv('GIT_DIR');.unset($_SERVE
ab3a0 52 5b 27 47 49 54 5f 44 49 52 27 5d 29 3b 0a 7d 0a 69 66 20 28 67 65 74 65 6e 76 28 27 47 49 54 R['GIT_DIR']);.}.if.(getenv('GIT
ab3c0 5f 57 4f 52 4b 5f 54 52 45 45 27 29 29 20 7b 0a 70 75 74 65 6e 76 28 27 47 49 54 5f 57 4f 52 4b _WORK_TREE')).{.putenv('GIT_WORK
ab3e0 5f 54 52 45 45 27 29 3b 0a 75 6e 73 65 74 28 24 5f 53 45 52 56 45 52 5b 27 47 49 54 5f 57 4f 52 _TREE');.unset($_SERVER['GIT_WOR
ab400 4b 5f 54 52 45 45 27 5d 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 67 65 74 65 6e 76 28 27 4c 41 4e 47 K_TREE']);.}....if.(getenv('LANG
ab420 55 41 47 45 27 29 20 21 3d 3d 20 27 43 27 29 20 7b 0a 70 75 74 65 6e 76 28 27 4c 41 4e 47 55 41 UAGE').!==.'C').{.putenv('LANGUA
ab440 47 45 3d 43 27 29 3b 0a 7d 0a 0a 0a 20 70 75 74 65 6e 76 28 22 44 59 4c 44 5f 4c 49 42 52 41 52 GE=C');.}....putenv("DYLD_LIBRAR
ab460 59 5f 50 41 54 48 22 29 3b 0a 75 6e 73 65 74 28 24 5f 53 45 52 56 45 52 5b 27 44 59 4c 44 5f 4c Y_PATH");.unset($_SERVER['DYLD_L
ab480 49 42 52 41 52 59 5f 50 41 54 48 27 5d 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 IBRARY_PATH']);.}..public.static
ab4a0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 47 69 74 48 75 62 44 6f 6d 61 69 6e 73 52 65 67 65 78 28 .function.getGitHubDomainsRegex(
ab4c0 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 72 65 74 75 72 6e 20 27 28 27 2e 69 6d 70 Config.$config).{.return.'('.imp
ab4e0 6c 6f 64 65 28 27 7c 27 2c 20 61 72 72 61 79 5f 6d 61 70 28 27 70 72 65 67 5f 71 75 6f 74 65 27 lode('|',.array_map('preg_quote'
ab500 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 68 75 62 2d 64 6f 6d 61 69 6e 73 27 29 ,.$config->get('github-domains')
ab520 29 29 2e 27 29 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 )).')';.}..public.static.functio
ab540 6e 20 73 61 6e 69 74 69 7a 65 55 72 6c 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e n.sanitizeUrl($message).{.return
ab560 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 3a 2f 2f 28 5b 5e 40 5d 2b 3f 29 3a 2e 2b 3f 40 .preg_replace('{://([^@]+?):.+?@
ab580 7d 27 2c 20 27 3a 2f 2f 24 31 3a 2a 2a 2a 40 27 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a }',.'://$1:***@',.$message);.}..
ab5a0 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 74 68 72 6f 77 45 78 63 65 70 74 69 6f 6e 28 private.function.throwException(
ab5c0 24 6d 65 73 73 61 67 65 2c 20 24 75 72 6c 29 0a 7b 0a 0a 20 63 6c 65 61 72 73 74 61 74 63 61 63 $message,.$url).{...clearstatcac
ab5e0 68 65 28 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 65 73 73 2d he();..if.(0.!==.$this->process-
ab600 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 2d 2d 76 65 72 73 69 6f 6e 27 2c 20 24 69 67 6e 6f 72 >execute('git.--version',.$ignor
ab620 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 74 69 6d 65 45 edOutput)).{.throw.new.\RuntimeE
ab640 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 27 2e 73 65 6c 66 xception('Failed.to.clone.'.self
ab660 3a 3a 73 61 6e 69 74 69 7a 65 55 72 6c 28 24 75 72 6c 29 2e 27 2c 20 67 69 74 20 77 61 73 20 6e ::sanitizeUrl($url).',.git.was.n
ab680 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 20 69 6e 73 74 61 ot.found,.check.that.it.is.insta
ab6a0 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 27 20 2e 20 22 5c lled.and.in.your.PATH.env.'..."\
ab6c0 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
ab6e0 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 6e 74 69 6d 65 45 utput());.}..throw.new.\RuntimeE
ab700 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a xception($message);.}.}.<?php...
ab720 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 69 6c .........namespace.Composer\Util
ab740 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 6f 6d ;..use.Composer\Factory;.use.Com
ab760 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
ab780 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 64 er\Config;.use.Composer\Download
ab7a0 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 61 73 73 er\TransportException;.....class
ab7c0 20 47 69 74 48 75 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 .GitHub.{.protected.$io;.protect
ab7e0 65 64 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 ed.$config;.protected.$process;.
ab800 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 0a protected.$remoteFilesystem;....
ab820 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
ab840 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
ab860 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 20 3d 20 6e 75 g,.ProcessExecutor.$process.=.nu
ab880 6c 6c 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 ll,.RemoteFilesystem.$remoteFile
ab8a0 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 6f system.=.null).{.$this->io.=.$io
ab8c0 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
ab8e0 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
ab900 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 essExecutor;.$this->remoteFilesy
ab920 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
ab940 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
ab960 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 70 75 62 6c 69 63 s->io,.$config);.}........public
ab980 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 6e .function.authorizeOAuth($origin
ab9a0 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 2c Url).{.if.(!in_array($originUrl,
ab9c0 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
ab9e0 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 0a 20 69 66 20 ins'))).{.return.false;.}....if.
aba00 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 27 (0.===.$this->process->execute('
aba20 67 69 74 20 63 6f 6e 66 69 67 20 67 69 74 68 75 62 2e 61 63 63 65 73 73 74 6f 6b 65 6e 27 2c 20 git.config.github.accesstoken',.
aba40 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 74 41 75 74 68 65 6e $output)).{.$this->io->setAuthen
aba60 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 28 24 6f 75 74 70 75 tication($originUrl,.trim($outpu
aba80 74 29 2c 20 27 78 2d 6f 61 75 74 68 2d 62 61 73 69 63 27 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 t),.'x-oauth-basic');..return.tr
abaa0 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;.}..........
abac0 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 68 49 .public.function.authorizeOAuthI
abae0 6e 74 65 72 61 63 74 69 76 65 6c 79 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 6d 65 73 73 61 67 nteractively($originUrl,.$messag
abb00 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 74 68 69 e.=.null).{.if.($message).{.$thi
abb20 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a s->io->writeError($message);.}..
abb40 24 6e 6f 74 65 20 3d 20 27 43 6f 6d 70 6f 73 65 72 27 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 $note.=.'Composer';.if.($this->c
abb60 6f 6e 66 69 67 2d 3e 67 65 74 28 27 67 69 74 68 75 62 2d 65 78 70 6f 73 65 2d 68 6f 73 74 6e 61 onfig->get('github-expose-hostna
abb80 6d 65 27 29 20 3d 3d 3d 20 74 72 75 65 20 26 26 20 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 me').===.true.&&.0.===.$this->pr
abba0 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 68 6f 73 74 6e 61 6d 65 27 2c 20 24 6f 75 74 70 ocess->execute('hostname',.$outp
abbc0 75 74 29 29 20 7b 0a 24 6e 6f 74 65 20 2e 3d 20 27 20 6f 6e 20 27 20 2e 20 74 72 69 6d 28 24 6f ut)).{.$note..=.'.on.'...trim($o
abbe0 75 74 70 75 74 29 3b 0a 7d 0a 24 6e 6f 74 65 20 2e 3d 20 27 20 27 20 2e 20 64 61 74 65 28 27 59 utput);.}.$note..=.'.'...date('Y
abc00 2d 6d 2d 64 20 48 69 27 29 3b 0a 0a 24 75 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 27 2e 24 6f -m-d.Hi');..$url.=.'https://'.$o
abc20 72 69 67 69 6e 55 72 6c 2e 27 2f 73 65 74 74 69 6e 67 73 2f 74 6f 6b 65 6e 73 2f 6e 65 77 3f 73 riginUrl.'/settings/tokens/new?s
abc40 63 6f 70 65 73 3d 72 65 70 6f 26 64 65 73 63 72 69 70 74 69 6f 6e 3d 27 20 2e 20 73 74 72 5f 72 copes=repo&description='...str_r
abc60 65 70 6c 61 63 65 28 27 25 32 30 27 2c 20 27 2b 27 2c 20 72 61 77 75 72 6c 65 6e 63 6f 64 65 28 eplace('%20',.'+',.rawurlencode(
abc80 24 6e 6f 74 65 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 73 $note));.$this->io->writeError(s
abca0 70 72 69 6e 74 66 28 27 48 65 61 64 20 74 6f 20 25 73 27 2c 20 24 75 72 6c 29 29 3b 0a 24 74 68 printf('Head.to.%s',.$url));.$th
abcc0 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 74 6f 20 72 is->io->writeError(sprintf('to.r
abce0 65 74 72 69 65 76 65 20 61 20 74 6f 6b 65 6e 2e 20 49 74 20 77 69 6c 6c 20 62 65 20 73 74 6f 72 etrieve.a.token..It.will.be.stor
abd00 65 64 20 69 6e 20 22 25 73 22 20 66 6f 72 20 66 75 74 75 72 65 20 75 73 65 20 62 79 20 43 6f 6d ed.in."%s".for.future.use.by.Com
abd20 70 6f 73 65 72 2e 27 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 41 75 74 68 43 poser.',.$this->config->getAuthC
abd40 6f 6e 66 69 67 53 6f 75 72 63 65 28 29 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 0a 24 74 6f onfigSource()->getName()));..$to
abd60 6b 65 6e 20 3d 20 74 72 69 6d 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 41 6e 64 48 69 64 65 ken.=.trim($this->io->askAndHide
abd80 41 6e 73 77 65 72 28 27 54 6f 6b 65 6e 20 28 68 69 64 64 65 6e 29 3a 20 27 29 29 3b 0a 0a 69 66 Answer('Token.(hidden):.'));..if
abda0 20 28 21 24 74 6f 6b 65 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 .(!$token).{.$this->io->writeErr
abdc0 6f 72 28 27 3c 77 61 72 6e 69 6e 67 3e 4e 6f 20 74 6f 6b 65 6e 20 67 69 76 65 6e 2c 20 61 62 6f or('<warning>No.token.given,.abo
abde0 72 74 69 6e 67 2e 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 rting.</warning>');.$this->io->w
abe00 72 69 74 65 45 72 72 6f 72 28 27 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 61 64 64 20 69 74 20 6d riteError('You.can.also.add.it.m
abe20 61 6e 75 61 6c 6c 79 20 6c 61 74 65 72 20 62 79 20 75 73 69 6e 67 20 22 63 6f 6d 70 6f 73 65 72 anually.later.by.using."composer
abe40 20 63 6f 6e 66 69 67 20 67 69 74 68 75 62 2d 6f 61 75 74 68 2e 67 69 74 68 75 62 2e 63 6f 6d 20 .config.github-oauth.github.com.
abe60 3c 74 6f 6b 65 6e 3e 22 27 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 74 <token>"');..return.false;.}..$t
abe80 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 67 his->io->setAuthentication($orig
abea0 69 6e 55 72 6c 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 inUrl,.$token,.'x-oauth-basic');
abec0 0a 0a 74 72 79 20 7b 0a 24 61 70 69 55 72 6c 20 3d 20 28 27 67 69 74 68 75 62 2e 63 6f 6d 27 20 ..try.{.$apiUrl.=.('github.com'.
abee0 3d 3d 3d 20 24 6f 72 69 67 69 6e 55 72 6c 29 20 3f 20 27 61 70 69 2e 67 69 74 68 75 62 2e 63 6f ===.$originUrl).?.'api.github.co
abf00 6d 27 20 3a 20 24 6f 72 69 67 69 6e 55 72 6c 20 2e 20 27 2f 61 70 69 2f 76 33 27 3b 0a 0a 24 74 m'.:.$originUrl...'/api/v3';..$t
abf20 68 69 73 2d 3e 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 his->remoteFilesystem->getConten
abf40 74 73 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 27 68 74 74 70 73 3a 2f 2f 27 2e 20 24 61 70 69 55 ts($originUrl,.'https://'..$apiU
abf60 72 6c 20 2e 20 27 2f 72 61 74 65 5f 6c 69 6d 69 74 27 2c 20 66 61 6c 73 65 2c 20 61 72 72 61 79 rl...'/rate_limit',.false,.array
abf80 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 61 6c 73 65 2c (.'retry-auth-failure'.=>.false,
abfa0 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 70 74 69 6f 6e .));.}.catch.(TransportException
abfc0 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 43 6f 64 65 28 .$e).{.if.(in_array($e->getCode(
abfe0 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 73 2d 3e 69 6f ),.array(403,.401))).{.$this->io
ac000 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 64 20 74 6f 6b ->writeError('<error>Invalid.tok
ac020 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 69 73 2d 3e 69 en.provided.</error>');.$this->i
ac040 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 20 61 64 64 20 o->writeError('You.can.also.add.
ac060 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 22 63 6f 6d 70 it.manually.later.by.using."comp
ac080 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 74 68 75 62 2e oser.config.github-oauth.github.
ac0a0 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 73 65 3b 0a 7d com.<token>"');..return.false;.}
ac0c0 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 66 69 67 2d 3e ..throw.$e;.}....$this->config->
ac0e0 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 6e 66 69 67 53 getConfigSource()->removeConfigS
ac100 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 67 69 6e 55 72 etting('github-oauth.'.$originUr
ac120 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 6f 6e 66 69 67 l);.$this->config->getAuthConfig
ac140 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 27 67 69 74 68 Source()->addConfigSetting('gith
ac160 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 65 6e 29 3b 0a ub-oauth.'.$originUrl,.$token);.
ac180 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 3e 54 6f .$this->io->writeError('<info>To
ac1a0 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 6e 66 6f 3e 27 ken.stored.successfully.</info>'
ac1c0 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 0a 0a 0a 0a 0a );..return.true;.}.}.<?php......
ac1e0 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;..
ac200 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 65 use.Composer\IO\IOInterface;.use
ac220 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 46 .Composer\Config;.use.Composer\F
ac240 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 61 64 65 72 5c actory;.use.Composer\Downloader\
ac260 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 72 TransportException;.use.Composer
ac280 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 69 74 4c 61 62 \Json\JsonFile;.....class.GitLab
ac2a0 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 20 24 63 6f 6e .{.protected.$io;.protected.$con
ac2c0 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 6f 74 65 63 74 fig;.protected.$process;.protect
ac2e0 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 0a 0a 0a 0a 70 ed.$remoteFilesystem;..........p
ac300 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
ac320 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 6f 63 erface.$io,.Config.$config,.Proc
ac340 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 65 6d essExecutor.$process.=.null,.Rem
ac360 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 20 oteFilesystem.$remoteFilesystem.
ac380 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 24 74 68 69 73 =.null).{.$this->io.=.$io;.$this
ac3a0 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 70 72 6f 63 65 ->config.=.$config;.$this->proce
ac3c0 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 73 45 78 65 63 ss.=.$process.?:.new.ProcessExec
ac3e0 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 73 74 65 6d 20 utor();.$this->remoteFilesystem.
ac400 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 6f 72 79 3a 3a =.$remoteFilesystem.?:.Factory::
ac420 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 2d 3e 69 6f createRemoteFilesystem($this->io
ac440 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 63 20 66 75 6e ,.$config);.}.........public.fun
ac460 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 6e 55 72 6c 29 ction.authorizeOAuth($originUrl)
ac480 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 2c 20 24 74 68 .{.if.(!in_array($originUrl,.$th
ac4a0 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 61 69 6e 73 27 is->config->get('gitlab-domains'
ac4c0 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 0a 0a 0a 20 69 ),.true)).{.return.false;.}....i
ac4e0 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
ac500 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 6f 6b 65 6e 27 ('git.config.gitlab.accesstoken'
ac520 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 74 41 75 74 68 ,.$output)).{.$this->io->setAuth
ac540 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 28 24 6f 75 74 entication($originUrl,.trim($out
ac560 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 75 65 3b 0a 7d put),.'oauth2');..return.true;.}
ac580 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 0a 0a 0a 70 75 ..return.false;.}.............pu
ac5a0 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 68 49 6e 74 65 blic.function.authorizeOAuthInte
ac5c0 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 72 6c 2c 20 24 ractively($scheme,.$originUrl,.$
ac5e0 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 61 67 65 29 20 message.=.null).{.if.($message).
ac600 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 73 73 61 67 65 {.$this->io->writeError($message
ac620 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 28 73 70 72 69 );.}..$this->io->writeError(spri
ac640 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 64 20 61 6e 64 ntf('A.token.will.be.created.and
ac660 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 6f 72 64 20 77 .stored.in."%s",.your.password.w
ac680 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 2d 3e 63 6f 6e ill.never.be.stored',.$this->con
ac6a0 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 67 65 74 4e fig->getAuthConfigSource()->getN
ac6c0 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 72 6f 72 28 27 ame()));.$this->io->writeError('
ac6e0 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 6b 65 6e 20 79 To.revoke.access.to.this.token.y
ac700 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 2f 70 72 6f 66 ou.can.visit.'.$originUrl.'/prof
ac720 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 70 74 43 6f 75 ile/applications');..$attemptCou
ac740 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 6f 75 6e 74 65 nter.=.0;..while.($attemptCounte
ac760 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 3d 20 24 74 68 r++.<.5).{.try.{.$response.=.$th
ac780 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 72 69 67 69 6e is->createToken($scheme,.$origin
ac7a0 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 65 70 74 69 6f Url);.}.catch.(TransportExceptio
ac7c0 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 2d 3e 67 65 74 n.$e).{.....if.(in_array($e->get
ac7e0 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 69 66 20 28 Code(),.array(403,.401))).{.if.(
ac800 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 68 69 73 2d 3e 401.===.$e->getCode()).{.$this->
ac820 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 69 61 6c 73 2e io->writeError('Bad.credentials.
ac840 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 74 65 45 72 72 ');.}.else.{.$this->io->writeErr
ac860 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 20 61 74 74 65 or('Maximum.number.of.login.atte
ac880 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 67 61 69 6e 20 mpts.exceeded..Please.try.again.
ac8a0 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 74 65 45 72 72 later.');.}..$this->io->writeErr
ac8c0 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 72 65 61 74 65 or('You.can.also.manually.create
ac8e0 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 65 6d 65 2e 27 .a.personal.token.at.'.$scheme.'
ac900 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 70 70 6c 69 63 ://'.$originUrl.'/profile/applic
ac920 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 72 72 6f 72 28 ations');.$this->io->writeError(
ac940 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 66 69 67 20 67 'Add.it.using."composer.config.g
ac960 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 3c 74 6f 6b 65 itlab-oauth.'.$originUrl.'.<toke
ac980 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 24 65 3b 0a 7d n>"');..continue;.}..throw.$e;.}
ac9a0 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 69 6f 6e 28 24 ..$this->io->setAuthentication($
ac9c0 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 6b originUrl,.$response['access_tok
ac9e0 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 63 6f 6e 66 69 en'],.'oauth2');....$this->confi
aca00 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 64 64 43 6f 6e g->getAuthConfigSource()->addCon
aca20 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 24 6f 72 69 67 figSetting('gitlab-oauth.'.$orig
aca40 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 6b 65 6e 27 5d inUrl,.$response['access_token']
aca60 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 65 77 20 5c 52 );..return.true;.}..throw.new.\R
aca80 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 74 4c 61 62 20 untimeException('Invalid.GitLab.
acaa0 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 77 2c 20 61 62 credentials.5.times.in.a.row,.ab
acac0 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 69 6f 6e 20 63 orting.');.}..private.function.c
acae0 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 55 72 6c 29 0a reateToken($scheme,.$originUrl).
acb00 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 6b 28 27 55 73 {.$username.=.$this->io->ask('Us
acb20 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 69 73 2d 3e 69 ername:.');.$password.=.$this->i
acb40 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 72 64 3a 20 27 o->askAndHideAnswer('Password:.'
acb60 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 6e 74 2d 54 79 );..$headers.=.array('Content-Ty
acb80 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 75 72 6c 65 6e pe:.application/x-www-form-urlen
acba0 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 55 72 6c 3b 0a coded');..$apiUrl.=.$originUrl;.
acbc0 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 72 61 79 28 0a $data.=.http_build_query(array(.
acbe0 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 61 73 73 77 6f 'username'.=>.$username,.'passwo
acc00 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 70 65 27 20 3d rd'.=>.$password,.'grant_type'.=
acc20 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 3d 20 61 72 72 >.'password',.));.$options.=.arr
acc40 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 61 6c 73 ay(.'retry-auth-failure'.=>.fals
acc60 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 27 20 3d 3e 20 e,.'http'.=>.array(.'method'.=>.
acc80 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 73 2c 0a 27 63 'POST',.'header'.=>.$headers,.'c
acca0 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 73 6f 6e 20 3d ontent'.=>.$data,.),.);..$json.=
accc0 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 65 74 43 6f 6e .$this->remoteFilesystem->getCon
acce0 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 3a 2f 2f 27 2e tents($originUrl,.$scheme.'://'.
acd00 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 73 65 2c 20 24 $apiUrl.'/oauth/token',.false,.$
acd20 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 45 72 72 6f 72 options);..$this->io->writeError
acd40 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 64 27 29 3b 0a ('Token.successfully.created');.
acd60 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 28 24 6a 73 6f .return.JsonFile::parseJson($jso
acd80 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 6d 65 73 70 61 n);.}.}.<?php............namespa
acda0 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 20 4e 6f 50 72 ce.Composer\Util;.....class.NoPr
acdc0 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 72 75 6c 65 73 oxyPattern.{....protected.$rules
acde0 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 74 69 6f 6e 20 .=.array();.....public.function.
ace00 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 69 73 2d 3e 72 __construct($pattern).{.$this->r
ace20 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 22 2c 20 24 70 ules.=.preg_split("/[\s,]+/",.$p
ace40 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 75 6e 63 74 69 attern);.}.........public.functi
ace60 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 73 65 5f 75 72 on.test($url).{.$host.=.parse_ur
ace80 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 74 20 3d 20 70 l($url,.PHP_URL_HOST);.$port.=.p
acea0 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 29 3b 0a 0a 69 arse_url($url,.PHP_URL_PORT);..i
acec0 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 70 61 72 73 65 f.(empty($port)).{.switch.(parse
acee0 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 7b 0a 63 61 _url($url,.PHP_URL_SCHEME)).{.ca
acf00 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 6b 3b 0a 63 61 se.'http':.$port.=.80;.break;.ca
acf20 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 65 61 6b 3b 0a se.'https':.$port.=.443;.break;.
acf40 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 61 73 20 24 72 }.}..foreach.($this->rules.as.$r
acf60 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 72 65 74 75 72 ule).{.if.($rule.==.'*').{.retur
acf80 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 0a 6c 69 73 74 n.true;.}..$match.=.false;..list
acfa0 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 24 72 75 6c 65 ($ruleHost).=.explode(':',.$rule
acfc0 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 27 2c 20 24 72 );.list($base).=.explode('/',.$r
acfe0 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 62 61 73 65 2c uleHost);..if.(filter_var($base,
ad000 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 5f 46 4c 41 47 .FILTER_VALIDATE_IP,.FILTER_FLAG
ad020 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 29 20 7b 0a 24 _IPV4)).{...if.(!isset($ip)).{.$
ad040 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 7d 0a 0a 69 66 ip.=.gethostbyname($host);.}..if
ad060 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 3d 20 66 61 6c .(strpos($ruleHost,.'/').===.fal
ad080 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 65 48 6f 73 74 se).{.$match.=.$ip.===.$ruleHost
ad0a0 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 24 68 6f 73 74 ;.}.else.{.....if.($ip.===.$host
ad0c0 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 7b 0a 0a 20 24 ).{.$match.=.false;.}.else.{...$
ad0e0 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 72 75 6c 65 48 match.=.self::inCIDRBlock($ruleH
ad100 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 68 61 79 73 74 ost,.$ip);.}.}.}.else.{...$hayst
ad120 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 29 20 2e 20 27 ack.=.'.'...trim($host,.'.')...'
ad140 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 6c 65 48 6f 73 .';.$needle.=.'.'..trim($ruleHos
ad160 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 70 6f 73 28 73 t,.'.')..'.';.$match.=.stripos(s
ad180 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 65 65 64 6c 65 trrev($haystack),.strrev($needle
ad1a0 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 26 20 73 74 72 )).===.0;.}....if.($match.&&.str
ad1c0 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 7b 0a 6c 69 73 pos($rule,.':').!==.false).{.lis
ad1e0 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 27 2c 20 24 72 t(,.$rulePort).=.explode(':',.$r
ad200 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 20 26 26 20 24 ule);.if.(!empty($rulePort).&&.$
ad220 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 20 3d 20 66 61 port.!=.$rulePort).{.$match.=.fa
ad240 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 75 72 6e 20 74 lse;.}.}..if.($match).{.return.t
ad260 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 0a rue;.}.}..return.false;.}.......
ad280 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 69 6e 43 .....private.static.function.inC
ad2a0 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 73 74 28 24 62 IDRBlock($cidr,.$ip).{...list($b
ad2c0 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 24 63 69 64 72 ase,.$bits).=.explode('/',.$cidr
ad2e0 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 3d 20 65 78 70 );....list($a,.$b,.$c,.$d).=.exp
ad300 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 24 61 20 3c 3c lode('.',.$base);....$i.=.($a.<<
ad320 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 38 29 20 2b 20 .24).+.($b.<<.16).+.($c.<<.8).+.
ad340 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 3a 20 28 7e 30 $d;.$mask.=.$bits.==.0.?.0.:.(~0
ad360 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 3d 20 24 69 20 .<<.(32.-.$bits));....$low.=.$i.
ad380 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 24 6d 61 73 6b &.$mask;....$high.=.$i.|.(~$mask
ad3a0 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 20 24 62 2c 20 .&.0xFFFFFFFF);....list($a,.$b,.
ad3c0 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 3b 0a 0a 0a 20 $c,.$d).=.explode('.',.$ip);....
ad3e0 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 3c 20 31 36 29 $check.=.($a.<<.24).+.($b.<<.16)
ad400 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 75 72 6e 20 24 .+.($c.<<.8).+.$d;......return.$
ad420 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 24 68 69 67 68 check.>=.$low.&&.$check.<=.$high
ad440 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
ad460 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 49 4f .Composer\Util;..use.Composer\IO
ad480 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 6f 6d 70 6f 6e \IOInterface;.use.Symfony\Compon
ad4a0 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 61 73 73 20 50 ent\Process\Process;.....class.P
ad4c0 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 70 72 6f 74 65 erforce.{.protected.$path;.prote
ad4e0 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 34 43 6c 69 65 cted.$p4Depot;.protected.$p4Clie
ad500 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 65 63 74 65 64 nt;.protected.$p4User;.protected
ad520 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 50 6f 72 74 3b .$p4Password;.protected.$p4Port;
ad540 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 63 74 65 64 20 .protected.$p4Stream;.protected.
ad560 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 34 44 65 70 6f $p4ClientSpec;.protected.$p4Depo
ad580 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 0a 70 72 6f 74 tType;.protected.$p4Branch;.prot
ad5a0 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 75 6e 69 71 75 ected.$process;.protected.$uniqu
ad5c0 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 74 65 64 20 24 ePerforceClientName;.protected.$
ad5e0 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 6d 61 6e 64 52 windowsFlag;.protected.$commandR
ad600 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 74 65 63 74 65 esult;..protected.$io;..protecte
ad620 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 74 69 6f 6e 20 d.$filesystem;..public.function.
ad640 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 6f 72 74 2c 20 __construct($repoConfig,.$port,.
ad660 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 63 65 73 73 2c $path,.ProcessExecutor.$process,
ad680 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 6f 29 0a 7b 0a .$isWindows,.IOInterface.$io).{.
ad6a0 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 64 6f 77 73 3b $this->windowsFlag.=.$isWindows;
ad6c0 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 69 73 2d 3e 69 .$this->p4Port.=.$port;.$this->i
ad6e0 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 2d 3e 70 72 6f nitializePath($path);.$this->pro
ad700 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 74 69 61 6c 69 cess.=.$process;.$this->initiali
ad720 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 3d 20 24 69 6f ze($repoConfig);.$this->io.=.$io
ad740 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
ad760 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 68 2c 20 50 72 te($repoConfig,.$port,.$path,.Pr
ad780 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 6e 74 65 72 66 ocessExecutor.$process,.IOInterf
ad7a0 61 63 65 20 24 69 6f 29 0a 7b 0a 24 69 73 57 69 6e 64 6f 77 73 20 3d 20 64 65 66 69 6e 65 64 28 ace.$io).{.$isWindows.=.defined(
ad7c0 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 3b 0a 24 70 'PHP_WINDOWS_VERSION_BUILD');.$p
ad7e0 65 72 66 6f 72 63 65 20 3d 20 6e 65 77 20 50 65 72 66 6f 72 63 65 28 24 72 65 70 6f 43 6f 6e 66 erforce.=.new.Perforce($repoConf
ad800 69 67 2c 20 24 70 6f 72 74 2c 20 24 70 61 74 68 2c 20 24 70 72 6f 63 65 73 73 2c 20 24 69 73 57 ig,.$port,.$path,.$process,.$isW
ad820 69 6e 64 6f 77 73 2c 20 24 69 6f 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 65 72 66 6f 72 63 65 3b indows,.$io);..return.$perforce;
ad840 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 68 65 63 6b .}..public.static.function.check
ad860 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 78 65 63 75 74 ServerExists($url,.ProcessExecut
ad880 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 70 75 74 20 3d or.$processExecutor).{.$output.=
ad8a0 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 73 73 45 78 65 .null;..return.0.===.$processExe
ad8c0 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 75 72 6c 20 2e cutor->execute('p4.-p.'...$url..
ad8e0 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 75 62 6c 69 63 .'.info.-s',.$output);.}..public
ad900 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 6f 6e 66 69 67 .function.initialize($repoConfig
ad920 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 69 65 6e 74 4e ).{.$this->uniquePerforceClientN
ad940 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 50 65 72 66 6f ame.=.$this->generateUniquePerfo
ad960 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 3d 20 24 72 65 rceClientName();.if.(null.==.$re
ad980 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 73 73 65 74 28 poConfig).{.return;.}.if.(isset(
ad9a0 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 65 5f 63 6c 69 $repoConfig['unique_perforce_cli
ad9c0 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 65 50 65 72 66 ent_name'])).{.$this->uniquePerf
ad9e0 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 67 5b 27 75 6e orceClientName.=.$repoConfig['un
ada00 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 3b 0a 7d 0a 0a ique_perforce_client_name'];.}..
ada20 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 74 27 5d 29 29 if.(isset($repoConfig['depot']))
ada40 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 6e 66 69 67 5b .{.$this->p4Depot.=.$repoConfig[
ada60 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 43 6f 6e 66 69 'depot'];.}.if.(isset($repoConfi
ada80 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 61 6e 63 68 20 g['branch'])).{.$this->p4Branch.
adaa0 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 69 66 20 28 69 =.$repoConfig['branch'];.}.if.(i
adac0 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 29 20 7b 0a 24 sset($repoConfig['p4user'])).{.$
adae0 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 27 70 34 75 73 this->p4User.=.$repoConfig['p4us
adb00 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 72 20 3d 20 24 er'];.}.else.{.$this->p4User.=.$
adb20 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 27 29 3b 0a 7d this->getP4variable('P4USER');.}
adb40 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 61 73 73 77 6f .if.(isset($repoConfig['p4passwo
adb60 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 3d 20 24 72 65 rd'])).{.$this->p4Password.=.$re
adb80 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 0a 0a 70 75 62 poConfig['p4password'];.}.}..pub
adba0 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 74 41 6e 64 42 lic.function.initializeDepotAndB
adbc0 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 20 28 69 73 73 ranch($depot,.$branch).{.if.(iss
adbe0 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 74 20 3d 20 24 et($depot)).{.$this->p4Depot.=.$
adc00 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 29 20 7b 0a 24 depot;.}.if.(isset($branch)).{.$
adc20 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 0a 7d 0a 0a 70 this->p4Branch.=.$branch;.}.}..p
adc40 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 75 65 50 65 72 ublic.function.generateUniquePer
adc60 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 67 65 74 68 6f forceClientName().{.return.getho
adc80 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 0a 70 75 62 6c stname()..."_"...time();.}..publ
adca0 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 65 63 28 29 0a ic.function.cleanupClientSpec().
adcc0 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 74 28 29 3b 0a {.$client.=.$this->getClient();.
adce0 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 65 6e 74 3b 0a $task.=.'client.-d.'...$client;.
add00 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 61 6e 64 20 3d $useP4Client.=.false;.$command.=
add20 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 74 61 73 6b 2c .$this->generateP4Command($task,
add40 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 75 74 65 43 6f .$useP4Client);.$this->executeCo
add60 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 63 20 3d 20 24 mmand($command);.$clientSpec.=.$
add80 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 69 6c 65 53 79 this->getP4ClientSpec();.$fileSy
adda0 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 28 29 3b 0a 24 stem.=.$this->getFilesystem();.$
addc0 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 70 65 63 29 3b fileSystem->remove($clientSpec);
adde0 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 65 43 6f .}..protected.function.executeCo
ade00 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 6d 6d 61 6e 64 mmand($command).{.$this->command
ade20 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 74 68 69 73 2d Result.=."";.$exit_code.=.$this-
ade40 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 74 68 69 >process->execute($command,.$thi
ade60 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 24 65 78 69 74 s->commandResult);..return.$exit
ade80 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 65 74 43 6c 69 _code;.}..public.function.getCli
adea0 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 34 43 6c 69 65 ent().{.if.(!isset($this->p4Clie
adec0 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 74 72 5f 72 65 nt)).{.$cleanStreamName.=.str_re
adee0 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 27 2f 27 2c 20 place('@',.'',.str_replace('/',.
adf00 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 24 74 68 69 73 '_',.str_replace('//',.'',.$this
adf20 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 43 6c 69 65 6e ->getStream())));.$this->p4Clien
adf40 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 24 74 68 69 73 t.=.'composer_perforce_'...$this
adf60 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 2e 20 27 5f 27 ->uniquePerforceClientName...'_'
adf80 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 75 72 6e 20 24 ...$cleanStreamName;.}..return.$
adfa0 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 64 20 66 75 6e this->p4Client;.}..protected.fun
adfc0 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 68 69 73 2d 3e ction.getPath().{.return.$this->
adfe0 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 69 74 69 61 6c path;.}..public.function.initial
ae000 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 68 20 3d 20 24 izePath($path).{.$this->path.=.$
ae020 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 79 73 74 65 6d path;.$fs.=.$this->getFilesystem
ae040 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 73 74 73 28 24 ();.$fs->ensureDirectoryExists($
ae060 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 6e 20 67 65 74 path);.}..protected.function.get
ae080 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 72 74 3b 0a 7d Port().{.return.$this->p4Port;.}
ae0a0 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 28 24 73 74 72 ..public.function.setStream($str
ae0c0 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 74 72 65 61 6d eam).{.$this->p4Stream.=.$stream
ae0e0 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 20 27 2f 27 29 ;.$index.=.strrpos($stream,.'/')
ae100 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 2d 3e 70 34 44 ;...if.($index.>.2).{.$this->p4D
ae120 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 75 62 6c 69 63 epotType.=.'stream';.}.}..public
ae140 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 72 6e 20 28 73 .function.isStream().{.return.(s
ae160 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 73 74 72 65 61 trcmp($this->p4DepotType,.'strea
ae180 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 69 6f 6e 20 67 m').===.0);.}..public.function.g
ae1a0 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 69 73 2d 3e 70 etStream().{.if.(!isset($this->p
ae1c0 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 72 65 61 6d 28 4Stream)).{.if.($this->isStream(
ae1e0 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 20 2e 20 24 74 )).{.$this->p4Stream.=.'//'...$t
ae200 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 3e 70 34 42 72 his->p4Depot...'/'...$this->p4Br
ae220 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 65 61 6d 20 3d anch;.}.else.{.$this->p4Stream.=
ae240 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 0a 0a 72 65 74 .'//'...$this->p4Depot;.}.}..ret
ae260 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 6c 69 63 20 66 urn.$this->p4Stream;.}..public.f
ae280 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 65 6c 28 24 73 unction.getStreamWithoutLabel($s
ae2a0 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 74 72 65 61 6d tream).{.$index.=.strpos($stream
ae2c0 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 65 29 20 7b 0a ,.'@');.if.($index.===.false).{.
ae2e0 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 75 62 73 74 72 return.$stream;.}..return.substr
ae300 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 62 6c 69 63 20 ($stream,.0,.$index);.}..public.
ae320 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 7b 0a 24 70 34 function.getP4ClientSpec().{.$p4
ae340 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 27 2f 27 20 2e clientSpec.=.$this->path...'/'..
ae360 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 73 70 65 63 27 .$this->getClient()...'.p4.spec'
ae380 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 0a 70 75 62 6c ;..return.$p4clientSpec;.}..publ
ae3a0 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 75 72 6e 20 24 ic.function.getUser().{.return.$
ae3c0 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 63 74 69 6f 6e this->p4User;.}..public.function
ae3e0 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 55 73 65 72 20 .setUser($user).{.$this->p4User.
ae400 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 20 71 75 65 72 =.$user;.}..public.function.quer
ae420 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 29 3b 0a 69 66 yP4User().{.$this->getUser();.if
ae440 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
ae460 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->
ae480 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 20 28 73 74 72 getP4variable('P4USER');.if.(str
ae4a0 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 65 74 75 72 6e len($this->p4User).>.0).{.return
ae4c0 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 69 6f 2d 3e 61 ;.}.$this->p4User.=.$this->io->a
ae4e0 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 74 68 69 73 2d sk('Enter.P4.User:');.if.($this-
ae500 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 27 70 34 20 73 >windowsFlag).{.$command.=.'p4.s
ae520 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 3b 0a 7d 20 65 et.P4USER='...$this->p4User;.}.e
ae540 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 55 53 45 52 3d lse.{.$command.=.'export.P4USER=
ae560 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 3e 65 78 65 63 '...$this->p4User;.}.$this->exec
ae580 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 6f 74 65 63 74 uteCommand($command);.}..protect
ae5a0 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 6e 61 6d 65 29 ed.function.getP4variable($name)
ae5c0 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 7b 0a 24 63 6f .{.if.($this->windowsFlag).{.$co
ae5e0 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 65 63 75 74 65 mmand.=.'p4.set';.$this->execute
ae600 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
ae620 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 65 73 41 72 72 m($this->commandResult);.$resArr
ae640 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 29 3b 0a ay.=.explode(PHP_EOL,.$result);.
ae660 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 7b 0a 24 foreach.($resArray.as.$line).{.$
ae680 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 29 3b 0a 69 66 fields.=.explode('=',.$line);.if
ae6a0 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 20 3d 3d 20 30 .(strcmp($name,.$fields[0]).==.0
ae6c0 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 5b 31 5d 2c 20 ).{.$index.=.strpos($fields[1],.
ae6e0 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 20 7b 0a 24 76 '.');.if.($index.===.false).{.$v
ae700 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 0a 24 76 61 6c alue.=.$fields[1];.}.else.{.$val
ae720 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 24 69 6e 64 65 ue.=.substr($fields[1],.0,.$inde
ae740 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 3b 0a 0a 72 65 x);.}.$value.=.trim($value);..re
ae760 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6d 6d 61 turn.$value;.}.}.}.else.{.$comma
ae780 6e 64 20 3d 20 27 65 63 68 6f 20 24 27 20 2e 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 65 78 nd.=.'echo.$'...$name;.$this->ex
ae7a0 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.
ae7c0 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 0a 72 =.trim($this->commandResult);..r
ae7e0 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 eturn.$result;.}.}..public.funct
ae800 69 6f 6e 20 71 75 65 72 79 50 34 50 61 73 73 77 6f 72 64 28 29 0a 7b 0a 69 66 20 28 69 73 73 65 ion.queryP4Password().{.if.(isse
ae820 74 28 24 74 68 69 73 2d 3e 70 34 50 61 73 73 77 6f 72 64 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 t($this->p4Password)).{.return.$
ae840 74 68 69 73 2d 3e 70 34 50 61 73 73 77 6f 72 64 3b 0a 7d 0a 24 70 61 73 73 77 6f 72 64 20 3d 20 this->p4Password;.}.$password.=.
ae860 24 74 68 69 73 2d 3e 67 65 74 50 34 76 61 72 69 61 62 6c 65 28 27 50 34 50 41 53 53 57 44 27 29 $this->getP4variable('P4PASSWD')
ae880 3b 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 70 61 73 73 77 6f 72 64 29 20 3c 3d 20 30 29 20 7b 0a ;.if.(strlen($password).<=.0).{.
ae8a0 24 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 $password.=.$this->io->askAndHid
ae8c0 65 41 6e 73 77 65 72 28 27 45 6e 74 65 72 20 70 61 73 73 77 6f 72 64 20 66 6f 72 20 50 65 72 66 eAnswer('Enter.password.for.Perf
ae8e0 6f 72 63 65 20 75 73 65 72 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 55 73 65 72 28 29 20 2e orce.user.'...$this->getUser()..
ae900 20 27 3a 20 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 34 50 61 73 73 77 6f 72 64 20 3d 20 24 70 .':.');.}.$this->p4Password.=.$p
ae920 61 73 73 77 6f 72 64 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 73 73 77 6f 72 64 3b 0a 7d 0a 0a 70 assword;..return.$password;.}..p
ae940 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 ublic.function.generateP4Command
ae960 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 73 65 43 6c 69 65 6e 74 20 3d 20 74 72 75 65 29 0a 7b 0a ($command,.$useClient.=.true).{.
ae980 24 70 34 43 6f 6d 6d 61 6e 64 20 3d 20 27 70 34 20 27 3b 0a 24 70 34 43 6f 6d 6d 61 6e 64 20 3d $p4Command.=.'p4.';.$p4Command.=
ae9a0 20 24 70 34 43 6f 6d 6d 61 6e 64 20 2e 20 27 2d 75 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 .$p4Command...'-u.'...$this->get
ae9c0 55 73 65 72 28 29 20 2e 20 27 20 27 3b 0a 69 66 20 28 24 75 73 65 43 6c 69 65 6e 74 29 20 7b 0a User()...'.';.if.($useClient).{.
ae9e0 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 20 27 2d 63 20 27 20 $p4Command.=.$p4Command...'-c.'.
aea00 2e 20 24 74 68 69 73 2d 3e 67 65 74 43 6c 69 65 6e 74 28 29 20 2e 20 27 20 27 3b 0a 7d 0a 24 70 ..$this->getClient()...'.';.}.$p
aea20 34 43 6f 6d 6d 61 6e 64 20 3d 20 24 70 34 43 6f 6d 6d 61 6e 64 20 2e 20 27 2d 70 20 27 20 2e 20 4Command.=.$p4Command...'-p.'...
aea40 24 74 68 69 73 2d 3e 67 65 74 50 6f 72 74 28 29 20 2e 20 27 20 27 3b 0a 24 70 34 43 6f 6d 6d 61 $this->getPort()...'.';.$p4Comma
aea60 6e 64 20 3d 20 24 70 34 43 6f 6d 6d 61 6e 64 20 2e 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 72 65 74 nd.=.$p4Command...$command;..ret
aea80 75 72 6e 20 24 70 34 43 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 urn.$p4Command;.}..public.functi
aeaa0 6f 6e 20 69 73 4c 6f 67 67 65 64 49 6e 28 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 on.isLoggedIn().{.$command.=.$th
aeac0 69 73 2d 3e 67 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 6c 6f 67 69 6e 20 2d 73 27 is->generateP4Command('login.-s'
aeae0 2c 20 66 61 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 ,.false);.$exitCode.=.$this->exe
aeb00 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 69 66 20 28 24 65 78 69 74 cuteCommand($command);.if.($exit
aeb20 43 6f 64 65 29 20 7b 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 Code).{.$errorOutput.=.$this->pr
aeb40 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 24 69 6e 64 65 78 20 ocess->getErrorOutput();.$index.
aeb60 3d 20 73 74 72 70 6f 73 28 24 65 72 72 6f 72 4f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 67 65 =.strpos($errorOutput,.$this->ge
aeb80 74 55 73 65 72 28 29 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 tUser());.if.($index.===.false).
aeba0 7b 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 65 72 72 6f 72 4f 75 74 70 75 74 2c 20 {.$index.=.strpos($errorOutput,.
aebc0 27 70 34 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 0a 72 'p4');.if.($index.===.false).{.r
aebe0 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 74 68 72 6f 77 20 6e 65 77 20 5c 45 78 63 65 70 74 eturn.false;.}.throw.new.\Except
aec00 69 6f 6e 28 27 70 34 20 63 6f 6d 6d 61 6e 64 20 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 20 70 61 74 ion('p4.command.not.found.in.pat
aec20 68 3a 20 27 20 2e 20 24 65 72 72 6f 72 4f 75 74 70 75 74 29 3b 0a 7d 0a 74 68 72 6f 77 20 6e 65 h:.'...$errorOutput);.}.throw.ne
aec40 77 20 5c 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 75 73 65 72 20 6e 61 6d 65 3a w.\Exception('Invalid.user.name:
aec60 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 55 73 65 72 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 .'...$this->getUser());.}..retur
aec80 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 63 6f 6e 6e 65 n.true;.}..public.function.conne
aeca0 63 74 43 6c 69 65 6e 74 28 29 0a 7b 0a 24 70 34 43 72 65 61 74 65 43 6c 69 65 6e 74 43 6f 6d 6d ctClient().{.$p4CreateClientComm
aecc0 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 27 and.=.$this->generateP4Command('
aece0 63 6c 69 65 6e 74 20 2d 69 20 3c 20 27 20 2e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 22 20 22 2c client.-i.<.'...str_replace(".",
aed00 20 22 5c 5c 20 22 2c 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 ."\\.",.$this->getP4ClientSpec()
aed20 29 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 70 34 43 72 65 ));.$this->executeCommand($p4Cre
aed40 61 74 65 43 6c 69 65 6e 74 43 6f 6d 6d 61 6e 64 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e ateClientCommand);.}..public.fun
aed60 63 74 69 6f 6e 20 73 79 6e 63 43 6f 64 65 42 61 73 65 28 24 73 6f 75 72 63 65 52 65 66 65 72 65 ction.syncCodeBase($sourceRefere
aed80 6e 63 65 29 0a 7b 0a 24 70 72 65 76 44 69 72 20 3d 20 67 65 74 63 77 64 28 29 3b 0a 63 68 64 69 nce).{.$prevDir.=.getcwd();.chdi
aeda0 72 28 24 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 24 70 34 53 79 6e 63 43 6f 6d 6d 61 6e 64 20 3d r($this->path);.$p4SyncCommand.=
aedc0 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 27 73 79 6e 63 20 .$this->generateP4Command('sync.
aede0 2d 66 20 27 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 20 24 73 6f 75 72 63 65 52 65 66 65 72 65 -f.');.if.(null.!=.$sourceRefere
aee00 6e 63 65 29 20 7b 0a 24 70 34 53 79 6e 63 43 6f 6d 6d 61 6e 64 20 3d 20 24 70 34 53 79 6e 63 43 nce).{.$p4SyncCommand.=.$p4SyncC
aee20 6f 6d 6d 61 6e 64 20 2e 20 27 40 27 20 2e 20 24 73 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 3b ommand...'@'...$sourceReference;
aee40 0a 7d 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 43 6f 6d 6d 61 6e 64 28 24 70 34 53 79 6e 63 .}.$this->executeCommand($p4Sync
aee60 43 6f 6d 6d 61 6e 64 29 3b 0a 63 68 64 69 72 28 24 70 72 65 76 44 69 72 29 3b 0a 7d 0a 0a 70 75 Command);.chdir($prevDir);.}..pu
aee80 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 43 6c 69 65 6e 74 53 70 65 63 54 6f 46 blic.function.writeClientSpecToF
aeea0 69 6c 65 28 24 73 70 65 63 29 0a 7b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 43 6c 69 65 ile($spec).{.fwrite($spec,.'Clie
aeec0 6e 74 3a 20 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 50 48 50 nt:.'...$this->getClient()...PHP
aeee0 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,.'
aef00 55 70 64 61 74 65 3a 20 27 20 2e 20 64 61 74 65 28 27 59 2f 6d 2f 64 20 48 3a 69 3a 73 27 29 20 Update:.'...date('Y/m/d.H:i:s').
aef20 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 70 ..PHP_EOL...PHP_EOL);.fwrite($sp
aef40 65 63 2c 20 27 41 63 63 65 73 73 3a 20 27 20 2e 20 64 61 74 65 28 27 59 2f 6d 2f 64 20 48 3a 69 ec,.'Access:.'...date('Y/m/d.H:i
aef60 3a 73 27 29 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 :s')...PHP_EOL);.fwrite($spec,.'
aef80 4f 77 6e 65 72 3a 20 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 55 73 65 72 28 29 20 2e 20 50 Owner:..'...$this->getUser()...P
aefa0 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 70 65 63 2c HP_EOL...PHP_EOL);.fwrite($spec,
aefc0 20 27 44 65 73 63 72 69 70 74 69 6f 6e 3a 27 20 2e 20 50 48 50 5f 45 4f 4c 29 3b 0a 66 77 72 69 .'Description:'...PHP_EOL);.fwri
aefe0 74 65 28 24 73 70 65 63 2c 20 27 20 20 43 72 65 61 74 65 64 20 62 79 20 27 20 2e 20 24 74 68 69 te($spec,.'..Created.by.'...$thi
af000 73 2d 3e 67 65 74 55 73 65 72 28 29 20 2e 20 27 20 66 72 6f 6d 20 63 6f 6d 70 6f 73 65 72 2e 27 s->getUser()...'.from.composer.'
af020 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
af040 70 65 63 2c 20 27 52 6f 6f 74 3a 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 50 61 74 68 28 29 pec,.'Root:.'...$this->getPath()
af060 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
af080 70 65 63 2c 20 27 4f 70 74 69 6f 6e 73 3a 20 20 6e 6f 61 6c 6c 77 72 69 74 65 20 6e 6f 63 6c 6f pec,.'Options:..noallwrite.noclo
af0a0 62 62 65 72 20 6e 6f 63 6f 6d 70 72 65 73 73 20 75 6e 6c 6f 63 6b 65 64 20 6d 6f 64 74 69 6d 65 bber.nocompress.unlocked.modtime
af0c0 20 72 6d 64 69 72 27 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 .rmdir'...PHP_EOL...PHP_EOL);.fw
af0e0 72 69 74 65 28 24 73 70 65 63 2c 20 27 53 75 62 6d 69 74 4f 70 74 69 6f 6e 73 3a 20 20 72 65 76 rite($spec,.'SubmitOptions:..rev
af100 65 72 74 75 6e 63 68 61 6e 67 65 64 27 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 20 50 48 50 5f 45 4f ertunchanged'...PHP_EOL...PHP_EO
af120 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c 20 27 4c 69 6e 65 45 6e 64 3a 20 20 6c 6f 63 L);.fwrite($spec,.'LineEnd:..loc
af140 61 6c 27 20 2e 20 50 48 50 5f 45 4f 4c 20 2e 20 50 48 50 5f 45 4f 4c 29 3b 0a 69 66 20 28 24 74 al'...PHP_EOL...PHP_EOL);.if.($t
af160 68 69 73 2d 3e 69 73 53 74 72 65 61 6d 28 29 29 20 7b 0a 66 77 72 69 74 65 28 24 73 70 65 63 2c his->isStream()).{.fwrite($spec,
af180 20 27 53 74 72 65 61 6d 3a 27 20 2e 20 50 48 50 5f 45 4f 4c 29 3b 0a 66 77 72 69 74 65 28 24 73 .'Stream:'...PHP_EOL);.fwrite($s
af1a0 70 65 63 2c 20 27 20 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 53 74 72 65 61 6d 57 69 74 68 pec,.'..'...$this->getStreamWith
af1c0 6f 75 74 4c 61 62 65 6c 28 24 74 68 69 73 2d 3e 70 34 53 74 72 65 61 6d 29 20 2e 20 50 48 50 5f outLabel($this->p4Stream)...PHP_
af1e0 45 4f 4c 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 77 72 69 74 65 28 0a 24 73 70 65 63 2c 0a 27 56 EOL);.}.else.{.fwrite(.$spec,.'V
af200 69 65 77 3a 20 20 27 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 20 2e 20 27 iew:..'...$this->getStream()...'
af220 2f 2e 2e 2e 20 20 2f 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 /.....//'...$this->getClient()..
af240 20 27 2f 2e 2e 2e 20 27 20 2e 20 50 48 50 5f 45 4f 4c 0a 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 .'/....'...PHP_EOL.);.}.}..publi
af260 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 50 34 43 6c 69 65 6e 74 53 70 65 63 28 29 0a 7b c.function.writeP4ClientSpec().{
af280 0a 24 63 6c 69 65 6e 74 53 70 65 63 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 34 43 6c 69 65 6e .$clientSpec.=.$this->getP4Clien
af2a0 74 53 70 65 63 28 29 3b 0a 24 73 70 65 63 20 3d 20 66 6f 70 65 6e 28 24 63 6c 69 65 6e 74 53 70 tSpec();.$spec.=.fopen($clientSp
af2c0 65 63 2c 20 27 77 27 29 3b 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 43 6c 69 65 ec,.'w');.try.{.$this->writeClie
af2e0 6e 74 53 70 65 63 54 6f 46 69 6c 65 28 24 73 70 65 63 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 ntSpecToFile($spec);.}.catch.(\E
af300 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 66 63 6c 6f 73 65 28 24 73 70 65 63 29 3b 0a 74 68 xception.$e).{.fclose($spec);.th
af320 72 6f 77 20 24 65 3b 0a 7d 0a 66 63 6c 6f 73 65 28 24 73 70 65 63 29 3b 0a 7d 0a 0a 70 72 6f 74 row.$e;.}.fclose($spec);.}..prot
af340 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 28 24 70 69 70 65 2c 20 24 6e 61 6d 65 ected.function.read($pipe,.$name
af360 29 0a 7b 0a 69 66 20 28 66 65 6f 66 28 24 70 69 70 65 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d ).{.if.(feof($pipe)).{.return;.}
af380 0a 24 6c 69 6e 65 20 3d 20 66 67 65 74 73 28 24 70 69 70 65 29 3b 0a 77 68 69 6c 65 20 28 24 6c .$line.=.fgets($pipe);.while.($l
af3a0 69 6e 65 20 21 3d 20 66 61 6c 73 65 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 66 67 65 74 73 28 24 70 ine.!=.false).{.$line.=.fgets($p
af3c0 69 70 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ipe);.}..return;.}..public.funct
af3e0 69 6f 6e 20 77 69 6e 64 6f 77 73 4c 6f 67 69 6e 28 24 70 61 73 73 77 6f 72 64 29 0a 7b 0a 24 63 ion.windowsLogin($password).{.$c
af400 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
af420 64 28 27 20 6c 6f 67 69 6e 20 2d 61 27 29 3b 0a 24 70 72 6f 63 65 73 73 20 3d 20 6e 65 77 20 50 d('.login.-a');.$process.=.new.P
af440 72 6f 63 65 73 73 28 24 63 6f 6d 6d 61 6e 64 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 24 70 61 rocess($command,.null,.null,.$pa
af460 73 73 77 6f 72 64 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 63 65 73 73 2d 3e 72 75 6e 28 29 ssword);..return.$process->run()
af480 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 34 4c 6f 67 69 6e 28 29 0a 7b ;.}..public.function.p4Login().{
af4a0 0a 24 74 68 69 73 2d 3e 71 75 65 72 79 50 34 55 73 65 72 28 29 3b 0a 69 66 20 28 21 24 74 68 69 .$this->queryP4User();.if.(!$thi
af4c0 73 2d 3e 69 73 4c 6f 67 67 65 64 49 6e 28 29 29 20 7b 0a 24 70 61 73 73 77 6f 72 64 20 3d 20 24 s->isLoggedIn()).{.$password.=.$
af4e0 74 68 69 73 2d 3e 71 75 65 72 79 50 34 50 61 73 73 77 6f 72 64 28 29 3b 0a 69 66 20 28 24 74 68 this->queryP4Password();.if.($th
af500 69 73 2d 3e 77 69 6e 64 6f 77 73 46 6c 61 67 29 20 7b 0a 24 74 68 69 73 2d 3e 77 69 6e 64 6f 77 is->windowsFlag).{.$this->window
af520 73 4c 6f 67 69 6e 28 24 70 61 73 73 77 6f 72 64 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6d sLogin($password);.}.else.{.$com
af540 6d 61 6e 64 20 3d 20 27 65 63 68 6f 20 27 20 2e 20 24 70 61 73 73 77 6f 72 64 20 2e 20 27 20 7c mand.=.'echo.'...$password...'.|
af560 20 27 20 2e 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 27 20 .'...$this->generateP4Command('.
af580 6c 6f 67 69 6e 20 2d 61 27 2c 20 66 61 6c 73 65 29 3b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 24 login.-a',.false);.$exitCode.=.$
af5a0 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 64 29 3b 0a this->executeCommand($command);.
af5c0 24 72 65 73 75 6c 74 20 3d 20 74 72 69 6d 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 52 65 73 $result.=.trim($this->commandRes
af5e0 75 6c 74 29 3b 0a 69 66 20 28 24 65 78 69 74 43 6f 64 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 ult);.if.($exitCode).{.throw.new
af600 20 5c 45 78 63 65 70 74 69 6f 6e 28 22 45 72 72 6f 72 20 6c 6f 67 67 69 6e 67 20 69 6e 3a 22 20 .\Exception("Error.logging.in:".
af620 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
af640 28 29 29 3b 0a 7d 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 ());.}.}.}.}..public.function.ge
af660 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 6e 74 69 66 69 65 72 tComposerInformation($identifier
af680 29 0a 7b 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 69 64 65 6e 74 69 66 69 65 72 2c ).{.$index.=.strpos($identifier,
af6a0 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 65 29 20 7b 0a 24 .'@');.if.($index.===.false).{.$
af6c0 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 20 3d 20 24 69 64 65 6e 74 69 66 69 65 72 2e 20 27 2f 63 6f composerJson.=.$identifier..'/co
af6e0 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 mposer.json';..return.$this->get
af700 43 6f 6d 70 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 ComposerInformationFromPath($com
af720 70 6f 73 65 72 4a 73 6f 6e 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 poserJson);.}..return.$this->get
af740 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 46 72 6f 6d 4c 61 62 65 6c 28 24 69 64 ComposerInformationFromLabel($id
af760 65 6e 74 69 66 69 65 72 2c 20 24 69 6e 64 65 78 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e entifier,.$index);.}..public.fun
af780 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 46 72 6f 6d ction.getComposerInformationFrom
af7a0 50 61 74 68 28 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d Path($composerJson).{.$command.=
af7c0 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 27 20 70 72 69 6e .$this->generateP4Command('.prin
af7e0 74 20 27 20 2e 20 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 t.'...$composerJson);.$this->exe
af800 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 3d cuteCommand($command);.$result.=
af820 20 24 74 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 20 3d 20 .$this->commandResult;.$index.=.
af840 73 74 72 70 6f 73 28 24 72 65 73 75 6c 74 2c 20 27 7b 27 29 3b 0a 69 66 20 28 24 69 6e 64 65 78 strpos($result,.'{');.if.($index
af860 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 69 66 20 28 24 .===.false).{.return.'';.}.if.($
af880 69 6e 64 65 78 20 3e 3d 20 30 29 20 7b 0a 24 72 61 77 44 61 74 61 20 3d 20 73 75 62 73 74 72 28 index.>=.0).{.$rawData.=.substr(
af8a0 24 72 65 73 75 6c 74 2c 20 24 69 6e 64 65 78 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 5f 69 6e 66 6f $result,.$index);.$composer_info
af8c0 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 72 61 77 44 61 74 61 2c 20 74 72 75 65 29 3b 0a .=.json_decode($rawData,.true);.
af8e0 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f 73 65 72 5f 69 6e 66 6f 3b 0a 7d 0a 0a 72 65 74 75 72 .return.$composer_info;.}..retur
af900 6e 20 27 27 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 n.'';.}..public.function.getComp
af920 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 46 72 6f 6d 4c 61 62 65 6c 28 24 69 64 65 6e 74 69 oserInformationFromLabel($identi
af940 66 69 65 72 2c 20 24 69 6e 64 65 78 29 0a 7b 0a 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 50 61 74 fier,.$index).{.$composerJsonPat
af960 68 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 20 24 69 6e 64 65 h.=.substr($identifier,.0,.$inde
af980 78 29 20 2e 20 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 20 2e 20 73 75 62 73 74 72 28 24 x)...'/composer.json'...substr($
af9a0 69 64 65 6e 74 69 66 69 65 72 2c 20 24 69 6e 64 65 78 29 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 identifier,.$index);.$command.=.
af9c0 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 27 20 66 69 6c 65 73 $this->generateP4Command('.files
af9e0 20 27 20 2e 20 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 50 61 74 68 2c 20 66 61 6c 73 65 29 3b 0a .'...$composerJsonPath,.false);.
afa00 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 64 29 3b $this->executeCommand($command);
afa20 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 6c 74 3b .$result.=.$this->commandResult;
afa40 0a 24 69 6e 64 65 78 32 20 3d 20 73 74 72 70 6f 73 28 24 72 65 73 75 6c 74 2c 20 27 6e 6f 20 73 .$index2.=.strpos($result,.'no.s
afa60 75 63 68 20 66 69 6c 65 28 73 29 2e 27 29 3b 0a 69 66 20 28 24 69 6e 64 65 78 32 20 3d 3d 3d 20 uch.file(s).');.if.($index2.===.
afa80 66 61 6c 73 65 29 20 7b 0a 24 69 6e 64 65 78 33 20 3d 20 73 74 72 70 6f 73 28 24 72 65 73 75 6c false).{.$index3.=.strpos($resul
afaa0 74 2c 20 27 63 68 61 6e 67 65 27 29 3b 0a 69 66 20 28 21 28 24 69 6e 64 65 78 33 20 3d 3d 3d 20 t,.'change');.if.(!($index3.===.
afac0 66 61 6c 73 65 29 29 20 7b 0a 24 70 68 72 61 73 65 20 3d 20 74 72 69 6d 28 73 75 62 73 74 72 28 false)).{.$phrase.=.trim(substr(
afae0 24 72 65 73 75 6c 74 2c 20 24 69 6e 64 65 78 33 29 29 3b 0a 24 66 69 65 6c 64 73 20 3d 20 65 78 $result,.$index3));.$fields.=.ex
afb00 70 6c 6f 64 65 28 27 20 27 2c 20 24 70 68 72 61 73 65 29 3b 0a 24 69 64 20 3d 20 24 66 69 65 6c plode('.',.$phrase);.$id.=.$fiel
afb20 64 73 5b 31 5d 3b 0a 24 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 20 3d 20 73 75 62 73 74 72 28 24 69 ds[1];.$composerJson.=.substr($i
afb40 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
afb60 65 72 2e 6a 73 6f 6e 40 27 20 2e 20 24 69 64 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e er.json@'...$id;..return.$this->
afb80 67 65 74 43 6f 6d 70 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 getComposerInformationFromPath($
afba0 63 6f 6d 70 6f 73 65 72 4a 73 6f 6e 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 22 3b 0a 7d composerJson);.}.}..return."";.}
afbc0 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 63 68 65 73 28 29 0a ..public.function.getBranches().
afbe0 7b 0a 24 70 6f 73 73 69 62 6c 65 42 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 {.$possibleBranches.=.array();.i
afc00 66 20 28 21 24 74 68 69 73 2d 3e 69 73 53 74 72 65 61 6d 28 29 29 20 7b 0a 24 70 6f 73 73 69 62 f.(!$this->isStream()).{.$possib
afc20 6c 65 42 72 61 6e 63 68 65 73 5b 24 74 68 69 73 2d 3e 70 34 42 72 61 6e 63 68 5d 20 3d 20 24 74 leBranches[$this->p4Branch].=.$t
afc40 68 69 73 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6d 6d his->getStream();.}.else.{.$comm
afc60 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 27 and.=.$this->generateP4Command('
afc80 73 74 72 65 61 6d 73 20 2f 2f 27 20 2e 20 24 74 68 69 73 2d 3e 70 34 44 65 70 6f 74 20 2e 20 27 streams.//'...$this->p4Depot...'
afca0 2f 2e 2e 2e 27 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 /...');.$this->executeCommand($c
afcc0 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 6e ommand);.$result.=.$this->comman
afce0 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 65 28 50 48 50 dResult;.$resArray.=.explode(PHP
afd00 5f 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 _EOL,.$result);.foreach.($resArr
afd20 61 79 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 24 72 65 73 42 69 74 73 20 3d 20 65 78 70 6c 6f 64 ay.as.$line).{.$resBits.=.explod
afd40 65 28 27 20 27 2c 20 24 6c 69 6e 65 29 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 72 65 73 42 69 74 e('.',.$line);.if.(count($resBit
afd60 73 29 20 3e 20 34 29 20 7b 0a 24 62 72 61 6e 63 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 s).>.4).{.$branch.=.preg_replace
afd80 28 27 2f 5b 5e 41 2d 5a 61 2d 7a 30 2d 39 20 5d 2f 27 2c 20 27 27 2c 20 24 72 65 73 42 69 74 73 ('/[^A-Za-z0-9.]/',.'',.$resBits
afda0 5b 34 5d 29 3b 0a 24 70 6f 73 73 69 62 6c 65 42 72 61 6e 63 68 65 73 5b 24 62 72 61 6e 63 68 5d [4]);.$possibleBranches[$branch]
afdc0 20 3d 20 24 72 65 73 42 69 74 73 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 24 63 6f 6d 6d 61 6e 64 20 3d .=.$resBits[1];.}.}.}.$command.=
afde0 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 27 63 68 61 6e 67 .$this->generateP4Command('chang
afe00 65 73 20 27 2e 20 24 74 68 69 73 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 20 2e 20 27 2f 2e 2e 2e es.'..$this->getStream()...'/...
afe20 27 2c 20 66 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 ',.false);.$this->executeCommand
afe40 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 6f 6d ($command);.$result.=.$this->com
afe60 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 65 28 mandResult;.$resArray.=.explode(
afe80 50 48 50 5f 45 4f 4c 2c 20 24 72 65 73 75 6c 74 29 3b 0a 24 6c 61 73 74 43 6f 6d 6d 69 74 20 3d PHP_EOL,.$result);.$lastCommit.=
afea0 20 24 72 65 73 41 72 72 61 79 5b 30 5d 3b 0a 24 6c 61 73 74 43 6f 6d 6d 69 74 41 72 72 20 3d 20 .$resArray[0];.$lastCommitArr.=.
afec0 65 78 70 6c 6f 64 65 28 27 20 27 2c 20 24 6c 61 73 74 43 6f 6d 6d 69 74 29 3b 0a 24 6c 61 73 74 explode('.',.$lastCommit);.$last
afee0 43 6f 6d 6d 69 74 4e 75 6d 20 3d 20 24 6c 61 73 74 43 6f 6d 6d 69 74 41 72 72 5b 31 5d 3b 0a 0a CommitNum.=.$lastCommitArr[1];..
aff00 24 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 27 6d 61 73 74 65 72 27 20 3d 3e 20 24 70 $branches.=.array('master'.=>.$p
aff20 6f 73 73 69 62 6c 65 42 72 61 6e 63 68 65 73 5b 24 74 68 69 73 2d 3e 70 34 42 72 61 6e 63 68 5d ossibleBranches[$this->p4Branch]
aff40 20 2e 20 27 40 27 2e 20 24 6c 61 73 74 43 6f 6d 6d 69 74 4e 75 6d 29 3b 0a 0a 72 65 74 75 72 6e ...'@'..$lastCommitNum);..return
aff60 20 24 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 .$branches;.}..public.function.g
aff80 65 74 54 61 67 73 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 etTags().{.$command.=.$this->gen
affa0 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 6c 61 62 65 6c 73 27 29 3b 0a 24 74 68 69 73 2d erateP4Command('labels');.$this-
affc0 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 75 >executeCommand($command);.$resu
affe0 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 41 lt.=.$this->commandResult;.$resA
b0000 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 29 rray.=.explode(PHP_EOL,.$result)
b0020 3b 0a 24 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 72 65 73 ;.$tags.=.array();.foreach.($res
b0040 41 72 72 61 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 Array.as.$line).{.$index.=.strpo
b0060 73 28 24 6c 69 6e 65 2c 20 27 4c 61 62 65 6c 27 29 3b 0a 69 66 20 28 21 28 24 69 6e 64 65 78 20 s($line,.'Label');.if.(!($index.
b0080 3d 3d 3d 20 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 ===.false)).{.$fields.=.explode(
b00a0 27 20 27 2c 20 24 6c 69 6e 65 29 3b 0a 24 74 61 67 73 5b 24 66 69 65 6c 64 73 5b 31 5d 5d 20 3d '.',.$line);.$tags[$fields[1]].=
b00c0 20 24 74 68 69 73 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 20 2e 20 27 40 27 20 2e 20 24 66 69 65 .$this->getStream()...'@'...$fie
b00e0 6c 64 73 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 61 67 73 3b 0a 7d 0a 0a 70 75 lds[1];.}.}..return.$tags;.}..pu
b0100 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 53 74 72 65 61 6d 28 29 0a 7b 0a 24 63 blic.function.checkStream().{.$c
b0120 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
b0140 64 28 27 64 65 70 6f 74 73 27 2c 20 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 d('depots',.false);.$this->execu
b0160 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 3d 20 24 teCommand($command);.$result.=.$
b0180 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 41 72 72 61 79 20 3d this->commandResult;.$resArray.=
b01a0 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 29 3b 0a 66 6f 72 65 .explode(PHP_EOL,.$result);.fore
b01c0 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 7b 0a 24 69 6e 64 65 ach.($resArray.as.$line).{.$inde
b01e0 78 20 3d 20 73 74 72 70 6f 73 28 24 6c 69 6e 65 2c 20 27 44 65 70 6f 74 27 29 3b 0a 69 66 20 28 x.=.strpos($line,.'Depot');.if.(
b0200 21 28 24 69 6e 64 65 78 20 3d 3d 3d 20 66 61 6c 73 65 29 29 20 7b 0a 24 66 69 65 6c 64 73 20 3d !($index.===.false)).{.$fields.=
b0220 20 65 78 70 6c 6f 64 65 28 27 20 27 2c 20 24 6c 69 6e 65 29 3b 0a 69 66 20 28 73 74 72 63 6d 70 .explode('.',.$line);.if.(strcmp
b0240 28 24 74 68 69 73 2d 3e 70 34 44 65 70 6f 74 2c 20 24 66 69 65 6c 64 73 5b 31 5d 29 20 3d 3d 3d ($this->p4Depot,.$fields[1]).===
b0260 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 70 34 44 65 70 6f 74 54 79 70 65 20 3d 20 24 66 69 65 6c .0).{.$this->p4DepotType.=.$fiel
b0280 64 73 5b 33 5d 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 53 74 72 65 61 6d 28 29 ds[3];..return.$this->isStream()
b02a0 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 70 72 6f 74 65 63 ;.}.}.}..return.false;.}..protec
b02c0 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 68 61 6e 67 65 4c 69 73 74 28 24 72 65 66 65 ted.function.getChangeList($refe
b02e0 72 65 6e 63 65 29 0a 7b 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 6f 73 28 24 72 65 66 65 72 65 rence).{.$index.=.strpos($refere
b0300 6e 63 65 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 65 29 nce,.'@');.if.($index.===.false)
b0320 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 6c 61 62 65 6c 20 3d 20 73 75 62 73 74 72 28 24 72 65 .{.return;.}.$label.=.substr($re
b0340 66 65 72 65 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 ference,.$index);.$command.=.$th
b0360 69 73 2d 3e 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 is->generateP4Command('.changes.
b0380 2d 6d 31 20 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 -m1.'...$label);.$this->executeC
b03a0 6f 6d 6d 61 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 ommand($command);.$changes.=.$th
b03c0 69 73 2d 3e 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 is->commandResult;.if.(strpos($c
b03e0 68 61 6e 67 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 hanges,.'Change').!==.0).{.retur
b0400 6e 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 61 n;.}.$fields.=.explode('.',.$cha
b0420 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 3b nges);.$changeList.=.$fields[1];
b0440 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 70 75 62 6c 69 63 20 ..return.$changeList;.}..public.
b0460 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 6f 6d 52 65 66 65 function.getCommitLogs($fromRefe
b0480 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 6f 6d 43 68 61 6e rence,.$toReference).{.$fromChan
b04a0 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 69 73 74 28 24 66 geList.=.$this->getChangeList($f
b04c0 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 61 6e 67 65 4c 69 romReference);.if.($fromChangeLi
b04e0 73 74 20 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 74 6f 43 68 61 6e 67 st.==.null).{.return;.}.$toChang
b0500 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 69 73 74 28 24 74 6f eList.=.$this->getChangeList($to
b0520 52 65 66 65 72 65 6e 63 65 29 3b 0a 69 66 20 28 24 74 6f 43 68 61 6e 67 65 4c 69 73 74 20 3d 3d Reference);.if.($toChangeList.==
b0540 20 6e 75 6c 6c 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 69 6e 64 65 78 20 3d 20 73 74 72 70 .null).{.return;.}.$index.=.strp
b0560 6f 73 28 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c 20 27 40 27 29 3b 0a 24 6d 61 69 6e 20 3d os($fromReference,.'@');.$main.=
b0580 20 73 75 62 73 74 72 28 24 66 72 6f 6d 52 65 66 65 72 65 6e 63 65 2c 20 30 2c 20 24 69 6e 64 65 .substr($fromReference,.0,.$inde
b05a0 78 29 20 2e 20 27 2f 2e 2e 2e 27 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 x)...'/...';.$command.=.$this->g
b05c0 65 6e 65 72 61 74 65 50 34 43 6f 6d 6d 61 6e 64 28 27 66 69 6c 65 6c 6f 67 20 27 20 2e 20 24 6d enerateP4Command('filelog.'...$m
b05e0 61 69 6e 20 2e 20 27 40 27 20 2e 20 24 66 72 6f 6d 43 68 61 6e 67 65 4c 69 73 74 2e 20 27 2c 27 ain...'@'...$fromChangeList..','
b0600 20 2e 20 24 74 6f 43 68 61 6e 67 65 4c 69 73 74 29 3b 0a 24 74 68 69 73 2d 3e 65 78 65 63 75 74 ...$toChangeList);.$this->execut
b0620 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
b0640 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 52 65 73 75 6c 74 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 his->commandResult;..return.$res
b0660 75 6c 74 3b 0a 7d 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 ult;.}..public.function.getFiles
b0680 79 73 74 65 6d 28 29 0a 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 66 69 6c 65 73 ystem().{.if.(empty($this->files
b06a0 79 73 74 65 6d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 65 ystem)).{.$this->filesystem.=.ne
b06c0 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 0a 7d 0a w.Filesystem($this->process);.}.
b06e0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 3b 0a 7d 0a 0a 70 75 .return.$this->filesystem;.}..pu
b0700 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 69 6c 65 73 79 73 74 65 6d 28 46 69 6c 65 blic.function.setFilesystem(File
b0720 73 79 73 74 65 6d 20 24 66 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 system.$fs).{.$this->filesystem.
b0740 3d 20 24 66 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 =.$fs;.}.}.<?php............name
b0760 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
b0780 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 75 73 65 y\Component\Process\Process;.use
b07a0 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
b07c0 73 73 55 74 69 6c 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 72 ssUtils;.use.Composer\IO\IOInter
b07e0 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 0a face;.....class.ProcessExecutor.
b0800 7b 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 24 74 69 6d 65 6f 75 74 20 3d 20 33 30 {.protected.static.$timeout.=.30
b0820 30 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 70 74 75 72 65 4f 75 74 70 75 74 3b 0a 70 72 0;..protected.$captureOutput;.pr
b0840 6f 74 65 63 74 65 64 20 24 65 72 72 6f 72 4f 75 74 70 75 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 otected.$errorOutput;.protected.
b0860 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 74 72 75 63 $io;..public.function.__construc
b0880 74 28 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 68 69 t(IOInterface.$io.=.null).{.$thi
b08a0 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 s->io.=.$io;.}...........public.
b08c0 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 20 26 24 6f 75 74 function.execute($command,.&$out
b08e0 70 75 74 20 3d 20 6e 75 6c 6c 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 put.=.null,.$cwd.=.null).{.if.($
b0900 74 68 69 73 2d 3e 69 6f 20 26 26 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 44 65 62 75 67 28 29 this->io.&&.$this->io->isDebug()
b0920 29 20 7b 0a 24 73 61 66 65 43 6f 6d 6d 61 6e 64 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 ).{.$safeCommand.=.preg_replace(
b0940 27 7b 28 3a 2f 2f 5b 5e 3a 2f 5c 73 5d 2b 3a 29 5b 5e 40 5c 73 2f 5d 2b 7d 69 27 2c 20 27 24 31 '{(://[^:/\s]+:)[^@\s/]+}i',.'$1
b0960 2a 2a 2a 2a 27 2c 20 24 63 6f 6d 6d 61 6e 64 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 ****',.$command);.$this->io->wri
b0980 74 65 45 72 72 6f 72 28 27 45 78 65 63 75 74 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 28 27 2e 28 24 teError('Executing.command.('.($
b09a0 63 77 64 20 3f 3a 20 27 43 57 44 27 29 2e 27 29 3a 20 27 2e 24 73 61 66 65 43 6f 6d 6d 61 6e 64 cwd.?:.'CWD').'):.'.$safeCommand
b09c0 29 3b 0a 7d 0a 0a 0a 20 0a 20 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 63 77 64 20 26 26 20 64 );.}......if.(null.===.$cwd.&&.d
b09e0 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 4f 4e 5f 42 55 49 4c efined('PHP_WINDOWS_VERSION_BUIL
b0a00 44 27 29 20 26 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 D').&&.false.!==.strpos($command
b0a20 2c 20 27 67 69 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 ,.'git').&&.getcwd()).{.$cwd.=.r
b0a40 65 61 6c 70 61 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 ealpath(getcwd());.}..$this->cap
b0a60 74 75 72 65 4f 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 tureOutput.=.count(func_get_args
b0a80 28 29 29 20 3e 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 ()).>.1;.$this->errorOutput.=.nu
b0aa0 6c 6c 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 ll;.$process.=.new.Process($comm
b0ac0 61 6e 64 2c 20 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 and,.$cwd,.null,.null,.static::g
b0ae0 65 74 54 69 6d 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 etTimeout());..$callback.=.is_ca
b0b00 6c 6c 61 62 6c 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 llable($output).?.$output.:.arra
b0b20 79 28 24 74 68 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 y($this,.'outputHandler');.$proc
b0b40 65 73 73 2d 3e 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 ess->run($callback);..if.($this-
b0b60 3e 63 61 70 74 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 >captureOutput.&&.!is_callable($
b0b80 6f 75 74 70 75 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 output)).{.$output.=.$process->g
b0ba0 65 74 4f 75 74 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 etOutput();.}..$this->errorOutpu
b0bc0 74 20 3d 20 24 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 t.=.$process->getErrorOutput();.
b0be0 0a 72 65 74 75 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 .return.$process->getExitCode();
b0c00 0a 7d 0a 0a 70 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 .}..public.function.splitLines($
b0c20 6f 75 74 70 75 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 output).{.$output.=.trim($output
b0c40 29 3b 0a 0a 72 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 );..return.((string).$output.===
b0c60 20 27 27 29 20 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 .'').?.array().:.preg_split('{\r
b0c80 3f 5c 6e 7d 27 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 ?\n}',.$output);.}.......public.
b0ca0 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 0a 7b 0a 72 65 74 75 function.getErrorOutput().{.retu
b0cc0 72 6e 20 24 74 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 rn.$this->errorOutput;.}..public
b0ce0 20 66 75 6e 63 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 .function.outputHandler($type,.$
b0d00 62 75 66 66 65 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 buffer).{.if.($this->captureOutp
b0d20 75 74 29 20 7b 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 ut).{.return;.}..echo.$buffer;.}
b0d40 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 54 69 6d 65 ..public.static.function.getTime
b0d60 6f 75 74 28 29 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 out().{.return.static::$timeout;
b0d80 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 73 65 74 54 69 .}..public.static.function.setTi
b0da0 6d 65 6f 75 74 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 meout($timeout).{.static::$timeo
b0dc0 75 74 20 3d 20 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 ut.=.$timeout;.}.........public.
b0de0 73 74 61 74 69 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 static.function.escape($argument
b0e00 29 0a 7b 0a 72 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 ).{.return.ProcessUtils::escapeA
b0e20 72 67 75 6d 65 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 rgument($argument);.}.}.<?php...
b0e40 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 69 6c .........namespace.Composer\Util
b0e60 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 6d 70 ;..use.Composer\Config;.use.Comp
b0e80 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
b0ea0 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 3b r\Downloader\TransportException;
b0ec0 0a 0a 0a 0a 0a 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 .......class.RemoteFilesystem.{.
b0ee0 70 72 69 76 61 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 private.$io;.private.$config;.pr
b0f00 69 76 61 74 65 20 24 62 79 74 65 73 4d 61 78 3b 0a 70 72 69 76 61 74 65 20 24 6f 72 69 67 69 6e ivate.$bytesMax;.private.$origin
b0f20 55 72 6c 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 55 72 6c 3b 0a 70 72 69 76 61 74 65 20 24 Url;.private.$fileUrl;.private.$
b0f40 66 69 6c 65 4e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 72 65 74 72 79 3b 0a 70 72 69 76 61 74 fileName;.private.$retry;.privat
b0f60 65 20 24 70 72 6f 67 72 65 73 73 3b 0a 70 72 69 76 61 74 65 20 24 6c 61 73 74 50 72 6f 67 72 65 e.$progress;.private.$lastProgre
b0f80 73 73 3b 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 29 3b 0a ss;.private.$options.=.array();.
b0fa0 70 72 69 76 61 74 65 20 24 64 69 73 61 62 6c 65 54 6c 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 private.$disableTls.=.false;.pri
b0fc0 76 61 74 65 20 24 72 65 74 72 79 41 75 74 68 46 61 69 6c 75 72 65 3b 0a 70 72 69 76 61 74 65 20 vate.$retryAuthFailure;.private.
b0fe0 24 6c 61 73 74 48 65 61 64 65 72 73 3b 0a 70 72 69 76 61 74 65 20 24 73 74 6f 72 65 41 75 74 68 $lastHeaders;.private.$storeAuth
b1000 3b 0a 70 72 69 76 61 74 65 20 24 64 65 67 72 61 64 65 64 4d 6f 64 65 20 3d 20 66 61 6c 73 65 3b ;.private.$degradedMode.=.false;
b1020 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
b1040 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
b1060 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 3d 20 61 onfig.=.null,.array.$options.=.a
b1080 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 7b 0a 24 rray(),.$disableTls.=.false).{.$
b10a0 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 61 62 6c this->io.=.$io;......if.($disabl
b10c0 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 6f 6e 73 eTls.===.false).{.$this->options
b10e0 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 29 3b 0a 69 66 20 28 .=.$this->getTlsDefaults();.if.(
b1100 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d 29 isset($options['ssl']['cafile'])
b1120 0a 26 26 20 28 0a 21 69 73 5f 72 65 61 64 61 62 6c 65 28 24 6f 70 74 69 6f 6e 73 5b 27 73 73 6c .&&.(.!is_readable($options['ssl
b1140 27 5d 5b 27 63 61 66 69 6c 65 27 5d 29 0a 7c 7c 20 21 73 65 6c 66 3a 3a 76 61 6c 69 64 61 74 65 ']['cafile']).||.!self::validate
b1160 43 61 46 69 6c 65 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6f 70 74 69 6f 6e CaFile(file_get_contents($option
b1180 73 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d 29 29 0a 29 0a 29 20 7b 0a 74 68 72 6f 77 s['ssl']['cafile'])).).).{.throw
b11a0 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 20 63 6f 6e .new.TransportException('The.con
b11c0 66 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 figured.cafile.was.not.valid.or.
b11e0 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 72 65 61 64 2e 27 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b could.not.be.read.');.}.}.else.{
b1200 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 54 6c 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 .$this->disableTls.=.true;.}....
b1220 24 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 $this->options.=.array_replace_r
b1240 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 6f 70 74 69 6f 6e ecursive($this->options,.$option
b1260 73 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 7d 0a 0a s);.$this->config.=.$config;.}..
b1280 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 63 6f 70 79 28 ...........public.function.copy(
b12a0 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 66 69 6c 65 55 72 6c 2c 20 24 66 69 6c 65 4e 61 6d 65 2c $originUrl,.$fileUrl,.$fileName,
b12c0 20 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 .$progress.=.true,.$options.=.ar
b12e0 72 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 ray()).{.return.$this->get($orig
b1300 69 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 24 66 69 6c 65 inUrl,.$fileUrl,.$options,.$file
b1320 4e 61 6d 65 2c 20 24 70 72 6f 67 72 65 73 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 Name,.$progress);.}............p
b1340 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 73 28 24 6f 72 69 67 ublic.function.getContents($orig
b1360 69 6e 55 72 6c 2c 20 24 66 69 6c 65 55 72 6c 2c 20 24 70 72 6f 67 72 65 73 73 20 3d 20 74 72 75 inUrl,.$fileUrl,.$progress.=.tru
b1380 65 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 e,.$options.=.array()).{.return.
b13a0 24 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 $this->get($originUrl,.$fileUrl,
b13c0 20 24 6f 70 74 69 6f 6e 73 2c 20 6e 75 6c 6c 2c 20 24 70 72 6f 67 72 65 73 73 29 3b 0a 7d 0a 0a .$options,.null,.$progress);.}..
b13e0 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 73 28 .....public.function.getOptions(
b1400 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a ).{.return.$this->options;.}....
b1420 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 6f 6e 73 28 61 72 ...public.function.setOptions(ar
b1440 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 69 6f 6e 73 20 3d ray.$options).{.$this->options.=
b1460 20 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 .array_replace_recursive($this->
b1480 6f 70 74 69 6f 6e 73 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 options,.$options);.}..public.fu
b14a0 6e 63 74 69 6f 6e 20 69 73 54 6c 73 44 69 73 61 62 6c 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 nction.isTlsDisabled().{.return.
b14c0 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 54 6c 73 20 3d 3d 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a $this->disableTls.===.true;.}...
b14e0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 61 73 74 48 65 61 64 65 ....public.function.getLastHeade
b1500 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 61 73 74 48 65 61 64 65 72 73 rs().{.return.$this->lastHeaders
b1520 3b 0a 7d 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 6e ;.}................protected.fun
b1540 63 74 69 6f 6e 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 ction.get($originUrl,.$fileUrl,.
b1560 24 61 64 64 69 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 $additionalOptions.=.array(),.$f
b1580 69 6c 65 4e 61 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 ileName.=.null,.$progress.=.true
b15a0 29 0a 7b 0a 69 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 ).{.if.(strpos($originUrl,.'.git
b15c0 68 75 62 2e 63 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 hub.com').===.(strlen($originUrl
b15e0 29 20 2d 20 31 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 ).-.11)).{.$originUrl.=.'github.
b1600 63 6f 6d 27 3b 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 com';.}..$this->scheme.=.parse_u
b1620 72 6c 28 24 66 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 rl($fileUrl,.PHP_URL_SCHEME);.$t
b1640 68 69 73 2d 3e 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 his->bytesMax.=.0;.$this->origin
b1660 55 72 6c 20 3d 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 Url.=.$originUrl;.$this->fileUrl
b1680 20 3d 20 24 66 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 .=.$fileUrl;.$this->fileName.=.$
b16a0 66 69 6c 65 4e 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 fileName;.$this->progress.=.$pro
b16c0 67 72 65 73 73 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 gress;.$this->lastProgress.=.nul
b16e0 6c 3b 0a 24 74 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 l;.$this->retryAuthFailure.=.tru
b1700 65 3b 0a 24 74 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 e;.$this->lastHeaders.=.array();
b1720 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 73 3f 3a 2f 2f 28 ....if.(preg_match('{^https?://(
b1740 2e 2b 29 3a 28 2e 2b 29 40 28 5b 5e 2f 5d 2b 29 7d 69 27 2c 20 24 66 69 6c 65 55 72 6c 2c 20 24 .+):(.+)@([^/]+)}i',.$fileUrl,.$
b1760 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 6e 74 69 match)).{.$this->io->setAuthenti
b1780 63 61 74 69 6f 6e 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 75 72 6c 64 65 63 6f 64 65 28 24 6d 61 cation($originUrl,.urldecode($ma
b17a0 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 3b 0a tch[1]),.urldecode($match[2]));.
b17c0 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 5b }..if.(isset($additionalOptions[
b17e0 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 69 73 2d 'retry-auth-failure'])).{.$this-
b1800 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 61 64 64 69 >retryAuthFailure.=.(bool).$addi
b1820 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 2d 66 61 69 6c 75 72 tionalOptions['retry-auth-failur
b1840 65 27 5d 3b 0a 0a 75 6e 73 65 74 28 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 5b 27 e'];..unset($additionalOptions['
b1860 72 65 74 72 79 2d 61 75 74 68 2d 66 61 69 6c 75 72 65 27 5d 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f retry-auth-failure']);.}..$optio
b1880 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 46 6f 72 55 72 6c 28 24 6f 72 ns.=.$this->getOptionsForUrl($or
b18a0 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 3b 0a 0a 69 iginUrl,.$additionalOptions);..i
b18c0 66 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 f.($this->io->isDebug()).{.$this
b18e0 2d 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 28 73 75 62 73 74 72 28 24 66 69 6c 65 55 72 ->io->writeError((substr($fileUr
b1900 6c 2c 20 30 2c 20 34 29 20 3d 3d 3d 20 27 68 74 74 70 27 20 3f 20 27 44 6f 77 6e 6c 6f 61 64 69 l,.0,.4).===.'http'.?.'Downloadi
b1920 6e 67 20 27 20 3a 20 27 52 65 61 64 69 6e 67 20 27 29 20 2e 20 24 66 69 6c 65 55 72 6c 29 3b 0a ng.'.:.'Reading.')...$fileUrl);.
b1940 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 67 69 74 68 75 62 2d 74 6f }..if.(isset($options['github-to
b1960 6b 65 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 ken'])).{.$fileUrl..=.(false.===
b1980 20 73 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 .strpos($fileUrl,.'?').?.'?'.:.'
b19a0 26 27 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 &')...'access_token='.$options['
b19c0 67 69 74 68 75 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 github-token'];.unset($options['
b19e0 67 69 74 68 75 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 github-token']);.}..if.(isset($o
b1a00 70 74 69 6f 6e 73 5b 27 67 69 74 6c 61 62 2d 74 6f 6b 65 6e 27 5d 29 29 20 7b 0a 24 66 69 6c 65 ptions['gitlab-token'])).{.$file
b1a20 55 72 6c 20 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 Url..=.(false.===.strpos($fileUr
b1a40 6c 2c 20 27 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 l,.'?').?.'?'.:.'&')...'access_t
b1a60 6f 6b 65 6e 3d 27 2e 24 6f 70 74 69 6f 6e 73 5b 27 67 69 74 6c 61 62 2d 74 6f 6b 65 6e 27 5d 3b oken='.$options['gitlab-token'];
b1a80 0a 75 6e 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 6e 27 5d 29 .unset($options['gitlab-token'])
b1aa0 3b 0a 7d 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 29 ;.}..if.(isset($options['http'])
b1ac0 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 69 67 6e 6f 72 65 5f 65 72 72 ).{.$options['http']['ignore_err
b1ae0 6f 72 73 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 65 67 72 ors'].=.true;.}..if.($this->degr
b1b00 61 64 65 64 4d 6f 64 65 20 26 26 20 73 75 62 73 74 72 28 24 66 69 6c 65 55 72 6c 2c 20 30 2c 20 adedMode.&&.substr($fileUrl,.0,.
b1b20 32 31 29 20 3d 3d 3d 20 27 68 74 74 70 3a 2f 2f 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 2f 27 29 21).===.'http://packagist.org/')
b1b40 20 7b 0a 0a 20 24 66 69 6c 65 55 72 6c 20 3d 20 27 68 74 74 70 3a 2f 2f 27 20 2e 20 67 65 74 68 .{...$fileUrl.=.'http://'...geth
b1b60 6f 73 74 62 79 6e 61 6d 65 28 27 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 27 29 20 2e 20 73 75 62 ostbyname('packagist.org')...sub
b1b80 73 74 72 28 24 66 69 6c 65 55 72 6c 2c 20 32 30 29 3b 0a 7d 0a 0a 24 63 74 78 20 3d 20 53 74 72 str($fileUrl,.20);.}..$ctx.=.Str
b1ba0 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 78 74 28 24 66 eamContextFactory::getContext($f
b1bc0 69 6c 65 55 72 6c 2c 20 24 6f 70 74 69 6f 6e 73 2c 20 61 72 72 61 79 28 27 6e 6f 74 69 66 69 63 ileUrl,.$options,.array('notific
b1be0 61 74 69 6f 6e 27 20 3d 3e 20 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 63 61 6c 6c 62 61 63 6b ation'.=>.array($this,.'callback
b1c00 47 65 74 27 29 29 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 29 20 7b Get')));..if.($this->progress).{
b1c20 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 44 6f 77 6e .$this->io->writeError("....Down
b1c40 6c 6f 61 64 69 6e 67 3a 20 3c 63 6f 6d 6d 65 6e 74 3e 43 6f 6e 6e 65 63 74 69 6e 67 2e 2e 2e 3c loading:.<comment>Connecting...<
b1c60 2f 63 6f 6d 6d 65 6e 74 3e 22 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 24 65 72 72 6f 72 4d 65 73 /comment>",.false);.}..$errorMes
b1c80 73 61 67 65 20 3d 20 27 27 3b 0a 24 65 72 72 6f 72 43 6f 64 65 20 3d 20 30 3b 0a 24 72 65 73 75 sage.=.'';.$errorCode.=.0;.$resu
b1ca0 6c 74 20 3d 20 66 61 6c 73 65 3b 0a 73 65 74 5f 65 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 66 75 lt.=.false;.set_error_handler(fu
b1cc0 6e 63 74 69 6f 6e 20 28 24 63 6f 64 65 2c 20 24 6d 73 67 29 20 75 73 65 20 28 26 24 65 72 72 6f nction.($code,.$msg).use.(&$erro
b1ce0 72 4d 65 73 73 61 67 65 29 20 7b 0a 69 66 20 28 24 65 72 72 6f 72 4d 65 73 73 61 67 65 29 20 7b rMessage).{.if.($errorMessage).{
b1d00 0a 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 22 3b 0a 7d 0a 24 65 72 72 6f 72 .$errorMessage..=."\n";.}.$error
b1d20 4d 65 73 73 61 67 65 20 2e 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 66 69 6c 65 5f Message..=.preg_replace('{^file_
b1d40 67 65 74 5f 63 6f 6e 74 65 6e 74 73 5c 28 2e 2a 3f 5c 29 3a 20 7d 27 2c 20 27 27 2c 20 24 6d 73 get_contents\(.*?\):.}',.'',.$ms
b1d60 67 29 3b 0a 7d 29 3b 0a 74 72 79 20 7b 0a 24 72 65 73 75 6c 74 20 3d 20 66 69 6c 65 5f 67 65 74 g);.});.try.{.$result.=.file_get
b1d80 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 55 72 6c 2c 20 66 61 6c 73 65 2c 20 24 63 74 78 29 _contents($fileUrl,.false,.$ctx)
b1da0 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.(
b1dc0 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
b1de0 20 26 26 20 21 65 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 .&&.!empty($http_response_header
b1e00 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 74 70 5f 72 65 73 [0])).{.$e->setHeaders($http_res
b1e20 70 6f 6e 73 65 5f 68 65 61 64 65 72 29 3b 0a 7d 0a 69 66 20 28 24 65 20 69 6e 73 74 61 6e 63 65 ponse_header);.}.if.($e.instance
b1e40 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 72 65 73 75 6c 74 of.TransportException.&&.$result
b1e60 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 65 2d 3e 73 65 74 52 65 73 70 6f 6e 73 65 28 24 72 .!==.false).{.$e->setResponse($r
b1e80 65 73 75 6c 74 29 3b 0a 7d 0a 24 72 65 73 75 6c 74 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 69 66 20 esult);.}.$result.=.false;.}.if.
b1ea0 28 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 26 26 20 21 69 6e 69 5f 67 65 74 28 27 61 6c 6c 6f ($errorMessage.&&.!ini_get('allo
b1ec0 77 5f 75 72 6c 5f 66 6f 70 65 6e 27 29 29 20 7b 0a 24 65 72 72 6f 72 4d 65 73 73 61 67 65 20 3d w_url_fopen')).{.$errorMessage.=
b1ee0 20 27 61 6c 6c 6f 77 5f 75 72 6c 5f 66 6f 70 65 6e 20 6d 75 73 74 20 62 65 20 65 6e 61 62 6c 65 .'allow_url_fopen.must.be.enable
b1f00 64 20 69 6e 20 70 68 70 2e 69 6e 69 20 28 27 2e 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2e 27 29 d.in.php.ini.('.$errorMessage.')
b1f20 27 3b 0a 7d 0a 72 65 73 74 6f 72 65 5f 65 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 29 3b 0a 69 66 ';.}.restore_error_handler();.if
b1f40 20 28 69 73 73 65 74 28 24 65 29 20 26 26 20 21 24 74 68 69 73 2d 3e 72 65 74 72 79 29 20 7b 0a .(isset($e).&&.!$this->retry).{.
b1f60 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 20 26 26 20 66 61 6c 73 if.(!$this->degradedMode.&&.fals
b1f80 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 67 65 28 29 2c 20 27 e.!==.strpos($e->getMessage(),.'
b1fa0 4f 70 65 72 61 74 69 6f 6e 20 74 69 6d 65 64 20 6f 75 74 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e Operation.timed.out')).{.$this->
b1fc0 64 65 67 72 61 64 65 64 4d 6f 64 65 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e degradedMode.=.true;.$this->io->
b1fe0 77 72 69 74 65 45 72 72 6f 72 28 61 72 72 61 79 28 0a 27 3c 65 72 72 6f 72 3e 27 2e 24 65 2d 3e writeError(array(.'<error>'.$e->
b2000 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 65 72 72 6f 72 3e 27 2c 0a 27 3c 65 72 72 6f 72 getMessage().'</error>',.'<error
b2020 3e 52 65 74 72 79 69 6e 67 20 77 69 74 68 20 64 65 67 72 61 64 65 64 20 6d 6f 64 65 2c 20 63 68 >Retrying.with.degraded.mode,.ch
b2040 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 72 67 2f 64 6f 63 2f eck.https://getcomposer.org/doc/
b2060 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 6d 64 23 64 65 67 72 articles/troubleshooting.md#degr
b2080 61 64 65 64 2d 6d 6f 64 65 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 3c 2f 65 72 72 6f 72 3e 27 aded-mode.for.more.info</error>'
b20a0 2c 0a 29 29 3b 0a 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 ,.));..return.$this->get($this->
b20c0 6f 72 69 67 69 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 originUrl,.$this->fileUrl,.$addi
b20e0 74 69 6f 6e 61 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 tionalOptions,.$this->fileName,.
b2100 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d $this->progress);.}..throw.$e;.}
b2120 0a 0a 0a 20 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 65 ....if.(!empty($http_response_he
b2140 61 64 65 72 5b 30 5d 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 48 54 54 50 2f 5c ader[0]).&&.preg_match('{^HTTP/\
b2160 53 2b 20 28 5b 34 35 5d 5c 64 5c 64 29 7d 69 27 2c 20 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 S+.([45]\d\d)}i',.$http_response
b2180 5f 68 65 61 64 65 72 5b 30 5d 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 65 72 72 6f 72 43 6f 64 _header[0],.$match)).{.$errorCod
b21a0 65 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 72 65 74 72 79 e.=.$match[1];.if.(!$this->retry
b21c0 29 20 7b 0a 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 ).{.$e.=.new.TransportException(
b21e0 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 66 69 6c 65 20 63 'The."'.$this->fileUrl.'".file.c
b2200 6f 75 6c 64 20 6e 6f 74 20 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 28 27 2e 24 68 74 74 70 5f ould.not.be.downloaded.('.$http_
b2220 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 5b 30 5d 2e 27 29 27 2c 20 24 65 72 72 6f 72 43 6f response_header[0].')',.$errorCo
b2240 64 65 29 3b 0a 24 65 2d 3e 73 65 74 48 65 61 64 65 72 73 28 24 68 74 74 70 5f 72 65 73 70 6f 6e de);.$e->setHeaders($http_respon
b2260 73 65 5f 68 65 61 64 65 72 29 3b 0a 24 65 2d 3e 73 65 74 52 65 73 70 6f 6e 73 65 28 24 72 65 73 se_header);.$e->setResponse($res
b2280 75 6c 74 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 24 72 65 73 75 6c 74 20 3d 20 66 61 6c 73 ult);.throw.$e;.}.$result.=.fals
b22a0 65 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 20 26 26 20 21 24 74 e;.}..if.($this->progress.&&.!$t
b22c0 68 69 73 2d 3e 72 65 74 72 79 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 6f 76 65 72 77 72 69 his->retry).{.$this->io->overwri
b22e0 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 3c 63 6f 6d 6d 65 teError("....Downloading:.<comme
b2300 6e 74 3e 31 30 30 25 3c 2f 63 6f 6d 6d 65 6e 74 3e 22 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 72 nt>100%</comment>");.}....if.($r
b2320 65 73 75 6c 74 20 26 26 20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 7a 6c 69 62 27 esult.&&.extension_loaded('zlib'
b2340 29 20 26 26 20 73 75 62 73 74 72 28 24 66 69 6c 65 55 72 6c 2c 20 30 2c 20 34 29 20 3d 3d 3d 20 ).&&.substr($fileUrl,.0,.4).===.
b2360 27 68 74 74 70 27 29 20 7b 0a 24 64 65 63 6f 64 65 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 'http').{.$decode.=.false;.forea
b2380 63 68 20 28 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 20 61 73 20 24 68 65 ch.($http_response_header.as.$he
b23a0 61 64 65 72 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 63 6f 6e 74 65 6e ader).{.if.(preg_match('{^conten
b23c0 74 2d 65 6e 63 6f 64 69 6e 67 3a 20 2a 67 7a 69 70 20 2a 24 7d 69 27 2c 20 24 68 65 61 64 65 72 t-encoding:.*gzip.*$}i',.$header
b23e0 29 29 20 7b 0a 24 64 65 63 6f 64 65 20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 )).{.$decode.=.true;.}.elseif.(p
b2400 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 29 reg_match('{^HTTP/}i',.$header))
b2420 20 7b 0a 0a 20 0a 20 24 64 65 63 6f 64 65 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 .{.....$decode.=.false;.}.}..if.
b2440 28 24 64 65 63 6f 64 65 29 20 7b 0a 74 72 79 20 7b 0a 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f ($decode).{.try.{.if.(PHP_VERSIO
b2460 4e 5f 49 44 20 3e 3d 20 35 30 34 30 30 29 20 7b 0a 24 72 65 73 75 6c 74 20 3d 20 7a 6c 69 62 5f N_ID.>=.50400).{.$result.=.zlib_
b2480 64 65 63 6f 64 65 28 24 72 65 73 75 6c 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 72 65 73 decode($result);.}.else.{...$res
b24a0 75 6c 74 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 27 63 6f 6d 70 72 65 73 ult.=.file_get_contents('compres
b24c0 73 2e 7a 6c 69 62 3a 2f 2f 64 61 74 61 3a 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6f 63 74 65 74 2d s.zlib://data:application/octet-
b24e0 73 74 72 65 61 6d 3b 62 61 73 65 36 34 2c 27 2e 62 61 73 65 36 34 5f 65 6e 63 6f 64 65 28 24 72 stream;base64,'.base64_encode($r
b2500 65 73 75 6c 74 29 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 72 65 73 75 6c 74 29 20 7b 0a 74 68 72 6f esult));.}..if.(!$result).{.thro
b2520 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 46 61 69 6c 65 64 w.new.TransportException('Failed
b2540 20 74 6f 20 64 65 63 6f 64 65 20 7a 6c 69 62 20 73 74 72 65 61 6d 27 29 3b 0a 7d 0a 7d 20 63 61 .to.decode.zlib.stream');.}.}.ca
b2560 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 74 68 69 73 2d tch.(\Exception.$e).{.if.($this-
b2580 3e 64 65 67 72 61 64 65 64 4d 6f 64 65 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 24 74 >degradedMode).{.throw.$e;.}..$t
b25a0 68 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 74 68 69 73 2d his->degradedMode.=.true;.$this-
b25c0 3e 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 61 72 72 61 79 28 0a 27 3c 65 72 72 6f 72 3e 46 >io->writeError(array(.'<error>F
b25e0 61 69 6c 65 64 20 74 6f 20 64 65 63 6f 64 65 20 72 65 73 70 6f 6e 73 65 3a 20 27 2e 24 65 2d 3e ailed.to.decode.response:.'.$e->
b2600 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 65 72 72 6f 72 3e 27 2c 0a 27 3c 65 72 72 6f 72 getMessage().'</error>',.'<error
b2620 3e 52 65 74 72 79 69 6e 67 20 77 69 74 68 20 64 65 67 72 61 64 65 64 20 6d 6f 64 65 2c 20 63 68 >Retrying.with.degraded.mode,.ch
b2640 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 72 67 2f 64 6f 63 2f eck.https://getcomposer.org/doc/
b2660 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 6d 64 23 64 65 67 72 articles/troubleshooting.md#degr
b2680 61 64 65 64 2d 6d 6f 64 65 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 3c 2f 65 72 72 6f 72 3e 27 aded-mode.for.more.info</error>'
b26a0 2c 0a 29 29 3b 0a 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 ,.));..return.$this->get($this->
b26c0 6f 72 69 67 69 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 originUrl,.$this->fileUrl,.$addi
b26e0 74 69 6f 6e 61 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 tionalOptions,.$this->fileName,.
b2700 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 66 $this->progress);.}.}.}....if.(f
b2720 61 6c 73 65 20 21 3d 3d 20 24 72 65 73 75 6c 74 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 66 69 alse.!==.$result.&&.null.!==.$fi
b2740 6c 65 4e 61 6d 65 29 20 7b 0a 69 66 20 28 27 27 20 3d 3d 3d 20 24 72 65 73 75 6c 74 29 20 7b 0a leName).{.if.(''.===.$result).{.
b2760 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 27 22 27 throw.new.TransportException('"'
b2780 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 6f 6b 65 .$this->fileUrl.'".appears.broke
b27a0 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 72 65 73 n,.and.returned.an.empty.200.res
b27c0 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 27 3b 0a ponse');.}..$errorMessage.=.'';.
b27e0 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 63 6f 64 set_error_handler(function.($cod
b2800 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 20 7b 0a e,.$msg).use.(&$errorMessage).{.
b2820 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 73 73 61 if.($errorMessage).{.$errorMessa
b2840 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 3d 20 70 ge..=."\n";.}.$errorMessage..=.p
b2860 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 6e 74 73 reg_replace('{^file_put_contents
b2880 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 72 65 73 \(.*?\):.}',.'',.$msg);.});.$res
b28a0 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 73 28 24 ult.=.(bool).file_put_contents($
b28c0 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 72 72 6f fileName,.$result);.restore_erro
b28e0 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 65 73 75 r_handler();.if.(false.===.$resu
b2900 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 70 74 69 lt).{.throw.new.TransportExcepti
b2920 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 66 69 6c on('The."'.$this->fileUrl.'".fil
b2940 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 66 69 6c e.could.not.be.written.to.'.$fil
b2960 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 7d 0a 0a eName.':.'.$errorMessage);.}.}..
b2980 69 66 20 28 24 74 68 69 73 2d 3e 72 65 74 72 79 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 74 72 79 if.($this->retry).{.$this->retry
b29a0 20 3d 20 66 61 6c 73 65 3b 0a 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 28 .=.false;..$result.=.$this->get(
b29c0 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 66 69 6c 65 55 72 6c $this->originUrl,.$this->fileUrl
b29e0 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 4f 70 74 69 6f 6e 73 2c 20 24 74 68 69 73 2d 3e 66 69 6c ,.$additionalOptions,.$this->fil
b2a00 65 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 29 3b 0a 0a 24 61 75 74 68 48 eName,.$this->progress);..$authH
b2a20 65 6c 70 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 elper.=.new.AuthHelper($this->io
b2a40 2c 20 24 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 ,.$this->config);.$authHelper->s
b2a60 74 6f 72 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 toreAuth($this->originUrl,.$this
b2a80 2d 3e 73 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 ->storeAuth);.$this->storeAuth.=
b2aa0 20 66 61 6c 73 65 3b 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 .false;..return.$result;.}..if.(
b2ac0 66 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 false.===.$result).{.$e.=.new.Tr
b2ae0 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 74 68 69 73 2d 3e ansportException('The."'.$this->
b2b00 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 62 65 20 64 6f 77 fileUrl.'".file.could.not.be.dow
b2b20 6e 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 nloaded:.'.$errorMessage,.$error
b2b40 43 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 Code);.if.(!empty($http_response
b2b60 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 64 65 72 73 28 24 68 _header[0])).{.$e->setHeaders($h
b2b80 74 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 ttp_response_header);.}..if.(!$t
b2ba0 68 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 his->degradedMode.&&.false.!==.s
b2bc0 74 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 trpos($e->getMessage(),.'Operati
b2be0 6f 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 on.timed.out')).{.$this->degrade
b2c00 64 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 dMode.=.true;.$this->io->writeEr
b2c20 72 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 ror(array(.'<error>'.$e->getMess
b2c40 61 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 age().'</error>',.'<error>Retryi
b2c60 6e 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 ng.with.degraded.mode,.check.htt
b2c80 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
b2ca0 73 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 s/troubleshooting.md#degraded-mo
b2cc0 64 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 de.for.more.info</error>',.));..
b2ce0 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 55 return.$this->get($this->originU
b2d00 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 6c 4f rl,.$this->fileUrl,.$additionalO
b2d20 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 2d 3e ptions,.$this->fileName,.$this->
b2d40 70 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 progress);.}..throw.$e;.}..if.(!
b2d60 65 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 empty($http_response_header[0]))
b2d80 20 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 .{.$this->lastHeaders.=.$http_re
b2da0 73 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 sponse_header;.}..return.$result
b2dc0 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 63 74 69 ;.}.............protected.functi
b2de0 6f 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 on.callbackGet($notificationCode
b2e00 2c 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 ,.$severity,.$message,.$messageC
b2e20 6f 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 ode,.$bytesTransferred,.$bytesMa
b2e40 78 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 x).{.switch.($notificationCode).
b2e60 7b 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 {.case.STREAM_NOTIFY_FAILURE:.if
b2e80 20 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 .(400.===.$messageCode).{.....th
b2ea0 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 54 68 65 20 row.new.TransportException("The.
b2ec0 27 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 '"...$this->fileUrl..."'.URL.cou
b2ee0 6c 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 ld.not.be.accessed:."...$message
b2f00 2c 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 ,.$messageCode);.}.....case.STRE
b2f20 41 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 AM_NOTIFY_AUTH_REQUIRED:.if.(401
b2f40 20 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 .===.$messageCode).{...if.(!$thi
b2f60 73 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 s->retryAuthFailure).{.break;.}.
b2f80 0a 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 .$this->promptAuthAndRetry($mess
b2fa0 61 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 ageCode);.}.break;..case.STREAM_
b2fc0 4e 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 NOTIFY_AUTH_RESULT:.if.(403.===.
b2fe0 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 2d 3e 72 65 $messageCode).{...if.(!$this->re
b3000 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 24 74 68 69 tryAuthFailure).{.break;.}..$thi
b3020 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 67 65 43 6f s->promptAuthAndRetry($messageCo
b3040 64 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 de,.$message);.}.break;..case.ST
b3060 52 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 REAM_NOTIFY_FILE_SIZE_IS:.if.($t
b3080 68 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 his->bytesMax.<.$bytesMax).{.$th
b30a0 69 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 is->bytesMax.=.$bytesMax;.}.brea
b30c0 6b 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 k;..case.STREAM_NOTIFY_PROGRESS:
b30e0 0a 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 .if.($this->bytesMax.>.0.&&.$thi
b3100 73 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 s->progress).{.$progression.=.ro
b3120 75 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 und($bytesTransferred./.$this->b
b3140 79 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 ytesMax.*.100);..if.((0.===.$pro
b3160 67 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 gression.%.5).&&.100.!==.$progre
b3180 73 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 ssion.&&.$progression.!==.$this-
b31a0 3e 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 >lastProgress).{.$this->lastProg
b31c0 72 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 ress.=.$progression;.$this->io->
b31e0 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 3a overwriteError("....Downloading:
b3200 20 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 .<comment>$progression%</comment
b3220 3e 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 >",.false);.}.}.break;..default:
b3240 0a 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 .break;.}.}..protected.function.
b3260 70 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 promptAuthAndRetry($httpStatus,.
b3280 24 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 $reason.=.null).{.if.($this->con
b32a0 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 69 67 69 6e 55 72 6c fig.&&.in_array($this->originUrl
b32c0 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 68 75 62 2d 64 6f 6d ,.$this->config->get('github-dom
b32e0 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 20 3d 20 22 5c 6e 22 ains'),.true)).{.$message.=."\n"
b3300 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 2d 3e 66 69 6c 65 55 .'Could.not.fetch.'.$this->fileU
b3320 72 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 rl.',.please.create.a.GitHub.OAu
b3340 74 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 th.token.'.($httpStatus.===.404.
b3360 3f 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 ?.'to.access.private.repos'.:.'t
b3380 6f 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 o.go.over.the.API.rate.limit');.
b33a0 24 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 $gitHubUtil.=.new.GitHub($this->
b33c0 69 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 io,.$this->config,.null);.if.(!$
b33e0 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 74 68 69 73 gitHubUtil->authorizeOAuth($this
b3400 2d 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 ->originUrl).&&.(!$this->io->isI
b3420 6e 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 nteractive().||.!$gitHubUtil->au
b3440 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 68 69 73 2d thorizeOAuthInteractively($this-
b3460 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 68 72 6f 77 >originUrl,.$message)).).{.throw
b3480 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 6c 64 20 6e .new.TransportException('Could.n
b34a0 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 68 69 73 2d ot.authenticate.against.'.$this-
b34c0 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 69 66 20 28 24 74 >originUrl,.401);.}.}.elseif.($t
b34e0 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 74 68 69 73 2d 3e 6f his->config.&&.in_array($this->o
b3500 72 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 riginUrl,.$this->config->get('gi
b3520 74 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 tlab-domains'),.true)).{.$messag
b3540 65 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 e.=."\n".'Could.not.fetch.'.$thi
b3560 73 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 s->fileUrl.',.enter.your.'...$th
b3580 69 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 is->originUrl...'.credentials.'.
b35a0 2e 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 .($httpStatus.===.401.?.'to.acce
b35c0 73 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 ss.private.repos'.:.'to.go.over.
b35e0 74 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 the.API.rate.limit');.$gitLabUti
b3600 6c 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 l.=.new.GitLab($this->io,.$this-
b3620 3e 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 >config,.null);.if.(!$gitLabUtil
b3640 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 67 69 6e 55 72 ->authorizeOAuth($this->originUr
b3660 6c 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 l).&&.(!$this->io->isInteractive
b3680 28 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 ().||.!$gitLabUtil->authorizeOAu
b36a0 74 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 thInteractively($this->scheme,.$
b36c0 74 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 this->originUrl,.$message)).).{.
b36e0 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 27 43 6f throw.new.TransportException('Co
b3700 75 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 uld.not.authenticate.against.'.$
b3720 74 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 this->originUrl,.401);.}.}.else.
b3740 7b 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 {...if.($httpStatus.===.404).{.r
b3760 65 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 eturn;.}....if.(!$this->io->isIn
b3780 74 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 teractive()).{.if.($httpStatus.=
b37a0 3d 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 ==.401).{.$message.=."The.'"...$
b37c0 74 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 this->fileUrl..."'.URL.required.
b37e0 61 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 authentication.\nYou.must.be.usi
b3800 6e 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 ng.the.interactive.console.to.au
b3820 74 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 thenticate";.}.if.($httpStatus.=
b3840 3d 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 ==.403).{.$message.=."The.'"...$
b3860 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 64 20 6e 6f 74 this->fileUrl..."'.URL.could.not
b3880 20 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 .be.accessed:."...$reason;.}..th
b38a0 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 24 6d 65 73 73 row.new.TransportException($mess
b38c0 61 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 age,.$httpStatus);.}...if.($this
b38e0 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 74 68 69 73 2d 3e 6f ->io->hasAuthentication($this->o
b3900 72 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 riginUrl)).{.throw.new.Transport
b3920 45 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 Exception("Invalid.credentials.f
b3940 6f 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 or.'"...$this->fileUrl..."',.abo
b3960 72 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 rting.",.$httpStatus);.}..$this-
b3980 3e 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 >io->overwriteError('....Authent
b39a0 69 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 ication.required.(<info>'.parse_
b39c0 75 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 url($this->fileUrl,.PHP_URL_HOST
b39e0 29 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 ).'</info>):');.$username.=.$thi
b3a00 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 29 3b 0a s->io->ask('......Username:.');.
b3a20 24 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 $password.=.$this->io->askAndHid
b3a40 65 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 eAnswer('......Password:.');.$th
b3a60 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 74 68 69 73 2d is->io->setAuthentication($this-
b3a80 3e 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 >originUrl,.$username,.$password
b3aa0 29 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 );.$this->storeAuth.=.$this->con
b3ac0 66 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 fig->get('store-auths');.}..$thi
b3ae0 73 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 s->retry.=.true;.throw.new.Trans
b3b00 70 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 portException('RETRY');.}..prote
b3b20 63 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 cted.function.getOptionsForUrl($
b3b40 6f 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 originUrl,.$additionalOptions).{
b3b60 0a 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 .$tlsOptions.=.array();....if.($
b3b80 74 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 this->disableTls.===.false.&&.PH
b3ba0 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3c 20 35 30 36 30 30 29 20 7b 0a 69 66 20 28 21 70 72 65 P_VERSION_ID.<.50600).{.if.(!pre
b3bc0 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f 7d 27 2c 20 24 74 68 69 73 2d 3e 66 g_match('{^https?://}',.$this->f
b3be0 69 6c 65 55 72 6c 29 29 20 7b 0a 24 68 6f 73 74 20 3d 20 24 6f 72 69 67 69 6e 55 72 6c 3b 0a 7d ileUrl)).{.$host.=.$originUrl;.}
b3c00 20 65 6c 73 65 20 7b 0a 24 68 6f 73 74 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 74 68 69 73 2d .else.{.$host.=.parse_url($this-
b3c20 3e 66 69 6c 65 55 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 3b 0a 7d 0a 0a 69 66 20 28 >fileUrl,.PHP_URL_HOST);.}..if.(
b3c40 24 68 6f 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 $host.===.'github.com'.||.$host.
b3c60 3d 3d 3d 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 ===.'api.github.com').{.$host.=.
b3c80 27 2a 2e 67 69 74 68 75 62 2e 63 6f 6d 27 3b 0a 7d 0a 0a 24 74 6c 73 4f 70 74 69 6f 6e 73 5b 27 '*.github.com';.}..$tlsOptions['
b3ca0 73 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 ssl']['CN_match'].=.$host;.$tlsO
b3cc0 70 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 ptions['ssl']['SNI_server_name']
b3ce0 20 3d 20 24 68 6f 73 74 3b 0a 7d 0a 0a 24 68 65 61 64 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b .=.$host;.}..$headers.=.array();
b3d00 0a 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 ..if.(extension_loaded('zlib')).
b3d20 7b 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 {.$headers[].=.'Accept-Encoding:
b3d40 20 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 .gzip';.}..$options.=.array_repl
b3d60 61 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 ace_recursive($this->options,.$t
b3d80 6c 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 lsOptions,.$additionalOptions);.
b3da0 69 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 if.(!$this->degradedMode).{.....
b3dc0 24 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 $options['http']['protocol_versi
b3de0 6f 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 on'].=.1.1;.$headers[].=.'Connec
b3e00 74 69 6f 6e 3a 20 63 6c 6f 73 65 27 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e tion:.close';.}..if.($this->io->
b3e20 68 61 73 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 29 20 7b hasAuthentication($originUrl)).{
b3e40 0a 24 61 75 74 68 20 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 .$auth.=.$this->io->getAuthentic
b3e60 61 74 69 6f 6e 28 24 6f 72 69 67 69 6e 55 72 6c 29 3b 0a 69 66 20 28 27 67 69 74 68 75 62 2e 63 ation($originUrl);.if.('github.c
b3e80 6f 6d 27 20 3d 3d 3d 20 24 6f 72 69 67 69 6e 55 72 6c 20 26 26 20 27 78 2d 6f 61 75 74 68 2d 62 om'.===.$originUrl.&&.'x-oauth-b
b3ea0 61 73 69 63 27 20 3d 3d 3d 20 24 61 75 74 68 5b 27 70 61 73 73 77 6f 72 64 27 5d 29 20 7b 0a 24 asic'.===.$auth['password']).{.$
b3ec0 6f 70 74 69 6f 6e 73 5b 27 67 69 74 68 75 62 2d 74 6f 6b 65 6e 27 5d 20 3d 20 24 61 75 74 68 5b options['github-token'].=.$auth[
b3ee0 27 75 73 65 72 6e 61 6d 65 27 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 'username'];.}.elseif.($this->co
b3f00 6e 66 69 67 20 26 26 20 69 6e 5f 61 72 72 61 79 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 74 68 nfig.&&.in_array($originUrl,.$th
b3f20 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 61 69 6e 73 27 is->config->get('gitlab-domains'
b3f40 29 2c 20 74 72 75 65 29 29 20 7b 0a 69 66 20 28 24 61 75 74 68 5b 27 70 61 73 73 77 6f 72 64 27 ),.true)).{.if.($auth['password'
b3f60 5d 20 3d 3d 3d 20 27 6f 61 75 74 68 32 27 29 20 7b 0a 24 68 65 61 64 65 72 73 5b 5d 20 3d 20 27 ].===.'oauth2').{.$headers[].=.'
b3f80 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 3a 20 42 65 61 72 65 72 20 27 2e 24 61 75 74 68 5b 27 75 Authorization:.Bearer.'.$auth['u
b3fa0 73 65 72 6e 61 6d 65 27 5d 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 61 75 74 68 53 74 72 20 3d sername'];.}.}.else.{.$authStr.=
b3fc0 20 62 61 73 65 36 34 5f 65 6e 63 6f 64 65 28 24 61 75 74 68 5b 27 75 73 65 72 6e 61 6d 65 27 5d .base64_encode($auth['username']
b3fe0 20 2e 20 27 3a 27 20 2e 20 24 61 75 74 68 5b 27 70 61 73 73 77 6f 72 64 27 5d 29 3b 0a 24 68 65 ...':'...$auth['password']);.$he
b4000 61 64 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 61 73 69 63 20 aders[].=.'Authorization:.Basic.
b4020 27 2e 24 61 75 74 68 53 74 72 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 '.$authStr;.}.}..if.(isset($opti
b4040 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 29 20 26 26 20 21 69 73 5f 61 72 ons['http']['header']).&&.!is_ar
b4060 72 61 79 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 29 ray($options['http']['header']))
b4080 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 20 3d 20 .{.$options['http']['header'].=.
b40a0 65 78 70 6c 6f 64 65 28 22 5c 72 5c 6e 22 2c 20 74 72 69 6d 28 24 6f 70 74 69 6f 6e 73 5b 27 68 explode("\r\n",.trim($options['h
b40c0 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 2c 20 22 5c 72 5c 6e 22 29 29 3b 0a 7d 0a 66 6f 72 ttp']['header'],."\r\n"));.}.for
b40e0 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 0a 24 6f 70 each.($headers.as.$header).{.$op
b4100 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 3d 20 24 68 65 61 tions['http']['header'][].=.$hea
b4120 64 65 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 70 72 69 76 der;.}..return.$options;.}..priv
b4140 61 74 65 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 29 0a 7b 0a ate.function.getTlsDefaults().{.
b4160 24 63 69 70 68 65 72 73 20 3d 20 69 6d 70 6c 6f 64 65 28 27 3a 27 2c 20 61 72 72 61 79 28 0a 27 $ciphers.=.implode(':',.array(.'
b4180 45 43 44 48 45 2d 52 53 41 2d 41 45 53 31 32 38 2d 47 43 4d 2d 53 48 41 32 35 36 27 2c 0a 27 45 ECDHE-RSA-AES128-GCM-SHA256',.'E
b41a0 43 44 48 45 2d 45 43 44 53 41 2d 41 45 53 31 32 38 2d 47 43 4d 2d 53 48 41 32 35 36 27 2c 0a 27 CDHE-ECDSA-AES128-GCM-SHA256',.'
b41c0 45 43 44 48 45 2d 52 53 41 2d 41 45 53 32 35 36 2d 47 43 4d 2d 53 48 41 33 38 34 27 2c 0a 27 45 ECDHE-RSA-AES256-GCM-SHA384',.'E
b41e0 43 44 48 45 2d 45 43 44 53 41 2d 41 45 53 32 35 36 2d 47 43 4d 2d 53 48 41 33 38 34 27 2c 0a 27 CDHE-ECDSA-AES256-GCM-SHA384',.'
b4200 44 48 45 2d 52 53 41 2d 41 45 53 31 32 38 2d 47 43 4d 2d 53 48 41 32 35 36 27 2c 0a 27 44 48 45 DHE-RSA-AES128-GCM-SHA256',.'DHE
b4220 2d 44 53 53 2d 41 45 53 31 32 38 2d 47 43 4d 2d 53 48 41 32 35 36 27 2c 0a 27 6b 45 44 48 2b 41 -DSS-AES128-GCM-SHA256',.'kEDH+A
b4240 45 53 47 43 4d 27 2c 0a 27 45 43 44 48 45 2d 52 53 41 2d 41 45 53 31 32 38 2d 53 48 41 32 35 36 ESGCM',.'ECDHE-RSA-AES128-SHA256
b4260 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 32 35 36 27 2c 0a ',.'ECDHE-ECDSA-AES128-SHA256',.
b4280 27 45 43 44 48 45 2d 52 53 41 2d 41 45 53 31 32 38 2d 53 48 41 27 2c 0a 27 45 43 44 48 45 2d 45 'ECDHE-RSA-AES128-SHA',.'ECDHE-E
b42a0 43 44 53 41 2d 41 45 53 31 32 38 2d 53 48 41 27 2c 0a 27 45 43 44 48 45 2d 52 53 41 2d 41 45 53 CDSA-AES128-SHA',.'ECDHE-RSA-AES
b42c0 32 35 36 2d 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 256-SHA384',.'ECDHE-ECDSA-AES256
b42e0 2d 53 48 41 33 38 34 27 2c 0a 27 45 43 44 48 45 2d 52 53 41 2d 41 45 53 32 35 36 2d 53 48 41 27 -SHA384',.'ECDHE-RSA-AES256-SHA'
b4300 2c 0a 27 45 43 44 48 45 2d 45 43 44 53 41 2d 41 45 53 32 35 36 2d 53 48 41 27 2c 0a 27 44 48 45 ,.'ECDHE-ECDSA-AES256-SHA',.'DHE
b4320 2d 52 53 41 2d 41 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 -RSA-AES128-SHA256',.'DHE-RSA-AE
b4340 53 31 32 38 2d 53 48 41 27 2c 0a 27 44 48 45 2d 44 53 53 2d 41 45 53 31 32 38 2d 53 48 41 32 35 S128-SHA',.'DHE-DSS-AES128-SHA25
b4360 36 27 2c 0a 27 44 48 45 2d 52 53 41 2d 41 45 53 32 35 36 2d 53 48 41 32 35 36 27 2c 0a 27 44 48 6',.'DHE-RSA-AES256-SHA256',.'DH
b4380 45 2d 44 53 53 2d 41 45 53 32 35 36 2d 53 48 41 27 2c 0a 27 44 48 45 2d 52 53 41 2d 41 45 53 32 E-DSS-AES256-SHA',.'DHE-RSA-AES2
b43a0 35 36 2d 53 48 41 27 2c 0a 27 41 45 53 31 32 38 2d 47 43 4d 2d 53 48 41 32 35 36 27 2c 0a 27 41 56-SHA',.'AES128-GCM-SHA256',.'A
b43c0 45 53 32 35 36 2d 47 43 4d 2d 53 48 41 33 38 34 27 2c 0a 27 45 43 44 48 45 2d 52 53 41 2d 52 43 ES256-GCM-SHA384',.'ECDHE-RSA-RC
b43e0 34 2d 53 48 41 27 2c 0a 27 45 43 44 48 45 2d 45 43 44 53 41 2d 52 43 34 2d 53 48 41 27 2c 0a 27 4-SHA',.'ECDHE-ECDSA-RC4-SHA',.'
b4400 41 45 53 31 32 38 27 2c 0a 27 41 45 53 32 35 36 27 2c 0a 27 52 43 34 2d 53 48 41 27 2c 0a 27 48 AES128',.'AES256',.'RC4-SHA',.'H
b4420 49 47 48 27 2c 0a 27 21 61 4e 55 4c 4c 27 2c 0a 27 21 65 4e 55 4c 4c 27 2c 0a 27 21 45 58 50 4f IGH',.'!aNULL',.'!eNULL',.'!EXPO
b4440 52 54 27 2c 0a 27 21 44 45 53 27 2c 0a 27 21 33 44 45 53 27 2c 0a 27 21 4d 44 35 27 2c 0a 27 21 RT',.'!DES',.'!3DES',.'!MD5',.'!
b4460 50 53 4b 27 0a 29 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 PSK'.));........$options.=.array
b4480 28 0a 27 73 73 6c 27 20 3d 3e 20 61 72 72 61 79 28 0a 27 63 69 70 68 65 72 73 27 20 3d 3e 20 24 (.'ssl'.=>.array(.'ciphers'.=>.$
b44a0 63 69 70 68 65 72 73 2c 0a 27 76 65 72 69 66 79 5f 70 65 65 72 27 20 3d 3e 20 74 72 75 65 2c 0a ciphers,.'verify_peer'.=>.true,.
b44c0 27 76 65 72 69 66 79 5f 64 65 70 74 68 27 20 3d 3e 20 37 2c 0a 27 53 4e 49 5f 65 6e 61 62 6c 65 'verify_depth'.=>.7,.'SNI_enable
b44e0 64 27 20 3d 3e 20 74 72 75 65 2c 0a 29 0a 29 3b 0a 0a 0a 0a 0a 0a 69 66 20 28 21 69 73 73 65 74 d'.=>.true,.).);......if.(!isset
b4500 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d ($this->options['ssl']['cafile']
b4520 29 29 20 7b 0a 24 72 65 73 75 6c 74 20 3d 20 73 65 6c 66 3a 3a 67 65 74 53 79 73 74 65 6d 43 61 )).{.$result.=.self::getSystemCa
b4540 52 6f 6f 74 42 75 6e 64 6c 65 50 61 74 68 28 29 3b 0a 69 66 20 28 24 72 65 73 75 6c 74 29 20 7b RootBundlePath();.if.($result).{
b4560 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 70 68 61 72 3a 2f 2f 7d 27 2c 20 24 72 .if.(preg_match('{^phar://}',.$r
b4580 65 73 75 6c 74 29 29 20 7b 0a 24 74 61 72 67 65 74 50 61 74 68 20 3d 20 72 74 72 69 6d 28 73 79 esult)).{.$targetPath.=.rtrim(sy
b45a0 73 5f 67 65 74 5f 74 65 6d 70 5f 64 69 72 28 29 2c 20 27 5c 5c 2f 27 29 20 2e 20 27 2f 63 6f 6d s_get_temp_dir(),.'\\/')...'/com
b45c0 70 6f 73 65 72 2d 63 61 63 65 72 74 2e 70 65 6d 27 3b 0a 0a 0a 20 0a 20 24 73 6f 75 72 63 65 20 poser-cacert.pem';......$source.
b45e0 3d 20 66 6f 70 65 6e 28 24 72 65 73 75 6c 74 2c 20 27 72 27 29 3b 0a 24 74 61 72 67 65 74 20 3d =.fopen($result,.'r');.$target.=
b4600 20 66 6f 70 65 6e 28 24 74 61 72 67 65 74 50 61 74 68 2c 20 27 77 2b 27 29 3b 0a 73 74 72 65 61 .fopen($targetPath,.'w+');.strea
b4620 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 65 m_copy_to_stream($source,.$targe
b4640 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 72 t);.fclose($source);.fclose($tar
b4660 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 0a get);.unset($source,.$target);..
b4680 24 6f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d 20 3d 20 24 74 61 72 $options['ssl']['cafile'].=.$tar
b46a0 67 65 74 50 61 74 68 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 72 65 getPath;.}.else.{.if.(is_dir($re
b46c0 73 75 6c 74 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 63 61 70 61 74 68 sult)).{.$options['ssl']['capath
b46e0 27 5d 20 3d 20 24 72 65 73 75 6c 74 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 72 65 73 75 6c 74 29 '].=.$result;.}.elseif.($result)
b4700 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 63 61 66 69 6c 65 27 5d 20 3d 20 24 .{.$options['ssl']['cafile'].=.$
b4720 72 65 73 75 6c 74 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 54 result;.}.}.}.else.{.throw.new.T
b4740 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 41 20 76 61 6c 69 64 20 63 61 66 69 6c ransportException('A.valid.cafil
b4760 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 6c 6f 63 61 74 65 64 20 61 75 74 6f 6d 61 74 69 63 e.could.not.be.located.automatic
b4780 61 6c 6c 79 2e 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 69 66 20 28 50 48 50 5f 56 45 52 53 49 4f 4e ally.');.}.}.....if.(PHP_VERSION
b47a0 5f 49 44 20 3e 3d 20 35 30 34 31 33 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b _ID.>=.50413).{.$options['ssl'][
b47c0 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 74 72 75 65 3b 0a 7d 'disable_compression'].=.true;.}
b47e0 0a 0a 72 65 74 75 72 6e 20 24 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ..return.$options;.}............
b4800 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 ......................private.st
b4820 61 74 69 63 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 42 75 6e atic.function.getSystemCaRootBun
b4840 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 6e 75 6c dlePath().{.static.$caPath.=.nul
b4860 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 65 74 75 l;..if.($caPath.!==.null).{.retu
b4880 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 6c 65 20 rn.$caPath;.}......$envCertFile.
b48a0 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 20 28 24 =.getenv('SSL_CERT_FILE');.if.($
b48c0 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 6e 76 43 envCertFile.&&.is_readable($envC
b48e0 65 72 74 46 69 6c 65 29 20 26 26 20 73 65 6c 66 3a 3a 76 61 6c 69 64 61 74 65 43 61 46 69 6c 65 ertFile).&&.self::validateCaFile
b4900 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 65 6e 76 43 65 72 74 46 69 6c 65 29 (file_get_contents($envCertFile)
b4920 29 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 24 63 61 50 61 74 68 20 3d 20 24 65 6e 76 43 65 72 74 )).{...return.$caPath.=.$envCert
b4940 46 69 6c 65 3b 0a 7d 0a 0a 24 63 61 42 75 6e 64 6c 65 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 File;.}..$caBundlePaths.=.array(
b4960 0a 27 2f 65 74 63 2f 70 6b 69 2f 74 6c 73 2f 63 65 72 74 73 2f 63 61 2d 62 75 6e 64 6c 65 2e 63 .'/etc/pki/tls/certs/ca-bundle.c
b4980 72 74 27 2c 20 0a 20 27 2f 65 74 63 2f 73 73 6c 2f 63 65 72 74 73 2f 63 61 2d 63 65 72 74 69 66 rt',...'/etc/ssl/certs/ca-certif
b49a0 69 63 61 74 65 73 2e 63 72 74 27 2c 20 0a 20 27 2f 65 74 63 2f 73 73 6c 2f 63 61 2d 62 75 6e 64 icates.crt',...'/etc/ssl/ca-bund
b49c0 6c 65 2e 70 65 6d 27 2c 20 0a 20 27 2f 75 73 72 2f 6c 6f 63 61 6c 2f 73 68 61 72 65 2f 63 65 72 le.pem',...'/usr/local/share/cer
b49e0 74 73 2f 63 61 2d 72 6f 6f 74 2d 6e 73 73 2e 63 72 74 27 2c 20 0a 20 27 2f 75 73 72 2f 73 73 6c ts/ca-root-nss.crt',...'/usr/ssl
b4a00 2f 63 65 72 74 73 2f 63 61 2d 62 75 6e 64 6c 65 2e 63 72 74 27 2c 20 0a 20 27 2f 6f 70 74 2f 6c /certs/ca-bundle.crt',...'/opt/l
b4a20 6f 63 61 6c 2f 73 68 61 72 65 2f 63 75 72 6c 2f 63 75 72 6c 2d 63 61 2d 62 75 6e 64 6c 65 2e 63 ocal/share/curl/curl-ca-bundle.c
b4a40 72 74 27 2c 20 0a 20 27 2f 75 73 72 2f 6c 6f 63 61 6c 2f 73 68 61 72 65 2f 63 75 72 6c 2f 63 75 rt',...'/usr/local/share/curl/cu
b4a60 72 6c 2d 63 61 2d 62 75 6e 64 6c 65 2e 63 72 74 27 2c 20 0a 20 27 2f 75 73 72 2f 73 68 61 72 65 rl-ca-bundle.crt',...'/usr/share
b4a80 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 20 0a 20 27 2f 65 /ssl/certs/ca-bundle.crt',...'/e
b4aa0 74 63 2f 73 73 6c 2f 63 65 72 74 2e 70 65 6d 27 2c 20 0a 20 27 2f 75 73 72 2f 6c 6f 63 61 6c 2f tc/ssl/cert.pem',...'/usr/local/
b4ac0 65 74 63 2f 73 73 6c 2f 63 65 72 74 2e 70 65 6d 27 2c 20 0a 20 5f 5f 44 49 52 5f 5f 2e 27 2f 2e etc/ssl/cert.pem',...__DIR__.'/.
b4ae0 2e 2f 2e 2e 2f 2e 2e 2f 72 65 73 2f 63 61 63 65 72 74 2e 70 65 6d 27 2c 20 0a 20 29 3b 0a 0a 24 ./../../res/cacert.pem',...);..$
b4b00 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 6c 2e 63 61 configured.=.ini_get('openssl.ca
b4b20 66 69 6c 65 27 29 3b 0a 69 66 20 28 24 63 6f 6e 66 69 67 75 72 65 64 20 26 26 20 73 74 72 6c 65 file');.if.($configured.&&.strle
b4b40 6e 28 24 63 6f 6e 66 69 67 75 72 65 64 29 20 3e 20 30 20 26 26 20 69 73 5f 72 65 61 64 61 62 6c n($configured).>.0.&&.is_readabl
b4b60 65 28 24 63 6f 6e 66 69 67 75 72 65 64 29 20 26 26 20 73 65 6c 66 3a 3a 76 61 6c 69 64 61 74 65 e($configured).&&.self::validate
b4b80 43 61 46 69 6c 65 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 63 6f 6e 66 69 67 CaFile(file_get_contents($config
b4ba0 75 72 65 64 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 61 50 61 74 68 20 3d 20 24 63 6f 6e 66 ured))).{.return.$caPath.=.$conf
b4bc0 69 67 75 72 65 64 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 61 42 75 6e 64 6c 65 50 61 74 igured;.}..foreach.($caBundlePat
b4be0 68 73 20 61 73 20 24 63 61 42 75 6e 64 6c 65 29 20 7b 0a 69 66 20 28 40 69 73 5f 72 65 61 64 61 hs.as.$caBundle).{.if.(@is_reada
b4c00 62 6c 65 28 24 63 61 42 75 6e 64 6c 65 29 20 26 26 20 73 65 6c 66 3a 3a 76 61 6c 69 64 61 74 65 ble($caBundle).&&.self::validate
b4c20 43 61 46 69 6c 65 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 63 61 42 75 6e 64 CaFile(file_get_contents($caBund
b4c40 6c 65 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 61 50 61 74 68 20 3d 20 24 63 61 42 75 6e 64 le))).{.return.$caPath.=.$caBund
b4c60 6c 65 3b 0a 7d 0a 7d 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 le;.}.}..foreach.($caBundlePaths
b4c80 20 61 73 20 24 63 61 42 75 6e 64 6c 65 29 20 7b 0a 24 63 61 42 75 6e 64 6c 65 20 3d 20 64 69 72 .as.$caBundle).{.$caBundle.=.dir
b4ca0 6e 61 6d 65 28 24 63 61 42 75 6e 64 6c 65 29 3b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 63 61 42 name($caBundle);.if.(is_dir($caB
b4cc0 75 6e 64 6c 65 29 20 26 26 20 67 6c 6f 62 28 24 63 61 42 75 6e 64 6c 65 2e 27 2f 2a 27 29 29 20 undle).&&.glob($caBundle.'/*')).
b4ce0 7b 0a 72 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 {.return.$caPath.=.$caBundle;.}.
b4d00 7d 0a 0a 72 65 74 75 72 6e 20 24 63 61 50 61 74 68 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 72 }..return.$caPath.=.false;.}..pr
b4d20 69 76 61 74 65 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 43 61 ivate.static.function.validateCa
b4d40 46 69 6c 65 28 24 63 6f 6e 74 65 6e 74 73 29 0a 7b 0a 0a 20 0a 20 69 66 20 28 0a 50 48 50 5f 56 File($contents).{.....if.(.PHP_V
b4d60 45 52 53 49 4f 4e 5f 49 44 20 3c 3d 20 35 30 33 32 37 0a 7c 7c 20 28 50 48 50 5f 56 45 52 53 49 ERSION_ID.<=.50327.||.(PHP_VERSI
b4d80 4f 4e 5f 49 44 20 3e 3d 20 35 30 34 30 30 20 26 26 20 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 ON_ID.>=.50400.&&.PHP_VERSION_ID
b4da0 20 3c 20 35 30 34 32 32 29 0a 7c 7c 20 28 50 48 50 5f 56 45 52 53 49 4f 4e 5f 49 44 20 3e 3d 20 .<.50422).||.(PHP_VERSION_ID.>=.
b4dc0 35 30 35 30 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 30 36 29 50500.&&.PHP_VERSION_ID.<.50506)
b4de0 0a 29 20 7b 0a 72 65 74 75 72 6e 20 21 65 6d 70 74 79 28 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 7d .).{.return.!empty($contents);.}
b4e00 0a 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 29 20 6f 70 65 6e 73 73 6c 5f 78 35 30 39 5f 70 61 72 ..return.(bool).openssl_x509_par
b4e20 73 65 28 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a se($contents);.}.}.<?php........
b4e40 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
b4e60 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 73 3b 0a 0a 74 e.Composer\Spdx\SpdxLicenses;..t
b4e80 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 50 41 43 rigger_error('The.'...__NAMESPAC
b4ea0 45 5f 5f 20 2e 20 27 5c 53 70 64 78 4c 69 63 65 6e 73 65 20 63 6c 61 73 73 20 69 73 20 64 65 70 E__...'\SpdxLicense.class.is.dep
b4ec0 72 65 63 61 74 65 64 2c 20 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 70 64 78 5c 53 70 64 78 4c recated,.use.Composer\Spdx\SpdxL
b4ee0 69 63 65 6e 73 65 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 icenses.instead.',.E_USER_DEPREC
b4f00 41 54 45 44 29 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 70 64 78 4c 69 63 65 6e 73 65 20 65 78 74 ATED);.....class.SpdxLicense.ext
b4f20 65 6e 64 73 20 53 70 64 78 4c 69 63 65 6e 73 65 73 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a ends.SpdxLicenses.{.}.<?php.....
b4f40 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 69 6c 3b 0a .......namespace.Composer\Util;.
b4f60 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 66 .use.Composer\Composer;........f
b4f80 69 6e 61 6c 20 63 6c 61 73 73 20 53 74 72 65 61 6d 43 6f 6e 74 65 78 74 46 61 63 74 6f 72 79 0a inal.class.StreamContextFactory.
b4fa0 7b 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 {..........public.static.functio
b4fc0 6e 20 67 65 74 43 6f 6e 74 65 78 74 28 24 75 72 6c 2c 20 61 72 72 61 79 20 24 64 65 66 61 75 6c n.getContext($url,.array.$defaul
b4fe0 74 4f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 20 24 64 65 66 61 75 tOptions.=.array(),.array.$defau
b5000 6c 74 50 61 72 61 6d 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 6f 70 74 69 6f 6e 73 20 3d ltParams.=.array()).{.$options.=
b5020 20 61 72 72 61 79 28 27 68 74 74 70 27 20 3d 3e 20 61 72 72 61 79 28 0a 0a 20 27 66 6f 6c 6c 6f .array('http'.=>.array(...'follo
b5040 77 5f 6c 6f 63 61 74 69 6f 6e 27 20 3d 3e 20 31 2c 0a 27 6d 61 78 5f 72 65 64 69 72 65 63 74 73 w_location'.=>.1,.'max_redirects
b5060 27 20 3d 3e 20 32 30 2c 0a 29 29 3b 0a 0a 0a 20 69 66 20 28 21 65 6d 70 74 79 28 24 5f 53 45 52 '.=>.20,.));....if.(!empty($_SER
b5080 56 45 52 5b 27 48 54 54 50 5f 50 52 4f 58 59 27 5d 29 20 7c 7c 20 21 65 6d 70 74 79 28 24 5f 53 VER['HTTP_PROXY']).||.!empty($_S
b50a0 45 52 56 45 52 5b 27 68 74 74 70 5f 70 72 6f 78 79 27 5d 29 29 20 7b 0a 0a 20 24 70 72 6f 78 79 ERVER['http_proxy'])).{...$proxy
b50c0 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 5b 27 68 74 .=.parse_url(!empty($_SERVER['ht
b50e0 74 70 5f 70 72 6f 78 79 27 5d 29 20 3f 20 24 5f 53 45 52 56 45 52 5b 27 68 74 74 70 5f 70 72 6f tp_proxy']).?.$_SERVER['http_pro
b5100 78 79 27 5d 20 3a 20 24 5f 53 45 52 56 45 52 5b 27 48 54 54 50 5f 50 52 4f 58 59 27 5d 29 3b 0a xy'].:.$_SERVER['HTTP_PROXY']);.
b5120 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 73 3a 2f 2f 7d }....if.(preg_match('{^https://}
b5140 69 27 2c 20 24 75 72 6c 29 20 26 26 20 28 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 5b 27 48 i',.$url).&&.(!empty($_SERVER['H
b5160 54 54 50 53 5f 50 52 4f 58 59 27 5d 29 20 7c 7c 20 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 TTPS_PROXY']).||.!empty($_SERVER
b5180 5b 27 68 74 74 70 73 5f 70 72 6f 78 79 27 5d 29 29 29 20 7b 0a 24 70 72 6f 78 79 20 3d 20 70 61 ['https_proxy']))).{.$proxy.=.pa
b51a0 72 73 65 5f 75 72 6c 28 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 5b 27 68 74 74 70 73 5f 70 rse_url(!empty($_SERVER['https_p
b51c0 72 6f 78 79 27 5d 29 20 3f 20 24 5f 53 45 52 56 45 52 5b 27 68 74 74 70 73 5f 70 72 6f 78 79 27 roxy']).?.$_SERVER['https_proxy'
b51e0 5d 20 3a 20 24 5f 53 45 52 56 45 52 5b 27 48 54 54 50 53 5f 50 52 4f 58 59 27 5d 29 3b 0a 7d 0a ].:.$_SERVER['HTTPS_PROXY']);.}.
b5200 0a 0a 20 69 66 20 28 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 5b 27 6e 6f 5f 70 72 6f 78 79 ...if.(!empty($_SERVER['no_proxy
b5220 27 5d 29 20 26 26 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 ']).&&.parse_url($url,.PHP_URL_H
b5240 4f 53 54 29 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 3d 20 6e 65 77 20 4e 6f 50 72 6f 78 79 50 61 OST)).{.$pattern.=.new.NoProxyPa
b5260 74 74 65 72 6e 28 24 5f 53 45 52 56 45 52 5b 27 6e 6f 5f 70 72 6f 78 79 27 5d 29 3b 0a 69 66 20 ttern($_SERVER['no_proxy']);.if.
b5280 28 24 70 61 74 74 65 72 6e 2d 3e 74 65 73 74 28 24 75 72 6c 29 29 20 7b 0a 75 6e 73 65 74 28 24 ($pattern->test($url)).{.unset($
b52a0 70 72 6f 78 79 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 70 72 6f 78 79 29 29 proxy);.}.}..if.(!empty($proxy))
b52c0 20 7b 0a 24 70 72 6f 78 79 55 52 4c 20 3d 20 69 73 73 65 74 28 24 70 72 6f 78 79 5b 27 73 63 68 .{.$proxyURL.=.isset($proxy['sch
b52e0 65 6d 65 27 5d 29 20 3f 20 24 70 72 6f 78 79 5b 27 73 63 68 65 6d 65 27 5d 20 2e 20 27 3a 2f 2f eme']).?.$proxy['scheme']...'://
b5300 27 20 3a 20 27 27 3b 0a 24 70 72 6f 78 79 55 52 4c 20 2e 3d 20 69 73 73 65 74 28 24 70 72 6f 78 '.:.'';.$proxyURL..=.isset($prox
b5320 79 5b 27 68 6f 73 74 27 5d 29 20 3f 20 24 70 72 6f 78 79 5b 27 68 6f 73 74 27 5d 20 3a 20 27 27 y['host']).?.$proxy['host'].:.''
b5340 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 70 72 6f 78 79 5b 27 70 6f 72 74 27 5d 29 29 20 7b 0a ;..if.(isset($proxy['port'])).{.
b5360 24 70 72 6f 78 79 55 52 4c 20 2e 3d 20 22 3a 22 20 2e 20 24 70 72 6f 78 79 5b 27 70 6f 72 74 27 $proxyURL..=.":"...$proxy['port'
b5380 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 68 74 74 70 3a 2f 2f 27 20 3d 3d 20 73 75 62 73 74 72 ];.}.elseif.('http://'.==.substr
b53a0 28 24 70 72 6f 78 79 55 52 4c 2c 20 30 2c 20 37 29 29 20 7b 0a 24 70 72 6f 78 79 55 52 4c 20 2e ($proxyURL,.0,.7)).{.$proxyURL..
b53c0 3d 20 22 3a 38 30 22 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 68 74 74 70 73 3a 2f 2f 27 20 3d 3d =.":80";.}.elseif.('https://'.==
b53e0 20 73 75 62 73 74 72 28 24 70 72 6f 78 79 55 52 4c 2c 20 30 2c 20 38 29 29 20 7b 0a 24 70 72 6f .substr($proxyURL,.0,.8)).{.$pro
b5400 78 79 55 52 4c 20 2e 3d 20 22 3a 34 34 33 22 3b 0a 7d 0a 0a 0a 20 24 70 72 6f 78 79 55 52 4c 20 xyURL..=.":443";.}....$proxyURL.
b5420 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 68 74 74 70 3a 2f 2f 27 2c 20 27 =.str_replace(array('http://',.'
b5440 68 74 74 70 73 3a 2f 2f 27 29 2c 20 61 72 72 61 79 28 27 74 63 70 3a 2f 2f 27 2c 20 27 73 73 6c https://'),.array('tcp://',.'ssl
b5460 3a 2f 2f 27 29 2c 20 24 70 72 6f 78 79 55 52 4c 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 ://'),.$proxyURL);..if.(0.===.st
b5480 72 70 6f 73 28 24 70 72 6f 78 79 55 52 4c 2c 20 27 73 73 6c 3a 27 29 20 26 26 20 21 65 78 74 65 rpos($proxyURL,.'ssl:').&&.!exte
b54a0 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 6f 77 nsion_loaded('openssl')).{.throw
b54c0 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
b54e0 20 65 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 20 74 6f .enable.the.openssl.extension.to
b5500 20 75 73 65 20 61 20 70 72 6f 78 79 20 6f 76 65 72 20 68 74 74 70 73 27 29 3b 0a 7d 0a 0a 24 6f .use.a.proxy.over.https');.}..$o
b5520 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 70 72 6f 78 79 27 5d 20 3d 20 24 70 72 6f 78 79 ptions['http']['proxy'].=.$proxy
b5540 55 52 4c 3b 0a 0a 0a 20 73 77 69 74 63 68 20 28 70 61 72 73 65 5f 75 72 6c 28 24 75 72 6c 2c 20 URL;....switch.(parse_url($url,.
b5560 50 48 50 5f 55 52 4c 5f 53 43 48 45 4d 45 29 29 20 7b 0a 63 61 73 65 20 27 68 74 74 70 27 3a 20 PHP_URL_SCHEME)).{.case.'http':.
b5580 0a 20 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 20 3d 20 67 65 74 65 6e 76 28 27 48 54 54 50 5f ..$reqFullUriEnv.=.getenv('HTTP_
b55a0 50 52 4f 58 59 5f 52 45 51 55 45 53 54 5f 46 55 4c 4c 55 52 49 27 29 3b 0a 69 66 20 28 24 72 65 PROXY_REQUEST_FULLURI');.if.($re
b55c0 71 46 75 6c 6c 55 72 69 45 6e 76 20 3d 3d 3d 20 66 61 6c 73 65 20 7c 7c 20 24 72 65 71 46 75 6c qFullUriEnv.===.false.||.$reqFul
b55e0 6c 55 72 69 45 6e 76 20 3d 3d 3d 20 27 27 20 7c 7c 20 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 lUriEnv.===.''.||.(strtolower($r
b5600 65 71 46 75 6c 6c 55 72 69 45 6e 76 29 20 21 3d 3d 20 27 66 61 6c 73 65 27 20 26 26 20 28 62 6f eqFullUriEnv).!==.'false'.&&.(bo
b5620 6f 6c 29 20 24 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b ol).$reqFullUriEnv)).{.$options[
b5640 27 68 74 74 70 27 5d 5b 27 72 65 71 75 65 73 74 5f 66 75 6c 6c 75 72 69 27 5d 20 3d 20 74 72 75 'http']['request_fulluri'].=.tru
b5660 65 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 68 74 74 70 73 27 3a 20 0a 20 24 72 65 71 e;.}.break;.case.'https':...$req
b5680 46 75 6c 6c 55 72 69 45 6e 76 20 3d 20 67 65 74 65 6e 76 28 27 48 54 54 50 53 5f 50 52 4f 58 59 FullUriEnv.=.getenv('HTTPS_PROXY
b56a0 5f 52 45 51 55 45 53 54 5f 46 55 4c 4c 55 52 49 27 29 3b 0a 69 66 20 28 24 72 65 71 46 75 6c 6c _REQUEST_FULLURI');.if.($reqFull
b56c0 55 72 69 45 6e 76 20 3d 3d 3d 20 66 61 6c 73 65 20 7c 7c 20 24 72 65 71 46 75 6c 6c 55 72 69 45 UriEnv.===.false.||.$reqFullUriE
b56e0 6e 76 20 3d 3d 3d 20 27 27 20 7c 7c 20 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 65 71 46 75 6c nv.===.''.||.(strtolower($reqFul
b5700 6c 55 72 69 45 6e 76 29 20 21 3d 3d 20 27 66 61 6c 73 65 27 20 26 26 20 28 62 6f 6f 6c 29 20 24 lUriEnv).!==.'false'.&&.(bool).$
b5720 72 65 71 46 75 6c 6c 55 72 69 45 6e 76 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 reqFullUriEnv)).{.$options['http
b5740 27 5d 5b 27 72 65 71 75 65 73 74 5f 66 75 6c 6c 75 72 69 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a ']['request_fulluri'].=.true;.}.
b5760 62 72 65 61 6b 3b 0a 7d 0a 0a 0a 20 69 66 20 28 27 68 74 74 70 73 27 20 3d 3d 3d 20 70 61 72 73 break;.}....if.('https'.===.pars
b5780 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 7b 0a 24 e_url($url,.PHP_URL_SCHEME)).{.$
b57a0 6f 70 74 69 6f 6e 73 5b 27 73 73 6c 27 5d 5b 27 53 4e 49 5f 65 6e 61 62 6c 65 64 27 5d 20 3d 20 options['ssl']['SNI_enabled'].=.
b57c0 74 72 75 65 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 true;.if.(PHP_VERSION_ID.<.50600
b57e0 29 20 7b 0a 24 6f 70 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 ).{.$options['ssl']['SNI_server_
b5800 6e 61 6d 65 27 5d 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 name'].=.parse_url($url,.PHP_URL
b5820 5f 48 4f 53 54 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 70 72 6f 78 79 5b _HOST);.}.}....if.(isset($proxy[
b5840 27 75 73 65 72 27 5d 29 29 20 7b 0a 24 61 75 74 68 20 3d 20 75 72 6c 64 65 63 6f 64 65 28 24 70 'user'])).{.$auth.=.urldecode($p
b5860 72 6f 78 79 5b 27 75 73 65 72 27 5d 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 70 72 6f 78 79 5b roxy['user']);.if.(isset($proxy[
b5880 27 70 61 73 73 27 5d 29 29 20 7b 0a 24 61 75 74 68 20 2e 3d 20 27 3a 27 20 2e 20 75 72 6c 64 65 'pass'])).{.$auth..=.':'...urlde
b58a0 63 6f 64 65 28 24 70 72 6f 78 79 5b 27 70 61 73 73 27 5d 29 3b 0a 7d 0a 24 61 75 74 68 20 3d 20 code($proxy['pass']);.}.$auth.=.
b58c0 62 61 73 65 36 34 5f 65 6e 63 6f 64 65 28 24 61 75 74 68 29 3b 0a 0a 0a 20 69 66 20 28 69 73 73 base64_encode($auth);....if.(iss
b58e0 65 74 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 65 61 64 et($defaultOptions['http']['head
b5900 65 72 27 5d 29 29 20 7b 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 64 65 66 61 75 6c 74 4f er'])).{.if.(is_string($defaultO
b5920 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 20 7b 0a 24 64 65 ptions['http']['header'])).{.$de
b5940 66 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 20 3d faultOptions['http']['header'].=
b5960 20 61 72 72 61 79 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 .array($defaultOptions['http']['
b5980 68 65 61 64 65 72 27 5d 29 3b 0a 7d 0a 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 5b 27 68 74 header']);.}.$defaultOptions['ht
b59a0 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 5b 5d 20 3d 20 22 50 72 6f 78 79 2d 41 75 74 68 6f 72 tp']['header'][].=."Proxy-Author
b59c0 69 7a 61 74 69 6f 6e 3a 20 42 61 73 69 63 20 7b 24 61 75 74 68 7d 22 3b 0a 7d 20 65 6c 73 65 20 ization:.Basic.{$auth}";.}.else.
b59e0 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 20 3d 20 61 {.$options['http']['header'].=.a
b5a00 72 72 61 79 28 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 rray("Proxy-Authorization:.Basic
b5a20 20 7b 24 61 75 74 68 7d 22 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 .{$auth}");.}.}.}..$options.=.ar
b5a40 72 61 79 5f 72 65 70 6c 61 63 65 5f 72 65 63 75 72 73 69 76 65 28 24 6f 70 74 69 6f 6e 73 2c 20 ray_replace_recursive($options,.
b5a60 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 $defaultOptions);..if.(isset($op
b5a80 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 20 7b 0a 24 6f 70 74 tions['http']['header'])).{.$opt
b5aa0 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 20 3d 20 73 65 6c 66 3a 3a 66 ions['http']['header'].=.self::f
b5ac0 69 78 48 74 74 70 48 65 61 64 65 72 46 69 65 6c 64 28 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 ixHttpHeaderField($options['http
b5ae0 27 5d 5b 27 68 65 61 64 65 72 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 48 ']['header']);.}..if.(defined('H
b5b00 48 56 4d 5f 56 45 52 53 49 4f 4e 27 29 29 20 7b 0a 24 70 68 70 56 65 72 73 69 6f 6e 20 3d 20 27 HVM_VERSION')).{.$phpVersion.=.'
b5b20 48 48 56 4d 20 27 20 2e 20 48 48 56 4d 5f 56 45 52 53 49 4f 4e 3b 0a 7d 20 65 6c 73 65 20 7b 0a HHVM.'...HHVM_VERSION;.}.else.{.
b5b40 24 70 68 70 56 65 72 73 69 6f 6e 20 3d 20 27 50 48 50 20 27 20 2e 20 50 48 50 5f 4d 41 4a 4f 52 $phpVersion.=.'PHP.'...PHP_MAJOR
b5b60 5f 56 45 52 53 49 4f 4e 20 2e 20 27 2e 27 20 2e 20 50 48 50 5f 4d 49 4e 4f 52 5f 56 45 52 53 49 _VERSION...'.'...PHP_MINOR_VERSI
b5b80 4f 4e 20 2e 20 27 2e 27 20 2e 20 50 48 50 5f 52 45 4c 45 41 53 45 5f 56 45 52 53 49 4f 4e 3b 0a ON...'.'...PHP_RELEASE_VERSION;.
b5ba0 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 }..if.(!isset($options['http']['
b5bc0 68 65 61 64 65 72 27 5d 29 20 7c 7c 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 73 74 header']).||.false.===.strpos(st
b5be0 72 74 6f 6c 6f 77 65 72 28 69 6d 70 6c 6f 64 65 28 27 27 2c 20 24 6f 70 74 69 6f 6e 73 5b 27 68 rtolower(implode('',.$options['h
b5c00 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 29 29 2c 20 27 75 73 65 72 2d 61 67 65 6e 74 27 29 ttp']['header'])),.'user-agent')
b5c20 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 5b 5d ).{.$options['http']['header'][]
b5c40 20 3d 20 73 70 72 69 6e 74 66 28 0a 27 55 73 65 72 2d 41 67 65 6e 74 3a 20 43 6f 6d 70 6f 73 65 .=.sprintf(.'User-Agent:.Compose
b5c60 72 2f 25 73 20 28 25 73 3b 20 25 73 3b 20 25 73 29 27 2c 0a 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 r/%s.(%s;.%s;.%s)',.Composer::VE
b5c80 52 53 49 4f 4e 20 3d 3d 3d 20 27 40 70 61 63 6b 61 67 65 5f 76 65 72 73 69 6f 6e 40 27 20 3f 20 RSION.===.'@package_version@'.?.
b5ca0 27 73 6f 75 72 63 65 27 20 3a 20 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 52 53 49 4f 4e 2c 0a 70 68 'source'.:.Composer::VERSION,.ph
b5cc0 70 5f 75 6e 61 6d 65 28 27 73 27 29 2c 0a 70 68 70 5f 75 6e 61 6d 65 28 27 72 27 29 2c 0a 24 70 p_uname('s'),.php_uname('r'),.$p
b5ce0 68 70 56 65 72 73 69 6f 6e 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 74 72 65 61 6d 5f 63 6f hpVersion.);.}..return.stream_co
b5d00 6e 74 65 78 74 5f 63 72 65 61 74 65 28 24 6f 70 74 69 6f 6e 73 2c 20 24 64 65 66 61 75 6c 74 50 ntext_create($options,.$defaultP
b5d20 61 72 61 6d 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 arams);.}............private.sta
b5d40 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 78 48 74 74 70 48 65 61 64 65 72 46 69 65 6c 64 28 tic.function.fixHttpHeaderField(
b5d60 24 68 65 61 64 65 72 29 0a 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 68 65 61 64 65 72 $header).{.if.(!is_array($header
b5d80 29 29 20 7b 0a 24 68 65 61 64 65 72 20 3d 20 65 78 70 6c 6f 64 65 28 22 5c 72 5c 6e 22 2c 20 24 )).{.$header.=.explode("\r\n",.$
b5da0 68 65 61 64 65 72 29 3b 0a 7d 0a 75 61 73 6f 72 74 28 24 68 65 61 64 65 72 2c 20 66 75 6e 63 74 header);.}.uasort($header,.funct
b5dc0 69 6f 6e 20 28 24 65 6c 29 20 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b ion.($el).{.return.preg_match('{
b5de0 5e 63 6f 6e 74 65 6e 74 2d 74 79 70 65 7d 69 27 2c 20 24 65 6c 29 20 3f 20 31 20 3a 20 2d 31 3b ^content-type}i',.$el).?.1.:.-1;
b5e00 0a 7d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 68 65 61 64 65 72 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a .});..return.$header;.}.}.<?php.
b5e20 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
b5e40 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 73 65 20 43 6f il;..use.Composer\Config;.use.Co
b5e60 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 63 6c 61 73 mposer\IO\IOInterface;......clas
b5e80 73 20 53 76 6e 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 s.Svn.{.const.MAX_QTY_AUTH_TRIES
b5ea0 20 3d 20 35 3b 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 .=.5;.....protected.$credentials
b5ec0 3b 0a 0a 0a 0a 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 ;.....protected.$hasAuth;.....pr
b5ee0 6f 74 65 63 74 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 otected.$io;.....protected.$url;
b5f00 0a 0a 0a 0a 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 .....protected.$cacheCredentials
b5f20 20 3d 20 74 72 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 .=.true;.....protected.$process;
b5f40 0a 0a 0a 0a 0a 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 .....protected.$qtyAuthTries.=.0
b5f60 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 0a 0a 0a 0a 0a ;.....protected.$config;........
b5f80 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 75 72 6c public.function.__construct($url
b5fa0 2c 20 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 ,.IOInterface.$io,.Config.$confi
b5fc0 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 20 3d 20 6e 75 g,.ProcessExecutor.$process.=.nu
b5fe0 6c 6c 29 0a 7b 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 ll).{.$this->url.=.$url;.$this->
b6000 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 6f 6e 66 69 io.=.$io;.$this->config.=.$confi
b6020 67 3b 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 20 3f 3a 20 g;.$this->process.=.$process.?:.
b6040 6e 65 77 20 50 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 new.ProcessExecutor;.}..public.s
b6060 74 61 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 0a 20 70 75 tatic.function.cleanEnv().{...pu
b6080 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 65 74 tenv("DYLD_LIBRARY_PATH");.unset
b60a0 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 29 3b ($_SERVER['DYLD_LIBRARY_PATH']);
b60c0 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
b60e0 20 65 78 65 63 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 .execute($command,.$url,.$cwd.=.
b6100 6e 75 6c 6c 2c 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 null,.$path.=.null,.$verbose.=.f
b6120 61 6c 73 65 29 0a 7b 0a 24 73 76 6e 43 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 alse).{.$svnCommand.=.$this->get
b6140 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 72 6c 2c 20 24 70 61 74 68 29 3b 0a Command($command,.$url,.$path);.
b6160 24 6f 75 74 70 75 74 20 3d 20 6e 75 6c 6c 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 69 6f 3b $output.=.null;.$io.=.$this->io;
b6180 0a 24 68 61 6e 64 6c 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 74 79 70 65 2c 20 24 62 75 .$handler.=.function.($type,.$bu
b61a0 66 66 65 72 29 20 75 73 65 20 28 26 24 6f 75 74 70 75 74 2c 20 24 69 6f 2c 20 24 76 65 72 62 6f ffer).use.(&$output,.$io,.$verbo
b61c0 73 65 29 20 7b 0a 69 66 20 28 24 74 79 70 65 20 21 3d 3d 20 27 6f 75 74 27 29 20 7b 0a 72 65 74 se).{.if.($type.!==.'out').{.ret
b61e0 75 72 6e 3b 0a 7d 0a 69 66 20 28 27 52 65 64 69 72 65 63 74 69 6e 67 20 74 6f 20 55 52 4c 20 27 urn;.}.if.('Redirecting.to.URL.'
b6200 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 62 75 66 66 65 72 2c 20 30 2c 20 31 39 29 29 20 7b 0a 72 .===.substr($buffer,.0,.19)).{.r
b6220 65 74 75 72 6e 3b 0a 7d 0a 24 6f 75 74 70 75 74 20 2e 3d 20 24 62 75 66 66 65 72 3b 0a 69 66 20 eturn;.}.$output..=.$buffer;.if.
b6240 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 24 62 75 ($verbose).{.$io->writeError($bu
b6260 66 66 65 72 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 3b 0a 24 73 74 61 74 75 73 20 3d 20 24 74 68 ffer,.false);.}.};.$status.=.$th
b6280 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 73 76 6e 43 6f 6d 6d 61 6e 64 is->process->execute($svnCommand
b62a0 2c 20 24 68 61 6e 64 6c 65 72 2c 20 24 63 77 64 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 73 74 ,.$handler,.$cwd);.if.(0.===.$st
b62c0 61 74 75 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 6f 75 74 70 75 74 3b 0a 7d 0a 0a 24 65 72 72 6f atus).{.return.$output;.}..$erro
b62e0 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
b6300 6f 72 4f 75 74 70 75 74 28 29 3b 0a 24 66 75 6c 6c 4f 75 74 70 75 74 20 3d 20 69 6d 70 6c 6f 64 orOutput();.$fullOutput.=.implod
b6320 65 28 22 5c 6e 22 2c 20 61 72 72 61 79 28 24 6f 75 74 70 75 74 2c 20 24 65 72 72 6f 72 4f 75 74 e("\n",.array($output,.$errorOut
b6340 70 75 74 29 29 3b 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 69 70 6f 73 28 put));....if.(false.===.stripos(
b6360 24 66 75 6c 6c 4f 75 74 70 75 74 2c 20 27 43 6f 75 6c 64 20 6e 6f 74 20 61 75 74 68 65 6e 74 69 $fullOutput,.'Could.not.authenti
b6380 63 61 74 65 20 74 6f 20 73 65 72 76 65 72 3a 27 29 0a 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 cate.to.server:').&&.false.===.s
b63a0 74 72 69 70 6f 73 28 24 66 75 6c 6c 4f 75 74 70 75 74 2c 20 27 61 75 74 68 6f 72 69 7a 61 74 69 tripos($fullOutput,.'authorizati
b63c0 6f 6e 20 66 61 69 6c 65 64 27 29 0a 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 69 70 6f 73 on.failed').&&.false.===.stripos
b63e0 28 24 66 75 6c 6c 4f 75 74 70 75 74 2c 20 27 73 76 6e 3a 20 45 31 37 30 30 30 31 3a 27 29 0a 26 ($fullOutput,.'svn:.E170001:').&
b6400 26 20 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 &.false.===.stripos($fullOutput,
b6420 20 27 73 76 6e 3a 20 45 32 31 35 30 30 34 3a 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c .'svn:.E215004:')).{.throw.new.\
b6440 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 66 75 6c 6c 4f 75 74 70 75 74 29 3b 0a 7d RuntimeException($fullOutput);.}
b6460 0a 0a 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 24 74 68 69 73 ..if.(!$this->hasAuth()).{.$this
b6480 2d 3e 64 6f 41 75 74 68 44 61 6e 63 65 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d ->doAuthDance();.}....if.($this-
b64a0 3e 71 74 79 41 75 74 68 54 72 69 65 73 2b 2b 20 3c 20 73 65 6c 66 3a 3a 4d 41 58 5f 51 54 59 5f >qtyAuthTries++.<.self::MAX_QTY_
b64c0 41 55 54 48 5f 54 52 49 45 53 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 AUTH_TRIES).{...return.$this->ex
b64e0 65 63 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 ecute($command,.$url,.$cwd,.$pat
b6500 68 2c 20 24 76 65 72 62 6f 73 65 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 h,.$verbose);.}..throw.new.\Runt
b6520 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 27 77 72 6f 6e 67 20 63 72 65 64 65 6e 74 69 61 6c 73 imeException(.'wrong.credentials
b6540 20 70 72 6f 76 69 64 65 64 20 28 27 2e 24 66 75 6c 6c 4f 75 74 70 75 74 2e 27 29 27 0a 29 3b 0a .provided.('.$fullOutput.')'.);.
b6560 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 61 63 68 65 43 72 }.....public.function.setCacheCr
b6580 65 64 65 6e 74 69 61 6c 73 28 24 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 29 0a 7b 0a 24 edentials($cacheCredentials).{.$
b65a0 74 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 63 61 63 68 65 43 this->cacheCredentials.=.$cacheC
b65c0 72 65 64 65 6e 74 69 61 6c 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 redentials;.}........protected.f
b65e0 75 6e 63 74 69 6f 6e 20 64 6f 41 75 74 68 44 61 6e 63 65 28 29 0a 7b 0a 0a 20 69 66 20 28 21 24 unction.doAuthDance().{...if.(!$
b6600 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 74 68 72 this->io->isInteractive()).{.thr
b6620 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 0a 27 63 61 6e 20 6e ow.new.\RuntimeException(.'can.n
b6640 6f 74 20 61 73 6b 20 66 6f 72 20 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 20 69 6e 20 6e 6f 6e ot.ask.for.authentication.in.non
b6660 20 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 27 0a 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e .interactive.mode'.);.}..$this->
b6680 69 6f 2d 3e 77 72 69 74 65 45 72 72 6f 72 28 22 54 68 65 20 53 75 62 76 65 72 73 69 6f 6e 20 73 io->writeError("The.Subversion.s
b66a0 65 72 76 65 72 20 28 7b 24 74 68 69 73 2d 3e 75 72 6c 7d 29 20 72 65 71 75 65 73 74 65 64 20 63 erver.({$this->url}).requested.c
b66c0 72 65 64 65 6e 74 69 61 6c 73 3a 22 29 3b 0a 0a 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 20 3d redentials:");..$this->hasAuth.=
b66e0 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 75 73 65 72 6e .true;.$this->credentials['usern
b6700 61 6d 65 27 5d 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 28 22 55 73 65 72 6e 61 6d 65 ame'].=.$this->io->ask("Username
b6720 3a 20 22 29 3b 0a 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
b6740 72 64 27 5d 20 3d 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 rd'].=.$this->io->askAndHideAnsw
b6760 65 72 28 22 50 61 73 73 77 6f 72 64 3a 20 22 29 3b 0a 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 43 er("Password:.");..$this->cacheC
b6780 72 65 64 65 6e 74 69 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 43 6f 6e 66 69 redentials.=.$this->io->askConfi
b67a0 72 6d 61 74 69 6f 6e 28 22 53 68 6f 75 6c 64 20 53 75 62 76 65 72 73 69 6f 6e 20 63 61 63 68 65 rmation("Should.Subversion.cache
b67c0 20 74 68 65 73 65 20 63 72 65 64 65 6e 74 69 61 6c 73 3f 20 28 79 65 73 2f 6e 6f 29 20 22 2c 20 .these.credentials?.(yes/no).",.
b67e0 74 72 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 true);..return.$this;.}.........
b6800 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 64 28 ..protected.function.getCommand(
b6820 24 63 6d 64 2c 20 24 75 72 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 63 6d 64 $cmd,.$url,.$path.=.null).{.$cmd
b6840 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 20 25 73 25 73 20 25 73 27 2c 0a 24 63 6d 64 2c 0a 27 .=.sprintf('%s.%s%s.%s',.$cmd,.'
b6860 2d 2d 6e 6f 6e 2d 69 6e 74 65 72 61 63 74 69 76 65 20 27 2c 0a 24 74 68 69 73 2d 3e 67 65 74 43 --non-interactive.',.$this->getC
b6880 72 65 64 65 6e 74 69 61 6c 53 74 72 69 6e 67 28 29 2c 0a 50 72 6f 63 65 73 73 45 78 65 63 75 74 redentialString(),.ProcessExecut
b68a0 6f 72 3a 3a 65 73 63 61 70 65 28 24 75 72 6c 29 0a 29 3b 0a 0a 69 66 20 28 24 70 61 74 68 29 20 or::escape($url).);..if.($path).
b68c0 7b 0a 24 63 6d 64 20 2e 3d 20 27 20 27 20 2e 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a {.$cmd..=.'.'...ProcessExecutor:
b68e0 3a 65 73 63 61 70 65 28 24 70 61 74 68 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6d 64 3b 0a :escape($path);.}..return.$cmd;.
b6900 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 67 65 74 }.........protected.function.get
b6920 43 72 65 64 65 6e 74 69 61 6c 53 74 72 69 6e 67 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d CredentialString().{.if.(!$this-
b6940 3e 68 61 73 41 75 74 68 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 0a 72 65 74 75 >hasAuth()).{.return.'';.}..retu
b6960 72 6e 20 73 70 72 69 6e 74 66 28 0a 27 20 25 73 2d 2d 75 73 65 72 6e 61 6d 65 20 25 73 20 2d 2d rn.sprintf(.'.%s--username.%s.--
b6980 70 61 73 73 77 6f 72 64 20 25 73 20 27 2c 0a 24 74 68 69 73 2d 3e 67 65 74 41 75 74 68 43 61 63 password.%s.',.$this->getAuthCac
b69a0 68 65 28 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 28 24 74 he(),.ProcessExecutor::escape($t
b69c0 68 69 73 2d 3e 67 65 74 55 73 65 72 6e 61 6d 65 28 29 29 2c 0a 50 72 6f 63 65 73 73 45 78 65 63 his->getUsername()),.ProcessExec
b69e0 75 74 6f 72 3a 3a 65 73 63 61 70 65 28 24 74 68 69 73 2d 3e 67 65 74 50 61 73 73 77 6f 72 64 28 utor::escape($this->getPassword(
b6a00 29 29 0a 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 )).);.}........protected.functio
b6a20 6e 20 67 65 74 50 61 73 73 77 6f 72 64 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 72 65 n.getPassword().{.if.($this->cre
b6a40 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 6e 65 77 20 5c dentials.===.null).{.throw.new.\
b6a60 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 20 64 65 74 65 LogicException("No.svn.auth.dete
b6a80 63 74 65 64 2e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e cted.");.}..return.isset($this->
b6aa0 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 70 61 73 73 77 6f 72 64 27 5d 29 20 3f 20 24 74 68 69 73 credentials['password']).?.$this
b6ac0 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 3a 20 27 27 3b 0a ->credentials['password'].:.'';.
b6ae0 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 55 }........protected.function.getU
b6b00 73 65 72 6e 61 6d 65 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 sername().{.if.($this->credentia
b6b20 6c 73 20 3d 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 ls.===.null).{.throw.new.\LogicE
b6b40 78 63 65 70 74 69 6f 6e 28 22 4e 6f 20 73 76 6e 20 61 75 74 68 20 64 65 74 65 63 74 65 64 2e 22 xception("No.svn.auth.detected."
b6b60 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b );.}..return.$this->credentials[
b6b80 27 75 73 65 72 6e 61 6d 65 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 'username'];.}.......protected.f
b6ba0 75 6e 63 74 69 6f 6e 20 68 61 73 41 75 74 68 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d unction.hasAuth().{.if.(null.!==
b6bc0 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d .$this->hasAuth).{.return.$this-
b6be0 3e 68 61 73 41 75 74 68 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 74 68 69 73 >hasAuth;.}..if.(false.===.$this
b6c00 2d 3e 63 72 65 61 74 65 41 75 74 68 46 72 6f 6d 43 6f 6e 66 69 67 28 29 29 20 7b 0a 24 74 68 69 ->createAuthFromConfig()).{.$thi
b6c20 73 2d 3e 63 72 65 61 74 65 41 75 74 68 46 72 6f 6d 55 72 6c 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 s->createAuthFromUrl();.}..retur
b6c40 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 n.$this->hasAuth;.}.......protec
b6c60 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 43 61 63 68 65 28 29 0a 7b 0a 72 65 ted.function.getAuthCache().{.re
b6c80 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 20 3f 20 27 turn.$this->cacheCredentials.?.'
b6ca0 27 20 3a 20 27 2d 2d 6e 6f 2d 61 75 74 68 2d 63 61 63 68 65 20 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a '.:.'--no-auth-cache.';.}.......
b6cc0 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 41 75 74 68 46 72 6f 6d 43 private.function.createAuthFromC
b6ce0 6f 6e 66 69 67 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 68 61 onfig().{.if.(!$this->config->ha
b6d00 73 28 27 68 74 74 70 2d 62 61 73 69 63 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d s('http-basic')).{.return.$this-
b6d20 3e 68 61 73 41 75 74 68 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 61 75 74 68 43 6f 6e 66 69 67 >hasAuth.=.false;.}..$authConfig
b6d40 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 74 74 70 2d 62 61 73 69 .=.$this->config->get('http-basi
b6d60 63 27 29 3b 0a 0a 24 68 6f 73 74 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 74 68 69 73 2d 3e 75 c');..$host.=.parse_url($this->u
b6d80 72 6c 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 rl,.PHP_URL_HOST);.if.(isset($au
b6da0 74 68 43 6f 6e 66 69 67 5b 24 68 6f 73 74 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 72 65 64 65 thConfig[$host])).{.$this->crede
b6dc0 6e 74 69 61 6c 73 5b 27 75 73 65 72 6e 61 6d 65 27 5d 20 3d 20 24 61 75 74 68 43 6f 6e 66 69 67 ntials['username'].=.$authConfig
b6de0 5b 24 68 6f 73 74 5d 5b 27 75 73 65 72 6e 61 6d 65 27 5d 3b 0a 24 74 68 69 73 2d 3e 63 72 65 64 [$host]['username'];.$this->cred
b6e00 65 6e 74 69 61 6c 73 5b 27 70 61 73 73 77 6f 72 64 27 5d 20 3d 20 24 61 75 74 68 43 6f 6e 66 69 entials['password'].=.$authConfi
b6e20 67 5b 24 68 6f 73 74 5d 5b 27 70 61 73 73 77 6f 72 64 27 5d 3b 0a 0a 72 65 74 75 72 6e 20 24 74 g[$host]['password'];..return.$t
b6e40 68 69 73 2d 3e 68 61 73 41 75 74 68 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 his->hasAuth.=.true;.}..return.$
b6e60 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 0a 0a 0a 0a 0a 70 this->hasAuth.=.false;.}.......p
b6e80 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 41 75 74 68 46 72 6f 6d 55 72 rivate.function.createAuthFromUr
b6ea0 6c 28 29 0a 7b 0a 24 75 72 69 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 74 68 69 73 2d 3e 75 72 l().{.$uri.=.parse_url($this->ur
b6ec0 6c 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 75 72 69 5b 27 75 73 65 72 27 5d 29 29 20 7b 0a 72 l);.if.(empty($uri['user'])).{.r
b6ee0 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 3b 0a 7d 0a eturn.$this->hasAuth.=.false;.}.
b6f00 0a 24 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 .$this->credentials['username'].
b6f20 3d 20 24 75 72 69 5b 27 75 73 65 72 27 5d 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 75 72 69 5b =.$uri['user'];.if.(!empty($uri[
b6f40 27 70 61 73 73 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 'pass'])).{.$this->credentials['
b6f60 70 61 73 73 77 6f 72 64 27 5d 20 3d 20 24 75 72 69 5b 27 70 61 73 73 27 5d 3b 0a 7d 0a 0a 72 65 password'].=.$uri['pass'];.}..re
b6f80 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 7d 0a 7d 0a turn.$this->hasAuth.=.true;.}.}.
b6fa0 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 69 6e 63 6c 75 64 <?php............function.includ
b6fc0 65 49 66 45 78 69 73 74 73 28 24 66 69 6c 65 29 0a 7b 0a 72 65 74 75 72 6e 20 66 69 6c 65 5f 65 eIfExists($file).{.return.file_e
b6fe0 78 69 73 74 73 28 24 66 69 6c 65 29 20 3f 20 69 6e 63 6c 75 64 65 20 24 66 69 6c 65 20 3a 20 66 xists($file).?.include.$file.:.f
b7000 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 28 21 24 6c 6f 61 64 65 72 20 3d 20 69 6e 63 6c 75 64 65 alse;.}..if.((!$loader.=.include
b7020 49 66 45 78 69 73 74 73 28 5f 5f 44 49 52 5f 5f 2e 27 2f 2e 2e 2f 76 65 6e 64 6f 72 2f 61 75 74 IfExists(__DIR__.'/../vendor/aut
b7040 6f 6c 6f 61 64 2e 70 68 70 27 29 29 20 26 26 20 28 21 24 6c 6f 61 64 65 72 20 3d 20 69 6e 63 6c oload.php')).&&.(!$loader.=.incl
b7060 75 64 65 49 66 45 78 69 73 74 73 28 5f 5f 44 49 52 5f 5f 2e 27 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 61 udeIfExists(__DIR__.'/../../../a
b7080 75 74 6f 6c 6f 61 64 2e 70 68 70 27 29 29 29 20 7b 0a 65 63 68 6f 20 27 59 6f 75 20 6d 75 73 74 utoload.php'))).{.echo.'You.must
b70a0 20 73 65 74 20 75 70 20 74 68 65 20 70 72 6f 6a 65 63 74 20 64 65 70 65 6e 64 65 6e 63 69 65 73 .set.up.the.project.dependencies
b70c0 2c 20 72 75 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 3a 27 2e 50 ,.run.the.following.commands:'.P
b70e0 48 50 5f 45 4f 4c 2e 0a 27 63 75 72 6c 20 2d 73 53 20 68 74 74 70 73 3a 2f 2f 67 65 74 63 6f 6d HP_EOL..'curl.-sS.https://getcom
b7100 70 6f 73 65 72 2e 6f 72 67 2f 69 6e 73 74 61 6c 6c 65 72 20 7c 20 70 68 70 27 2e 50 48 50 5f 45 poser.org/installer.|.php'.PHP_E
b7120 4f 4c 2e 0a 27 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 69 6e 73 74 61 6c 6c 27 2e OL..'php.composer.phar.install'.
b7140 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 24 6c 6f 61 PHP_EOL;.exit(1);.}..return.$loa
b7160 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 69 73 20 70 der;.<?php../*..*.This.file.is.p
b7180 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 69 6c 73 20 art.of.Composer...*..*.(c).Nils.
b71a0 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 64 65 3e 0a Adermann.<naderman@naderman.de>.
b71c0 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 67 69 61 6e .*.....Jordi.Boggiano.<j.boggian
b71e0 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 6c 20 63 6f o@seld.be>..*..*.For.the.full.co
b7200 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 69 6f 6e 2c pyright.and.license.information,
b7220 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 66 69 6c 65 .please.view.the.LICENSE..*.file
b7240 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 68 69 73 20 .that.was.distributed.with.this.
b7260 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 43 6f 6d 70 source.code...*/..namespace.Comp
b7280 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 4c 6f 61 64 oser\Autoload;../**..*.ClassLoad
b72a0 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 20 61 6e 64 er.implements.a.PSR-0,.PSR-4.and
b72c0 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 2a 20 20 20 .classmap.class.loader...*..*...
b72e0 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 74 6f 6c 6f ..$loader.=.new.\Composer\Autolo
b7300 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 2f 2f 20 72 ad\ClassLoader();..*..*.....//.r
b7320 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 63 65 73 0a egister.classes.with.namespaces.
b7340 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 5c 43 6f 6d .*.....$loader->add('Symfony\Com
b7360 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 27 29 3b 0a ponent',.__DIR__.'/component');.
b7380 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 27 2c 20 20 .*.....$loader->add('Symfony',..
b73a0 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 27 29 3b 0a .........__DIR__.'/framework');.
b73c0 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 74 6f 6c 6f .*..*.....//.activate.the.autolo
b73e0 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 72 28 29 3b ader..*.....$loader->register();
b7400 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 63 68 69 6e ..*..*.....//.to.enable.searchin
b7420 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 50 45 41 52 g.the.include.path.(eg..for.PEAR
b7440 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 65 74 55 73 .packages)..*.....$loader->setUs
b7460 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 20 74 68 69 eIncludePath(true);..*..*.In.thi
b7480 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 20 61 20 63 s.example,.if.you.try.to.use.a.c
b74a0 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 74 0a 20 2a lass.in.the.Symfony\Component..*
b74c0 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 6c 64 72 65 .namespace.or.one.of.its.childre
b74e0 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 20 66 6f 72 n.(Symfony\Component\Console.for
b7500 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 72 20 77 69 .instance),..*.the.autoloader.wi
b7520 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 75 6e 64 65 ll.first.look.for.the.class.unde
b7540 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 79 2c 20 61 r.the.component/..*.directory,.a
b7560 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 74 68 65 20 nd.it.will.then.fallback.to.the.
b7580 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 20 2a 20 66 framework/.directory.if.not..*.f
b75a0 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 20 54 68 69 ound.before.giving.up...*..*.Thi
b75c0 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 74 68 65 20 s.class.is.loosely.based.on.the.
b75e0 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 2e 0a 20 2a Symfony.UniversalClassLoader...*
b7600 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 20 3c 66 61 ..*.@author.Fabien.Potencier.<fa
b7620 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 20 4a 6f 72 bien@symfony.com>..*.@author.Jor
b7640 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 2e 62 65 3e di.Boggiano.<j.boggiano@seld.be>
b7660 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 69 67 2e 6f ..*.@see....http://www.php-fig.o
b7680 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 70 3a 2f 2f rg/psr/psr-0/..*.@see....http://
b76a0 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 2a 2f 0a 63 www.php-fig.org/psr/psr-4/..*/.c
b76c0 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 52 2d 34 0a lass.ClassLoader.{.....//.PSR-4.
b76e0 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 72 34 20 3d ....private.$prefixLengthsPsr4.=
b7700 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 78 44 69 72 .array();.....private.$prefixDir
b7720 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 20 24 66 61 sPsr4.=.array();.....private.$fa
b7740 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 20 20 20 2f llbackDirsPsr4.=.array();....../
b7760 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 73 50 73 72 /.PSR-0.....private.$prefixesPsr
b7780 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 6c 6c 62 61 0.=.array();.....private.$fallba
b77a0 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 72 69 76 61 ckDirsPsr0.=.array();......priva
b77c0 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 20 20 20 20 te.$useIncludePath.=.false;.....
b77e0 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 0a 0a 20 20 private.$classMap.=.array();....
b7800 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 74 69 76 65 ..private.$classMapAuthoritative
b7820 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 6f 6e 20 67 .=.false;......public.function.g
b7840 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 66 20 28 21 etPrefixes().....{.........if.(!
b7860 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 20 20 empty($this->prefixesPsr0)).{...
b7880 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 75 6e 63 5f ..........return.call_user_func_
b78a0 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 70 72 65 66 array('array_merge',.$this->pref
b78c0 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 20 20 72 65 ixesPsr0);.........}..........re
b78e0 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 6c 69 63 20 turn.array();.....}......public.
b7900 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 20 20 20 7b function.getPrefixesPsr4().....{
b7920 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 78 44 69 72 .........return.$this->prefixDir
b7940 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 63 74 69 6f sPsr4;.....}......public.functio
b7960 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 20 20 20 20 n.getFallbackDirs().....{.......
b7980 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 73 72 30 ..return.$this->fallbackDirsPsr0
b79a0 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 67 65 74 ;.....}......public.function.get
b79c0 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 20 20 20 20 FallbackDirsPsr4().....{........
b79e0 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 73 72 34 3b .return.$this->fallbackDirsPsr4;
b7a00 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 67 65 74 43 .....}......public.function.getC
b7a20 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 72 6e 20 24 lassMap().....{.........return.$
b7a40 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 2a 2a 0a 20 this->classMap;.....}....../**..
b7a60 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 20 43 6c 61 ....*.@param.array.$classMap.Cla
b7a80 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 20 20 20 70 ss.to.filename.map......*/.....p
b7aa0 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 72 72 61 79 ublic.function.addClassMap(array
b7ac0 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 20 28 24 74 .$classMap).....{.........if.($t
b7ae0 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 20 24 74 68 his->classMap).{.............$th
b7b00 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 74 68 69 73 is->classMap.=.array_merge($this
b7b20 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 20 20 20 20 ->classMap,.$classMap);.........
b7b40 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 63 6c 61 73 }.else.{.............$this->clas
b7b60 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 20 20 20 20 sMap.=.$classMap;.........}.....
b7b80 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
b7ba0 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 20 67 69 76 t.of.PSR-0.directories.for.a.giv
b7bc0 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 65 6e 64 69 en.prefix,.either......*.appendi
b7be0 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 20 70 72 65 ng.or.prepending.to.the.ones.pre
b7c00 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 0a 20 20 20 viously.set.for.this.prefix.....
b7c20 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 20 20 20 24 ..*......*.@param.string.......$
b7c40 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 61 72 61 6d prefix..The.prefix......*.@param
b7c60 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 53 52 2d 30 .array|string.$paths...The.PSR-0
b7c80 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 72 61 6d 20 .root.directories......*.@param.
b7ca0 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 72 20 74 6f bool.........$prepend.Whether.to
b7cc0 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 20 20 2a 2f .prepend.the.directories......*/
b7ce0 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 65 66 69 78 .....public.function.add($prefix
b7d00 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 20 20 20 ,.$paths,.$prepend.=.false).....
b7d20 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 20 20 20 {.........if.(!$prefix).{.......
b7d40 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 20 20 20 20 ......if.($prepend).{...........
b7d60 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 20 3d 20 ......$this->fallbackDirsPsr0.=.
b7d80 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 20 20 20 array_merge(....................
b7da0 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 20 20 20 20 .(array).$paths,................
b7dc0 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 0a 20 20 20 .....$this->fallbackDirsPsr0....
b7de0 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 7d 20 65 6c .............);.............}.el
b7e00 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 66 61 6c 6c se.{.................$this->fall
b7e20 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 20 20 20 20 backDirsPsr0.=.array_merge(.....
b7e40 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 61 63 6b 44 ................$this->fallbackD
b7e60 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 20 28 61 72 irsPsr0,.....................(ar
b7e80 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 29 3b 0a 20 ray).$paths.................);..
b7ea0 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 74 75 72 6e ...........}..............return
b7ec0 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 3d 20 24 70 ;.........}..........$first.=.$p
b7ee0 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 28 24 74 68 refix[0];.........if.(!isset($th
b7f00 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 65 66 69 78 is->prefixesPsr0[$first][$prefix
b7f20 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 66 69 78 65 ])).{.............$this->prefixe
b7f40 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 72 61 79 29 sPsr0[$first][$prefix].=.(array)
b7f60 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 3b 0a 20 20 .$paths;..............return;...
b7f80 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 29 20 7b 0a ......}.........if.($prepend).{.
b7fa0 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 73 72 30 5b ............$this->prefixesPsr0[
b7fc0 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 0a $first][$prefix].=.array_merge(.
b7fe0 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 68 73 2c 0a ................(array).$paths,.
b8000 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 78 65 73 50 ................$this->prefixesP
b8020 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 20 20 20 20 sr0[$first][$prefix]............
b8040 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 20 20 20 20 .);.........}.else.{............
b8060 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 5b 24 70 72 .$this->prefixesPsr0[$first][$pr
b8080 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 20 20 20 20 efix].=.array_merge(............
b80a0 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]
b80c0 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 61 72 72 61 [$prefix],.................(arra
b80e0 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 20 20 20 20 y).$paths.............);........
b8100 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 69 73 74 65 .}.....}....../**......*.Registe
b8120 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 73 20 66 6f rs.a.set.of.PSR-4.directories.fo
b8140 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 20 20 20 20 r.a.given.namespace,.either.....
b8160 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 6f 20 74 68 .*.appending.or.prepending.to.th
b8180 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 69 73 20 6e e.ones.previously.set.for.this.n
b81a0 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 6d 20 73 amespace.......*......*.@param.s
b81c0 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 66 69 78 2f tring.......$prefix..The.prefix/
b81e0 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 20 20 namespace,.with.trailing.'\\'...
b8200 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 73 20 ...*.@param.array|string.$paths.
b8220 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 20 ..The.PSR-4.base.directories....
b8240 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 70 65 6e 64 ..*.@param.bool.........$prepend
b8260 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 63 74 6f 72 .Whether.to.prepend.the.director
b8280 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 6e 76 61 6c ies......*......*.@throws.\Inval
b82a0 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 20 20 20 20 idArgumentException......*/.....
b82c0 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 66 69 78 2c public.function.addPsr4($prefix,
b82e0 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 20 20 20 7b .$paths,.$prepend.=.false).....{
b8300 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 20 20 20 20 .........if.(!$prefix).{........
b8320 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 20 66 6f 72 .....//.Register.directories.for
b8340 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 20 20 20 20 .the.root.namespace.............
b8360 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 20 20 20 20 .if.($prepend).{................
b8380 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 72 72 61 79 .$this->fallbackDirsPsr4.=.array
b83a0 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 28 61 72 72 _merge(.....................(arr
b83c0 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 20 20 20 20 ay).$paths,.....................
b83e0 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 20 20 20 20 $this->fallbackDirsPsr4.........
b8400 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 65 20 7b 0a ........);.............}.else.{.
b8420 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 61 63 6b 44 ................$this->fallbackD
b8440 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 20 20 20 20 irsPsr4.=.array_merge(..........
b8460 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 50 73 ...........$this->fallbackDirsPs
b8480 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 61 79 29 20 r4,.....................(array).
b84a0 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 20 20 20 20 $paths.................);.......
b84c0 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 73 73 65 74 ......}.........}.elseif.(!isset
b84e0 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 69 78 5d 29 ($this->prefixDirsPsr4[$prefix])
b8500 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 64 69 72 65 ).{.............//.Register.dire
b8520 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 0a 20 20 20 ctories.for.a.new.namespace.....
b8540 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 72 65 66 69 .........$length.=.strlen($prefi
b8560 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 20 24 70 72 x);.............if.('\\'.!==.$pr
b8580 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 20 20 20 20 efix[$length.-.1]).{............
b85a0 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 65 6e 74 45 .....throw.new.\InvalidArgumentE
b85c0 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 70 72 65 66 xception("A.non-empty.PSR-4.pref
b85e0 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 20 73 65 70 ix.must.end.with.a.namespace.sep
b8600 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 20 20 20 20 arator.");.............}........
b8620 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 34 5b 24 70 .....$this->prefixLengthsPsr4[$p
b8640 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 3b 0a 20 20 refix[0]][$prefix].=.$length;...
b8660 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 73 72 34 5b ..........$this->prefixDirsPsr4[
b8680 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 20 20 20 20 $prefix].=.(array).$paths;......
b86a0 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 20 20 20 20 ...}.elseif.($prepend).{........
b86c0 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 66 6f 72 20 .....//.Prepend.directories.for.
b86e0 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 61 63 65 2e an.already.registered.namespace.
b8700 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 73 .............$this->prefixDirsPs
b8720 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 20 20 20 20 r4[$prefix].=.array_merge(......
b8740 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 20 20 20 20 ...........(array).$paths,......
b8760 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 73 72 34 ...........$this->prefixDirsPsr4
b8780 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 20 20 20 20 [$prefix].............);........
b87a0 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 65 6e 64 20 .}.else.{.............//.Append.
b87c0 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 65 67 69 73 directories.for.an.already.regis
b87e0 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 20 24 74 68 tered.namespace..............$th
b8800 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 3d 20 61 72 is->prefixDirsPsr4[$prefix].=.ar
b8820 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 74 68 69 73 ray_merge(.................$this
b8840 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 20 20 20 20 ->prefixDirsPsr4[$prefix],......
b8860 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 20 20 20 20 ...........(array).$paths.......
b8880 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 20 20 2f 2a ......);.........}.....}....../*
b88a0 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 50 53 52 2d *......*.Registers.a.set.of.PSR-
b88c0 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 65 66 69 78 0.directories.for.a.given.prefix
b88e0 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 73 20 70 72 ,......*.replacing.any.others.pr
b8900 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 0a 20 20 eviously.set.for.this.prefix....
b8920 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 20 20 20 ...*......*.@param.string.......
b8940 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 61 72 61 6d $prefix.The.prefix......*.@param
b8960 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 52 2d 30 20 .array|string.$paths..The.PSR-0.
b8980 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 20 70 75 62 base.directories......*/.....pub
b89a0 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 61 74 68 73 lic.function.set($prefix,.$paths
b89c0 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 0a ).....{.........if.(!$prefix).{.
b89e0 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 50 ............$this->fallbackDirsP
b8a00 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 20 20 7d 20 sr0.=.(array).$paths;.........}.
b8a20 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 65 66 69 78 else.{.............$this->prefix
b8a40 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 3d 20 28 61 esPsr0[$prefix[0]][$prefix].=.(a
b8a60 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 7d 0a 0a 20 rray).$paths;.........}.....}...
b8a80 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 74 20 6f 66 .../**......*.Registers.a.set.of
b8aa0 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 65 6e 20 6e .PSR-4.directories.for.a.given.n
b8ac0 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 6e 79 20 6f amespace,......*.replacing.any.o
b8ae0 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 73 20 6e 61 thers.previously.set.for.this.na
b8b00 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 6d 20 73 74 mespace.......*......*.@param.st
b8b20 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 78 2f 6e 61 ring.......$prefix.The.prefix/na
b8b40 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 20 20 20 20 mespace,.with.trailing.'\\'.....
b8b60 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 73 20 20 54 .*.@param.array|string.$paths..T
b8b80 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 20 20 20 2a he.PSR-4.base.directories......*
b8ba0 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 6d 65 6e 74 ......*.@throws.\InvalidArgument
b8bc0 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 20 66 75 6e Exception......*/.....public.fun
b8be0 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 73 29 0a 20 ction.setPsr4($prefix,.$paths)..
b8c00 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).{....
b8c20 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 34 .........$this->fallbackDirsPsr4
b8c40 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 20 65 6c 73 .=.(array).$paths;.........}.els
b8c60 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 72 6c 65 6e e.{.............$length.=.strlen
b8c80 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 5c 5c 27 20 ($prefix);.............if.('\\'.
b8ca0 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 20 20 20 20 !==.$prefix[$length.-.1]).{.....
b8cc0 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 69 64 41 72 ............throw.new.\InvalidAr
b8ce0 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 20 50 53 52 gumentException("A.non-empty.PSR
b8d00 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 6d 65 73 70 -4.prefix.must.end.with.a.namesp
b8d20 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 20 20 7d 0a ace.separator.");.............}.
b8d40 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 67 74 68 73 ............$this->prefixLengths
b8d60 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 24 6c 65 6e Psr4[$prefix[0]][$prefix].=.$len
b8d80 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 69 78 44 69 gth;.............$this->prefixDi
b8da0 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 61 74 68 73 rsPsr4[$prefix].=.(array).$paths
b8dc0 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 20 20 20 20 ;.........}.....}....../**......
b8de0 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 6c 75 64 65 *.Turns.on.searching.the.include
b8e00 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 2a 0a 20 20 .path.for.class.files.......*...
b8e20 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 50 61 74 68 ...*.@param.bool.$useIncludePath
b8e40 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 73 65 74 ......*/.....public.function.set
b8e60 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 74 68 29 0a UseIncludePath($useIncludePath).
b8e80 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 75 64 65 50 ....{.........$this->useIncludeP
b8ea0 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 0a 0a 20 20 ath.=.$useIncludePath;.....}....
b8ec0 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 63 68 65 63 ../**......*.Can.be.used.to.chec
b8ee0 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 20 69 6e 63 k.if.the.autoloader.uses.the.inc
b8f00 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 72 20 63 6c lude.path.to.check......*.for.cl
b8f20 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 20 62 6f 6f asses.......*......*.@return.boo
b8f40 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 6e 20 67 65 l......*/.....public.function.ge
b8f60 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 20 20 20 20 tUseIncludePath().....{.........
b8f80 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 3b 0a 20 20 return.$this->useIncludePath;...
b8fa0 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 66 20 73 65 ..}....../**......*.Turns.off.se
b8fc0 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 61 63 6b 20 arching.the.prefix.and.fallback.
b8fe0 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 20 2a 20 74 directories.for.classes......*.t
b9000 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 20 77 69 74 hat.have.not.been.registered.wit
b9020 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 20 2a 20 40 h.the.class.map.......*......*.@
b9040 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 61 74 69 76 param.bool.$classMapAuthoritativ
b9060 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 6e 20 73 65 e......*/.....public.function.se
b9080 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 73 4d 61 70 tClassMapAuthoritative($classMap
b90a0 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 20 24 74 68 Authoritative).....{.........$th
b90c0 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 24 63 6c 61 is->classMapAuthoritative.=.$cla
b90e0 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 20 20 20 2f ssMapAuthoritative;.....}....../
b9100 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 70 20 66 61 **......*.Should.class.lookup.fa
b9120 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 6e 74 20 63 il.if.not.found.in.the.current.c
b9140 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 75 72 6e 20 lass.map?......*......*.@return.
b9160 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 6e bool......*/.....public.function
b9180 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 20 20 20 7b .isClassMapAuthoritative().....{
b91a0 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 4d 61 70 41 .........return.$this->classMapA
b91c0 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 0a 20 20 20 uthoritative;.....}....../**....
b91e0 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 61 73 20 61 ..*.Registers.this.instance.as.a
b9200 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 40 70 61 72 n.autoloader.......*......*.@par
b9220 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 70 72 65 70 am.bool.$prepend.Whether.to.prep
b9240 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 20 20 20 2a end.the.autoloader.or.not......*
b9260 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 65 72 28 24 /.....public.function.register($
b9280 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 20 20 20 73 prepend.=.false).....{.........s
b92a0 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 74 68 69 73 pl_autoload_register(array($this
b92c0 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 6e 64 29 3b ,.'loadClass'),.true,.$prepend);
b92e0 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 69 73 74 65 .....}....../**......*.Unregiste
b9300 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 6f 61 64 65 rs.this.instance.as.an.autoloade
b9320 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 6f 6e 20 75 r.......*/.....public.function.u
b9340 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 6c 5f 61 75 nregister().....{.........spl_au
b9360 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 73 2c 20 27 toload_unregister(array($this,.'
b9380 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 0a 20 20 20 loadClass'));.....}....../**....
b93a0 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 20 69 6e 74 ..*.Loads.the.given.class.or.int
b93c0 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 20 20 73 74 erface.......*......*.@param..st
b93e0 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 68 65 20 63 ring....$class.The.name.of.the.c
b9400 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 6c 20 54 72 lass......*.@return.bool|null.Tr
b9420 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 0a 20 20 20 ue.if.loaded,.null.otherwise....
b9440 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 64 43 6c 61 ..*/.....public.function.loadCla
b9460 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 28 24 66 69 ss($class).....{.........if.($fi
b9480 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 29 20 7b 0a le.=.$this->findFile($class)).{.
b94a0 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 65 29 3b 0a ............includeFile($file);.
b94c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 20 20 .............return.true;.......
b94e0 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 6e 64 73 20 ..}.....}....../**......*.Finds.
b9500 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 68 65 20 63 the.path.to.the.file.where.the.c
b9520 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 20 2a 20 40 lass.is.defined.......*......*.@
b9540 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 20 6f 66 20 param.string.$class.The.name.of.
b9560 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 75 72 6e 20 the.class......*......*.@return.
b9580 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 6e 64 2c 20 string|false.The.path.if.found,.
b95a0 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 70 75 62 6c false.otherwise......*/.....publ
b95c0 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 0a 20 20 20 ic.function.findFile($class)....
b95e0 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 72 20 50 48 .{.........//.work.around.for.PH
b9600 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 2e 70 68 70 P.5.3.0.-.5.3.2.https://bugs.php
b9620 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 3d 3d 20 24 .net/50731.........if.('\\'.==.$
b9640 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 73 73 20 3d class[0]).{.............$class.=
b9660 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 7d 0a 0a 20 .substr($class,.1);.........}...
b9680 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 20 20 20 20 .......//.class.map.lookup......
b96a0 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 5b 24 63 6c ...if.(isset($this->classMap[$cl
b96c0 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 24 74 68 69 ass])).{.............return.$thi
b96e0 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 20 7d 0a 20 s->classMap[$class];.........}..
b9700 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 74 68 6f 72 .......if.($this->classMapAuthor
b9720 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 6e 20 66 61 itative).{.............return.fa
b9740 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 65 20 3d 20 lse;.........}..........$file.=.
b9760 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 28 24 63 6c $this->findFileWithExtension($cl
b9780 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 61 72 63 68 ass,.'.php');..........//.Search
b97a0 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 6e 6e 69 6e .for.Hack.files.if.we.are.runnin
b97c0 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 3d 3d 3d 20 g.on.HHVM.........if.($file.===.
b97e0 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 4e 27 29 29 null.&&.defined('HHVM_VERSION'))
b9800 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 2d 3e 66 69 .{.............$file.=.$this->fi
b9820 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 27 2e 68 68 ndFileWithExtension($class,.'.hh
b9840 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 66 69 6c 65 ');.........}..........if.($file
b9860 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 52 65 6d 65 .===.null).{.............//.Reme
b9880 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 74 20 65 78 mber.that.this.class.does.not.ex
b98a0 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 73 2d 3e 63 ist..............return.$this->c
b98c0 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 20 20 20 20 lassMap[$class].=.false;........
b98e0 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 20 20 7d 0a .}..........return.$file;.....}.
b9900 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 6c 65 57 69 .....private.function.findFileWi
b9920 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 20 20 7b 0a thExtension($class,.$ext).....{.
b9940 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 20 20 20 20 ........//.PSR-4.lookup.........
b9960 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 73 73 2c $logicalPathPsr4.=.strtr($class,
b9980 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 20 24 65 .'\\',.DIRECTORY_SEPARATOR)...$e
b99a0 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 5b 30 5d 3b xt;..........$first.=.$class[0];
b99c0 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 65 66 69 78 .........if.(isset($this->prefix
b99e0 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 20 20 20 20 LengthsPsr4[$first])).{.........
b9a00 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 6e 67 74 68 ....foreach.($this->prefixLength
b9a20 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 24 6c 65 6e sPsr4[$first].as.$prefix.=>.$len
b9a40 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 20 3d 3d 3d gth).{.................if.(0.===
b9a60 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 20 20 20 20 .strpos($class,.$prefix)).{.....
b9a80 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 69 73 2d 3e ................foreach.($this->
b9aa0 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 69 72 29 prefixDirsPsr4[$prefix].as.$dir)
b9ac0 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 66 20 28 66 .{.........................if.(f
b9ae0 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 45 43 54 ile_exists($file.=.$dir...DIRECT
b9b00 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 63 61 6c 50 ORY_SEPARATOR...substr($logicalP
b9b20 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 20 20 20 20 athPsr4,.$length))).{...........
b9b40 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 6c 65 3b 0a ..................return.$file;.
b9b60 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 20 20 20 20 ........................}.......
b9b80 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 20 20 20 20 ..............}.................
b9ba0 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 20 20 20 20 }.............}.........}.......
b9bc0 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 20 20 20 20 ...//.PSR-4.fallback.dirs.......
b9be0 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 72 73 50 73 ..foreach.($this->fallbackDirsPs
b9c00 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 20 28 66 69 r4.as.$dir).{.............if.(fi
b9c20 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 45 43 54 4f le_exists($file.=.$dir...DIRECTO
b9c40 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 73 72 34 29 RY_SEPARATOR...$logicalPathPsr4)
b9c60 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 66 69 6c 65 ).{.................return.$file
b9c80 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 ;.............}.........}.......
b9ca0 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 66 20 28 66 ...//.PSR-0.lookup.........if.(f
b9cc0 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 73 73 2c 20 alse.!==.$pos.=.strrpos($class,.
b9ce0 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 73 70 61 63 '\\')).{.............//.namespac
b9d00 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 6f 67 69 63 ed.class.name.............$logic
b9d20 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 50 61 74 68 alPathPsr0.=.substr($logicalPath
b9d40 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 20 20 20 20 Psr4,.0,.$pos.+.1)..............
b9d60 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 74 68 50 73 .....strtr(substr($logicalPathPs
b9d80 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 59 5f 53 45 r4,.$pos.+.1),.'_',.DIRECTORY_SE
b9da0 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 20 20 20 20 PARATOR);.........}.else.{......
b9dc0 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 6d 65 0a 20 .......//.PEAR-like.class.name..
b9de0 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 3d 20 73 74 ...........$logicalPathPsr0.=.st
b9e00 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 45 50 41 52 rtr($class,.'_',.DIRECTORY_SEPAR
b9e20 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 20 20 20 20 ATOR)...$ext;.........}.........
b9e40 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 72 30 5b 24 .if.(isset($this->prefixesPsr0[$
b9e60 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 63 68 20 28 first])).{.............foreach.(
b9e80 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 61 73 20 24 $this->prefixesPsr0[$first].as.$
b9ea0 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 20 20 20 20 prefix.=>.$dirs).{..............
b9ec0 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 24 70 72 65 ...if.(0.===.strpos($class,.$pre
b9ee0 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 66 6f 72 65 fix)).{.....................fore
b9f00 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 20 20 20 20 ach.($dirs.as.$dir).{...........
b9f20 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 73 28 24 66 ..............if.(file_exists($f
b9f40 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 41 54 4f 52 ile.=.$dir...DIRECTORY_SEPARATOR
b9f60 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 20 20 20 20 ...$logicalPathPsr0)).{.........
b9f80 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 6c 65 ....................return.$file
b9fa0 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 20 20 ;.........................}.....
b9fc0 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 20 20 ................}...............
b9fe0 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 20 20 ..}.............}.........}.....
ba000 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 20 20 20 20 .....//.PSR-0.fallback.dirs.....
ba020 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 72 73 ....foreach.($this->fallbackDirs
ba040 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 69 66 20 28 Psr0.as.$dir).{.............if.(
ba060 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 45 43 file_exists($file.=.$dir...DIREC
ba080 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 73 72 TORY_SEPARATOR...$logicalPathPsr
ba0a0 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 20 24 66 69 0)).{.................return.$fi
ba0c0 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 20 20 le;.............}.........}.....
ba0e0 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 0a 20 20 20 .....//.PSR-0.include.paths.....
ba100 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 74 68 20 26 .....if.($this->useIncludePath.&
ba120 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 6c 75 64 65 &.$file.=.stream_resolve_include
ba140 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 20 20 20 20 _path($logicalPathPsr0)).{......
ba160 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 20 7d 0a 20 .......return.$file;.........}..
ba180 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 64 20 69 6e ...}.}../**..*.Scope.isolated.in
ba1a0 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 20 74 6f 20 clude...*..*.Prevents.access.to.
ba1c0 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 65 73 2e 0a $this/self.from.included.files..
ba1e0 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 6c 65 29 0a .*/.function.includeFile($file).
ba200 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 20 22 24 73 {.....include.$file;.}.{....."$s
ba220 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 6f 72 67 2f chema":."http://json-schema.org/
ba240 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 22 3a 20 22 draft-04/schema#",....."name":."
ba260 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 74 22 2c 0a Package",....."type":."object",.
ba280 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 66 61 6c 73 ...."additionalProperties":.fals
ba2a0 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 20 22 64 65 e,....."required":.[."name",."de
ba2c0 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 73 22 3a 20 scription".],....."properties":.
ba2e0 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 20 20 20 20 {........."name":.{.............
ba300 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 22 64 "type":."string",............."d
ba320 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 69 6e 63 6c escription":."Package.name,.incl
ba340 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 22 0a 20 20 uding.'vendor-name/'.prefix."...
ba360 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 20 20 20 20 ......},........."type":.{......
ba380 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 67 65 20 74 ......."description":."Package.t
ba3a0 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 6d 6d 6f 6e ype,.either.'library'.for.common
ba3c0 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 20 66 6f 72 .packages,.'composer-plugin'.for
ba3e0 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 65 6d 70 74 .plugins,.'metapackage'.for.empt
ba400 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 20 28 5b 61 y.packages,.or.a.custom.type.([a
ba420 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 72 20 70 72 -z0-9-]+).defined.by.whatever.pr
ba440 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 6f 2e 22 2c oject.this.package.applies.to.",
ba460 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 22 0a 20 20 ............."type":."string"...
ba480 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 22 3a 20 7b ......},........."target-dir":.{
ba4a0 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 44 45 50 ............."description":."DEP
ba4c0 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 74 6f 20 62 RECATED:.Forces.the.package.to.b
ba4e0 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 75 62 64 69 e.installed.into.the.given.subdi
ba500 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 6f 72 20 61 rectory.path..This.is.used.for.a
ba520 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 61 74 20 64 utoloading.PSR-0.packages.that.d
ba540 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 68 2e 20 55 o.not.contain.their.full.path..U
ba560 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 2d 70 6c 61 se.forward.slashes.for.cross-pla
ba580 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 20 20 20 20 tform.compatibility.",..........
ba5a0 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 7d 2c 0a 20 ..."type":."string".........},..
ba5c0 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 20 20 20 20 ......."description":.{.........
ba5e0 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",...........
ba600 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 61 67 65 20 .."description":."Short.package.
ba620 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 20 20 20 20 description.".........},........
ba640 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 74 79 70 65 ."keywords":.{............."type
ba660 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 6d 73 22 3a ":."array",............."items":
ba680 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 72 69 .{................."type":."stri
ba6a0 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 70 74 69 6f ng",................."descriptio
ba6c0 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 20 70 61 63 n":."A.tag/keyword.that.this.pac
ba6e0 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 20 20 7d 0a kage.relates.to.".............}.
ba700 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 22 3a 20 7b ........},........."homepage":.{
ba720 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 22 2c 0a 20 ............."type":."string",..
ba740 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 6f 6d 65 70 ..........."description":."Homep
ba760 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 20 20 20 20 age.URL.for.the.project.",......
ba780 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 20 7d ......."format":."uri".........}
ba7a0 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 20 20 20 20 ,........."version":.{..........
ba7c0 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 20 ..."type":."string",............
ba7e0 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 73 69 6f 6e ."description":."Package.version
ba800 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 67 2f 64 6f ,.see.https://getcomposer.org/do
ba820 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 6f 72 65 20 c/04-schema.md#version.for.more.
ba840 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 20 20 20 20 info.on.valid.schemes.".........
ba860 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 20 20 20 20 },........."time":.{............
ba880 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 22 ."type":."string",............."
ba8a0 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 73 65 20 64 description":."Package.release.d
ba8c0 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 4d 4d 2d 44 ate,.in.'YYYY-MM-DD',.'YYYY-MM-D
ba8e0 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 48 3a 4d 4d D.HH:MM:SS'.or.'YYYY-MM-DDTHH:MM
ba900 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 20 20 20 20 :SSZ'.format.".........},.......
ba920 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 74 79 70 65 .."license":.{............."type
ba940 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 20 20 20 20 ":.["string",."array"],.........
ba960 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 6e 61 6d 65 ...."description":."License.name
ba980 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 65 73 2e 22 ..Or.an.array.of.license.names."
ba9a0 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 22 3a 20 7b .........},........."authors":.{
ba9c0 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 2c 0a 20 20 ............."type":."array",...
ba9e0 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 73 74 20 6f .........."description":."List.o
baa00 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 6f 20 74 68 f.authors.that.contributed.to.th
baa20 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 20 74 68 65 e.package..This.is.typically.the
baa40 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 75 6c 6c 20 .main.maintainers,.not.the.full.
baa60 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 20 7b 0a 20 list.",............."items":.{..
baa80 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 74 22 2c ..............."type":."object",
baaa0 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 50 72 6f 70 ................."additionalProp
baac0 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 20 20 20 20 erties":.false,.................
baae0 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 20 20 20 20 "required":.[."name"],..........
bab00 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 20 ......."properties":.{..........
bab20 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 20 20 20 20 ..........."name":.{............
bab40 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 20 ............."type":."string",..
bab60 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 72 69 70 74 ......................."descript
bab80 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 6f 72 2e 22 ion":."Full.name.of.the.author."
baba0 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 20 20 20 20 .....................},.........
babc0 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 20 20 20 20 ............"email":.{..........
babe0 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",
bac00 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 72 69 ........................."descri
bac20 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 65 20 61 75 ption":."Email.address.of.the.au
bac40 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 20 20 20 20 thor.",.........................
bac60 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 20 20 20 20 "format":."email"...............
bac80 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 20 22 68 6f ......},....................."ho
baca0 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 20 20 20 20 mepage":.{......................
bacc0 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 20 ..."type":."string",............
bace0 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 48 6f 6d ............."description":."Hom
bad00 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 20 20 20 20 epage.URL.for.the.author.",.....
bad20 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
bad40 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 20 20 20 20 ri".....................},......
bad60 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 20 20 20 20 ..............."role":.{........
bad80 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
bada0 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
badc0 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 74 68 65 20 ription":."Author's.role.in.the.
bade0 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 20 20 7d 0a project.".....................}.
bae00 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 ................}.............}.
bae20 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 3a 20 7b 0a ........},........."require":.{.
bae40 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",...
bae60 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
bae80 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 79 73 29 20 s.a.hash.of.package.name.(keys).
baea0 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 75 65 73 29 and.version.constraints.(values)
baec0 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 69 73 20 70 .that.are.required.to.run.this.p
baee0 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 69 6f 6e 61 ackage.",............."additiona
baf00 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 2c 0a 20 20 lProperties":.true.........},...
baf20 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 20 20 20 22 ......"replace":.{............."
baf40 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 22 64 65 type":."object",............."de
baf60 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 6f 66 20 70 scription":."This.is.a.hash.of.p
baf80 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 6f 6e 20 63 ackage.name.(keys).and.version.c
bafa0 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 20 62 65 20 onstraints.(values).that.can.be.
bafc0 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 20 20 20 20 replaced.by.this.package.",.....
bafe0 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":.
bb000 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 6c 69 63 true.........},........."conflic
bb020 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 62 6a 65 63 t":.{............."type":."objec
bb040 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":."
bb060 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.(
bb080 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
bb0a0 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 69 73 20 70 alues).that.conflict.with.this.p
bb0c0 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 69 6f 6e 61 ackage.",............."additiona
bb0e0 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 2c 0a 20 20 lProperties":.true.........},...
bb100 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 20 20 20 22 ......"provide":.{............."
bb120 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 22 64 65 type":."object",............."de
bb140 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 6f 66 20 70 scription":."This.is.a.hash.of.p
bb160 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 6f 6e 20 63 ackage.name.(keys).and.version.c
bb180 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 73 20 70 61 onstraints.(values).that.this.pa
bb1a0 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 6f 20 74 68 ckage.provides.in.addition.to.th
bb1c0 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 20 20 20 20 is.package's.name.",............
bb1e0 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 20 20 ."additionalProperties":.true...
bb200 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 76 22 3a 20 ......},........."require-dev":.
bb220 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 2c 0a {............."type":."object",.
bb240 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 73 ............"description":."This
bb260 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 79 73 .is.a.hash.of.package.name.(keys
bb280 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 75 65 ).and.version.constraints.(value
bb2a0 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 73 20 66 6f s).that.this.package.requires.fo
bb2c0 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 6c 73 20 61 r.developing.it.(testing.tools.a
bb2e0 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 69 74 69 6f nd.such).",............."additio
bb300 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 2c 0a nalProperties":.true.........},.
bb320 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 20 20 20 20 ........"suggest":.{............
bb340 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 22 ."type":."object",............."
bb360 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 6f 66 description":."This.is.a.hash.of
bb380 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 63 72 69 70 .package.name.(keys).and.descrip
bb3a0 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 6b 61 67 65 tions.(values).that.this.package
bb3c0 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 28 74 68 69 .suggests.work.well.with.it.(thi
bb3e0 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 73 65 72 20 s.will.be.suggested.to.the.user.
bb400 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 20 20 20 20 during.installation).",.........
bb420 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 65 ...."additionalProperties":.true
bb440 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 3a 20 7b 0a .........},........."config":.{.
bb460 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",...
bb480 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 6d 70 6f 73 .........."description":."Compos
bb4a0 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 72 6f 70 65 er.options.",............."prope
bb4c0 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 72 6f 63 65 rties":.{................."proce
bb4e0 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 20 20 20 20 ss-timeout":.{..................
bb500 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 20 20 20 ..."type":."integer",...........
bb520 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 74 69 .........."description":."The.ti
bb540 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 20 65 78 65 meout.in.seconds.for.process.exe
bb560 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 69 6e 73 29 cutions,.defaults.to.300.(5mins)
bb580 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 .".................},...........
bb5a0 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 20 20 20 20 ......"use-include-path":.{.....
bb5c0 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 65 61 6e ................"type":."boolean
bb5e0 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
bb600 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 20 61 75 74 ion":."If.true,.the.Composer.aut
bb620 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 6c 61 73 73 oloader.will.also.look.for.class
bb640 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 0a 20 20 20 es.in.the.PHP.include.path."....
bb660 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 .............},.................
bb680 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 20 20 20 20 "preferred-install":.{..........
bb6a0 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",....
bb6c0 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":.
bb6e0 22 54 68 65 20 69 6e 73 74 61 6c 6c 20 6d 65 74 68 6f 64 20 43 6f 6d 70 6f 73 65 72 20 77 69 6c "The.install.method.Composer.wil
bb700 6c 20 70 72 65 66 65 72 20 74 6f 20 75 73 65 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 61 75 74 l.prefer.to.use,.defaults.to.aut
bb720 6f 20 61 6e 64 20 63 61 6e 20 62 65 20 61 6e 79 20 6f 66 20 73 6f 75 72 63 65 2c 20 64 69 73 74 o.and.can.be.any.of.source,.dist
bb740 20 6f 72 20 61 75 74 6f 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 .or.auto.".................},...
bb760 20 20 20 20 20 20 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 .............."notify-on-install
bb780 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":
bb7a0 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 20 ."boolean",.....................
bb7c0 22 64 65 73 63 72 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 "description":."Composer.allows.
bb7e0 72 65 70 6f 73 69 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 repositories.to.define.a.notific
bb800 61 74 69 6f 6e 20 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 ation.URL,.so.that.they.get.noti
bb820 66 69 65 64 20 77 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 fied.whenever.a.package.from.tha
bb840 74 20 72 65 70 6f 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 t.repository.is.installed..This.
bb860 6f 70 74 69 6f 6e 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 option.allows.you.to.disable.tha
bb880 74 20 62 65 68 61 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 t.behaviour,.defaults.to.true.".
bb8a0 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 ................},..............
bb8c0 20 20 20 22 67 69 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 ..."github-protocols":.{........
bb8e0 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",...
bb900 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":
bb920 20 22 41 20 6c 69 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 ."A.list.of.protocols.to.use.for
bb940 20 67 69 74 68 75 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 .github.com.clones,.in.priority.
bb960 6f 72 64 65 72 2c 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 order,.defaults.to.[\"git\",.\"h
bb980 74 74 70 73 5c 22 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 ttps\",.\"http\"].",............
bb9a0 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 20 ........."items":.{.............
bb9c0 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 20 ............"type":."string"....
bb9e0 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 20 .................}..............
bba00 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 6f 61 ...},................."github-oa
bba20 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 20 20 22 74 79 70 uth":.{....................."typ
bba40 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 20 e":."object",...................
bba60 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 66 20 64 6f 6d 61 .."description":."A.hash.of.doma
bba80 69 6e 20 6e 61 6d 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 in.name.=>.github.API.oauth.toke
bbaa0 6e 73 2c 20 74 79 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 ns,.typically.{\"github.com\":\"
bbac0 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 20 20 20 20 20 20 <token>\"}.",...................
bbae0 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 20 .."additionalProperties":.true..
bbb00 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 ...............},...............
bbb20 20 20 22 67 69 74 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 .."gitlab-oauth":.{.............
bbb40 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 20 20 20 ........"type":."object",.......
bbb60 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 41 20 .............."description":."A.
bbb80 68 61 73 68 20 6f 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 hash.of.domain.name.=>.gitlab.AP
bbba0 49 20 6f 61 75 74 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 I.oauth.tokens,.typically.{\"git
bbbc0 6c 61 62 2e 63 6f 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 lab.com\":\"<token>\"}.",.......
bbbe0 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 50 72 6f 70 65 72 74 .............."additionalPropert
bbc00 69 65 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 ies":.true.................},...
bbc20 20 20 20 20 20 20 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 .............."disable-tls":.{..
bbc40 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
bbc60 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
bbc80 69 70 74 69 6f 6e 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 iption":."Defaults.to.`false`..I
bbca0 66 20 73 65 74 20 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 f.set.to.true.all.HTTPS.URLs.wil
bbcc0 6c 20 62 65 20 74 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 l.be.tried.with.HTTP.instead.and
bbce0 20 6e 6f 20 6e 65 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 .no.network.level.encryption.is.
bbd00 70 65 72 66 6f 72 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 performed..Enabling.this.is.a.se
bbd20 63 75 72 69 74 79 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 curity.risk.and.is.NOT.recommend
bbd40 65 64 2e 20 54 68 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 ed..The.better.way.is.to.enable.
bbd60 74 68 65 20 70 68 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 the.php_openssl.extension.in.php
bbd80 2e 69 6e 69 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 .ini.".................},.......
bbda0 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 20 20 20 20 20 .........."cafile":.{...........
bbdc0 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",.....
bbde0 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":."
bbe00 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 65 20 6f 70 65 A.way.to.set.the.path.to.the.ope
bbe20 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 6f 75 20 73 68 nssl.CA.file..In.PHP.5.6+.you.sh
bbe40 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 65 6e 73 73 6c ould.rather.set.this.via.openssl
bbe60 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 68 20 50 48 50 .cafile.in.php.ini,.although.PHP
bbe80 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 65 63 74 20 79 .5.6+.should.be.able.to.detect.y
bbea0 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 63 61 6c 6c 79 our.system.CA.file.automatically
bbec0 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 .".................},...........
bbee0 20 20 20 20 20 20 22 68 74 74 70 2d 62 61 73 69 63 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 ......"http-basic":.{...........
bbf00 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 20 .........."type":."object",.....
bbf20 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":."
bbf40 41 20 68 61 73 68 20 6f 66 20 64 6f 6d 61 69 6e 20 6e 61 6d 65 20 3d 3e 20 7b 5c 22 75 73 65 72 A.hash.of.domain.name.=>.{\"user
bbf60 6e 61 6d 65 5c 22 3a 20 5c 22 2e 2e 2e 5c 22 2c 20 5c 22 70 61 73 73 77 6f 72 64 5c 22 3a 20 5c name\":.\"...\",.\"password\":.\
bbf80 22 2e 2e 2e 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 "...\"}.",....................."
bbfa0 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.....
bbfc0 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 22 ............},................."
bbfe0 73 74 6f 72 65 2d 61 75 74 68 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 store-auths":.{.................
bc000 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 6f 6c 65 61 6e 22 ...."type":.["string",."boolean"
bc020 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 74 ],....................."descript
bc040 69 6f 6e 22 3a 20 22 57 68 61 74 20 74 6f 20 64 6f 20 61 66 74 65 72 20 70 72 6f 6d 70 74 69 6e ion":."What.to.do.after.promptin
bc060 67 20 66 6f 72 20 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 2c 20 6f 6e 65 20 6f 66 3a 20 74 72 g.for.authentication,.one.of:.tr
bc080 75 65 20 28 73 74 6f 72 65 29 2c 20 66 61 6c 73 65 20 28 64 6f 20 6e 6f 74 20 73 74 6f 72 65 29 ue.(store),.false.(do.not.store)
bc0a0 20 6f 72 20 5c 22 70 72 6f 6d 70 74 5c 22 20 28 61 73 6b 20 65 76 65 72 79 20 74 69 6d 65 29 2c .or.\"prompt\".(ask.every.time),
bc0c0 20 64 65 66 61 75 6c 74 73 20 74 6f 20 70 72 6f 6d 70 74 2e 22 0a 20 20 20 20 20 20 20 20 20 20 .defaults.to.prompt."...........
bc0e0 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 6c 61 74 66 6f ......},................."platfo
bc100 72 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 70 65 rm":.{....................."type
bc120 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 20 20 ":."object",....................
bc140 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.
bc160 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
bc180 6f 6e 20 28 76 61 6c 75 65 73 29 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 75 73 65 64 20 74 6f on.(values).that.will.be.used.to
bc1a0 20 6d 6f 63 6b 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 20 70 61 63 6b 61 67 65 73 20 6f 6e 20 74 .mock.the.platform.packages.on.t
bc1c0 68 69 73 20 6d 61 63 68 69 6e 65 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 his.machine.",..................
bc1e0 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.
bc200 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 ................},..............
bc220 20 20 20 22 76 65 6e 64 6f 72 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..."vendor-dir":.{..............
bc240 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",........
bc260 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
bc280 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 61 6c 6c 20 70 61 63 6b 61 67 65 73 20 61 72 65 .location.where.all.packages.are
bc2a0 20 69 6e 73 74 61 6c 6c 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 76 65 6e 64 6f 72 .installed,.defaults.to.\"vendor
bc2c0 5c 22 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 \".".................},.........
bc2e0 20 20 20 20 20 20 20 20 22 62 69 6e 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 ........"bin-dir":.{............
bc300 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",......
bc320 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 54 ..............."description":."T
bc340 68 65 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 61 6c 6c 20 62 69 6e 61 72 69 65 73 20 61 he.location.where.all.binaries.a
bc360 72 65 20 6c 69 6e 6b 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 76 65 6e 64 6f 72 2f re.linked,.defaults.to.\"vendor/
bc380 62 69 6e 5c 22 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 bin\".".................},......
bc3a0 20 20 20 20 20 20 20 20 20 20 20 22 63 61 63 68 65 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 ..........."cache-dir":.{.......
bc3c0 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",.
bc3e0 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
bc400 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 63 61 63 68 65 ":."The.location.where.all.cache
bc420 73 20 61 72 65 20 6c 6f 63 61 74 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 7e 2f 2e s.are.located,.defaults.to.\"~/.
bc440 63 6f 6d 70 6f 73 65 72 2f 63 61 63 68 65 5c 22 20 6f 6e 20 2a 6e 69 78 20 61 6e 64 20 5c 22 25 composer/cache\".on.*nix.and.\"%
bc460 4c 4f 43 41 4c 41 50 50 44 41 54 41 25 5c 5c 43 6f 6d 70 6f 73 65 72 5c 22 20 6f 6e 20 77 69 6e LOCALAPPDATA%\\Composer\".on.win
bc480 64 6f 77 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 dows.".................},.......
bc4a0 20 20 20 20 20 20 20 20 20 20 22 63 61 63 68 65 2d 66 69 6c 65 73 2d 64 69 72 22 3a 20 7b 0a 20 .........."cache-files-dir":.{..
bc4c0 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
bc4e0 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 72 69 ng",....................."descri
bc500 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 66 69 6c 65 ption":."The.location.where.file
bc520 73 20 28 7a 69 70 20 64 6f 77 6e 6c 6f 61 64 73 29 20 61 72 65 20 63 61 63 68 65 64 2c 20 64 65 s.(zip.downloads).are.cached,.de
bc540 66 61 75 6c 74 73 20 74 6f 20 5c 22 7b 24 63 61 63 68 65 2d 64 69 72 7d 2f 66 69 6c 65 73 5c 22 faults.to.\"{$cache-dir}/files\"
bc560 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 .".................},...........
bc580 20 20 20 20 20 20 22 63 61 63 68 65 2d 72 65 70 6f 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 ......"cache-repo-dir":.{.......
bc5a0 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",.
bc5c0 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
bc5e0 22 3a 20 22 54 68 65 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 72 65 70 6f 20 28 67 69 74 ":."The.location.where.repo.(git
bc600 2f 68 67 20 72 65 70 6f 20 63 6c 6f 6e 65 73 29 20 61 72 65 20 63 61 63 68 65 64 2c 20 64 65 66 /hg.repo.clones).are.cached,.def
bc620 61 75 6c 74 73 20 74 6f 20 5c 22 7b 24 63 61 63 68 65 2d 64 69 72 7d 2f 72 65 70 6f 5c 22 2e 22 aults.to.\"{$cache-dir}/repo\"."
bc640 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 .................},.............
bc660 20 20 20 20 22 63 61 63 68 65 2d 76 63 73 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 ...."cache-vcs-dir":.{..........
bc680 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",....
bc6a0 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":.
bc6c0 22 54 68 65 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 76 63 73 20 69 6e 66 6f 73 20 28 67 "The.location.where.vcs.infos.(g
bc6e0 69 74 20 63 6c 6f 6e 65 73 2c 20 67 69 74 68 75 62 20 61 70 69 20 63 61 6c 6c 73 2c 20 65 74 63 it.clones,.github.api.calls,.etc
bc700 2e 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 76 63 73 20 72 65 70 6f 73 29 20 61 72 65 20 63 61 ..when.reading.vcs.repos).are.ca
bc720 63 68 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 7b 24 63 61 63 68 65 2d 64 69 72 7d ched,.defaults.to.\"{$cache-dir}
bc740 2f 76 63 73 5c 22 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 /vcs\".".................},.....
bc760 20 20 20 20 20 20 20 20 20 20 20 20 22 63 61 63 68 65 2d 74 74 6c 22 3a 20 7b 0a 20 20 20 20 20 ............"cache-ttl":.{......
bc780 20 20 20 20 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 ..............."type":."integer"
bc7a0 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
bc7c0 6f 6e 22 3a 20 22 54 68 65 20 64 65 66 61 75 6c 74 20 63 61 63 68 65 20 74 69 6d 65 2d 74 6f 2d on":."The.default.cache.time-to-
bc7e0 6c 69 76 65 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 31 35 35 35 32 30 30 30 20 28 36 20 6d 6f live,.defaults.to.15552000.(6.mo
bc800 6e 74 68 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 nths).".................},......
bc820 20 20 20 20 20 20 20 20 20 20 20 22 63 61 63 68 65 2d 66 69 6c 65 73 2d 74 74 6c 22 3a 20 7b 0a ..........."cache-files-ttl":.{.
bc840 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 69 6e 74 ...................."type":."int
bc860 65 67 65 72 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 eger",....................."desc
bc880 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 63 61 63 68 65 20 74 69 6d 65 2d 74 6f 2d 6c 69 76 ription":."The.cache.time-to-liv
bc8a0 65 20 66 6f 72 20 66 69 6c 65 73 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 74 68 65 20 76 61 6c e.for.files,.defaults.to.the.val
bc8c0 75 65 20 6f 66 20 63 61 63 68 65 2d 74 74 6c 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ue.of.cache-ttl."...............
bc8e0 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 65 2d 66 69 6c 65 ..},................."cache-file
bc900 73 2d 6d 61 78 73 69 7a 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s-maxsize":.{...................
bc920 20 20 22 74 79 70 65 22 3a 20 5b 22 73 74 72 69 6e 67 22 2c 20 22 69 6e 74 65 67 65 72 22 5d 2c .."type":.["string",."integer"],
bc940 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
bc960 6e 22 3a 20 22 54 68 65 20 63 61 63 68 65 20 6d 61 78 20 73 69 7a 65 20 66 6f 72 20 74 68 65 20 n":."The.cache.max.size.for.the.
bc980 66 69 6c 65 73 20 63 61 63 68 65 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 33 30 30 4d 69 files.cache,.defaults.to.\"300Mi
bc9a0 42 5c 22 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 B\".".................},........
bc9c0 20 20 20 20 20 20 20 20 20 22 62 69 6e 2d 63 6f 6d 70 61 74 22 3a 20 7b 0a 20 20 20 20 20 20 20 ........."bin-compat":.{........
bc9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 65 6e 75 6d 22 3a 20 5b 22 61 75 74 6f 22 2c 20 22 66 ............."enum":.["auto",."f
bca00 75 6c 6c 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 ull"],....................."desc
bca20 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 6f 66 20 ription":."The.compatibility.of.
bca40 74 68 65 20 62 69 6e 61 72 69 65 73 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 61 75 74 6f the.binaries,.defaults.to.\"auto
bca60 5c 22 20 28 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 67 75 65 73 73 65 64 29 20 61 6e 64 20 63 \".(automatically.guessed).and.c
bca80 61 6e 20 62 65 20 5c 22 66 75 6c 6c 5c 22 20 28 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 an.be.\"full\".(compatible.with.
bcaa0 62 6f 74 68 20 57 69 6e 64 6f 77 73 20 61 6e 64 20 55 6e 69 78 2d 62 61 73 65 64 20 73 79 73 74 both.Windows.and.Unix-based.syst
bcac0 65 6d 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 ems).".................},.......
bcae0 20 20 20 20 20 20 20 20 20 20 22 64 69 73 63 61 72 64 2d 63 68 61 6e 67 65 73 22 3a 20 7b 0a 20 .........."discard-changes":.{..
bcb00 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 73 74 72 ..................."type":.["str
bcb20 69 6e 67 22 2c 20 22 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 ing",."boolean"],...............
bcb40 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 64 65 66 61 75 6c ......"description":."The.defaul
bcb60 74 20 73 74 79 6c 65 20 6f 66 20 68 61 6e 64 6c 69 6e 67 20 64 69 72 74 79 20 75 70 64 61 74 65 t.style.of.handling.dirty.update
bcb80 73 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 66 61 6c 73 65 20 61 6e 64 20 63 61 6e 20 62 65 20 s,.defaults.to.false.and.can.be.
bcba0 61 6e 79 20 6f 66 20 74 72 75 65 2c 20 66 61 6c 73 65 20 6f 72 20 5c 22 73 74 61 73 68 5c 22 2e any.of.true,.false.or.\"stash\".
bcbc0 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 ".................},............
bcbe0 20 20 20 20 20 22 61 75 74 6f 6c 6f 61 64 65 72 2d 73 75 66 66 69 78 22 3a 20 7b 0a 20 20 20 20 ....."autoloader-suffix":.{.....
bcc00 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 22 ................"type":."string"
bcc20 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
bcc40 6f 6e 22 3a 20 22 4f 70 74 69 6f 6e 61 6c 20 73 74 72 69 6e 67 20 74 6f 20 62 65 20 75 73 65 64 on":."Optional.string.to.be.used
bcc60 20 61 73 20 61 20 73 75 66 66 69 78 20 66 6f 72 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 43 .as.a.suffix.for.the.generated.C
bcc80 6f 6d 70 6f 73 65 72 20 61 75 74 6f 6c 6f 61 64 65 72 2e 20 57 68 65 6e 20 6e 75 6c 6c 20 61 20 omposer.autoloader..When.null.a.
bcca0 72 61 6e 64 6f 6d 20 6f 6e 65 20 77 69 6c 6c 20 62 65 20 67 65 6e 65 72 61 74 65 64 2e 22 0a 20 random.one.will.be.generated."..
bccc0 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 ...............},...............
bcce0 20 20 22 6f 70 74 69 6d 69 7a 65 2d 61 75 74 6f 6c 6f 61 64 65 72 22 3a 20 7b 0a 20 20 20 20 20 .."optimize-autoloader":.{......
bcd00 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 65 61 6e 22 ..............."type":."boolean"
bcd20 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
bcd40 6f 6e 22 3a 20 22 41 6c 77 61 79 73 20 6f 70 74 69 6d 69 7a 65 20 77 68 65 6e 20 64 75 6d 70 69 on":."Always.optimize.when.dumpi
bcd60 6e 67 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 ng.the.autoloader.".............
bcd80 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 70 65 6e 64 2d ....},................."prepend-
bcda0 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 20 20 20 autoloader":.{..................
bcdc0 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 20 20 20 ..."type":."boolean",...........
bcde0 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 66 20 66 61 6c .........."description":."If.fal
bce00 73 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 77 69 6c 6c se,.the.composer.autoloader.will
bce20 20 6e 6f 74 20 62 65 20 70 72 65 70 65 6e 64 65 64 20 74 6f 20 65 78 69 73 74 69 6e 67 20 61 75 .not.be.prepended.to.existing.au
bce40 74 6f 6c 6f 61 64 65 72 73 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 74 72 75 65 2e 22 0a 20 20 toloaders,.defaults.to.true."...
bce60 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 ..............},................
bce80 20 22 63 6c 61 73 73 6d 61 70 2d 61 75 74 68 6f 72 69 74 61 74 69 76 65 22 3a 20 7b 0a 20 20 20 ."classmap-authoritative":.{....
bcea0 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 65 61 ................."type":."boolea
bcec0 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 69 70 n",....................."descrip
bcee0 74 69 6f 6e 22 3a 20 22 49 66 20 74 72 75 65 2c 20 74 68 65 20 63 6f 6d 70 6f 73 65 72 20 61 75 tion":."If.true,.the.composer.au
bcf00 74 6f 6c 6f 61 64 65 72 20 77 69 6c 6c 20 6e 6f 74 20 73 63 61 6e 20 74 68 65 20 66 69 6c 65 73 toloader.will.not.scan.the.files
bcf20 79 73 74 65 6d 20 66 6f 72 20 63 6c 61 73 73 65 73 20 74 68 61 74 20 61 72 65 20 6e 6f 74 20 66 ystem.for.classes.that.are.not.f
bcf40 6f 75 6e 64 20 69 6e 20 74 68 65 20 63 6c 61 73 73 20 6d 61 70 2c 20 64 65 66 61 75 6c 74 73 20 ound.in.the.class.map,.defaults.
bcf60 74 6f 20 66 61 6c 73 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 to.false.".................},...
bcf80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 67 69 74 68 75 62 2d 64 6f 6d 61 69 6e 73 22 3a 20 .............."github-domains":.
bcfa0 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 61 {....................."type":."a
bcfc0 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 64 65 73 63 rray",....................."desc
bcfe0 72 69 70 74 69 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 ription":."A.list.of.domains.to.
bd000 75 73 65 20 69 6e 20 67 69 74 68 75 62 20 6d 6f 64 65 2e 20 54 68 69 73 20 69 73 20 75 73 65 64 use.in.github.mode..This.is.used
bd020 20 66 6f 72 20 47 69 74 48 75 62 20 45 6e 74 65 72 70 72 69 73 65 20 73 65 74 75 70 73 2c 20 64 .for.GitHub.Enterprise.setups,.d
bd040 65 66 61 75 6c 74 73 20 74 6f 20 5b 5c 22 67 69 74 68 75 62 2e 63 6f 6d 5c 22 5d 2e 22 2c 0a 20 efaults.to.[\"github.com\"].",..
bd060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 69 74 65 6d 73 22 3a 20 7b 0a 20 20 ..................."items":.{...
bd080 20 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 ......................"type":."s
bd0a0 74 72 69 6e 67 22 0a 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 tring".....................}....
bd0c0 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 .............},.................
bd0e0 22 67 69 74 68 75 62 2d 65 78 70 6f 73 65 2d 68 6f 73 74 6e 61 6d 65 22 3a 20 7b 0a 20 20 20 20 "github-expose-hostname":.{.....
bd100 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 65 61 6e ................"type":."boolean
bd120 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
bd140 69 6f 6e 22 3a 20 22 44 65 66 61 75 6c 74 73 20 74 6f 20 74 72 75 65 2e 20 49 66 20 73 65 74 20 ion":."Defaults.to.true..If.set.
bd160 74 6f 20 66 61 6c 73 65 2c 20 74 68 65 20 4f 41 75 74 68 20 74 6f 6b 65 6e 73 20 63 72 65 61 74 to.false,.the.OAuth.tokens.creat
bd180 65 64 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 67 69 74 68 75 62 20 41 50 49 20 77 69 6c 6c ed.to.access.the.github.API.will
bd1a0 20 68 61 76 65 20 61 20 64 61 74 65 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 6d 61 63 68 .have.a.date.instead.of.the.mach
bd1c0 69 6e 65 20 68 6f 73 74 6e 61 6d 65 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d ine.hostname.".................}
bd1e0 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 67 69 74 6c 61 62 2d 64 6f 6d 61 69 6e ,................."gitlab-domain
bd200 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 65 22 s":.{....................."type"
bd220 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",....................."
bd240 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 64 6f 6d 61 69 6e 73 description":."A.list.of.domains
bd260 20 74 6f 20 75 73 65 20 69 6e 20 67 69 74 6c 61 62 20 6d 6f 64 65 2e 20 54 68 69 73 20 69 73 20 .to.use.in.gitlab.mode..This.is.
bd280 75 73 65 64 20 66 6f 72 20 63 75 73 74 6f 6d 20 47 69 74 4c 61 62 20 73 65 74 75 70 73 2c 20 64 used.for.custom.GitLab.setups,.d
bd2a0 65 66 61 75 6c 74 73 20 74 6f 20 5b 5c 22 67 69 74 6c 61 62 2e 63 6f 6d 5c 22 5d 2e 22 2c 0a 20 efaults.to.[\"gitlab.com\"].",..
bd2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 69 74 65 6d 73 22 3a 20 7b 0a 20 20 ..................."items":.{...
bd2e0 20 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 ......................"type":."s
bd300 74 72 69 6e 67 22 0a 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 tring".....................}....
bd320 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 .............},.................
bd340 22 61 72 63 68 69 76 65 2d 66 6f 72 6d 61 74 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 "archive-format":.{.............
bd360 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",.......
bd380 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
bd3a0 65 20 64 65 66 61 75 6c 74 20 61 72 63 68 69 76 69 6e 67 20 66 6f 72 6d 61 74 20 77 68 65 6e 20 e.default.archiving.format.when.
bd3c0 6e 6f 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 not.provided.on.cli,.defaults.to
bd3e0 20 5c 22 74 61 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 20 20 .\"tar\".".................},...
bd400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 72 63 68 69 76 65 2d 64 69 72 22 3a 20 7b 0a 20 .............."archive-dir":.{..
bd420 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
bd440 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 72 69 ng",....................."descri
bd460 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 64 65 66 61 75 6c 74 20 61 72 63 68 69 76 65 20 70 61 74 ption":."The.default.archive.pat
bd480 68 20 77 68 65 6e 20 6e 6f 74 20 70 72 6f 76 69 64 65 64 20 6f 6e 20 63 6c 69 2c 20 64 65 66 61 h.when.not.provided.on.cli,.defa
bd4a0 75 6c 74 73 20 74 6f 20 5c 22 2e 5c 22 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ults.to.\".\".".................
bd4c0 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 2c 0a 20 20 20 20 20 }.............}.........},......
bd4e0 20 20 20 22 65 78 74 72 61 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 ..."extra":.{............."type"
bd500 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"],..........
bd520 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 72 62 69 74 72 61 72 79 20 65 78 74 ..."description":."Arbitrary.ext
bd540 72 61 20 64 61 74 61 20 74 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 62 79 20 70 6c 75 67 ra.data.that.can.be.used.by.plug
bd560 69 6e 73 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2c 20 70 61 63 6b 61 67 65 20 6f 66 20 74 79 70 ins,.for.example,.package.of.typ
bd580 65 20 63 6f 6d 70 6f 73 65 72 2d 70 6c 75 67 69 6e 20 6d 61 79 20 68 61 76 65 20 61 20 27 63 6c e.composer-plugin.may.have.a.'cl
bd5a0 61 73 73 27 20 6b 65 79 20 64 65 66 69 6e 69 6e 67 20 61 6e 20 69 6e 73 74 61 6c 6c 65 72 20 63 ass'.key.defining.an.installer.c
bd5c0 6c 61 73 73 20 6e 61 6d 65 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 lass.name.",............."additi
bd5e0 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 2c onalProperties":.true.........},
bd600 0a 20 20 20 20 20 20 20 20 22 61 75 74 6f 6c 6f 61 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 ........."autoload":.{..........
bd620 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",............
bd640 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 44 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 ."description":."Description.of.
bd660 68 6f 77 20 74 68 65 20 70 61 63 6b 61 67 65 20 63 61 6e 20 62 65 20 61 75 74 6f 6c 6f 61 64 65 how.the.package.can.be.autoloade
bd680 64 2e 22 2c 0a 20 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 d.",............."properties":.{
bd6a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 73 72 2d 30 22 3a 20 7b 0a 20 20 20 20 ................."psr-0":.{.....
bd6c0 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 74 22 ................"type":."object"
bd6e0 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
bd700 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 65 73 70 61 63 on":."This.is.a.hash.of.namespac
bd720 65 73 20 28 6b 65 79 73 29 20 61 6e 64 20 74 68 65 20 64 69 72 65 63 74 6f 72 69 65 73 20 74 68 es.(keys).and.the.directories.th
bd740 65 79 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 69 6e 74 6f 20 28 76 61 6c 75 65 73 2c 20 63 61 ey.can.be.found.into.(values,.ca
bd760 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 20 61 75 74 n.be.arrays.of.paths).by.the.aut
bd780 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 20 20 20 22 oloader.",....................."
bd7a0 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.....
bd7c0 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 22 ............},................."
bd7e0 70 73 72 2d 34 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 psr-4":.{....................."t
bd800 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 20 20 20 20 ype":."object",.................
bd820 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 20 61 20 68 61 ...."description":."This.is.a.ha
bd840 73 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 sh.of.namespaces.(keys).and.the.
bd860 50 53 52 2d 34 20 64 69 72 65 63 74 6f 72 69 65 73 20 74 68 65 79 20 63 61 6e 20 6d 61 70 20 74 PSR-4.directories.they.can.map.t
bd880 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
bd8a0 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.",.........
bd8c0 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
bd8e0 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.................},.....
bd900 20 20 20 20 20 20 20 20 20 20 20 20 22 63 6c 61 73 73 6d 61 70 22 3a 20 7b 0a 20 20 20 20 20 20 ............"classmap":.{.......
bd920 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 2c 0a 20 .............."type":."array",..
bd940 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"
bd960 3a 20 22 54 68 69 73 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 64 69 72 65 63 74 6f 72 69 :."This.is.an.array.of.directori
bd980 65 73 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 20 63 6c 61 73 73 65 73 20 74 6f 20 62 65 20 69 6e es.that.contain.classes.to.be.in
bd9a0 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 63 6c 61 73 73 2d 6d 61 70 20 67 65 6e 65 72 61 74 69 cluded.in.the.class-map.generati
bd9c0 6f 6e 20 70 72 6f 63 65 73 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a on.process.".................},.
bd9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 69 6c 65 73 22 3a 20 7b 0a 20 20 20 20 20 ................"files":.{......
bda00 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 2c 0a ..............."type":."array",.
bda20 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
bda40 22 3a 20 22 54 68 69 73 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 66 69 6c 65 73 20 74 68 ":."This.is.an.array.of.files.th
bda60 61 74 20 61 72 65 20 61 6c 77 61 79 73 20 72 65 71 75 69 72 65 64 20 6f 6e 20 65 76 65 72 79 20 at.are.always.required.on.every.
bda80 72 65 71 75 65 73 74 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 request.".................},....
bdaa0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 65 78 63 6c 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 ............."exclude-from-class
bdac0 6d 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 map":.{....................."typ
bdae0 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",....................
bdb00 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
bdb20 79 20 6f 66 20 70 61 74 74 65 72 6e 73 20 74 6f 20 65 78 63 6c 75 64 65 20 66 72 6f 6d 20 61 75 y.of.patterns.to.exclude.from.au
bdb40 74 6f 6c 6f 61 64 20 63 6c 61 73 73 6d 61 70 20 67 65 6e 65 72 61 74 69 6f 6e 2e 20 28 65 2e 67 toload.classmap.generation..(e.g
bdb60 2e 20 5c 22 65 78 63 6c 75 64 65 2d 66 72 6f 6d 2d 63 6c 61 73 73 6d 61 70 5c 22 3a 20 5b 5c 22 ..\"exclude-from-classmap\":.[\"
bdb80 2f 74 65 73 74 2f 5c 22 2c 20 5c 22 2f 74 65 73 74 73 2f 5c 22 2c 20 5c 22 2f 54 65 73 74 73 2f /test/\",.\"/tests/\",.\"/Tests/
bdba0 5c 22 5d 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 \"]".................}..........
bdbc0 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 61 75 74 6f 6c 6f 61 ...}.........},........."autoloa
bdbe0 64 2d 64 65 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 d-dev":.{............."type":."o
bdc00 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
bdc20 22 3a 20 22 44 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 61 64 64 69 74 69 6f 6e 61 6c 20 61 75 ":."Description.of.additional.au
bdc40 74 6f 6c 6f 61 64 20 72 75 6c 65 73 20 66 6f 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 70 75 72 toload.rules.for.development.pur
bdc60 70 6f 73 65 20 28 65 67 2e 20 61 20 74 65 73 74 20 73 75 69 74 65 29 2e 22 2c 0a 20 20 20 20 20 pose.(eg..a.test.suite).",......
bdc80 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 20 ......."properties":.{..........
bdca0 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 20 ......."psr-0":.{...............
bdcc0 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 20 ......"type":."object",.........
bdce0 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 73 ............"description":."This
bdd00 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 20 .is.a.hash.of.namespaces.(keys).
bdd20 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 20 and.the.directories.they.can.be.
bdd40 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 79 found.into.(values,.can.be.array
bdd60 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 2c s.of.paths).by.the.autoloader.",
bdd80 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 6c ....................."additional
bdda0 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 20 Properties":.true...............
bddc0 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 0a ..},................."psr-4":.{.
bdde0 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 6a ...................."type":."obj
bde00 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 72 ect",....................."descr
bde20 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 65 iption":."This.is.a.hash.of.name
bde40 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 65 spaces.(keys).and.the.PSR-4.dire
bde60 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 2c ctories.they.can.map.to.(values,
bde80 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 20 .can.be.arrays.of.paths).by.the.
bdea0 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 20 autoloader.",...................
bdec0 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 20 .."additionalProperties":.true..
bdee0 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 ...............},...............
bdf00 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 20 .."classmap":.{.................
bdf20 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 20 ...."type":."array",............
bdf40 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
bdf60 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 6f .an.array.of.directories.that.co
bdf80 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 20 ntain.classes.to.be.included.in.
bdfa0 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 73 the.class-map.generation.process
bdfc0 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 .".................},...........
bdfe0 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 20 ......"files":.{................
be000 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",...........
be020 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
be040 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 77 s.an.array.of.files.that.are.alw
be060 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 0a ays.required.on.every.request.".
be080 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 ................}.............}.
be0a0 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 61 72 63 68 69 76 65 22 3a 20 7b 0a ........},........."archive":.{.
be0c0 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 74 22 5d 2c 0a ............"type":.["object"],.
be0e0 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 69 ............"description":."Opti
be100 6f 6e 73 20 66 6f 72 20 63 72 65 61 74 69 6e 67 20 70 61 63 6b 61 67 65 20 61 72 63 68 69 76 65 ons.for.creating.package.archive
be120 73 20 66 6f 72 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 s.for.distribution.",...........
be140 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 20 20 20 20 20 20 .."properties":.{...............
be160 20 20 22 65 78 63 6c 75 64 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .."exclude":.{..................
be180 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 20 20 ..."type":."array",.............
be1a0 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 73 74 20 6f ........"description":."A.list.o
be1c0 66 20 70 61 74 74 65 72 6e 73 20 66 6f 72 20 70 61 74 68 73 20 74 6f 20 65 78 63 6c 75 64 65 20 f.patterns.for.paths.to.exclude.
be1e0 6f 72 20 69 6e 63 6c 75 64 65 20 69 66 20 70 72 65 66 69 78 65 64 20 77 69 74 68 20 61 6e 20 65 or.include.if.prefixed.with.an.e
be200 78 63 6c 61 6d 61 74 69 6f 6e 20 6d 61 72 6b 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 xclamation.mark."...............
be220 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 2c 0a 20 20 20 ..}.............}.........},....
be240 20 20 20 20 20 22 72 65 70 6f 73 69 74 6f 72 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 ....."repositories":.{..........
be260 20 20 20 22 74 79 70 65 22 3a 20 5b 22 6f 62 6a 65 63 74 22 2c 20 22 61 72 72 61 79 22 5d 2c 0a ..."type":.["object",."array"],.
be280 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 73 65 ............"description":."A.se
be2a0 74 20 6f 66 20 61 64 64 69 74 69 6f 6e 61 6c 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 77 68 65 t.of.additional.repositories.whe
be2c0 72 65 20 70 61 63 6b 61 67 65 73 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 2e 22 2c 0a 20 20 20 20 re.packages.can.be.found.",.....
be2e0 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":.
be300 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 6d 69 6e 69 6d 75 6d true.........},........."minimum
be320 2d 73 74 61 62 69 6c 69 74 79 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 -stability":.{............."type
be340 22 3a 20 5b 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 ":.["string"],............."desc
be360 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 65 20 6d 69 6e 69 6d 75 6d 20 73 74 61 62 69 6c 69 74 79 ription":."The.minimum.stability
be380 20 74 68 65 20 70 61 63 6b 61 67 65 73 20 6d 75 73 74 20 68 61 76 65 20 74 6f 20 62 65 20 69 6e .the.packages.must.have.to.be.in
be3a0 73 74 61 6c 6c 2d 61 62 6c 65 2e 20 50 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 20 61 72 65 3a stall-able..Possible.values.are:
be3c0 20 64 65 76 2c 20 61 6c 70 68 61 2c 20 62 65 74 61 2c 20 52 43 2c 20 73 74 61 62 6c 65 2e 22 2c .dev,.alpha,.beta,.RC,.stable.",
be3e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 70 61 74 74 65 72 6e 22 3a 20 22 5e 64 65 76 7c 61 6c ............."pattern":."^dev|al
be400 70 68 61 7c 62 65 74 61 7c 72 63 7c 52 43 7c 73 74 61 62 6c 65 24 22 0a 20 20 20 20 20 20 20 20 pha|beta|rc|RC|stable$".........
be420 7d 2c 0a 20 20 20 20 20 20 20 20 22 70 72 65 66 65 72 2d 73 74 61 62 6c 65 22 3a 20 7b 0a 20 20 },........."prefer-stable":.{...
be440 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 22 5d 2c 0a 20 .........."type":.["boolean"],..
be460 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 66 20 73 65 ..........."description":."If.se
be480 74 20 74 6f 20 74 72 75 65 2c 20 73 74 61 62 6c 65 20 70 61 63 6b 61 67 65 73 20 77 69 6c 6c 20 t.to.true,.stable.packages.will.
be4a0 62 65 20 70 72 65 66 65 72 72 65 64 20 74 6f 20 64 65 76 20 70 61 63 6b 61 67 65 73 20 77 68 65 be.preferred.to.dev.packages.whe
be4c0 6e 20 70 6f 73 73 69 62 6c 65 2c 20 65 76 65 6e 20 69 66 20 74 68 65 20 6d 69 6e 69 6d 75 6d 2d n.possible,.even.if.the.minimum-
be4e0 73 74 61 62 69 6c 69 74 79 20 61 6c 6c 6f 77 73 20 75 6e 73 74 61 62 6c 65 20 70 61 63 6b 61 67 stability.allows.unstable.packag
be500 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 62 69 6e 22 3a 20 7b es.".........},........."bin":.{
be520 0a 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 5d 2c 0a ............."type":.["array"],.
be540 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 73 65 ............"description":."A.se
be560 74 20 6f 66 20 66 69 6c 65 73 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 74 72 65 61 74 65 t.of.files.that.should.be.treate
be580 64 20 61 73 20 62 69 6e 61 72 69 65 73 20 61 6e 64 20 73 79 6d 6c 69 6e 6b 65 64 20 69 6e 74 6f d.as.binaries.and.symlinked.into
be5a0 20 62 69 6e 2d 64 69 72 20 28 66 72 6f 6d 20 63 6f 6e 66 69 67 29 2e 22 2c 0a 20 20 20 20 20 20 .bin-dir.(from.config).",.......
be5c0 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 20 ......"items":.{................
be5e0 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 0a ."type":."string".............}.
be600 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 69 6e 63 6c 75 64 65 2d 70 61 74 68 ........},........."include-path
be620 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 61 72 72 61 79 ":.{............."type":.["array
be640 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 20 22 "],............."description":."
be660 44 45 50 52 45 43 41 54 45 44 3a 20 41 20 6c 69 73 74 20 6f 66 20 64 69 72 65 63 74 6f 72 69 65 DEPRECATED:.A.list.of.directorie
be680 73 20 77 68 69 63 68 20 73 68 6f 75 6c 64 20 67 65 74 20 61 64 64 65 64 20 74 6f 20 50 48 50 27 s.which.should.get.added.to.PHP'
be6a0 73 20 69 6e 63 6c 75 64 65 20 70 61 74 68 2e 20 54 68 69 73 20 69 73 20 6f 6e 6c 79 20 70 72 65 s.include.path..This.is.only.pre
be6c0 73 65 6e 74 20 74 6f 20 73 75 70 70 6f 72 74 20 6c 65 67 61 63 79 20 70 72 6f 6a 65 63 74 73 2c sent.to.support.legacy.projects,
be6e0 20 61 6e 64 20 61 6c 6c 20 6e 65 77 20 63 6f 64 65 20 73 68 6f 75 6c 64 20 70 72 65 66 65 72 61 .and.all.new.code.should.prefera
be700 62 6c 79 20 75 73 65 20 61 75 74 6f 6c 6f 61 64 69 6e 67 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 bly.use.autoloading.",..........
be720 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 22 74 ..."items":.{................."t
be740 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 0a 20 20 20 ype":."string".............}....
be760 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 73 63 72 69 70 74 73 22 3a 20 7b 0a 20 20 20 .....},........."scripts":.{....
be780 20 20 20 20 20 20 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 ........."type":.["object"],....
be7a0 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 53 63 72 69 70 74 73 ........."description":."Scripts
be7c0 20 6c 69 73 74 65 6e 65 72 73 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 .listeners.that.will.be.executed
be7e0 20 62 65 66 6f 72 65 2f 61 66 74 65 72 20 73 6f 6d 65 20 65 76 65 6e 74 73 2e 22 2c 0a 20 20 20 .before/after.some.events.",....
be800 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 20 ........."properties":.{........
be820 20 20 20 20 20 20 20 20 20 22 70 72 65 2d 69 6e 73 74 61 6c 6c 2d 63 6d 64 22 3a 20 7b 0a 20 20 ........."pre-install-cmd":.{...
be840 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
be860 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"],..................
be880 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 65 ..."description":."Occurs.before
be8a0 20 74 68 65 20 69 6e 73 74 61 6c 6c 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 .the.install.command.is.executed
be8c0 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
be8e0 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
be900 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 .".................},...........
be920 20 20 20 20 20 20 22 70 6f 73 74 2d 69 6e 73 74 61 6c 6c 2d 63 6d 64 22 3a 20 7b 0a 20 20 20 20 ......"post-install-cmd":.{.....
be940 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 79 22 ................"type":.["array"
be960 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 20 20 ,."string"],....................
be980 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 74 68 ."description":."Occurs.after.th
be9a0 65 20 69 6e 73 74 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 e.install.command.is.executed,.c
be9c0 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
be9e0 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.".
bea00 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 ................},..............
bea20 20 20 20 22 70 72 65 2d 75 70 64 61 74 65 2d 63 6d 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 ..."pre-update-cmd":.{..........
bea40 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 74 ..........."type":.["array",."st
bea60 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 73 ring"],....................."des
bea80 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 65 20 75 70 cription":."Occurs.before.the.up
beaa0 64 61 74 65 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 date.command.is.executed,.contai
beac0 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
beae0 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."......
beb00 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
beb20 6f 73 74 2d 75 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 ost-update-cmd":.{..............
beb40 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
beb60 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
beb80 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 75 70 64 61 74 65 20 tion":."Occurs.after.the.update.
beba0 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 6e command.is.executed,.contains.on
bebc0 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 65 e.or.more.Class::method.callable
bebe0 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 20 s.or.shell.commands."...........
bec00 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 73 74 ......},................."pre-st
bec20 61 74 75 73 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 atus-cmd":.{....................
bec40 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 20 ."type":.["array",."string"],...
bec60 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":
bec80 20 22 4f 63 63 75 72 73 20 62 65 66 6f 72 65 20 74 68 65 20 73 74 61 74 75 73 20 63 6f 6d 6d 61 ."Occurs.before.the.status.comma
beca0 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 20 nd.is.executed,.contains.one.or.
becc0 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.
bece0 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."................
bed00 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 73 74 61 74 75 73 .},................."post-status
bed20 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 79 -cmd":.{....................."ty
bed40 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 20 pe":.["array",."string"],.......
bed60 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 63 .............."description":."Oc
bed80 63 75 72 73 20 61 66 74 65 72 20 74 68 65 20 73 74 61 74 75 73 20 63 6f 6d 6d 61 6e 64 20 69 73 curs.after.the.status.command.is
beda0 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 20 .executed,.contains.one.or.more.
bedc0 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 6c Class::method.callables.or.shell
bede0 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 20 .commands.".................},..
bee00 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 67 65 2d 69 6e 73 74 ..............."pre-package-inst
bee20 61 6c 6c 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 all":.{....................."typ
bee40 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 20 20 e":.["array",."string"],........
bee60 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 63 63 ............."description":."Occ
bee80 75 72 73 20 62 65 66 6f 72 65 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 69 6e 73 74 61 6c 6c 65 urs.before.a.package.is.installe
beea0 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 73 3a 3a 6d d,.contains.one.or.more.Class::m
beec0 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 6d 61 6e 64 ethod.callables.or.shell.command
beee0 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.".................},..........
bef00 20 20 20 20 20 20 20 22 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c 6c 22 3a 20 7b ......."post-package-install":.{
bef20 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 5b 22 61 ....................."type":.["a
bef40 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 20 20 20 rray",."string"],...............
bef60 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 61 66 74 ......"description":."Occurs.aft
bef80 65 72 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 er.a.package.is.installed,.conta
befa0 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 61 ins.one.or.more.Class::method.ca
befc0 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 20 llables.or.shell.commands.".....
befe0 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 22 ............},................."
bf000 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 70 64 61 74 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 pre-package-update":.{..........
bf020 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 74 ..........."type":.["array",."st
bf040 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 73 ring"],....................."des
bf060 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 70 61 63 6b cription":."Occurs.before.a.pack
bf080 61 67 65 20 69 73 20 75 70 64 61 74 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 age.is.updated,.contains.one.or.
bf0a0 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.
bf0c0 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."................
bf0e0 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 70 61 63 6b 61 67 .},................."post-packag
bf100 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 20 e-update":.{....................
bf120 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 20 ."type":.["array",."string"],...
bf140 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":
bf160 20 22 4f 63 63 75 72 73 20 61 66 74 65 72 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 75 70 64 61 ."Occurs.after.a.package.is.upda
bf180 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 73 3a ted,.contains.one.or.more.Class:
bf1a0 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 6d 61 :method.callables.or.shell.comma
bf1c0 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 20 20 nds.".................},........
bf1e0 20 20 20 20 20 20 20 20 20 22 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 22 ........."pre-package-uninstall"
bf200 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":.
bf220 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"],............
bf240 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.
bf260 62 65 66 6f 72 65 20 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 before.a.package.has.been.uninst
bf280 61 6c 6c 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 alled,.contains.one.or.more.Clas
bf2a0 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
bf2c0 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.".................},......
bf2e0 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 6e 69 6e 73 74 61 ..........."post-package-uninsta
bf300 6c 6c 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 ll":.{....................."type
bf320 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 20 20 20 ":.["array",."string"],.........
bf340 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 63 63 75 ............"description":."Occu
bf360 72 73 20 61 66 74 65 72 20 61 20 70 61 63 6b 61 67 65 20 68 61 73 20 62 65 65 6e 20 75 6e 69 6e rs.after.a.package.has.been.unin
bf380 73 74 61 6c 6c 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 stalled,.contains.one.or.more.Cl
bf3a0 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 6c 20 63 ass::method.callables.or.shell.c
bf3c0 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 20 20 20 ommands.".................},....
bf3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 65 2d 61 75 74 6f 6c 6f 61 64 2d 64 75 6d 70 22 ............."pre-autoload-dump"
bf400 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":.
bf420 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"],............
bf440 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.
bf460 62 65 66 6f 72 65 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 20 69 73 20 64 75 6d 70 65 64 2c before.the.autoloader.is.dumped,
bf480 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 74 .contains.one.or.more.Class::met
bf4a0 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 2e hod.callables.or.shell.commands.
bf4c0 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 ".................},............
bf4e0 20 20 20 20 20 22 70 6f 73 74 2d 61 75 74 6f 6c 6f 61 64 2d 64 75 6d 70 22 3a 20 7b 0a 20 20 20 ....."post-autoload-dump":.{....
bf500 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 79 ................."type":.["array
bf520 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 20 ",."string"],...................
bf540 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 74 .."description":."Occurs.after.t
bf560 68 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 he.autoloader.is.dumped,.contain
bf580 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
bf5a0 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.".......
bf5c0 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
bf5e0 73 74 2d 72 6f 6f 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 st-root-package-install":.{.....
bf600 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 79 22 ................"type":.["array"
bf620 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 20 20 ,."string"],....................
bf640 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 74 68 ."description":."Occurs.after.th
bf660 65 20 72 6f 6f 74 2d 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 e.root-package.is.installed,.con
bf680 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 20 tains.one.or.more.Class::method.
bf6a0 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 20 callables.or.shell.commands."...
bf6c0 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 ..............},................
bf6e0 20 22 70 6f 73 74 2d 63 72 65 61 74 65 2d 70 72 6f 6a 65 63 74 2d 63 6d 64 22 3a 20 7b 0a 20 20 ."post-create-project-cmd":.{...
bf700 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
bf720 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"],..................
bf740 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.
bf760 74 68 65 20 63 72 65 61 74 65 2d 70 72 6f 6a 65 63 74 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 the.create-project.command.is.ex
bf780 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 20 43 6c 61 ecuted,.contains.one.or.more.Cla
bf7a0 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 6c 20 63 6f ss::method.callables.or.shell.co
bf7c0 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 0a 20 20 20 20 20 mmands.".................}......
bf7e0 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 73 75 70 .......}.........},........."sup
bf800 70 6f 72 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 62 port":.{............."type":."ob
bf820 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 6f 70 65 72 74 69 65 73 22 3a ject",............."properties":
bf840 20 7b 0a 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 .{................."email":.{...
bf860 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 6e .................."type":."strin
bf880 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 72 69 70 g",....................."descrip
bf8a0 74 69 6f 6e 22 3a 20 22 45 6d 61 69 6c 20 61 64 64 72 65 73 73 20 66 6f 72 20 73 75 70 70 6f 72 tion":."Email.address.for.suppor
bf8c0 74 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 61 74 t.",....................."format
bf8e0 22 3a 20 22 65 6d 61 69 6c 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 ":."email".................},...
bf900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 69 73 73 75 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 .............."issues":.{.......
bf920 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",.
bf940 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
bf960 22 3a 20 22 55 52 4c 20 74 6f 20 74 68 65 20 69 73 73 75 65 20 74 72 61 63 6b 65 72 2e 22 2c 0a ":."URL.to.the.issue.tracker.",.
bf980 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
bf9a0 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 20 20 20 ri".................},..........
bf9c0 20 20 20 20 20 20 20 22 66 6f 72 75 6d 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......."forum":.{...............
bf9e0 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 20 ......"type":."string",.........
bfa00 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 55 52 4c 20 ............"description":."URL.
bfa20 74 6f 20 74 68 65 20 66 6f 72 75 6d 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 to.the.forum.",.................
bfa40 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 20 20 20 20 20 ...."format":."uri".............
bfa60 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 77 69 6b 69 22 3a 20 7b ....},................."wiki":.{
bfa80 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
bfaa0 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
bfac0 72 69 70 74 69 6f 6e 22 3a 20 22 55 52 4c 20 74 6f 20 74 68 65 20 77 69 6b 69 2e 22 2c 0a 20 20 ription":."URL.to.the.wiki.",...
bfae0 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 72 69 .................."format":."uri
bfb00 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 ".................},............
bfb20 20 20 20 20 20 22 69 72 63 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....."irc":.{...................
bfb40 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",.............
bfb60 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 52 43 20 63 68 61 6e ........"description":."IRC.chan
bfb80 6e 65 6c 20 66 6f 72 20 73 75 70 70 6f 72 74 2c 20 61 73 20 69 72 63 3a 2f 2f 73 65 72 76 65 72 nel.for.support,.as.irc://server
bfba0 2f 63 68 61 6e 6e 65 6c 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 /channel.",.....................
bfbc0 22 66 6f 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 "format":."uri".................
bfbe0 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 73 6f 75 72 63 65 22 3a 20 7b 0a 20 },................."source":.{..
bfc00 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
bfc20 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 72 69 ng",....................."descri
bfc40 70 74 69 6f 6e 22 3a 20 22 55 52 4c 20 74 6f 20 62 72 6f 77 73 65 20 6f 72 20 64 6f 77 6e 6c 6f ption":."URL.to.browse.or.downlo
bfc60 61 64 20 74 68 65 20 73 6f 75 72 63 65 73 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ad.the.sources.",...............
bfc80 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 20 20 20 ......"format":."uri"...........
bfca0 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 64 6f 63 73 22 3a ......},................."docs":
bfcc0 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 22 .{....................."type":."
bfce0 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 64 65 string",....................."de
bfd00 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 55 52 4c 20 74 6f 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 scription":."URL.to.the.document
bfd20 61 74 69 6f 6e 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 ation.",....................."fo
bfd40 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 0a 20 rmat":."uri".................}..
bfd60 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 20 20 20 20 20 20 20 ...........}.........},.........
bfd80 22 6e 6f 6e 2d 66 65 61 74 75 72 65 2d 62 72 61 6e 63 68 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 "non-feature-branches":.{.......
bfda0 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 20 20 ......"type":.["array"],........
bfdc0 20 20 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 73 74 ....."description":."A.set.of.st
bfde0 72 69 6e 67 20 6f 72 20 72 65 67 65 78 20 70 61 74 74 65 72 6e 73 20 66 6f 72 20 6e 6f 6e 2d 6e ring.or.regex.patterns.for.non-n
bfe00 75 6d 65 72 69 63 20 62 72 61 6e 63 68 20 6e 61 6d 65 73 20 74 68 61 74 20 77 69 6c 6c 20 6e 6f umeric.branch.names.that.will.no
bfe20 74 20 62 65 20 68 61 6e 64 6c 65 64 20 61 73 20 66 65 61 74 75 72 65 20 62 72 61 6e 63 68 65 73 t.be.handled.as.feature.branches
bfe40 2e 22 2c 0a 20 20 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 .",............."items":.{......
bfe60 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 20 20 ..........."type":."string".....
bfe80 20 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 61 62 ........}.........},........."ab
bfea0 61 6e 64 6f 6e 65 64 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 andoned":.{............."type":.
bfec0 5b 22 62 6f 6f 6c 65 61 6e 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 ["boolean",."string"],..........
bfee0 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 49 6e 64 69 63 61 74 65 73 20 77 68 65 ..."description":."Indicates.whe
bff00 74 68 65 72 20 74 68 69 73 20 70 61 63 6b 61 67 65 20 68 61 73 20 62 65 65 6e 20 61 62 61 6e 64 ther.this.package.has.been.aband
bff20 6f 6e 65 64 2c 20 69 74 20 63 61 6e 20 62 65 20 62 6f 6f 6c 65 61 6e 20 6f 72 20 61 20 70 61 63 oned,.it.can.be.boolean.or.a.pac
bff40 6b 61 67 65 20 6e 61 6d 65 2f 55 52 4c 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 61 20 72 65 63 6f kage.name/URL.pointing.to.a.reco
bff60 6d 6d 65 6e 64 65 64 20 61 6c 74 65 72 6e 61 74 69 76 65 2e 20 44 65 66 61 75 6c 74 73 20 74 6f mmended.alternative..Defaults.to
bff80 20 66 61 6c 73 65 2e 22 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 7b 0a 20 20 20 .false.".........}.....}.}.{....
bffa0 20 22 33 38 39 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 33 38 39 ."389-exception":.[........."389
bffc0 20 44 69 72 65 63 74 6f 72 79 20 53 65 72 76 65 72 5c 6e 45 78 63 65 70 74 69 6f 6e 22 0a 20 20 .Directory.Server\nException"...
bffe0 20 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 32 2e 30 ..],....."Autoconf-exception-2.0
c0000 22 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 ":.[........."Autoconf.exception
c0020 20 32 2e 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 75 74 6f 63 6f 6e 66 2d 65 78 63 65 70 .2.0".....],....."Autoconf-excep
c0040 74 69 6f 6e 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 75 74 6f 63 6f 6e 66 20 65 tion-3.0":.[........."Autoconf.e
c0060 78 63 65 70 74 69 6f 6e 20 33 2e 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 69 73 6f 6e 2d xception.3.0".....],....."Bison-
c0080 65 78 63 65 70 74 69 6f 6e 2d 32 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 69 73 6f 6e exception-2.2":.[........."Bison
c00a0 20 65 78 63 65 70 74 69 6f 6e 20 32 2e 32 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 6c 61 73 .exception.2.2".....],....."Clas
c00c0 73 70 61 74 68 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 spath-exception-2.0":.[.........
c00e0 22 43 6c 61 73 73 70 61 74 68 20 65 78 63 65 70 74 69 6f 6e 20 32 2e 30 22 0a 20 20 20 20 5d 2c "Classpath.exception.2.0".....],
c0100 0a 20 20 20 20 22 43 4c 49 53 50 2d 65 78 63 65 70 74 69 6f 6e 2d 32 2e 30 22 3a 20 5b 0a 20 20 ....."CLISP-exception-2.0":.[...
c0120 20 20 20 20 20 20 22 43 4c 49 53 50 20 65 78 63 65 70 74 69 6f 6e 20 32 2e 30 22 0a 20 20 20 20 ......"CLISP.exception.2.0".....
c0140 5d 2c 0a 20 20 20 20 22 44 69 67 69 52 75 6c 65 2d 46 4f 53 53 2d 65 78 63 65 70 74 69 6f 6e 22 ],....."DigiRule-FOSS-exception"
c0160 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 44 69 67 69 52 75 6c 65 20 46 4f 53 53 20 4c 69 63 65 6e :.[........."DigiRule.FOSS.Licen
c0180 73 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 65 43 6f 73 2d 65 se.Exception".....],....."eCos-e
c01a0 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 65 43 6f 73 20 65 xception-2.0":.[........."eCos.e
c01c0 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 46 61 77 6b 65 73 xception.2.0".....],....."Fawkes
c01e0 2d 52 75 6e 74 69 6d 65 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 -Runtime-exception":.[........."
c0200 46 61 77 6b 65 73 20 52 75 6e 74 69 6d 65 20 45 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 5d 2c Fawkes.Runtime.Exception".....],
c0220 0a 20 20 20 20 22 46 4c 54 4b 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 ....."FLTK-exception":.[........
c0240 20 22 46 4c 54 4b 20 65 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 46 6f ."FLTK.exception".....],....."Fo
c0260 6e 74 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 46 6f nt-exception-2.0":.[........."Fo
c0280 6e 74 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 66 72 nt.exception.2.0".....],....."fr
c02a0 65 65 72 74 6f 73 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 eertos-exception-2.0":.[........
c02c0 20 22 46 72 65 65 52 54 4f 53 20 45 78 63 65 70 74 69 6f 6e 20 32 2e 30 22 0a 20 20 20 20 5d 2c ."FreeRTOS.Exception.2.0".....],
c02e0 0a 20 20 20 20 22 47 43 43 2d 65 78 63 65 70 74 69 6f 6e 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 ....."GCC-exception-2.0":.[.....
c0300 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 63 65 70 74 69 ...."GCC.Runtime.Library.excepti
c0320 6f 6e 20 32 2e 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 43 43 2d 65 78 63 65 70 74 69 6f on.2.0".....],....."GCC-exceptio
c0340 6e 2d 33 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 43 43 20 52 75 6e 74 69 6d 65 20 4c n-3.1":.[........."GCC.Runtime.L
c0360 69 62 72 61 72 79 20 65 78 63 65 70 74 69 6f 6e 20 33 2e 31 22 0a 20 20 20 20 5d 2c 0a 20 20 20 ibrary.exception.3.1".....],....
c0380 20 22 67 6e 75 2d 6a 61 76 61 6d 61 69 6c 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 ."gnu-javamail-exception":.[....
c03a0 20 20 20 20 20 22 47 4e 55 20 4a 61 76 61 4d 61 69 6c 20 65 78 63 65 70 74 69 6f 6e 22 0a 20 20 ....."GNU.JavaMail.exception"...
c03c0 20 20 5d 2c 0a 20 20 20 20 22 69 32 70 2d 67 70 6c 2d 6a 61 76 61 2d 65 78 63 65 70 74 69 6f 6e ..],....."i2p-gpl-java-exception
c03e0 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 69 32 70 20 47 50 4c 2b 4a 61 76 61 20 45 78 63 65 70 ":.[........."i2p.GPL+Java.Excep
c0400 74 69 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 69 62 74 6f 6f 6c 2d 65 78 63 65 70 74 tion".....],....."Libtool-except
c0420 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 69 62 74 6f 6f 6c 20 45 78 63 65 70 74 69 ion":.[........."Libtool.Excepti
c0440 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 5a 4d 41 2d 65 78 63 65 70 74 69 6f 6e 22 3a on".....],....."LZMA-exception":
c0460 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 5a 4d 41 20 65 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 .[........."LZMA.exception".....
c0480 5d 2c 0a 20 20 20 20 22 6d 69 66 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b 0a 20 20 20 20 20 20 ],....."mif-exception":.[.......
c04a0 20 20 22 4d 61 63 72 6f 73 20 61 6e 64 20 49 6e 6c 69 6e 65 20 46 75 6e 63 74 69 6f 6e 73 20 45 .."Macros.and.Inline.Functions.E
c04c0 78 63 65 70 74 69 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 6f 6b 69 61 2d 51 74 2d 65 xception".....],....."Nokia-Qt-e
c04e0 78 63 65 70 74 69 6f 6e 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 6f 6b 69 61 20 xception-1.1":.[........."Nokia.
c0500 51 74 20 4c 47 50 4c 20 65 78 63 65 70 74 69 6f 6e 20 31 2e 31 22 0a 20 20 20 20 5d 2c 0a 20 20 Qt.LGPL.exception.1.1".....],...
c0520 20 20 22 6f 70 65 6e 76 70 6e 2d 6f 70 65 6e 73 73 6c 2d 65 78 63 65 70 74 69 6f 6e 22 3a 20 5b .."openvpn-openssl-exception":.[
c0540 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 56 50 4e 20 4f 70 65 6e 53 53 4c 20 45 78 63 65 70 74 ........."OpenVPN.OpenSSL.Except
c0560 69 6f 6e 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 51 77 74 2d 65 78 63 65 70 74 69 6f 6e 2d 31 ion".....],....."Qwt-exception-1
c0580 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 51 77 74 20 65 78 63 65 70 74 69 6f 6e 20 31 2e .0":.[........."Qwt.exception.1.
c05a0 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 75 2d 62 6f 6f 74 2d 65 78 63 65 70 74 69 6f 6e 2d 0".....],....."u-boot-exception-
c05c0 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 55 2d 42 6f 6f 74 20 65 78 63 65 70 74 69 6f 2.0":.[........."U-Boot.exceptio
c05e0 6e 20 32 2e 30 22 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 57 78 57 69 6e 64 6f 77 73 2d 65 78 63 n.2.0".....],....."WxWindows-exc
c0600 65 70 74 69 6f 6e 2d 33 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 57 78 57 69 6e 64 6f 77 eption-3.1":.[........."WxWindow
c0620 73 20 4c 69 62 72 61 72 79 20 45 78 63 65 70 74 69 6f 6e 20 33 2e 31 22 0a 20 20 20 20 5d 0a 7d s.Library.Exception.3.1".....].}
c0640 7b 0a 20 20 20 20 22 30 42 53 44 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 5a 65 72 {....."0BSD":.[........."BSD.Zer
c0660 6f 20 43 6c 61 75 73 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 o.Clause.License",.........false
c0680 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 41 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 74 .....],....."AAL":.[........."At
c06a0 74 72 69 62 75 74 69 6f 6e 20 41 73 73 75 72 61 6e 63 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 tribution.Assurance.License",...
c06c0 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 62 73 74 79 6c 65 73 22 ......true.....],....."Abstyles"
c06e0 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 62 73 74 79 6c 65 73 20 4c 69 63 65 6e 73 65 22 2c 0a :.[........."Abstyles.License",.
c0700 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 6f 62 65 2d ........false.....],....."Adobe-
c0720 32 30 30 36 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 64 6f 62 65 20 53 79 73 74 65 6d 73 20 2006":.[........."Adobe.Systems.
c0740 49 6e 63 6f 72 70 6f 72 61 74 65 64 20 53 6f 75 72 63 65 20 43 6f 64 65 20 4c 69 63 65 6e 73 65 Incorporated.Source.Code.License
c0760 20 41 67 72 65 65 6d 65 6e 74 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d .Agreement",.........false.....]
c0780 2c 0a 20 20 20 20 22 41 64 6f 62 65 2d 47 6c 79 70 68 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ,....."Adobe-Glyph":.[........."
c07a0 41 64 6f 62 65 20 47 6c 79 70 68 20 4c 69 73 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 Adobe.Glyph.List.License",......
c07c0 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 44 53 4c 22 3a 20 5b 0a 20 20 ...false.....],....."ADSL":.[...
c07e0 20 20 20 20 20 20 22 41 6d 61 7a 6f 6e 20 44 69 67 69 74 61 6c 20 53 65 72 76 69 63 65 73 20 4c ......"Amazon.Digital.Services.L
c0800 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.....],...
c0820 20 20 22 41 46 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 63 61 64 65 6d 69 63 .."AFL-1.1":.[........."Academic
c0840 20 46 72 65 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 74 72 75 .Free.License.v1.1",.........tru
c0860 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 46 4c 2d 31 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 e.....],....."AFL-1.2":.[.......
c0880 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 31 2e 32 22 2c 0a .."Academic.Free.License.v1.2",.
c08a0 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 2e 30 ........true.....],....."AFL-2.0
c08c0 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 65 ":.[........."Academic.Free.Lice
c08e0 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 0a 20 nse.v2.0",.........true.....],..
c0900 20 20 20 22 41 46 4c 2d 32 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 63 61 64 65 6d 69 ..."AFL-2.1":.[........."Academi
c0920 63 20 46 72 65 65 20 4c 69 63 65 6e 73 65 20 76 32 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 74 72 c.Free.License.v2.1",.........tr
c0940 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 46 4c 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 ue.....],....."AFL-3.0":.[......
c0960 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 33 2e 30 22 2c ..."Academic.Free.License.v3.0",
c0980 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 66 6d 70 61 72 .........true.....],....."Afmpar
c09a0 73 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 66 6d 70 61 72 73 65 20 4c 69 63 65 6e 73 65 se":.[........."Afmparse.License
c09c0 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 47 50 ",.........false.....],....."AGP
c09e0 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 66 66 65 72 6f 20 47 65 6e 65 72 61 L-1.0":.[........."Affero.Genera
c0a00 6c 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 20 l.Public.License.v1.0",.........
c0a20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 47 50 4c 2d 33 2e 30 22 3a 20 5b 0a 20 false.....],....."AGPL-3.0":.[..
c0a40 20 20 20 20 20 20 20 22 47 4e 55 20 41 66 66 65 72 6f 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 ......."GNU.Affero.General.Publi
c0a60 63 20 4c 69 63 65 6e 73 65 20 76 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 c.License.v3.0",.........true...
c0a80 20 20 5d 2c 0a 20 20 20 20 22 41 6c 61 64 64 69 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 ..],....."Aladdin":.[........."A
c0aa0 6c 61 64 64 69 6e 20 46 72 65 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 laddin.Free.Public.License",....
c0ac0 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 44 50 4c 50 41 22 3a .....false.....],....."AMDPLPA":
c0ae0 20 5b 0a 20 20 20 20 20 20 20 20 22 41 4d 44 27 73 20 70 6c 70 61 5f 6d 61 70 2e 63 20 4c 69 63 .[........."AMD's.plpa_map.c.Lic
c0b00 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.....],.....
c0b20 22 41 4d 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 70 70 6c 65 20 4d 49 54 20 4c 69 63 65 "AML":.[........."Apple.MIT.Lice
c0b40 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.....],....."
c0b60 41 4d 50 41 53 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 63 61 64 65 6d 79 20 6f 66 20 4d 6f AMPAS":.[........."Academy.of.Mo
c0b80 74 69 6f 6e 20 50 69 63 74 75 72 65 20 41 72 74 73 20 61 6e 64 20 53 63 69 65 6e 63 65 73 20 42 tion.Picture.Arts.and.Sciences.B
c0ba0 53 44 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 SD",.........false.....],....."A
c0bc0 4e 54 4c 52 2d 50 44 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 4e 54 4c 52 20 53 6f 66 74 77 NTLR-PD":.[........."ANTLR.Softw
c0be0 61 72 65 20 52 69 67 68 74 73 20 4e 6f 74 69 63 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 are.Rights.Notice",.........fals
c0c00 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 70 61 63 68 65 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 e.....],....."Apache-1.0":.[....
c0c20 20 20 20 20 20 22 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 ....."Apache.License.1.0",......
c0c40 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 70 61 63 68 65 2d 31 2e 31 22 ...false.....],....."Apache-1.1"
c0c60 3a 20 5b 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 31 2e 31 22 :.[........."Apache.License.1.1"
c0c80 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 70 61 63 68 ,.........true.....],....."Apach
c0ca0 65 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 70 61 63 68 65 20 4c 69 63 65 6e 73 e-2.0":.[........."Apache.Licens
c0cc0 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 0a 20 20 20 20 e.2.0",.........true.....],.....
c0ce0 22 41 50 41 46 4d 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 64 6f 62 65 20 50 6f 73 74 73 "APAFML":.[........."Adobe.Posts
c0d00 63 72 69 70 74 20 41 46 4d 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 cript.AFM.License",.........fals
c0d20 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 e.....],....."APL-1.0":.[.......
c0d40 20 20 22 41 64 61 70 74 69 76 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c .."Adaptive.Public.License.1.0",
c0d60 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 50 53 4c 2d 31 .........true.....],....."APSL-1
c0d80 2e 30 22 3a 20 5b 0a 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 .0":.[........."Apple.Public.Sou
c0da0 72 63 65 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 rce.License.1.0",.........true..
c0dc0 20 20 20 5d 2c 0a 20 20 20 20 22 41 50 53 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 ...],....."APSL-1.1":.[.........
c0de0 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 73 65 20 31 2e 31 "Apple.Public.Source.License.1.1
c0e00 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 50 53 4c ",.........true.....],....."APSL
c0e20 2d 31 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 70 70 6c 65 20 50 75 62 6c 69 63 20 53 -1.2":.[........."Apple.Public.S
c0e40 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 20 31 2e 32 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 ource.License.1.2",.........true
c0e60 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 41 50 53 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 .....],....."APSL-2.0":.[.......
c0e80 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 73 65 20 32 .."Apple.Public.Source.License.2
c0ea0 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 72 .0",.........true.....],....."Ar
c0ec0 74 69 73 74 69 63 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 41 72 74 69 73 74 69 63 tistic-1.0":.[........."Artistic
c0ee0 20 4c 69 63 65 6e 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 .License.1.0",.........true.....
c0f00 5d 2c 0a 20 20 20 20 22 41 72 74 69 73 74 69 63 2d 31 2e 30 2d 63 6c 38 22 3a 20 5b 0a 20 20 20 ],....."Artistic-1.0-cl8":.[....
c0f20 20 20 20 20 20 22 41 72 74 69 73 74 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 20 77 2f 63 6c 61 ....."Artistic.License.1.0.w/cla
c0f40 75 73 65 20 38 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 use.8",.........true.....],.....
c0f60 22 41 72 74 69 73 74 69 63 2d 31 2e 30 2d 50 65 72 6c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 "Artistic-1.0-Perl":.[........."
c0f80 41 72 74 69 73 74 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 20 28 50 65 72 6c 29 22 2c 0a 20 20 Artistic.License.1.0.(Perl)",...
c0fa0 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 2d ......true.....],....."Artistic-
c0fc0 32 2e 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 2.0":.[........."Artistic.Licens
c0fe0 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 0a 20 20 20 20 e.2.0",.........true.....],.....
c1000 22 42 61 68 79 70 68 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 61 68 79 70 68 20 4c 69 63 65 "Bahyph":.[........."Bahyph.Lice
c1020 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.....],....."
c1040 42 61 72 72 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 61 72 72 20 4c 69 63 65 6e 73 65 22 2c Barr":.[........."Barr.License",
c1060 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 65 65 72 77 .........false.....],....."Beerw
c1080 61 72 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 65 65 72 77 61 72 65 20 4c 69 63 65 6e 73 are":.[........."Beerware.Licens
c10a0 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 42 69 e",.........false.....],....."Bi
c10c0 74 54 6f 72 72 65 6e 74 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 69 74 54 6f 72 tTorrent-1.0":.[........."BitTor
c10e0 72 65 6e 74 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a rent.Open.Source.License.v1.0",.
c1100 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 69 74 54 6f 72 ........false.....],....."BitTor
c1120 72 65 6e 74 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 69 74 54 6f 72 72 65 6e 74 rent-1.1":.[........."BitTorrent
c1140 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a 20 20 20 20 .Open.Source.License.v1.1",.....
c1160 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 6f 72 63 65 75 78 22 3a 20 ....false.....],....."Borceux":.
c1180 5b 0a 20 20 20 20 20 20 20 20 22 42 6f 72 63 65 75 78 20 6c 69 63 65 6e 73 65 22 2c 0a 20 20 20 [........."Borceux.license",....
c11a0 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 32 2d 43 6c 61 .....false.....],....."BSD-2-Cla
c11c0 75 73 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 32 2d 63 6c 61 75 73 65 20 5c 22 use":.[........."BSD.2-clause.\"
c11e0 53 69 6d 70 6c 69 66 69 65 64 5c 22 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 Simplified\".License",.........t
c1200 72 75 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 2d 46 72 65 rue.....],....."BSD-2-Clause-Fre
c1220 65 42 53 44 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 32 2d 63 6c 61 75 73 65 20 46 eBSD":.[........."BSD.2-clause.F
c1240 72 65 65 42 53 44 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 reeBSD.License",.........false..
c1260 20 20 20 5d 2c 0a 20 20 20 20 22 42 53 44 2d 32 2d 43 6c 61 75 73 65 2d 4e 65 74 42 53 44 22 3a ...],....."BSD-2-Clause-NetBSD":
c1280 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 32 2d 63 6c 61 75 73 65 20 4e 65 74 42 53 44 20 .[........."BSD.2-clause.NetBSD.
c12a0 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.....],..
c12c0 20 20 20 22 42 53 44 2d 33 2d 43 6c 61 75 73 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 ..."BSD-3-Clause":.[........."BS
c12e0 44 20 33 2d 63 6c 61 75 73 65 20 5c 22 4e 65 77 5c 22 20 6f 72 20 5c 22 52 65 76 69 73 65 64 5c D.3-clause.\"New\".or.\"Revised\
c1300 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 2c 0a ".License",.........true.....],.
c1320 20 20 20 20 22 42 53 44 2d 33 2d 43 6c 61 75 73 65 2d 41 74 74 72 69 62 75 74 69 6f 6e 22 3a 20 ...."BSD-3-Clause-Attribution":.
c1340 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 77 69 74 68 20 61 74 74 72 69 62 75 74 69 6f 6e 22 [........."BSD.with.attribution"
c1360 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-
c1380 33 2d 43 6c 61 75 73 65 2d 43 6c 65 61 72 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 3-Clause-Clear":.[........."BSD.
c13a0 33 2d 63 6c 61 75 73 65 20 43 6c 65 61 72 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 3-clause.Clear.License",........
c13c0 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-
c13e0 4c 42 4e 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 61 77 72 65 6e 63 65 20 42 65 72 6b 65 LBNL":.[........."Lawrence.Berke
c1400 6c 65 79 20 4e 61 74 69 6f 6e 61 6c 20 4c 61 62 73 20 42 53 44 20 76 61 72 69 61 6e 74 20 6c 69 ley.National.Labs.BSD.variant.li
c1420 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.....],....
c1440 20 22 42 53 44 2d 34 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 ."BSD-4-Clause":.[........."BSD.
c1460 34 2d 63 6c 61 75 73 65 20 5c 22 4f 72 69 67 69 6e 61 6c 5c 22 20 6f 72 20 5c 22 4f 6c 64 5c 22 4-clause.\"Original\".or.\"Old\"
c1480 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.....],.
c14a0 20 20 20 20 22 42 53 44 2d 34 2d 43 6c 61 75 73 65 2d 55 43 22 3a 20 5b 0a 20 20 20 20 20 20 20 ...."BSD-4-Clause-UC":.[........
c14c0 20 22 42 53 44 2d 34 2d 43 6c 61 75 73 65 20 28 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 ."BSD-4-Clause.(University.of.Ca
c14e0 6c 69 66 6f 72 6e 69 61 2d 53 70 65 63 69 66 69 63 29 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c lifornia-Specific)",.........fal
c1500 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 42 53 44 2d 50 72 6f 74 65 63 74 69 6f 6e 22 3a 20 se.....],....."BSD-Protection":.
c1520 5b 0a 20 20 20 20 20 20 20 20 22 42 53 44 20 50 72 6f 74 65 63 74 69 6f 6e 20 4c 69 63 65 6e 73 [........."BSD.Protection.Licens
c1540 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 42 53 e",.........false.....],....."BS
c1560 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 42 6f 6f 73 74 20 53 6f 66 74 77 61 72 L-1.0":.[........."Boost.Softwar
c1580 65 20 4c 69 63 65 6e 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 e.License.1.0",.........true....
c15a0 20 5d 2c 0a 20 20 20 20 22 62 7a 69 70 32 2d 31 2e 30 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 .],....."bzip2-1.0.5":.[........
c15c0 20 22 62 7a 69 70 32 20 61 6e 64 20 6c 69 62 62 7a 69 70 32 20 4c 69 63 65 6e 73 65 20 76 31 2e ."bzip2.and.libbzip2.License.v1.
c15e0 30 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 0.5",.........false.....],....."
c1600 62 7a 69 70 32 2d 31 2e 30 2e 36 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 62 7a 69 70 32 20 61 bzip2-1.0.6":.[........."bzip2.a
c1620 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 36 22 2c 0a 20 20 20 nd.libbzip2.License.v1.0.6",....
c1640 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 61 6c 64 65 72 61 22 3a .....false.....],....."Caldera":
c1660 20 5b 0a 20 20 20 20 20 20 20 20 22 43 61 6c 64 65 72 61 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 .[........."Caldera.License",...
c1680 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 41 54 4f 53 4c 2d 31 ......false.....],....."CATOSL-1
c16a0 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6f 6d 70 75 74 65 72 20 41 73 73 6f 63 69 61 .1":.[........."Computer.Associa
c16c0 74 65 73 20 54 72 75 73 74 65 64 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 65 6e 73 65 20 tes.Trusted.Open.Source.License.
c16e0 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 20 20 20 20 22 43 1.1",.........true.....],....."C
c1700 43 2d 42 59 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 C-BY-1.0":.[........."Creative.C
c1720 6f 6d 6d 6f 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 ommons.Attribution.1.0",........
c1740 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 32 2e 30 22 3a 20 5b .false.....],....."CC-BY-2.0":.[
c1760 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 69 ........."Creative.Commons.Attri
c1780 62 75 74 69 6f 6e 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 bution.2.0",.........false.....]
c17a0 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 32 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 ,....."CC-BY-2.5":.[........."Cr
c17c0 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 35 22 2c eative.Commons.Attribution.2.5",
c17e0 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 42 59 .........false.....],....."CC-BY
c1800 2d 33 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 -3.0":.[........."Creative.Commo
c1820 6e 73 20 41 74 74 72 69 62 75 74 69 6f 6e 20 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c ns.Attribution.3.0",.........fal
c1840 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 34 2e 30 22 3a 20 5b 0a 20 20 20 se.....],....."CC-BY-4.0":.[....
c1860 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
c1880 6f 6e 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 0a 20 20 on.4.0",.........false.....],...
c18a0 20 20 22 43 43 2d 42 59 2d 4e 43 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 .."CC-BY-NC-1.0":.[........."Cre
c18c0 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
c18e0 6d 6d 65 72 63 69 61 6c 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 mmercial.1.0",.........false....
c1900 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 .],....."CC-BY-NC-2.0":.[.......
c1920 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 6e 20 .."Creative.Commons.Attribution.
c1940 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c Non.Commercial.2.0",.........fal
c1960 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 32 2e 35 22 3a 20 5b 0a se.....],....."CC-BY-NC-2.5":.[.
c1980 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
c19a0 75 74 69 6f 6e 20 4e 6f 6e 20 43 6f 6d 6d 65 72 63 69 61 6c 20 32 2e 35 22 2c 0a 20 20 20 20 20 ution.Non.Commercial.2.5",......
c19c0 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 2d 33 2e ...false.....],....."CC-BY-NC-3.
c19e0 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 73 20 0":.[........."Creative.Commons.
c1a00 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 33 2e 30 22 2c Attribution.Non.Commercial.3.0",
c1a20 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 42 59 .........false.....],....."CC-BY
c1a40 2d 4e 43 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 -NC-4.0":.[........."Creative.Co
c1a60 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
c1a80 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 0a 20 20 20 20 .4.0",.........false.....],.....
c1aa0 22 43 43 2d 42 59 2d 4e 43 2d 4e 44 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 "CC-BY-NC-ND-1.0":.[........."Cr
c1ac0 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 20 43 eative.Commons.Attribution.Non.C
c1ae0 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 31 2e 30 22 2c 0a 20 ommercial.No.Derivatives.1.0",..
c1b00 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
c1b20 43 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 65 20 43 C-ND-2.0":.[........."Creative.C
c1b40 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 61 ommons.Attribution.Non.Commercia
c1b60 6c 20 4e 6f 20 44 65 72 69 76 61 74 69 76 65 73 20 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 l.No.Derivatives.2.0",.........f
c1b80 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 4e 44 2d 32 2e 35 alse.....],....."CC-BY-NC-ND-2.5
c1ba0 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 73 20 41 ":.[........."Creative.Commons.A
c1bc0 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 4e 6f 20 44 65 72 ttribution.Non.Commercial.No.Der
c1be0 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 20 20 ivatives.2.5",.........false....
c1c00 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 4e 44 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 .],....."CC-BY-NC-ND-3.0":.[....
c1c20 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
c1c40 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 76 61 74 69 76 65 73 on.Non.Commercial.No.Derivatives
c1c60 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 20 20 .3.0",.........false.....],.....
c1c80 22 43 43 2d 42 59 2d 4e 43 2d 4e 44 2d 34 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 "CC-BY-NC-ND-4.0":.[........."Cr
c1ca0 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 20 43 eative.Commons.Attribution.Non.C
c1cc0 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 34 2e 30 22 2c 0a 20 ommercial.No.Derivatives.4.0",..
c1ce0 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
c1d00 43 2d 53 41 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 C-SA-1.0":.[........."Creative.C
c1d20 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 61 ommons.Attribution.Non.Commercia
c1d40 6c 20 53 68 61 72 65 20 41 6c 69 6b 65 20 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 l.Share.Alike.1.0",.........fals
c1d60 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 32 2e 30 22 3a 20 e.....],....."CC-BY-NC-SA-2.0":.
c1d80 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
c1da0 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 69 ibution.Non.Commercial.Share.Ali
c1dc0 6b 65 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 20 20 ke.2.0",.........false.....],...
c1de0 20 20 22 43 43 2d 42 59 2d 4e 43 2d 53 41 2d 32 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 .."CC-BY-NC-SA-2.5":.[........."
c1e00 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
c1e20 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 35 22 2c 0a 20 20 .Commercial.Share.Alike.2.5",...
c1e40 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
c1e60 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 76 65 20 43 6f -SA-3.0":.[........."Creative.Co
c1e80 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
c1ea0 20 53 68 61 72 65 20 41 6c 69 6b 65 20 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 .Share.Alike.3.0",.........false
c1ec0 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 34 2e 30 22 3a 20 5b .....],....."CC-BY-NC-SA-4.0":.[
c1ee0 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 69 ........."Creative.Commons.Attri
c1f00 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 69 6b bution.Non.Commercial.Share.Alik
c1f20 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 0a 20 20 20 e.4.0",.........false.....],....
c1f40 20 22 43 43 2d 42 59 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 ."CC-BY-ND-1.0":.[........."Crea
c1f60 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 65 72 69 tive.Commons.Attribution.No.Deri
c1f80 76 61 74 69 76 65 73 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 vatives.1.0",.........false.....
c1fa0 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 44 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 ],....."CC-BY-ND-2.0":.[........
c1fc0 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
c1fe0 6f 20 44 65 72 69 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 o.Derivatives.2.0",.........fals
c2000 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 44 2d 32 2e 35 22 3a 20 5b 0a 20 e.....],....."CC-BY-ND-2.5":.[..
c2020 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 75 ......."Creative.Commons.Attribu
c2040 74 69 6f 6e 20 4e 6f 20 44 65 72 69 76 61 74 69 76 65 73 20 32 2e 35 22 2c 0a 20 20 20 20 20 20 tion.No.Derivatives.2.5",.......
c2060 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 44 2d 33 2e 30 ..false.....],....."CC-BY-ND-3.0
c2080 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 73 20 41 ":.[........."Creative.Commons.A
c20a0 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 33 2e 30 22 2c 0a ttribution.No.Derivatives.3.0",.
c20c0 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-
c20e0 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 6d ND-4.0":.[........."Creative.Com
c2100 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 69 76 65 73 20 mons.Attribution.No.Derivatives.
c2120 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 0a 20 20 20 20 22 4.0",.........false.....],....."
c2140 43 43 2d 42 59 2d 53 41 2d 31 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-1.0":.[........."Creati
c2160 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
c2180 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 20 20 ke.1.0",.........false.....],...
c21a0 20 20 22 43 43 2d 42 59 2d 53 41 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 65 .."CC-BY-SA-2.0":.[........."Cre
c21c0 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.
c21e0 41 6c 69 6b 65 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 Alike.2.0",.........false.....],
c2200 0a 20 20 20 20 22 43 43 2d 42 59 2d 53 41 2d 32 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ....."CC-BY-SA-2.5":.[........."
c2220 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 53 68 61 Creative.Commons.Attribution.Sha
c2240 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 73 65 0a 20 20 20 re.Alike.2.5",.........false....
c2260 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 53 41 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 .],....."CC-BY-SA-3.0":.[.......
c2280 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 6e 20 .."Creative.Commons.Attribution.
c22a0 53 68 61 72 65 20 41 6c 69 6b 65 20 33 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a Share.Alike.3.0",.........false.
c22c0 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 53 41 2d 34 2e 30 22 3a 20 5b 0a 20 20 20 ....],....."CC-BY-SA-4.0":.[....
c22e0 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
c2300 6f 6e 20 53 68 61 72 65 20 41 6c 69 6b 65 20 34 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c on.Share.Alike.4.0",.........fal
c2320 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 43 30 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 se.....],....."CC0-1.0":.[......
c2340 20 20 20 22 43 72 65 61 74 69 76 65 20 43 6f 6d 6d 6f 6e 73 20 5a 65 72 6f 20 76 31 2e 30 20 55 ..."Creative.Commons.Zero.v1.0.U
c2360 6e 69 76 65 72 73 61 6c 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a niversal",.........false.....],.
c2380 20 20 20 20 22 43 44 44 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6f 6d 6d 6f ...."CDDL-1.0":.[........."Commo
c23a0 6e 20 44 65 76 65 6c 6f 70 6d 65 6e 74 20 61 6e 64 20 44 69 73 74 72 69 62 75 74 69 6f 6e 20 4c n.Development.and.Distribution.L
c23c0 69 63 65 6e 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 icense.1.0",.........true.....],
c23e0 0a 20 20 20 20 22 43 44 44 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6f 6d 6d ....."CDDL-1.1":.[........."Comm
c2400 6f 6e 20 44 65 76 65 6c 6f 70 6d 65 6e 74 20 61 6e 64 20 44 69 73 74 72 69 62 75 74 69 6f 6e 20 on.Development.and.Distribution.
c2420 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 20 License.1.1",.........false.....
c2440 5d 2c 0a 20 20 20 20 22 43 45 43 49 4c 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ],....."CECILL-1.0":.[........."
c2460 43 65 43 49 4c 4c 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 CeCILL.Free.Software.License.Agr
c2480 65 65 6d 65 6e 74 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 eement.v1.0",.........false.....
c24a0 5d 2c 0a 20 20 20 20 22 43 45 43 49 4c 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ],....."CECILL-1.1":.[........."
c24c0 43 65 43 49 4c 4c 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 CeCILL.Free.Software.License.Agr
c24e0 65 65 6d 65 6e 74 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 eement.v1.1",.........false.....
c2500 5d 2c 0a 20 20 20 20 22 43 45 43 49 4c 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ],....."CECILL-2.0":.[........."
c2520 43 65 43 49 4c 4c 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 CeCILL.Free.Software.License.Agr
c2540 65 65 6d 65 6e 74 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 eement.v2.0",.........false.....
c2560 5d 2c 0a 20 20 20 20 22 43 45 43 49 4c 4c 2d 32 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ],....."CECILL-2.1":.[........."
c2580 43 65 43 49 4c 4c 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 CeCILL.Free.Software.License.Agr
c25a0 65 65 6d 65 6e 74 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 eement.v2.1",.........true.....]
c25c0 2c 0a 20 20 20 20 22 43 45 43 49 4c 4c 2d 42 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 65 43 ,....."CECILL-B":.[........."CeC
c25e0 49 4c 4c 2d 42 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 ILL-B.Free.Software.License.Agre
c2600 65 6d 65 6e 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 ement",.........false.....],....
c2620 20 22 43 45 43 49 4c 4c 2d 43 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 65 43 49 4c 4c 2d 43 ."CECILL-C":.[........."CeCILL-C
c2640 20 46 72 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 .Free.Software.License.Agreement
c2660 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 6c 41 ",.........false.....],....."ClA
c2680 72 74 69 73 74 69 63 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6c 61 72 69 66 69 65 64 20 41 rtistic":.[........."Clarified.A
c26a0 72 74 69 73 74 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 rtistic.License",.........false.
c26c0 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 4e 52 49 2d 4a 79 74 68 6f 6e 22 3a 20 5b 0a 20 20 20 20 ....],....."CNRI-Jython":.[.....
c26e0 20 20 20 20 22 43 4e 52 49 20 4a 79 74 68 6f 6e 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 ...."CNRI.Jython.License",......
c2700 20 20 20 66 61 6c 73 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 ...false.....],....."CNRI-Python
c2720 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 4e 52 49 20 50 79 74 68 6f 6e 20 4c 69 63 65 6e 73 ":.[........."CNRI.Python.Licens
c2740 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 43 4e 52 e",.........true.....],....."CNR
c2760 49 2d 50 79 74 68 6f 6e 2d 47 50 4c 2d 43 6f 6d 70 61 74 69 62 6c 65 22 3a 20 5b 0a 20 20 20 20 I-Python-GPL-Compatible":.[.....
c2780 20 20 20 20 22 43 4e 52 49 20 50 79 74 68 6f 6e 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 47 50 4c ...."CNRI.Python.Open.Source.GPL
c27a0 20 43 6f 6d 70 61 74 69 62 6c 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 6d 65 6e 74 22 2c 0a .Compatible.License.Agreement",.
c27c0 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 6f 6e 64 6f 72 ........false.....],....."Condor
c27e0 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 6f 6e 64 6f 72 20 50 75 62 6c 69 63 20 -1.1":.[........."Condor.Public.
c2800 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 0a 20 20 20 License.v1.1",.........false....
c2820 20 5d 2c 0a 20 20 20 20 22 43 50 41 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 .],....."CPAL-1.0":.[........."C
c2840 6f 6d 6d 6f 6e 20 50 75 62 6c 69 63 20 41 74 74 72 69 62 75 74 69 6f 6e 20 4c 69 63 65 6e 73 65 ommon.Public.Attribution.License
c2860 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.....],....."
c2880 43 50 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 6c CPL-1.0":.[........."Common.Publ
c28a0 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 72 75 65 0a 20 20 ic.License.1.0",.........true...
c28c0 20 20 5d 2c 0a 20 20 20 20 22 43 50 4f 4c 2d 31 2e 30 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 ..],....."CPOL-1.02":.[.........
c28e0 22 43 6f 64 65 20 50 72 6f 6a 65 63 74 20 4f 70 65 6e 20 4c 69 63 65 6e 73 65 20 31 2e 30 32 22 "Code.Project.Open.License.1.02"
c2900 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 72 6f 73 ,.........false.....],....."Cros
c2920 73 77 6f 72 64 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 6f 73 73 77 6f 72 64 20 4c 69 63 sword":.[........."Crossword.Lic
c2940 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.....],.....
c2960 22 43 72 79 73 74 61 6c 53 74 61 63 6b 65 72 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 72 79 "CrystalStacker":.[........."Cry
c2980 73 74 61 6c 53 74 61 63 6b 65 72 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 stalStacker.License",.........fa
c29a0 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 43 55 41 2d 4f 50 4c 2d 31 2e 30 22 3a 20 5b 0a lse.....],....."CUA-OPL-1.0":.[.
c29c0 20 20 20 20 20 20 20 20 22 43 55 41 20 4f 66 66 69 63 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e ........"CUA.Office.Public.Licen
c29e0 73 65 20 76 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 se.v1.0",.........true.....],...
c2a00 20 20 22 43 75 62 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 75 62 65 20 4c 69 63 65 6e 73 .."Cube":.[........."Cube.Licens
c2a20 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 44 2d e",.........false.....],....."D-
c2a40 46 53 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 44 65 75 74 73 63 68 65 20 46 72 FSL-1.0":.[........."Deutsche.Fr
c2a60 65 69 65 20 53 6f 66 74 77 61 72 65 20 4c 69 7a 65 6e 7a 22 2c 0a 20 20 20 20 20 20 20 20 66 61 eie.Software.Lizenz",.........fa
c2a80 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 64 69 66 66 6d 61 72 6b 22 3a 20 5b 0a 20 20 20 lse.....],....."diffmark":.[....
c2aa0 20 20 20 20 20 22 64 69 66 66 6d 61 72 6b 20 6c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 ....."diffmark.license",........
c2ac0 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 44 4f 43 22 3a 20 5b 0a 20 20 20 20 20 .false.....],....."DOC":.[......
c2ae0 20 20 20 22 44 4f 43 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 ..."DOC.License",.........false.
c2b00 20 20 20 20 5d 2c 0a 20 20 20 20 22 44 6f 74 73 65 71 6e 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 ....],....."Dotseqn":.[.........
c2b20 22 44 6f 74 73 65 71 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 "Dotseqn.License",.........false
c2b40 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 44 53 44 50 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 44 .....],....."DSDP":.[........."D
c2b60 53 44 50 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 SDP.License",.........false.....
c2b80 5d 2c 0a 20 20 20 20 22 64 76 69 70 64 66 6d 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 64 76 69 ],....."dvipdfm":.[........."dvi
c2ba0 70 64 66 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 pdfm.License",.........false....
c2bc0 20 5d 2c 0a 20 20 20 20 22 45 43 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 64 .],....."ECL-1.0":.[........."Ed
c2be0 75 63 61 74 69 6f 6e 61 6c 20 43 6f 6d 6d 75 6e 69 74 79 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 ucational.Community.License.v1.0
c2c00 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 43 4c 2d ",.........true.....],....."ECL-
c2c20 32 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 20 43 6f 6d 2.0":.[........."Educational.Com
c2c40 6d 75 6e 69 74 79 20 4c 69 63 65 6e 73 65 20 76 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 munity.License.v2.0",.........tr
c2c60 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 45 46 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 ue.....],....."EFL-1.0":.[......
c2c80 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 31 2e 30 22 2c 0a ..."Eiffel.Forum.License.v1.0",.
c2ca0 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 46 4c 2d 32 2e 30 ........true.....],....."EFL-2.0
c2cc0 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 69 66 66 65 6c 20 46 6f 72 75 6d 20 4c 69 63 65 6e ":.[........."Eiffel.Forum.Licen
c2ce0 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 0a 20 20 se.v2.0",.........true.....],...
c2d00 20 20 22 65 47 65 6e 69 78 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 65 47 65 6e 69 78 2e 63 6f .."eGenix":.[........."eGenix.co
c2d20 6d 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 m.Public.License.1.1.0",........
c2d40 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 45 6e 74 65 73 73 61 22 3a 20 5b 0a 20 .false.....],....."Entessa":.[..
c2d60 20 20 20 20 20 20 20 22 45 6e 74 65 73 73 61 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 ......."Entessa.Public.License.v
c2d80 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 45 1.0",.........true.....],....."E
c2da0 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 63 6c 69 70 73 65 20 50 75 62 6c PL-1.0":.[........."Eclipse.Publ
c2dc0 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 72 75 65 0a 20 20 ic.License.1.0",.........true...
c2de0 20 20 5d 2c 0a 20 20 20 20 22 45 72 6c 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 ..],....."ErlPL-1.1":.[.........
c2e00 22 45 72 6c 61 6e 67 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 "Erlang.Public.License.v1.1",...
c2e20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 45 55 44 61 74 61 67 72 ......false.....],....."EUDatagr
c2e40 69 64 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 55 20 44 61 74 61 47 72 69 64 20 53 6f 66 74 id":.[........."EU.DataGrid.Soft
c2e60 77 61 72 65 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 ware.License",.........true.....
c2e80 5d 2c 0a 20 20 20 20 22 45 55 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 75 ],....."EUPL-1.0":.[........."Eu
c2ea0 72 6f 70 65 61 6e 20 55 6e 69 6f 6e 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 ropean.Union.Public.License.1.0"
c2ec0 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 45 55 50 4c ,.........false.....],....."EUPL
c2ee0 2d 31 2e 31 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 69 6f 6e -1.1":.[........."European.Union
c2f00 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 20 20 20 20 74 72 .Public.License.1.1",.........tr
c2f20 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 45 75 72 6f 73 79 6d 22 3a 20 5b 0a 20 20 20 20 20 ue.....],....."Eurosym":.[......
c2f40 20 20 20 22 45 75 72 6f 73 79 6d 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 ..."Eurosym.License",.........fa
c2f60 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 46 61 69 72 22 3a 20 5b 0a 20 20 20 20 20 20 20 lse.....],....."Fair":.[........
c2f80 20 22 46 61 69 72 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 ."Fair.License",.........true...
c2fa0 20 20 5d 2c 0a 20 20 20 20 22 46 72 61 6d 65 77 6f 72 78 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 ..],....."Frameworx-1.0":.[.....
c2fc0 20 20 20 20 22 46 72 61 6d 65 77 6f 72 78 20 4f 70 65 6e 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 ...."Frameworx.Open.License.1.0"
c2fe0 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 46 72 65 65 49 ,.........true.....],....."FreeI
c3000 6d 61 67 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 72 65 65 49 6d 61 67 65 20 50 75 62 6c mage":.[........."FreeImage.Publ
c3020 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.
c3040 20 20 20 20 5d 2c 0a 20 20 20 20 22 46 53 46 55 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 46 ....],....."FSFUL":.[........."F
c3060 53 46 20 55 6e 6c 69 6d 69 74 65 64 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 SF.Unlimited.License",.........f
c3080 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 46 53 46 55 4c 4c 52 22 3a 20 5b 0a 20 20 20 alse.....],....."FSFULLR":.[....
c30a0 20 20 20 20 20 22 46 53 46 20 55 6e 6c 69 6d 69 74 65 64 20 4c 69 63 65 6e 73 65 20 28 77 69 74 ....."FSF.Unlimited.License.(wit
c30c0 68 20 4c 69 63 65 6e 73 65 20 52 65 74 65 6e 74 69 6f 6e 29 22 2c 0a 20 20 20 20 20 20 20 20 66 h.License.Retention)",.........f
c30e0 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 46 54 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 alse.....],....."FTL":.[........
c3100 20 22 46 72 65 65 74 79 70 65 20 50 72 6f 6a 65 63 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 ."Freetype.Project.License",....
c3120 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 2e 31 22 .....false.....],....."GFDL-1.1"
c3140 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 74 61 74 :.[........."GNU.Free.Documentat
c3160 69 6f 6e 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 ion.License.v1.1",.........false
c3180 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 46 44 4c 2d 31 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 .....],....."GFDL-1.2":.[.......
c31a0 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 73 .."GNU.Free.Documentation.Licens
c31c0 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 20 20 e.v1.2",.........false.....],...
c31e0 20 20 22 47 46 44 4c 2d 31 2e 33 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 4e 55 20 46 72 65 .."GFDL-1.3":.[........."GNU.Fre
c3200 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 33 22 2c 0a 20 e.Documentation.License.v1.3",..
c3220 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 69 66 74 77 61 72 .......false.....],....."Giftwar
c3240 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 69 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 22 e":.[........."Giftware.License"
c3260 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 47 4c 32 50 ,.........false.....],....."GL2P
c3280 53 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 4c 32 50 53 20 4c 69 63 65 6e 73 65 22 2c 0a 20 S":.[........."GL2PS.License",..
c32a0 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 6c 69 64 65 22 3a .......false.....],....."Glide":
c32c0 20 5b 0a 20 20 20 20 20 20 20 20 22 33 64 66 78 20 47 6c 69 64 65 20 4c 69 63 65 6e 73 65 22 2c .[........."3dfx.Glide.License",
c32e0 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 47 6c 75 6c 78 .........false.....],....."Glulx
c3300 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 6c 75 6c 78 65 20 4c 69 63 65 6e 73 65 22 2c 0a e":.[........."Glulxe.License",.
c3320 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 67 6e 75 70 6c 6f ........false.....],....."gnuplo
c3340 74 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 67 6e 75 70 6c 6f 74 20 4c 69 63 65 6e 73 65 22 2c t":.[........."gnuplot.License",
c3360 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 47 50 4c 2d 31 .........false.....],....."GPL-1
c3380 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 62 6c .0":.[........."GNU.General.Publ
c33a0 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 20 6f 6e 6c 79 22 2c 0a 20 20 20 20 20 20 20 20 66 ic.License.v1.0.only",.........f
c33c0 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 47 50 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 alse.....],....."GPL-2.0":.[....
c33e0 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 65 ....."GNU.General.Public.License
c3400 20 76 32 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 .v2.0.only",.........true.....],
c3420 0a 20 20 20 20 22 47 50 4c 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 4e 55 20 47 ....."GPL-3.0":.[........."GNU.G
c3440 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 33 2e 30 20 6f 6e 6c 79 22 eneral.Public.License.v3.0.only"
c3460 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 67 53 4f 41 50 ,.........true.....],....."gSOAP
c3480 2d 31 2e 33 62 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 67 53 4f 41 50 20 50 75 62 6c 69 63 20 -1.3b":.[........."gSOAP.Public.
c34a0 4c 69 63 65 6e 73 65 20 76 31 2e 33 62 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 License.v1.3b",.........false...
c34c0 20 20 5d 2c 0a 20 20 20 20 22 48 61 73 6b 65 6c 6c 52 65 70 6f 72 74 22 3a 20 5b 0a 20 20 20 20 ..],....."HaskellReport":.[.....
c34e0 20 20 20 20 22 48 61 73 6b 65 6c 6c 20 4c 61 6e 67 75 61 67 65 20 52 65 70 6f 72 74 20 4c 69 63 ...."Haskell.Language.Report.Lic
c3500 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.....],.....
c3520 22 48 50 4e 44 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 48 69 73 74 6f 72 69 63 20 50 65 72 6d "HPND":.[........."Historic.Perm
c3540 69 73 73 69 6f 6e 20 4e 6f 74 69 63 65 20 61 6e 64 20 44 69 73 63 6c 61 69 6d 65 72 22 2c 0a 20 ission.Notice.and.Disclaimer",..
c3560 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 42 4d 2d 70 69 62 73 .......true.....],....."IBM-pibs
c3580 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 42 4d 20 50 6f 77 65 72 50 43 20 49 6e 69 74 69 61 ":.[........."IBM.PowerPC.Initia
c35a0 6c 69 7a 61 74 69 6f 6e 20 61 6e 64 20 42 6f 6f 74 20 53 6f 66 74 77 61 72 65 22 2c 0a 20 20 20 lization.and.Boot.Software",....
c35c0 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 43 55 22 3a 20 5b 0a 20 .....false.....],....."ICU":.[..
c35e0 20 20 20 20 20 20 20 22 49 43 55 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 ......."ICU.License",.........fa
c3600 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 4a 47 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 lse.....],....."IJG":.[.........
c3620 22 49 6e 64 65 70 65 6e 64 65 6e 74 20 4a 50 45 47 20 47 72 6f 75 70 20 4c 69 63 65 6e 73 65 22 "Independent.JPEG.Group.License"
c3640 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 49 6d 61 67 ,.........false.....],....."Imag
c3660 65 4d 61 67 69 63 6b 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 6d 61 67 65 4d 61 67 69 63 6b eMagick":.[........."ImageMagick
c3680 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.....],.
c36a0 20 20 20 20 22 69 4d 61 74 69 78 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 69 4d 61 74 69 78 20 ...."iMatix":.[........."iMatix.
c36c0 53 74 61 6e 64 61 72 64 20 46 75 6e 63 74 69 6f 6e 20 4c 69 62 72 61 72 79 20 41 67 72 65 65 6d Standard.Function.Library.Agreem
c36e0 65 6e 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 ent",.........false.....],....."
c3700 49 6d 6c 69 62 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 6d 6c 69 62 32 20 4c 69 63 65 6e Imlib2":.[........."Imlib2.Licen
c3720 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 49 se",.........false.....],....."I
c3740 6e 74 65 6c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 6e 74 65 6c 20 4f 70 65 6e 20 53 6f 75 ntel":.[........."Intel.Open.Sou
c3760 72 63 65 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 rce.License",.........true.....]
c3780 2c 0a 20 20 20 20 22 49 6e 74 65 6c 2d 41 43 50 49 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 ,....."Intel-ACPI":.[........."I
c37a0 6e 74 65 6c 20 41 43 50 49 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 65 ntel.ACPI.Software.License.Agree
c37c0 6d 65 6e 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 ment",.........false.....],.....
c37e0 22 49 6e 74 65 72 62 61 73 65 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 49 6e 74 65 "Interbase-1.0":.[........."Inte
c3800 72 62 61 73 65 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 rbase.Public.License.v1.0",.....
c3820 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 50 41 22 3a 20 5b 0a 20 20 ....false.....],....."IPA":.[...
c3840 20 20 20 20 20 20 22 49 50 41 20 46 6f 6e 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 ......"IPA.Font.License",.......
c3860 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 49 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 ..true.....],....."IPL-1.0":.[..
c3880 20 20 20 20 20 20 20 22 49 42 4d 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 22 ......."IBM.Public.License.v1.0"
c38a0 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 53 43 22 3a ,.........true.....],....."ISC":
c38c0 20 5b 0a 20 20 20 20 20 20 20 20 22 49 53 43 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 .[........."ISC.License",.......
c38e0 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4a 61 73 50 65 72 2d 32 2e 30 22 3a 20 ..true.....],....."JasPer-2.0":.
c3900 5b 0a 20 20 20 20 20 20 20 20 22 4a 61 73 50 65 72 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 [........."JasPer.License",.....
c3920 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4a 53 4f 4e 22 3a 20 5b 0a 20 ....false.....],....."JSON":.[..
c3940 20 20 20 20 20 20 20 22 4a 53 4f 4e 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 ......."JSON.License",.........f
c3960 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 61 74 65 78 32 65 22 3a 20 5b 0a 20 20 20 alse.....],....."Latex2e":.[....
c3980 20 20 20 20 20 22 4c 61 74 65 78 32 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 ....."Latex2e.License",.........
c39a0 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 65 70 74 6f 6e 69 63 61 22 3a 20 5b 0a false.....],....."Leptonica":.[.
c39c0 20 20 20 20 20 20 20 20 22 4c 65 70 74 6f 6e 69 63 61 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 ........"Leptonica.License",....
c39e0 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 47 50 4c 2d 32 2e 30 22 .....false.....],....."LGPL-2.0"
c3a00 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 47 4e 55 20 4c 69 62 72 61 72 79 20 47 65 6e 65 72 61 6c :.[........."GNU.Library.General
c3a20 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 20 6f 6e 6c 79 22 2c 0a 20 20 20 20 20 20 .Public.License.v2.only",.......
c3a40 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 47 50 4c 2d 32 2e 31 22 3a 20 5b 0a ..true.....],....."LGPL-2.1":.[.
c3a60 20 20 20 20 20 20 20 20 22 47 4e 55 20 4c 65 73 73 65 72 20 47 65 6e 65 72 61 6c 20 50 75 62 6c ........"GNU.Lesser.General.Publ
c3a80 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 31 20 6f 6e 6c 79 22 2c 0a 20 20 20 20 20 20 20 20 74 ic.License.v2.1.only",.........t
c3aa0 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 47 50 4c 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 rue.....],....."LGPL-3.0":.[....
c3ac0 20 20 20 20 20 22 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 ....."GNU.Lesser.General.Public.
c3ae0 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 20 74 72 75 65 License.v3.0.only",.........true
c3b00 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 47 50 4c 4c 52 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 .....],....."LGPLLR":.[.........
c3b20 22 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 46 "Lesser.General.Public.License.F
c3b40 6f 72 20 4c 69 6e 67 75 69 73 74 69 63 20 52 65 73 6f 75 72 63 65 73 22 2c 0a 20 20 20 20 20 20 or.Linguistic.Resources",.......
c3b60 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 69 62 70 6e 67 22 3a 20 5b 0a 20 ..false.....],....."Libpng":.[..
c3b80 20 20 20 20 20 20 20 22 6c 69 62 70 6e 67 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 ......."libpng.License",........
c3ba0 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 6c 69 62 74 69 66 66 22 3a 20 5b 0a 20 .false.....],....."libtiff":.[..
c3bc0 20 20 20 20 20 20 20 22 6c 69 62 74 69 66 66 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 ......."libtiff.License",.......
c3be0 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 50 4c 2d 31 2e 30 22 3a 20 5b 0a ..false.....],....."LPL-1.0":.[.
c3c00 20 20 20 20 20 20 20 20 22 4c 75 63 65 6e 74 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 56 ........"Lucent.Public.License.V
c3c20 65 72 73 69 6f 6e 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 ersion.1.0",.........true.....],
c3c40 0a 20 20 20 20 22 4c 50 4c 2d 31 2e 30 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 75 63 65 ....."LPL-1.02":.[........."Luce
c3c60 6e 74 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 30 32 22 2c 0a 20 20 20 20 20 20 nt.Public.License.v1.02",.......
c3c80 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 50 50 4c 2d 31 2e 30 22 3a 20 5b 0a ..true.....],....."LPPL-1.0":.[.
c3ca0 20 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 ........"LaTeX.Project.Public.Li
c3cc0 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.....]
c3ce0 2c 0a 20 20 20 20 22 4c 50 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 61 54 ,....."LPPL-1.1":.[........."LaT
c3d00 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 31 22 2c eX.Project.Public.License.v1.1",
c3d20 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-
c3d40 31 2e 32 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 50 1.2":.[........."LaTeX.Project.P
c3d60 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 32 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c ublic.License.v1.2",.........fal
c3d80 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4c 50 50 4c 2d 31 2e 33 61 22 3a 20 5b 0a 20 20 20 se.....],....."LPPL-1.3a":.[....
c3da0 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 65 6e ....."LaTeX.Project.Public.Licen
c3dc0 73 65 20 31 2e 33 61 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.1.3a",.........false.....],..
c3de0 20 20 20 22 4c 50 50 4c 2d 31 2e 33 63 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4c 61 54 65 58 ..."LPPL-1.3c":.[........."LaTeX
c3e00 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 33 63 22 2c 0a .Project.Public.License.v1.3c",.
c3e20 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 61 6b 65 49 6e 64 ........true.....],....."MakeInd
c3e40 65 78 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 61 6b 65 49 6e 64 65 78 20 4c 69 63 65 6e 73 ex":.[........."MakeIndex.Licens
c3e60 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 4d 69 e",.........false.....],....."Mi
c3e80 72 4f 53 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 69 72 4f 53 20 4c 69 63 65 6e 63 65 22 2c rOS":.[........."MirOS.Licence",
c3ea0 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 49 54 22 3a 20 .........true.....],....."MIT":.
c3ec0 5b 0a 20 20 20 20 20 20 20 20 22 4d 49 54 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 [........."MIT.License",........
c3ee0 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 49 54 2d 61 64 76 65 72 74 69 73 69 6e .true.....],....."MIT-advertisin
c3f00 67 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 45 6e 6c 69 67 68 74 65 6e 6d 65 6e 74 20 4c 69 63 g":.[........."Enlightenment.Lic
c3f20 65 6e 73 65 20 28 65 31 36 29 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d ense.(e16)",.........false.....]
c3f40 2c 0a 20 20 20 20 22 4d 49 54 2d 43 4d 55 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 43 4d 55 20 ,....."MIT-CMU":.[........."CMU.
c3f60 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.....],..
c3f80 20 20 20 22 4d 49 54 2d 65 6e 6e 61 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 65 6e 6e 61 20 4c ..."MIT-enna":.[........."enna.L
c3fa0 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.....],...
c3fc0 20 20 22 4d 49 54 2d 66 65 68 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 66 65 68 20 4c 69 63 65 .."MIT-feh":.[........."feh.Lice
c3fe0 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.....],....."
c4000 4d 49 54 4e 46 41 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 49 54 20 2b 6e 6f 2d 66 61 6c 73 MITNFA":.[........."MIT.+no-fals
c4020 65 2d 61 74 74 72 69 62 73 20 6c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 e-attribs.license",.........fals
c4040 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 6f 74 6f 73 6f 74 6f 22 3a 20 5b 0a 20 20 20 20 20 e.....],....."Motosoto":.[......
c4060 20 20 20 22 4d 6f 74 6f 73 6f 74 6f 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 ..."Motosoto.License",.........t
c4080 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 6d 70 69 63 68 32 22 3a 20 5b 0a 20 20 20 20 20 rue.....],....."mpich2":.[......
c40a0 20 20 20 22 6d 70 69 63 68 32 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c ..."mpich2.License",.........fal
c40c0 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 se.....],....."MPL-1.0":.[......
c40e0 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 30 22 2c ..."Mozilla.Public.License.1.0",
c4100 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 31 2e .........true.....],....."MPL-1.
c4120 31 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 4c 69 1":.[........."Mozilla.Public.Li
c4140 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 0a cense.1.1",.........true.....],.
c4160 20 20 20 20 22 4d 50 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 6f 7a 69 6c 6c ...."MPL-2.0":.[........."Mozill
c4180 61 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 a.Public.License.2.0",.........t
c41a0 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 50 4c 2d 32 2e 30 2d 6e 6f 2d 63 6f 70 79 6c rue.....],....."MPL-2.0-no-copyl
c41c0 65 66 74 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 6f 7a 69 6c eft-exception":.[........."Mozil
c41e0 6c 61 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 32 2e 30 20 28 6e 6f 20 63 6f 70 79 6c 65 la.Public.License.2.0.(no.copyle
c4200 66 74 20 65 78 63 65 70 74 69 6f 6e 29 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 ft.exception)",.........true....
c4220 20 5d 2c 0a 20 20 20 20 22 4d 53 2d 50 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 69 63 72 .],....."MS-PL":.[........."Micr
c4240 6f 73 6f 66 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 74 osoft.Public.License",.........t
c4260 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4d 53 2d 52 4c 22 3a 20 5b 0a 20 20 20 20 20 20 rue.....],....."MS-RL":.[.......
c4280 20 20 22 4d 69 63 72 6f 73 6f 66 74 20 52 65 63 69 70 72 6f 63 61 6c 20 4c 69 63 65 6e 73 65 22 .."Microsoft.Reciprocal.License"
c42a0 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 54 4c 4c 22 ,.........true.....],....."MTLL"
c42c0 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 61 74 72 69 78 20 54 65 6d 70 6c 61 74 65 20 4c 69 62 :.[........."Matrix.Template.Lib
c42e0 72 61 72 79 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 rary.License",.........false....
c4300 20 5d 2c 0a 20 20 20 20 22 4d 75 6c 74 69 63 73 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 75 .],....."Multics":.[........."Mu
c4320 6c 74 69 63 73 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 ltics.License",.........true....
c4340 20 5d 2c 0a 20 20 20 20 22 4d 75 70 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4d 75 70 20 4c 69 .],....."Mup":.[........."Mup.Li
c4360 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.....],....
c4380 20 22 4e 41 53 41 2d 31 2e 33 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 41 53 41 20 4f 70 65 ."NASA-1.3":.[........."NASA.Ope
c43a0 6e 20 53 6f 75 72 63 65 20 41 67 72 65 65 6d 65 6e 74 20 31 2e 33 22 2c 0a 20 20 20 20 20 20 20 n.Source.Agreement.1.3",........
c43c0 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 61 75 6d 65 6e 22 3a 20 5b 0a 20 20 20 .true.....],....."Naumen":.[....
c43e0 20 20 20 20 20 22 4e 61 75 6d 65 6e 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 ....."Naumen.Public.License",...
c4400 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 42 50 4c 2d 31 2e 30 22 ......true.....],....."NBPL-1.0"
c4420 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 65 74 20 42 6f 6f 6c 65 61 6e 20 50 75 62 6c 69 63 20 :.[........."Net.Boolean.Public.
c4440 4c 69 63 65 6e 73 65 20 76 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d License.v1",.........false.....]
c4460 2c 0a 20 20 20 20 22 4e 43 53 41 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 55 6e 69 76 65 72 73 ,....."NCSA":.[........."Univers
c4480 69 74 79 20 6f 66 20 49 6c 6c 69 6e 6f 69 73 2f 4e 43 53 41 20 4f 70 65 6e 20 53 6f 75 72 63 65 ity.of.Illinois/NCSA.Open.Source
c44a0 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 0a 20 .License",.........true.....],..
c44c0 20 20 20 22 4e 65 74 43 44 46 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 65 74 43 44 46 20 6c ..."NetCDF":.[........."NetCDF.l
c44e0 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.....],...
c4500 20 20 22 4e 65 77 73 6c 65 74 72 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 65 77 73 6c 65 74 .."Newsletr":.[........."Newslet
c4520 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 2c r.License",.........false.....],
c4540 0a 20 20 20 20 22 4e 47 50 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 65 74 68 61 63 6b 20 ....."NGPL":.[........."Nethack.
c4560 47 65 6e 65 72 61 6c 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 General.Public.License",........
c4580 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 4c 50 4c 22 3a 20 5b 0a 20 20 20 20 20 .true.....],....."NLPL":.[......
c45a0 20 20 20 22 4e 6f 20 4c 69 6d 69 74 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 ..."No.Limit.Public.License",...
c45c0 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 6f 6b 69 61 22 3a 20 ......false.....],....."Nokia":.
c45e0 5b 0a 20 20 20 20 20 20 20 20 22 4e 6f 6b 69 61 20 4f 70 65 6e 20 53 6f 75 72 63 65 20 4c 69 63 [........."Nokia.Open.Source.Lic
c4600 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.....],....."
c4620 4e 4f 53 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 65 74 69 7a 65 6e 20 4f 70 65 6e 20 53 NOSL":.[........."Netizen.Open.S
c4640 6f 75 72 63 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 ource.License",.........false...
c4660 20 20 5d 2c 0a 20 20 20 20 22 4e 6f 77 65 62 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 6f 77 ..],....."Noweb":.[........."Now
c4680 65 62 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 eb.License",.........false.....]
c46a0 2c 0a 20 20 20 20 22 4e 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 65 74 73 ,....."NPL-1.0":.[........."Nets
c46c0 63 61 70 65 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 cape.Public.License.v1.0",......
c46e0 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 50 4c 2d 31 2e 31 22 3a 20 5b ...false.....],....."NPL-1.1":.[
c4700 0a 20 20 20 20 20 20 20 20 22 4e 65 74 73 63 61 70 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 ........."Netscape.Public.Licens
c4720 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 20 e.v1.1",.........false.....],...
c4740 20 20 22 4e 50 4f 53 4c 2d 33 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 6f 6e 2d 50 72 .."NPOSL-3.0":.[........."Non-Pr
c4760 6f 66 69 74 20 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 ofit.Open.Software.License.3.0",
c4780 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 52 4c 22 3a 20 .........true.....],....."NRL":.
c47a0 5b 0a 20 20 20 20 20 20 20 20 22 4e 52 4c 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 [........."NRL.License",........
c47c0 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4e 54 50 22 3a 20 5b 0a 20 20 20 20 20 .false.....],....."NTP":.[......
c47e0 20 20 20 22 4e 54 50 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 ..."NTP.License",.........true..
c4800 20 20 20 5d 2c 0a 20 20 20 20 22 4e 75 6e 69 74 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4e 75 ...],....."Nunit":.[........."Nu
c4820 6e 69 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 nit.License",.........false.....
c4840 5d 2c 0a 20 20 20 20 22 4f 43 4c 43 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 43 ],....."OCLC-2.0":.[........."OC
c4860 4c 43 20 52 65 73 65 61 72 63 68 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 32 2e 30 22 2c LC.Research.Public.License.2.0",
c4880 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 4f 44 62 4c 2d 31 .........true.....],....."ODbL-1
c48a0 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 44 43 20 4f 70 65 6e 20 44 61 74 61 62 61 73 .0":.[........."ODC.Open.Databas
c48c0 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 61 6c 73 65 0a 20 e.License.v1.0",.........false..
c48e0 20 20 20 5d 2c 0a 20 20 20 20 22 4f 46 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 ...],....."OFL-1.0":.[........."
c4900 53 49 4c 20 4f 70 65 6e 20 46 6f 6e 74 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a 20 20 20 20 SIL.Open.Font.License.1.0",.....
c4920 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 46 4c 2d 31 2e 31 22 3a 20 ....false.....],....."OFL-1.1":.
c4940 5b 0a 20 20 20 20 20 20 20 20 22 53 49 4c 20 4f 70 65 6e 20 46 6f 6e 74 20 4c 69 63 65 6e 73 65 [........."SIL.Open.Font.License
c4960 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 0a 20 20 20 20 22 .1.1",.........true.....],....."
c4980 4f 47 54 53 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 47 72 6f 75 70 20 54 65 OGTSL":.[........."Open.Group.Te
c49a0 73 74 20 53 75 69 74 65 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a st.Suite.License",.........true.
c49c0 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 ....],....."OLDAP-1.1":.[.......
c49e0 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 31 2e 31 .."Open.LDAP.Public.License.v1.1
c4a00 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 4c 44 ",.........false.....],....."OLD
c4a20 41 50 2d 31 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 AP-1.2":.[........."Open.LDAP.Pu
c4a40 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 32 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 blic.License.v1.2",.........fals
c4a60 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 31 2e 33 22 3a 20 5b 0a 20 20 20 20 e.....],....."OLDAP-1.3":.[.....
c4a80 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 6e 73 65 20 76 31 ...."Open.LDAP.Public.License.v1
c4aa0 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 0a 20 20 20 20 22 4f .3",.........false.....],....."O
c4ac0 4c 44 41 50 2d 31 2e 34 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 20 LDAP-1.4":.[........."Open.LDAP.
c4ae0 50 75 62 6c 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 Public.License.v1.4",.........fa
c4b00 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 22 3a 20 5b 0a 20 20 lse.....],....."OLDAP-2.0":.[...
c4b20 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 6e 73 65 20 ......"Open.LDAP.Public.License.
c4b40 76 32 2e 30 20 28 6f 72 20 70 6f 73 73 69 62 6c 79 20 32 2e 30 41 20 61 6e 64 20 32 2e 30 42 29 v2.0.(or.possibly.2.0A.and.2.0B)
c4b60 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 4c 44 ",.........false.....],....."OLD
c4b80 41 50 2d 32 2e 30 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 20 AP-2.0.1":.[........."Open.LDAP.
c4ba0 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 30 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 Public.License.v2.0.1",.........
c4bc0 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 31 22 3a 20 5b 0a false.....],....."OLDAP-2.1":.[.
c4be0 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 6e 73 ........"Open.LDAP.Public.Licens
c4c00 65 20 76 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 e.v2.1",.........false.....],...
c4c20 20 20 22 4f 4c 44 41 50 2d 32 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c .."OLDAP-2.2":.[........."Open.L
c4c40 44 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 32 22 2c 0a 20 20 20 20 20 20 DAP.Public.License.v2.2",.......
c4c60 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 32 2e 31 22 ..false.....],....."OLDAP-2.2.1"
c4c80 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
c4ca0 63 65 6e 73 65 20 76 32 2e 32 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 cense.v2.2.1",.........false....
c4cc0 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 32 2e 32 22 3a 20 5b 0a 20 20 20 20 20 20 20 .],....."OLDAP-2.2.2":.[........
c4ce0 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 20 32 2e 32 2e ."Open.LDAP.Public.License..2.2.
c4d00 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 20 20 20 20 22 4f 4c 2",.........false.....],....."OL
c4d20 44 41 50 2d 32 2e 33 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 DAP-2.3":.[........."Open.LDAP.P
c4d40 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 33 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c ublic.License.v2.3",.........fal
c4d60 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 34 22 3a 20 5b 0a 20 20 20 se.....],....."OLDAP-2.4":.[....
c4d80 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 6e 73 65 20 76 ....."Open.LDAP.Public.License.v
c4da0 32 2e 34 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.4",.........false.....],....."
c4dc0 4f 4c 44 41 50 2d 32 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 41 50 OLDAP-2.5":.[........."Open.LDAP
c4de0 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 35 22 2c 0a 20 20 20 20 20 20 20 20 66 .Public.License.v2.5",.........f
c4e00 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 36 22 3a 20 5b 0a 20 alse.....],....."OLDAP-2.6":.[..
c4e20 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 6e 73 65 ......."Open.LDAP.Public.License
c4e40 20 76 32 2e 36 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 .v2.6",.........false.....],....
c4e60 20 22 4f 4c 44 41 50 2d 32 2e 37 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4c 44 ."OLDAP-2.7":.[........."Open.LD
c4e80 41 50 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 32 2e 37 22 2c 0a 20 20 20 20 20 20 20 AP.Public.License.v2.7",........
c4ea0 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 38 22 3a 20 5b .false.....],....."OLDAP-2.8":.[
c4ec0 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 6e ........."Open.LDAP.Public.Licen
c4ee0 73 65 20 76 32 2e 38 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.v2.8",.........false.....],..
c4f00 20 20 20 22 4f 4d 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 4d 61 72 6b 65 74 ..."OML":.[........."Open.Market
c4f20 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.....],.
c4f40 20 20 20 20 22 4f 70 65 6e 53 53 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 53 53 ...."OpenSSL":.[........."OpenSS
c4f60 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 20 20 5d 2c L.License",.........false.....],
c4f80 0a 20 20 20 20 22 4f 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 ....."OPL-1.0":.[........."Open.
c4fa0 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 20 66 61 Public.License.v1.0",.........fa
c4fc0 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 53 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 lse.....],....."OSL-1.0":.[.....
c4fe0 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 30 22 2c ...."Open.Software.License.1.0",
c5000 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 4f 53 4c 2d 31 2e .........true.....],....."OSL-1.
c5020 31 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 69 63 1":.[........."Open.Software.Lic
c5040 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 20 5d 2c 0a ense.1.1",.........false.....],.
c5060 20 20 20 20 22 4f 53 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 70 65 6e 20 53 ...."OSL-2.0":.[........."Open.S
c5080 6f 66 74 77 61 72 65 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 oftware.License.2.0",.........tr
c50a0 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 4f 53 4c 2d 32 2e 31 22 3a 20 5b 0a 20 20 20 20 20 ue.....],....."OSL-2.1":.[......
c50c0 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 32 2e 31 22 2c 0a ..."Open.Software.License.2.1",.
c50e0 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 4f 53 4c 2d 33 2e 30 ........true.....],....."OSL-3.0
c5100 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 69 63 65 ":.[........."Open.Software.Lice
c5120 6e 73 65 20 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 nse.3.0",.........true.....],...
c5140 20 20 22 50 44 44 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 4f 44 43 20 50 75 62 .."PDDL-1.0":.[........."ODC.Pub
c5160 6c 69 63 20 44 6f 6d 61 69 6e 20 44 65 64 69 63 61 74 69 6f 6e 20 26 20 4c 69 63 65 6e 73 65 20 lic.Domain.Dedication.&.License.
c5180 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.....],....."
c51a0 50 48 50 2d 33 2e 30 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 PHP-3.0":.[........."PHP.License
c51c0 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.....],.....
c51e0 22 50 48 50 2d 33 2e 30 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 50 48 50 20 4c 69 63 65 6e "PHP-3.01":.[........."PHP.Licen
c5200 73 65 20 76 33 2e 30 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 se.v3.01",.........false.....],.
c5220 20 20 20 20 22 50 6c 65 78 75 73 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 50 6c 65 78 75 73 20 ...."Plexus":.[........."Plexus.
c5240 43 6c 61 73 73 77 6f 72 6c 64 73 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 Classworlds.License",.........fa
c5260 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 50 6f 73 74 67 72 65 53 51 4c 22 3a 20 5b 0a 20 lse.....],....."PostgreSQL":.[..
c5280 20 20 20 20 20 20 20 22 50 6f 73 74 67 72 65 53 51 4c 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 ......."PostgreSQL.License",....
c52a0 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 70 73 66 72 61 67 22 3a 20 5b .....true.....],....."psfrag":.[
c52c0 0a 20 20 20 20 20 20 20 20 22 70 73 66 72 61 67 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 ........."psfrag.License",......
c52e0 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 70 73 75 74 69 6c 73 22 3a 20 5b ...false.....],....."psutils":.[
c5300 0a 20 20 20 20 20 20 20 20 22 70 73 75 74 69 6c 73 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 ........."psutils.License",.....
c5320 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 50 79 74 68 6f 6e 2d 32 2e 30 ....false.....],....."Python-2.0
c5340 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 50 79 74 68 6f 6e 20 4c 69 63 65 6e 73 65 20 32 2e 30 ":.[........."Python.License.2.0
c5360 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 51 68 75 6c ",.........true.....],....."Qhul
c5380 6c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 51 68 75 6c 6c 20 4c 69 63 65 6e 73 65 22 2c 0a 20 l":.[........."Qhull.License",..
c53a0 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 51 50 4c 2d 31 2e 30 .......false.....],....."QPL-1.0
c53c0 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 51 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 ":.[........."Q.Public.License.1
c53e0 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 52 64 .0",.........true.....],....."Rd
c5400 69 73 63 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 52 64 69 73 63 20 4c 69 63 65 6e 73 65 22 2c isc":.[........."Rdisc.License",
c5420 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 52 48 65 43 6f .........false.....],....."RHeCo
c5440 73 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 52 65 64 20 48 61 74 20 65 43 6f 73 20 s-1.1":.[........."Red.Hat.eCos.
c5460 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 61 Public.License.v1.1",.........fa
c5480 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 52 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 lse.....],....."RPL-1.1":.[.....
c54a0 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 6e 73 65 20 31 ...."Reciprocal.Public.License.1
c54c0 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 52 50 .1",.........true.....],....."RP
c54e0 4c 2d 31 2e 35 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 52 65 63 69 70 72 6f 63 61 6c 20 50 75 L-1.5":.[........."Reciprocal.Pu
c5500 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 35 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a blic.License.1.5",.........true.
c5520 20 20 20 20 5d 2c 0a 20 20 20 20 22 52 50 53 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 ....],....."RPSL-1.0":.[........
c5540 20 22 52 65 61 6c 4e 65 74 77 6f 72 6b 73 20 50 75 62 6c 69 63 20 53 6f 75 72 63 65 20 4c 69 63 ."RealNetworks.Public.Source.Lic
c5560 65 6e 73 65 20 76 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 ense.v1.0",.........true.....],.
c5580 20 20 20 20 22 52 53 41 2d 4d 44 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 52 53 41 20 4d 65 73 ...."RSA-MD":.[........."RSA.Mes
c55a0 73 61 67 65 2d 44 69 67 65 73 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 sage-Digest.License",.........fa
c55c0 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 52 53 43 50 4c 22 3a 20 5b 0a 20 20 20 20 20 20 lse.....],....."RSCPL":.[.......
c55e0 20 20 22 52 69 63 6f 68 20 53 6f 75 72 63 65 20 43 6f 64 65 20 50 75 62 6c 69 63 20 4c 69 63 65 .."Ricoh.Source.Code.Public.Lice
c5600 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 52 nse",.........true.....],....."R
c5620 75 62 79 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 52 75 62 79 20 4c 69 63 65 6e 73 65 22 2c 0a uby":.[........."Ruby.License",.
c5640 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 41 58 2d 50 44 ........false.....],....."SAX-PD
c5660 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 61 78 20 50 75 62 6c 69 63 20 44 6f 6d 61 69 6e 20 ":.[........."Sax.Public.Domain.
c5680 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 20 20 Notice",.........false.....],...
c56a0 20 20 22 53 61 78 70 61 74 68 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 61 78 70 61 74 68 20 .."Saxpath":.[........."Saxpath.
c56c0 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.....],..
c56e0 20 20 20 22 53 43 45 41 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 43 45 41 20 53 68 61 72 65 ..."SCEA":.[........."SCEA.Share
c5700 64 20 53 6f 75 72 63 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 d.Source.License",.........false
c5720 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 65 6e 64 6d 61 69 6c 22 3a 20 5b 0a 20 20 20 20 20 20 .....],....."Sendmail":.[.......
c5740 20 20 22 53 65 6e 64 6d 61 69 6c 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 61 .."Sendmail.License",.........fa
c5760 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 47 49 2d 42 2d 31 2e 30 22 3a 20 5b 0a 20 20 lse.....],....."SGI-B-1.0":.[...
c5780 20 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 ......"SGI.Free.Software.License
c57a0 20 42 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 .B.v1.0",.........false.....],..
c57c0 20 20 20 22 53 47 49 2d 42 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 47 49 20 46 ..."SGI-B-1.1":.[........."SGI.F
c57e0 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 31 22 2c 0a 20 20 ree.Software.License.B.v1.1",...
c5800 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 2d 32 2e ......false.....],....."SGI-B-2.
c5820 30 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 61 72 65 0":.[........."SGI.Free.Software
c5840 20 4c 69 63 65 6e 73 65 20 42 20 76 32 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 66 61 6c 73 65 0a .License.B.v2.0",.........false.
c5860 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 69 6d 50 4c 2d 32 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 ....],....."SimPL-2.0":.[.......
c5880 20 20 22 53 69 6d 70 6c 65 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 32 2e 30 22 2c 0a 20 .."Simple.Public.License.2.0",..
c58a0 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 49 53 53 4c 22 3a 20 .......true.....],....."SISSL":.
c58c0 5b 0a 20 20 20 20 20 20 20 20 22 53 75 6e 20 49 6e 64 75 73 74 72 79 20 53 74 61 6e 64 61 72 64 [........."Sun.Industry.Standard
c58e0 73 20 53 6f 75 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 s.Source.License.v1.1",.........
c5900 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 49 53 53 4c 2d 31 2e 32 22 3a 20 5b 0a 20 true.....],....."SISSL-1.2":.[..
c5920 20 20 20 20 20 20 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 ......."Sun.Industry.Standards.S
c5940 6f 75 72 63 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 66 61 6c ource.License.v1.2",.........fal
c5960 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 6c 65 65 70 79 63 61 74 22 3a 20 5b 0a 20 20 20 se.....],....."Sleepycat":.[....
c5980 20 20 20 20 20 22 53 6c 65 65 70 79 63 61 74 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 ....."Sleepycat.License",.......
c59a0 20 20 74 72 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 4d 4c 4e 4a 22 3a 20 5b 0a 20 20 20 ..true.....],....."SMLNJ":.[....
c59c0 20 20 20 20 20 22 53 74 61 6e 64 61 72 64 20 4d 4c 20 6f 66 20 4e 65 77 20 4a 65 72 73 65 79 20 ....."Standard.ML.of.New.Jersey.
c59e0 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.....],..
c5a00 20 20 20 22 53 4e 49 41 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 4e 49 41 20 50 75 62 6c 69 ..."SNIA":.[........."SNIA.Publi
c5a20 63 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 c.License.1.1",.........false...
c5a40 20 20 5d 2c 0a 20 20 20 20 22 53 70 65 6e 63 65 72 2d 38 36 22 3a 20 5b 0a 20 20 20 20 20 20 20 ..],....."Spencer-86":.[........
c5a60 20 22 53 70 65 6e 63 65 72 20 4c 69 63 65 6e 73 65 20 38 36 22 2c 0a 20 20 20 20 20 20 20 20 66 ."Spencer.License.86",.........f
c5a80 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 53 70 65 6e 63 65 72 2d 39 34 22 3a 20 5b 0a alse.....],....."Spencer-94":.[.
c5aa0 20 20 20 20 20 20 20 20 22 53 70 65 6e 63 65 72 20 4c 69 63 65 6e 73 65 20 39 34 22 2c 0a 20 20 ........"Spencer.License.94",...
c5ac0 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 70 65 6e 63 65 72 2d ......false.....],....."Spencer-
c5ae0 39 39 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 70 65 6e 63 65 72 20 4c 69 63 65 6e 73 65 20 99":.[........."Spencer.License.
c5b00 39 39 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 53 99",.........false.....],....."S
c5b20 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 75 6e 20 50 75 62 6c 69 63 20 4c PL-1.0":.[........."Sun.Public.L
c5b40 69 63 65 6e 73 65 20 76 31 2e 30 22 2c 0a 20 20 20 20 20 20 20 20 74 72 75 65 0a 20 20 20 20 5d icense.v1.0",.........true.....]
c5b60 2c 0a 20 20 20 20 22 53 75 67 61 72 43 52 4d 2d 31 2e 31 2e 33 22 3a 20 5b 0a 20 20 20 20 20 20 ,....."SugarCRM-1.1.3":.[.......
c5b80 20 20 22 53 75 67 61 72 43 52 4d 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 2e .."SugarCRM.Public.License.v1.1.
c5ba0 33 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 53 57 3",.........false.....],....."SW
c5bc0 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 63 68 65 6d 65 20 57 69 64 67 65 74 20 4c 69 62 L":.[........."Scheme.Widget.Lib
c5be0 72 61 72 79 20 28 53 57 4c 29 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 41 67 72 65 rary.(SWL).Software.License.Agre
c5c00 65 6d 65 6e 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 ement",.........false.....],....
c5c20 20 22 54 43 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 54 43 4c 2f 54 4b 20 4c 69 63 65 6e 73 ."TCL":.[........."TCL/TK.Licens
c5c40 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 4d e",.........false.....],....."TM
c5c60 61 74 65 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 54 4d 61 74 65 20 4f 70 65 6e 20 53 6f 75 72 ate":.[........."TMate.Open.Sour
c5c80 63 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 20 5d ce.License",.........false.....]
c5ca0 2c 0a 20 20 20 20 22 54 4f 52 51 55 45 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 54 ,....."TORQUE-1.1":.[........."T
c5cc0 4f 52 51 55 45 20 76 32 2e 35 2b 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 20 76 31 2e ORQUE.v2.5+.Software.License.v1.
c5ce0 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 54 4f 1",.........false.....],....."TO
c5d00 53 4c 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 54 72 75 73 73 74 65 72 20 4f 70 65 6e 20 53 6f SL":.[........."Trusster.Open.So
c5d20 75 72 63 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 urce.License",.........false....
c5d40 20 5d 2c 0a 20 20 20 20 22 55 6e 69 63 6f 64 65 2d 54 4f 55 22 3a 20 5b 0a 20 20 20 20 20 20 20 .],....."Unicode-TOU":.[........
c5d60 20 22 55 6e 69 63 6f 64 65 20 54 65 72 6d 73 20 6f 66 20 55 73 65 22 2c 0a 20 20 20 20 20 20 20 ."Unicode.Terms.of.Use",........
c5d80 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 55 6e 6c 69 63 65 6e 73 65 22 3a 20 5b .false.....],....."Unlicense":.[
c5da0 0a 20 20 20 20 20 20 20 20 22 54 68 65 20 55 6e 6c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 ........."The.Unlicense",.......
c5dc0 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 55 50 4c 2d 31 2e 30 22 3a 20 5b 0a ..false.....],....."UPL-1.0":.[.
c5de0 20 20 20 20 20 20 20 20 22 55 6e 69 76 65 72 73 61 6c 20 50 65 72 6d 69 73 73 69 76 65 20 4c 69 ........"Universal.Permissive.Li
c5e00 63 65 6e 73 65 20 76 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 cense.v1.0",.........true.....],
c5e20 0a 20 20 20 20 22 56 69 6d 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 56 69 6d 20 4c 69 63 65 6e ....."Vim":.[........."Vim.Licen
c5e40 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 56 se",.........false.....],....."V
c5e60 4f 53 54 52 4f 4d 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 56 4f 53 54 52 4f 4d 20 50 75 62 6c OSTROM":.[........."VOSTROM.Publ
c5e80 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 4f 70 65 6e 20 53 6f 75 72 63 65 22 2c 0a 20 20 20 ic.License.for.Open.Source",....
c5ea0 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 56 53 4c 2d 31 2e 30 22 3a .....false.....],....."VSL-1.0":
c5ec0 20 5b 0a 20 20 20 20 20 20 20 20 22 56 6f 76 69 64 61 20 53 6f 66 74 77 61 72 65 20 4c 69 63 65 .[........."Vovida.Software.Lice
c5ee0 6e 73 65 20 76 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 nse.v1.0",.........true.....],..
c5f00 20 20 20 22 57 33 43 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 ..."W3C":.[........."W3C.Softwar
c5f20 65 20 4e 6f 74 69 63 65 20 61 6e 64 20 4c 69 63 65 6e 73 65 20 28 32 30 30 32 2d 31 32 2d 33 31 e.Notice.and.License.(2002-12-31
c5f40 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 57 33 43 )",.........true.....],....."W3C
c5f60 2d 31 39 39 38 30 37 32 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 57 33 43 20 53 6f 66 74 77 -19980720":.[........."W3C.Softw
c5f80 61 72 65 20 4e 6f 74 69 63 65 20 61 6e 64 20 4c 69 63 65 6e 73 65 20 28 31 39 39 38 2d 30 37 2d are.Notice.and.License.(1998-07-
c5fa0 32 30 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 20)",.........false.....],....."
c5fc0 57 61 74 63 6f 6d 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 53 79 62 61 73 65 20 4f Watcom-1.0":.[........."Sybase.O
c5fe0 70 65 6e 20 57 61 74 63 6f 6d 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 31 2e 30 22 2c 0a pen.Watcom.Public.License.1.0",.
c6000 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 73 75 69 70 61 22 ........true.....],....."Wsuipa"
c6020 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 57 73 75 69 70 61 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 :.[........."Wsuipa.License",...
c6040 20 20 20 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 57 54 46 50 4c 22 3a 20 ......false.....],....."WTFPL":.
c6060 5b 0a 20 20 20 20 20 20 20 20 22 44 6f 20 57 68 61 74 20 54 68 65 20 46 2a 63 6b 20 59 6f 75 20 [........."Do.What.The.F*ck.You.
c6080 57 61 6e 74 20 54 6f 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 Want.To.Public.License",........
c60a0 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 58 31 31 22 3a 20 5b 0a 20 20 20 20 20 .false.....],....."X11":.[......
c60c0 20 20 20 22 58 31 31 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 ..."X11.License",.........false.
c60e0 20 20 20 20 5d 2c 0a 20 20 20 20 22 58 65 72 6f 78 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 58 ....],....."Xerox":.[........."X
c6100 65 72 6f 78 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 erox.License",.........false....
c6120 20 5d 2c 0a 20 20 20 20 22 58 46 72 65 65 38 36 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 .],....."XFree86-1.1":.[........
c6140 20 22 58 46 72 65 65 38 36 20 4c 69 63 65 6e 73 65 20 31 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 ."XFree86.License.1.1",.........
c6160 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 78 69 6e 65 74 64 22 3a 20 5b 0a 20 20 20 false.....],....."xinetd":.[....
c6180 20 20 20 20 20 22 78 69 6e 65 74 64 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 66 ....."xinetd.License",.........f
c61a0 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 58 6e 65 74 22 3a 20 5b 0a 20 20 20 20 20 20 alse.....],....."Xnet":.[.......
c61c0 20 20 22 58 2e 4e 65 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 .."X.Net.License",.........true.
c61e0 20 20 20 20 5d 2c 0a 20 20 20 20 22 78 70 70 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 58 50 50 ....],....."xpp":.[........."XPP
c6200 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.....],.
c6220 20 20 20 20 22 58 53 6b 61 74 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 58 53 6b 61 74 20 4c 69 ...."XSkat":.[........."XSkat.Li
c6240 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.....],....
c6260 20 22 59 50 4c 2d 31 2e 30 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 59 61 68 6f 6f 21 20 50 75 ."YPL-1.0":.[........."Yahoo!.Pu
c6280 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 20 66 61 6c 73 blic.License.v1.0",.........fals
c62a0 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 59 50 4c 2d 31 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 e.....],....."YPL-1.1":.[.......
c62c0 20 20 22 59 61 68 6f 6f 21 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 31 22 2c 0a .."Yahoo!.Public.License.v1.1",.
c62e0 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 65 64 22 3a 20 ........false.....],....."Zed":.
c6300 5b 0a 20 20 20 20 20 20 20 20 22 5a 65 64 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 [........."Zed.License",........
c6320 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 5a 65 6e 64 2d 32 2e 30 22 3a 20 5b 0a .false.....],....."Zend-2.0":.[.
c6340 20 20 20 20 20 20 20 20 22 5a 65 6e 64 20 4c 69 63 65 6e 73 65 20 76 32 2e 30 22 2c 0a 20 20 20 ........"Zend.License.v2.0",....
c6360 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 62 72 61 2d 31 2e .....false.....],....."Zimbra-1.
c6380 33 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 69 63 20 4c 69 63 3":.[........."Zimbra.Public.Lic
c63a0 65 6e 73 65 20 76 31 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.v1.3",.........false.....],
c63c0 0a 20 20 20 20 22 5a 69 6d 62 72 61 2d 31 2e 34 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 5a 69 ....."Zimbra-1.4":.[........."Zi
c63e0 6d 62 72 61 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 31 2e 34 22 2c 0a 20 20 20 20 20 mbra.Public.License.v1.4",......
c6400 20 20 20 66 61 6c 73 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 5a 6c 69 62 22 3a 20 5b 0a 20 20 ...false.....],....."Zlib":.[...
c6420 20 20 20 20 20 20 22 7a 6c 69 62 20 4c 69 63 65 6e 73 65 22 2c 0a 20 20 20 20 20 20 20 20 74 72 ......"zlib.License",.........tr
c6440 75 65 0a 20 20 20 20 5d 2c 0a 20 20 20 20 22 7a 6c 69 62 2d 61 63 6b 6e 6f 77 6c 65 64 67 65 6d ue.....],....."zlib-acknowledgem
c6460 65 6e 74 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 7a 6c 69 62 2f 6c 69 62 70 6e 67 20 4c 69 63 ent":.[........."zlib/libpng.Lic
c6480 65 6e 73 65 20 77 69 74 68 20 41 63 6b 6e 6f 77 6c 65 64 67 65 6d 65 6e 74 22 2c 0a 20 20 20 20 ense.with.Acknowledgement",.....
c64a0 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 31 2e 31 22 3a 20 ....false.....],....."ZPL-1.1":.
c64c0 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 31 [........."Zope.Public.License.1
c64e0 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 5a .1",.........false.....],....."Z
c6500 50 4c 2d 32 2e 30 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 PL-2.0":.[........."Zope.Public.
c6520 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.....]
c6540 2c 0a 20 20 20 20 22 5a 50 4c 2d 32 2e 31 22 3a 20 5b 0a 20 20 20 20 20 20 20 20 22 5a 6f 70 65 ,....."ZPL-2.1":.[........."Zope
c6560 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 32 2e 31 22 2c 0a 20 20 20 20 20 20 20 20 66 61 .Public.License.2.1",.........fa
c6580 6c 73 65 0a 20 20 20 20 5d 0a 7d 4d 5a 90 00 03 00 00 00 04 00 00 00 ff ff 00 00 b8 00 00 00 00 lse.....].}MZ...................
c65a0 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...@............................
c65c0 00 00 00 00 00 00 00 e8 00 00 00 0e 1f ba 0e 00 b4 09 cd 21 b8 01 4c cd 21 54 68 69 73 20 70 72 ...................!..L.!This.pr
c65e0 6f 67 72 61 6d 20 63 61 6e 6e 6f 74 20 62 65 20 72 75 6e 20 69 6e 20 44 4f 53 20 6d 6f 64 65 2e ogram.cannot.be.run.in.DOS.mode.
c6600 0d 0d 0a 24 00 00 00 00 00 00 00 7f c6 2c cd 3b a7 42 9e 3b a7 42 9e 3b a7 42 9e 32 df d7 9e 3a ...$.........,.;.B.;.B.;.B.2...:
c6620 a7 42 9e 32 df c1 9e 2d a7 42 9e 32 df c6 9e 39 a7 42 9e 32 df d1 9e 3f a7 42 9e 1c 61 39 9e 38 .B.2...-.B.2...9.B.2...?.B..a9.8
c6640 a7 42 9e 3b a7 43 9e 08 a7 42 9e 32 df c8 9e 3a a7 42 9e 32 df d6 9e 3a a7 42 9e 32 df d3 9e 3a .B.;.C...B.2...:.B.2...:.B.2...:
c6660 a7 42 9e 52 69 63 68 3b a7 42 9e 00 00 00 00 00 00 00 00 50 45 00 00 4c 01 05 00 ac 4d 6f 4f 00 .B.Rich;.B.........PE..L....MoO.
c6680 00 00 00 00 00 00 00 e0 00 02 01 0b 01 09 00 00 0a 00 00 00 16 00 00 00 00 00 00 38 13 00 00 00 ...........................8....
c66a0 10 00 00 00 20 00 00 00 00 40 00 00 10 00 00 00 02 00 00 05 00 00 00 00 00 00 00 05 00 00 00 00 .........@......................
c66c0 00 00 00 00 60 00 00 00 04 00 00 3f 9c 00 00 03 00 40 81 00 00 10 00 00 10 00 00 00 00 10 00 00 ....`......?.....@..............
c66e0 10 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 90 22 00 00 50 00 00 00 00 40 00 00 20 ...................."..P....@...
c6700 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50 00 00 70 01 00 00 00 21 00 00 1c ....................P..p....!...
c6720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 38 21 00 00 40 ...........................8!..@
c6740 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 d8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c6760 00 00 00 00 00 00 00 00 00 00 00 2e 74 65 78 74 00 00 00 0b 09 00 00 00 10 00 00 00 0a 00 00 00 ............text................
c6780 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 60 2e 72 64 61 74 61 00 00 ce 09 00 00 00 ..................`.rdata.......
c67a0 20 00 00 00 0a 00 00 00 0e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 40 2e 64 61 74 61 .......................@..@.data
c67c0 00 00 00 90 03 00 00 00 30 00 00 00 02 00 00 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 ........0......................@
c67e0 00 00 c0 2e 72 73 72 63 00 00 00 20 06 00 00 00 40 00 00 00 08 00 00 00 1a 00 00 00 00 00 00 00 ....rsrc........@...............
c6800 00 00 00 00 00 00 00 40 00 00 40 2e 72 65 6c 6f 63 00 00 cc 01 00 00 00 50 00 00 00 02 00 00 00 .......@..@.reloc.......P.......
c6820 22 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 42 00 00 00 00 00 00 00 00 00 00 00 00 00 "..............@..B.............
c6840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c6860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c6880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c68a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c68c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c68e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c6900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c6920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c6940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c6960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c6980 00 00 00 00 00 00 00 00 00 00 00 6a 24 b8 e6 18 40 00 e8 78 08 00 00 6a f6 ff 15 08 20 40 00 83 ...........j$...@..x...j.....@..
c69a0 65 d0 00 8b f0 8d 45 d0 50 56 ff 15 00 20 40 00 8b 45 d0 83 e0 fb 50 56 ff 15 04 20 40 00 8d 4d e.....E.PV....@..E....PV....@..M
c69c0 d4 ff 15 58 20 40 00 83 65 fc 00 8d 45 d4 50 ff 35 48 20 40 00 ff 15 4c 20 40 00 59 59 ff 35 5c ...X.@..e...E.P.5H.@...L.@.YY.5\
c69e0 20 40 00 8d 45 d4 50 ff 35 60 20 40 00 ff 15 44 20 40 00 59 59 8b c8 ff 15 50 20 40 00 83 4d fc .@..E.P.5`.@...D.@.YY....P.@..M.
c6a00 ff 8d 4d d4 ff 15 54 20 40 00 33 c0 e8 48 08 00 00 c3 3b 0d 00 30 40 00 75 02 f3 c3 e9 ac 02 00 ..M...T.@.3..H....;..0@.u.......
c6a20 00 68 80 15 40 00 e8 a3 04 00 00 a1 6c 33 40 00 c7 04 24 34 30 40 00 ff 35 68 33 40 00 a3 34 30 .h..@.......l3@...$40@..5h3@..40
c6a40 40 00 68 24 30 40 00 68 28 30 40 00 68 20 30 40 00 ff 15 a0 20 40 00 83 c4 14 a3 30 30 40 00 85 @.h$0@.h(0@.h.0@.....@.....00@..
c6a60 c0 7d 08 6a 08 e8 b9 03 00 00 59 c3 6a 10 68 08 22 40 00 e8 1f 06 00 00 33 db 89 5d fc 64 a1 18 .}.j......Y.j.h."@......3..].d..
c6a80 00 00 00 8b 70 04 89 5d e4 bf 80 33 40 00 53 56 57 ff 15 30 20 40 00 3b c3 74 19 3b c6 75 08 33 ....p..]...3@.SVW..0.@.;.t.;.u.3
c6aa0 f6 46 89 75 e4 eb 10 68 e8 03 00 00 ff 15 34 20 40 00 eb da 33 f6 46 a1 7c 33 40 00 3b c6 75 0a .F.u...h......4.@...3.F.|3@.;.u.
c6ac0 6a 1f e8 5c 03 00 00 59 eb 3b a1 7c 33 40 00 85 c0 75 2c 89 35 7c 33 40 00 68 f0 20 40 00 68 e4 j..\...Y.;.|3@...u,.5|3@.h..@.h.
c6ae0 20 40 00 e8 a7 05 00 00 59 59 85 c0 74 17 c7 45 fc fe ff ff ff b8 ff 00 00 00 e9 dd 00 00 00 89 .@......YY..t..E................
c6b00 35 3c 30 40 00 a1 7c 33 40 00 3b c6 75 1b 68 e0 20 40 00 68 d8 20 40 00 e8 6c 05 00 00 59 59 c7 5<0@..|3@.;.u.h..@.h..@..l...YY.
c6b20 05 7c 33 40 00 02 00 00 00 39 5d e4 75 08 53 57 ff 15 38 20 40 00 39 1d 8c 33 40 00 74 19 68 8c .|3@.....9].u.SW..8.@.9..3@.t.h.
c6b40 33 40 00 e8 83 04 00 00 59 85 c0 74 0a 53 6a 02 53 ff 15 8c 33 40 00 a1 24 30 40 00 8b 0d bc 20 3@......Y..t.Sj.S...3@..$0@.....
c6b60 40 00 89 01 ff 35 24 30 40 00 ff 35 28 30 40 00 ff 35 20 30 40 00 e8 10 fe ff ff 83 c4 0c a3 38 @....5$0@..5(0@..5.0@..........8
c6b80 30 40 00 39 1d 2c 30 40 00 75 37 50 ff 15 c0 20 40 00 8b 45 ec 8b 08 8b 09 89 4d e0 50 51 e8 8e 0@.9.,0@.u7P....@..E......M.PQ..
c6ba0 03 00 00 59 59 c3 8b 65 e8 8b 45 e0 a3 38 30 40 00 33 db 39 1d 2c 30 40 00 75 07 50 ff 15 68 20 ...YY..e..E..80@.3.9.,0@.u.P..h.
c6bc0 40 00 39 1d 3c 30 40 00 75 06 ff 15 9c 20 40 00 c7 45 fc fe ff ff ff a1 38 30 40 00 e8 fb 04 00 @.9.<0@.u.....@..E......80@.....
c6be0 00 c3 b8 4d 5a 00 00 66 39 05 00 00 40 00 74 04 33 c0 eb 4d a1 3c 00 40 00 8d 80 00 00 40 00 81 ...MZ..f9...@.t.3..M.<.@.....@..
c6c00 38 50 45 00 00 75 e9 0f b7 48 18 81 f9 0b 01 00 00 74 1b 81 f9 0b 02 00 00 75 d5 83 b8 84 00 00 8PE..u...H.......t.......u......
c6c20 00 0e 76 cc 33 c9 39 88 f8 00 00 00 eb 0e 83 78 74 0e 76 bc 33 c9 39 88 e8 00 00 00 0f 95 c1 8b ..v.3.9........xt.v.3.9.........
c6c40 c1 6a 01 a3 2c 30 40 00 ff 15 70 20 40 00 6a ff ff 15 6c 20 40 00 59 59 a3 84 33 40 00 a3 88 33 .j..,0@...p.@.j...l.@.YY..3@...3
c6c60 40 00 ff 15 cc 20 40 00 8b 0d 74 33 40 00 89 08 ff 15 88 20 40 00 8b 0d 70 33 40 00 89 08 a1 a8 @.....@...t3@.......@...p3@.....
c6c80 20 40 00 8b 00 a3 78 33 40 00 e8 56 02 00 00 e8 ac 04 00 00 83 3d 14 30 40 00 00 75 0c 68 b5 17 .@....x3@..V.........=.0@..u.h..
c6ca0 40 00 ff 15 ac 20 40 00 59 e8 67 04 00 00 83 3d 10 30 40 00 ff 75 09 6a ff ff 15 b0 20 40 00 59 @.....@.Y.g....=.0@..u.j.....@.Y
c6cc0 33 c0 c3 e8 7b 04 00 00 e9 9f fd ff ff 8b ff 55 8b ec 81 ec 28 03 00 00 a3 48 31 40 00 89 0d 44 3...{..........U....(....H1@...D
c6ce0 31 40 00 89 15 40 31 40 00 89 1d 3c 31 40 00 89 35 38 31 40 00 89 3d 34 31 40 00 66 8c 15 60 31 1@...@1@...<1@..581@..=41@.f..`1
c6d00 40 00 66 8c 0d 54 31 40 00 66 8c 1d 30 31 40 00 66 8c 05 2c 31 40 00 66 8c 25 28 31 40 00 66 8c @.f..T1@.f..01@.f..,1@.f.%(1@.f.
c6d20 2d 24 31 40 00 9c 8f 05 58 31 40 00 8b 45 00 a3 4c 31 40 00 8b 45 04 a3 50 31 40 00 8d 45 08 a3 -$1@....X1@..E..L1@..E..P1@..E..
c6d40 5c 31 40 00 8b 85 e0 fc ff ff c7 05 98 30 40 00 01 00 01 00 a1 50 31 40 00 a3 4c 30 40 00 c7 05 \1@..........0@......P1@..L0@...
c6d60 40 30 40 00 09 04 00 c0 c7 05 44 30 40 00 01 00 00 00 a1 00 30 40 00 89 85 d8 fc ff ff a1 04 30 @0@.......D0@.......0@.........0
c6d80 40 00 89 85 dc fc ff ff ff 15 1c 20 40 00 a3 90 30 40 00 6a 01 e8 3f 04 00 00 59 6a 00 ff 15 20 @...........@...0@.j..?...Yj....
c6da0 20 40 00 68 1c 21 40 00 ff 15 24 20 40 00 83 3d 90 30 40 00 00 75 08 6a 01 e8 1b 04 00 00 59 68 .@.h.!@...$.@..=.0@..u.j......Yh
c6dc0 09 04 00 c0 ff 15 28 20 40 00 50 ff 15 2c 20 40 00 c9 c3 8b ff 55 8b ec 8b 45 08 8b 00 81 38 63 ......(.@.P..,.@.....U...E....8c
c6de0 73 6d e0 75 2a 83 78 10 03 75 24 8b 40 14 3d 20 05 93 19 74 15 3d 21 05 93 19 74 0e 3d 22 05 93 sm.u*.x..u$.@.=....t.=!...t.="..
c6e00 19 74 07 3d 00 40 99 01 75 05 e8 d0 03 00 00 33 c0 5d c2 04 00 68 48 14 40 00 ff 15 20 20 40 00 .t.=.@..u......3.]...hH.@.....@.
c6e20 33 c0 c3 ff 25 a4 20 40 00 6a 14 68 28 22 40 00 e8 62 02 00 00 ff 35 88 33 40 00 8b 35 8c 20 40 3...%..@.j.h("@..b....5.3@..5..@
c6e40 00 ff d6 59 89 45 e4 83 f8 ff 75 0c ff 75 08 ff 15 c4 20 40 00 59 eb 67 6a 08 e8 92 03 00 00 59 ...Y.E....u..u.....@.Y.gj......Y
c6e60 83 65 fc 00 ff 35 88 33 40 00 ff d6 89 45 e4 ff 35 84 33 40 00 ff d6 59 59 89 45 e0 8d 45 e0 50 .e...5.3@....E..5.3@...YY.E..E.P
c6e80 8d 45 e4 50 ff 75 08 8b 35 6c 20 40 00 ff d6 59 50 e8 55 03 00 00 89 45 dc ff 75 e4 ff d6 a3 88 .E.P.u..5l.@...YP.U....E..u.....
c6ea0 33 40 00 ff 75 e0 ff d6 83 c4 14 a3 84 33 40 00 c7 45 fc fe ff ff ff e8 09 00 00 00 8b 45 dc e8 3@..u........3@..E...........E..
c6ec0 18 02 00 00 c3 6a 08 e8 19 03 00 00 59 c3 8b ff 55 8b ec ff 75 08 e8 4e ff ff ff f7 d8 1b c0 f7 .....j......Y...U...u..N........
c6ee0 d8 59 48 5d c3 8b ff 56 b8 fc 21 40 00 be fc 21 40 00 57 8b f8 3b c6 73 0f 8b 07 85 c0 74 02 ff .YH]...V..!@...!@.W..;.s.....t..
c6f00 d0 83 c7 04 3b fe 72 f1 5f 5e c3 8b ff 56 b8 04 22 40 00 be 04 22 40 00 57 8b f8 3b c6 73 0f 8b ....;.r._^...V.."@..."@.W..;.s..
c6f20 07 85 c0 74 02 ff d0 83 c7 04 3b fe 72 f1 5f 5e c3 ff 25 c8 20 40 00 cc cc cc cc 8b ff 55 8b ec ...t......;.r._^..%..@.......U..
c6f40 8b 4d 08 b8 4d 5a 00 00 66 39 01 74 04 33 c0 5d c3 8b 41 3c 03 c1 81 38 50 45 00 00 75 ef 33 d2 .M..MZ..f9.t.3.]..A<...8PE..u.3.
c6f60 b9 0b 01 00 00 66 39 48 18 0f 94 c2 8b c2 5d c3 cc cc cc cc cc cc cc cc cc cc cc 8b ff 55 8b ec .....f9H......]..............U..
c6f80 8b 45 08 8b 48 3c 03 c8 0f b7 41 14 53 56 0f b7 71 06 33 d2 57 8d 44 08 18 85 f6 76 1b 8b 7d 0c .E..H<....A.SV..q.3.W.D....v..}.
c6fa0 8b 48 0c 3b f9 72 09 8b 58 08 03 d9 3b fb 72 0a 42 83 c0 28 3b d6 72 e8 33 c0 5f 5e 5b 5d c3 cc .H.;.r..X...;.r.B..(;.r.3._^[]..
c6fc0 cc cc cc cc cc cc cc cc cc cc cc 8b ff 55 8b ec 6a fe 68 48 22 40 00 68 65 17 40 00 64 a1 00 00 .............U..j.hH"@.he.@.d...
c6fe0 00 00 50 83 ec 08 53 56 57 a1 00 30 40 00 31 45 f8 33 c5 50 8d 45 f0 64 a3 00 00 00 00 89 65 e8 ..P...SVW..0@.1E.3.P.E.d......e.
c7000 c7 45 fc 00 00 00 00 68 00 00 40 00 e8 2a ff ff ff 83 c4 04 85 c0 74 55 8b 45 08 2d 00 00 40 00 .E.....h..@..*........tU.E.-..@.
c7020 50 68 00 00 40 00 e8 50 ff ff ff 83 c4 08 85 c0 74 3b 8b 40 24 c1 e8 1f f7 d0 83 e0 01 c7 45 fc Ph..@..P........t;.@$.........E.
c7040 fe ff ff ff 8b 4d f0 64 89 0d 00 00 00 00 59 5f 5e 5b 8b e5 5d c3 8b 45 ec 8b 08 8b 01 33 d2 3d .....M.d......Y_^[..]..E.....3.=
c7060 05 00 00 c0 0f 94 c2 8b c2 c3 8b 65 e8 c7 45 fc fe ff ff ff 33 c0 8b 4d f0 64 89 0d 00 00 00 00 ...........e..E.....3..M.d......
c7080 59 5f 5e 5b 8b e5 5d c3 cc ff 25 b8 20 40 00 ff 25 b4 20 40 00 cc cc 68 65 17 40 00 64 ff 35 00 Y_^[..]...%..@..%..@...he.@.d.5.
c70a0 00 00 00 8b 44 24 10 89 6c 24 10 8d 6c 24 10 2b e0 53 56 57 a1 00 30 40 00 31 45 fc 33 c5 50 89 ....D$..l$..l$.+.SVW..0@.1E.3.P.
c70c0 65 e8 ff 75 f8 8b 45 fc c7 45 fc fe ff ff ff 89 45 f8 8d 45 f0 64 a3 00 00 00 00 c3 8b 4d f0 64 e..u..E..E......E..E.d.......M.d
c70e0 89 0d 00 00 00 00 59 5f 5f 5e 5b 8b e5 5d 51 c3 8b ff 55 8b ec ff 75 14 ff 75 10 ff 75 0c ff 75 ......Y__^[..]Q...U...u..u..u..u
c7100 08 68 87 10 40 00 68 00 30 40 00 e8 e7 00 00 00 83 c4 18 5d c3 8b ff 56 68 00 00 03 00 68 00 00 .h..@.h.0@.........]...Vh....h..
c7120 01 00 33 f6 56 e8 d9 00 00 00 83 c4 0c 85 c0 74 0d 56 56 56 56 56 e8 c2 00 00 00 83 c4 14 5e c3 ..3.V..........t.VVVVV........^.
c7140 33 c0 c3 8b ff 55 8b ec 83 ec 10 a1 00 30 40 00 83 65 f8 00 83 65 fc 00 53 57 bf 4e e6 40 bb bb 3....U.......0@..e...e..SW.N.@..
c7160 00 00 ff ff 3b c7 74 0d 85 c3 74 09 f7 d0 a3 04 30 40 00 eb 60 56 8d 45 f8 50 ff 15 3c 20 40 00 ....;.t...t.....0@..`V.E.P..<.@.
c7180 8b 75 fc 33 75 f8 ff 15 0c 20 40 00 33 f0 ff 15 10 20 40 00 33 f0 ff 15 14 20 40 00 33 f0 8d 45 .u.3u.....@.3.....@.3.....@.3..E
c71a0 f0 50 ff 15 18 20 40 00 8b 45 f4 33 45 f0 33 f0 3b f7 75 07 be 4f e6 40 bb eb 0b 85 f3 75 07 8b .P....@..E.3E.3.;.u..O.@.....u..
c71c0 c6 c1 e0 10 0b f0 89 35 00 30 40 00 f7 d6 89 35 04 30 40 00 5e 5f 5b c9 c3 ff 25 74 20 40 00 ff .......5.0@....5.0@.^_[...%t.@..
c71e0 25 78 20 40 00 ff 25 7c 20 40 00 ff 25 80 20 40 00 ff 25 84 20 40 00 ff 25 90 20 40 00 ff 25 94 %x.@..%|.@..%..@..%..@..%..@..%.
c7200 20 40 00 ff 25 98 20 40 00 ff 25 d0 20 40 00 50 64 ff 35 00 00 00 00 8d 44 24 0c 2b 64 24 0c 53 .@..%..@..%..@.Pd.5.....D$.+d$.S
c7220 56 57 89 28 8b e8 a1 00 30 40 00 33 c5 50 89 45 f0 ff 75 fc c7 45 fc ff ff ff ff 8d 45 f4 64 a3 VW.(....0@.3.P.E..u..E......E.d.
c7240 00 00 00 00 c3 8b 4d f4 64 89 0d 00 00 00 00 59 5f 5f 5e 5b 8b e5 5d 51 c3 8b 4d f0 33 cd e8 af ......M.d......Y__^[..]Q..M.3...
c7260 f7 ff ff e9 dd ff ff ff 8d 4d d4 ff 25 54 20 40 00 8b 54 24 08 8d 42 0c 8b 4a cc 33 c8 e8 90 f7 .........M..%T.@..T$..B..J.3....
c7280 ff ff 8b 4a fc 33 c8 e8 86 f7 ff ff b8 6c 22 40 00 e9 73 ff ff ff 00 00 00 00 00 00 00 00 00 00 ...J.3.......l"@..s.............
c72a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c72c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c72e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7380 00 00 00 00 00 00 00 00 00 00 00 b8 23 00 00 ca 23 00 00 dc 23 00 00 88 29 00 00 72 29 00 00 62 ............#...#...#...)..r)..b
c73a0 29 00 00 48 29 00 00 34 29 00 00 16 29 00 00 fa 28 00 00 e6 28 00 00 d2 28 00 00 b4 28 00 00 ac )..H)..4)...)...(...(...(...(...
c73c0 28 00 00 96 28 00 00 9e 29 00 00 00 00 00 00 fa 23 00 00 e0 24 00 00 1a 25 00 00 ca 25 00 00 1a (...(...).......#...$...%...%...
c73e0 26 00 00 64 26 00 00 ae 26 00 00 a4 24 00 00 00 00 00 00 28 27 00 00 c4 27 00 00 d6 27 00 00 e8 &..d&...&...$......('...'...'...
c7400 27 00 00 fe 27 00 00 1e 28 00 00 28 28 00 00 36 28 00 00 a6 27 00 00 48 28 00 00 5a 28 00 00 74 '...'...(..((..6(...'..H(..Z(..t
c7420 28 00 00 86 28 00 00 1e 27 00 00 0e 27 00 00 00 27 00 00 96 27 00 00 82 27 00 00 6c 27 00 00 5e (...(...'...'...'...'...'..l'..^
c7440 27 00 00 52 27 00 00 46 27 00 00 3e 27 00 00 3e 28 00 00 30 27 00 00 b6 27 00 00 b8 29 00 00 00 '..R'..F'..>'..>(..0'...'...)...
c7460 00 00 00 00 00 00 00 96 10 40 00 00 00 00 00 00 00 00 00 57 12 40 00 8a 14 40 00 00 00 00 00 00 .........@.........W.@...@......
c7480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ac 4d 6f 4f 00 00 00 00 02 00 00 00 6c 00 00 00 80 ................MoO........l....
c74a0 21 00 00 80 0f 00 00 40 30 40 00 98 30 40 00 62 61 64 20 61 6c 6c 6f 63 61 74 69 6f 6e 00 00 00 !......@0@..0@.bad.allocation...
c74c0 00 00 00 48 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...H............................
c74e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7500 30 40 00 f0 21 40 00 02 00 00 00 52 53 44 53 d1 8c b3 10 b4 8f 01 4a a8 21 f6 cc eb 4c 5a 00 01 0@..!@.....RSDS.......J.!...LZ..
c7520 00 00 00 63 3a 5c 75 73 65 72 73 5c 73 65 6c 64 5c 64 6f 63 75 6d 65 6e 74 73 5c 76 69 73 75 61 ...c:\users\seld\documents\visua
c7540 6c 20 73 74 75 64 69 6f 20 32 30 31 30 5c 50 72 6f 6a 65 63 74 73 5c 68 69 64 64 65 6e 69 6e 70 l.studio.2010\Projects\hiddeninp
c7560 5c 52 65 6c 65 61 73 65 5c 68 69 64 64 65 6e 69 6e 70 2e 70 64 62 00 00 00 00 00 65 17 00 00 e6 \Release\hiddeninp.pdb.....e....
c7580 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fe ff ff ff 00 00 00 00 d0 ff ff ff 00 ................................
c75a0 00 00 00 fe ff ff ff 07 12 40 00 1b 12 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 cc ff ff ff 00 .........@...@..................
c75c0 00 00 00 fe ff ff ff 00 00 00 00 3a 15 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 d8 ff ff ff 00 ...........:.@..................
c75e0 00 00 00 fe ff ff ff cb 16 40 00 df 16 40 00 ff ff ff ff dd 18 40 00 22 05 93 19 01 00 00 00 64 .........@...@.......@.".......d
c7600 22 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 22 00 00 00 "@.........................."...
c7620 00 00 00 00 00 00 00 ec 23 00 00 00 20 00 00 24 23 00 00 00 00 00 00 00 00 00 00 f4 26 00 00 44 ........#......$#...........&..D
c7640 20 00 00 48 23 00 00 00 00 00 00 00 00 00 00 12 28 00 00 68 20 00 00 00 00 00 00 00 00 00 00 00 ...H#...........(..h............
c7660 00 00 00 00 00 00 00 00 00 00 00 b8 23 00 00 ca 23 00 00 dc 23 00 00 88 29 00 00 72 29 00 00 62 ............#...#...#...)..r)..b
c7680 29 00 00 48 29 00 00 34 29 00 00 16 29 00 00 fa 28 00 00 e6 28 00 00 d2 28 00 00 b4 28 00 00 ac )..H)..4)...)...(...(...(...(...
c76a0 28 00 00 96 28 00 00 9e 29 00 00 00 00 00 00 fa 23 00 00 e0 24 00 00 1a 25 00 00 ca 25 00 00 1a (...(...).......#...$...%...%...
c76c0 26 00 00 64 26 00 00 ae 26 00 00 a4 24 00 00 00 00 00 00 28 27 00 00 c4 27 00 00 d6 27 00 00 e8 &..d&...&...$......('...'...'...
c76e0 27 00 00 fe 27 00 00 1e 28 00 00 28 28 00 00 36 28 00 00 a6 27 00 00 48 28 00 00 5a 28 00 00 74 '...'...(..((..6(...'..H(..Z(..t
c7700 28 00 00 86 28 00 00 1e 27 00 00 0e 27 00 00 00 27 00 00 96 27 00 00 82 27 00 00 6c 27 00 00 5e (...(...'...'...'...'...'..l'..^
c7720 27 00 00 52 27 00 00 46 27 00 00 3e 27 00 00 3e 28 00 00 30 27 00 00 b6 27 00 00 b8 29 00 00 00 '..R'..F'..>'..>(..0'...'...)...
c7740 00 00 00 95 01 47 65 74 43 6f 6e 73 6f 6c 65 4d 6f 64 65 00 00 b7 03 53 65 74 43 6f 6e 73 6f 6c .....GetConsoleMode....SetConsol
c7760 65 4d 6f 64 65 00 00 3b 02 47 65 74 53 74 64 48 61 6e 64 6c 65 00 00 4b 45 52 4e 45 4c 33 32 2e eMode..;.GetStdHandle..KERNEL32.
c7780 64 6c 6c 00 00 16 00 3f 3f 24 3f 36 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 dll....??$?6DU?$char_traits@D@st
c77a0 64 40 40 56 3f 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 31 40 40 73 74 64 40 40 59 41 41 41 56 3f d@@V?$allocator@D@1@@std@@YAAAV?
c77c0 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 73 40 44 $basic_ostream@DU?$char_traits@D
c77e0 40 73 74 64 40 40 40 30 40 41 41 56 31 30 40 41 42 56 3f 24 62 61 73 69 63 5f 73 74 72 69 6e 67 @std@@@0@AAV10@ABV?$basic_string
c7800 40 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 6f 63 @DU?$char_traits@D@std@@V?$alloc
c7820 61 74 6f 72 40 44 40 32 40 40 30 40 40 5a 00 91 06 3f 63 6f 75 74 40 73 74 64 40 40 33 56 3f 24 ator@D@2@@0@@Z...?cout@std@@3V?$
c7840 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 73 40 44 40 basic_ostream@DU?$char_traits@D@
c7860 73 74 64 40 40 40 31 40 41 00 00 4a 06 3f 63 69 6e 40 73 74 64 40 40 33 56 3f 24 62 61 73 69 63 std@@@1@A..J.?cin@std@@3V?$basic
c7880 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 64 40 40 _istream@DU?$char_traits@D@std@@
c78a0 40 31 40 41 00 c2 00 3f 3f 24 67 65 74 6c 69 6e 65 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 @1@A...??$getline@DU?$char_trait
c78c0 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 40 73 74 64 40 40 s@D@std@@V?$allocator@D@2@@std@@
c78e0 59 41 41 41 56 3f 24 62 61 73 69 63 5f 69 73 74 72 65 61 6d 40 44 55 3f 24 63 68 61 72 5f 74 72 YAAAV?$basic_istream@DU?$char_tr
c7900 61 69 74 73 40 44 40 73 74 64 40 40 40 30 40 41 41 56 31 30 40 41 41 56 3f 24 62 61 73 69 63 5f aits@D@std@@@0@AAV10@AAV?$basic_
c7920 73 74 72 69 6e 67 40 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 string@DU?$char_traits@D@std@@V?
c7940 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 32 40 40 30 40 40 5a 00 1d 03 3f 3f 36 3f 24 62 61 73 69 $allocator@D@2@@0@@Z...??6?$basi
c7960 63 5f 6f 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 64 40 c_ostream@DU?$char_traits@D@std@
c7980 40 40 73 74 64 40 40 51 41 45 41 41 56 30 31 40 50 36 41 41 41 56 30 31 40 41 41 56 30 31 40 40 @@std@@QAEAAV01@P6AAAV01@AAV01@@
c79a0 5a 40 5a 00 00 5f 02 3f 3f 31 3f 24 62 61 73 69 63 5f 73 74 72 69 6e 67 40 44 55 3f 24 63 68 61 Z@Z.._.??1?$basic_string@DU?$cha
c79c0 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 32 r_traits@D@std@@V?$allocator@D@2
c79e0 40 40 73 74 64 40 40 51 41 45 40 58 5a 00 00 7b 01 3f 3f 30 3f 24 62 61 73 69 63 5f 73 74 72 69 @@std@@QAE@XZ..{.??0?$basic_stri
c7a00 6e 67 40 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 ng@DU?$char_traits@D@std@@V?$all
c7a20 6f 63 61 74 6f 72 40 44 40 32 40 40 73 74 64 40 40 51 41 45 40 58 5a 00 00 b3 07 3f 65 6e 64 6c ocator@D@2@@std@@QAE@XZ....?endl
c7a40 40 73 74 64 40 40 59 41 41 41 56 3f 24 62 61 73 69 63 5f 6f 73 74 72 65 61 6d 40 44 55 3f 24 63 @std@@YAAAV?$basic_ostream@DU?$c
c7a60 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 40 31 40 41 41 56 32 31 40 40 5a 00 00 4d har_traits@D@std@@@1@AAV21@@Z..M
c7a80 53 56 43 50 39 30 2e 64 6c 6c 00 15 01 5f 61 6d 73 67 5f 65 78 69 74 00 00 9f 00 5f 5f 67 65 74 SVCP90.dll..._amsg_exit....__get
c7aa0 6d 61 69 6e 61 72 67 73 00 2c 01 5f 63 65 78 69 74 00 00 7c 01 5f 65 78 69 74 00 66 00 5f 58 63 mainargs.,._cexit..|._exit.f._Xc
c7ac0 70 74 46 69 6c 74 65 72 00 cc 04 65 78 69 74 00 00 a0 00 5f 5f 69 6e 69 74 65 6e 76 00 04 02 5f ptFilter...exit....__initenv..._
c7ae0 69 6e 69 74 74 65 72 6d 00 05 02 5f 69 6e 69 74 74 65 72 6d 5f 65 00 3c 01 5f 63 6f 6e 66 69 67 initterm..._initterm_e.<._config
c7b00 74 68 72 65 61 64 6c 6f 63 61 6c 65 00 e3 00 5f 5f 73 65 74 75 73 65 72 6d 61 74 68 65 72 72 00 threadlocale...__setusermatherr.
c7b20 00 0b 01 5f 61 64 6a 75 73 74 5f 66 64 69 76 00 00 cb 00 5f 5f 70 5f 5f 63 6f 6d 6d 6f 64 65 00 ..._adjust_fdiv....__p__commode.
c7b40 00 cf 00 5f 5f 70 5f 5f 66 6d 6f 64 65 00 00 6a 01 5f 65 6e 63 6f 64 65 5f 70 6f 69 6e 74 65 72 ...__p__fmode..j._encode_pointer
c7b60 00 e0 00 5f 5f 73 65 74 5f 61 70 70 5f 74 79 70 65 00 00 4b 01 5f 63 72 74 5f 64 65 62 75 67 67 ...__set_app_type..K._crt_debugg
c7b80 65 72 5f 68 6f 6f 6b 00 00 43 00 3f 74 65 72 6d 69 6e 61 74 65 40 40 59 41 58 58 5a 00 4d 53 56 er_hook..C.?terminate@@YAXXZ.MSV
c7ba0 43 52 39 30 2e 64 6c 6c 00 e6 03 5f 75 6e 6c 6f 63 6b 00 96 00 5f 5f 64 6c 6c 6f 6e 65 78 69 74 CR90.dll..._unlock...__dllonexit
c7bc0 00 76 02 5f 6c 6f 63 6b 00 1c 03 5f 6f 6e 65 78 69 74 00 60 01 5f 64 65 63 6f 64 65 5f 70 6f 69 .v._lock..._onexit.`._decode_poi
c7be0 6e 74 65 72 00 73 01 5f 65 78 63 65 70 74 5f 68 61 6e 64 6c 65 72 34 5f 63 6f 6d 6d 6f 6e 00 0b nter.s._except_handler4_common..
c7c00 02 5f 69 6e 76 6f 6b 65 5f 77 61 74 73 6f 6e 00 00 3f 01 5f 63 6f 6e 74 72 6f 6c 66 70 5f 73 00 ._invoke_watson..?._controlfp_s.
c7c20 00 bd 02 49 6e 74 65 72 6c 6f 63 6b 65 64 45 78 63 68 61 6e 67 65 00 21 04 53 6c 65 65 70 00 ba ...InterlockedExchange.!.Sleep..
c7c40 02 49 6e 74 65 72 6c 6f 63 6b 65 64 43 6f 6d 70 61 72 65 45 78 63 68 61 6e 67 65 00 00 2d 04 54 .InterlockedCompareExchange..-.T
c7c60 65 72 6d 69 6e 61 74 65 50 72 6f 63 65 73 73 00 00 a9 01 47 65 74 43 75 72 72 65 6e 74 50 72 6f erminateProcess....GetCurrentPro
c7c80 63 65 73 73 00 3e 04 55 6e 68 61 6e 64 6c 65 64 45 78 63 65 70 74 69 6f 6e 46 69 6c 74 65 72 00 cess.>.UnhandledExceptionFilter.
c7ca0 00 15 04 53 65 74 55 6e 68 61 6e 64 6c 65 64 45 78 63 65 70 74 69 6f 6e 46 69 6c 74 65 72 00 d1 ...SetUnhandledExceptionFilter..
c7cc0 02 49 73 44 65 62 75 67 67 65 72 50 72 65 73 65 6e 74 00 54 03 51 75 65 72 79 50 65 72 66 6f 72 .IsDebuggerPresent.T.QueryPerfor
c7ce0 6d 61 6e 63 65 43 6f 75 6e 74 65 72 00 66 02 47 65 74 54 69 63 6b 43 6f 75 6e 74 00 00 ad 01 47 manceCounter.f.GetTickCount....G
c7d00 65 74 43 75 72 72 65 6e 74 54 68 72 65 61 64 49 64 00 00 aa 01 47 65 74 43 75 72 72 65 6e 74 50 etCurrentThreadId....GetCurrentP
c7d20 72 6f 63 65 73 73 49 64 00 4f 02 47 65 74 53 79 73 74 65 6d 54 69 6d 65 41 73 46 69 6c 65 54 69 rocessId.O.GetSystemTimeAsFileTi
c7d40 6d 65 00 73 00 5f 5f 43 78 78 46 72 61 6d 65 48 61 6e 64 6c 65 72 33 00 00 00 00 00 00 00 00 00 me.s.__CxxFrameHandler3.........
c7d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7d80 00 00 00 00 00 00 00 00 00 00 00 4e e6 40 bb b1 19 bf 44 ff ff ff ff ff ff ff ff fe ff ff ff 01 ...........N.@....D.............
c7da0 00 00 00 24 21 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...$!@..........................
c7dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 00 02 00 10 00 00 00 20 ................................
c7fa0 00 00 80 18 00 00 00 38 00 00 80 00 00 00 00 00 00 00 00 04 00 00 00 00 00 01 00 01 00 00 00 50 .......8.......................P
c7fc0 00 00 80 00 00 00 00 00 00 00 00 04 00 00 00 00 00 01 00 01 00 00 00 68 00 00 80 00 00 00 00 00 .......................h........
c7fe0 00 00 00 04 00 00 00 00 00 01 00 09 04 00 00 80 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 ................................
c8000 00 01 00 09 04 00 00 90 00 00 00 a0 40 00 00 28 03 00 00 e4 04 00 00 00 00 00 00 c8 43 00 00 56 ............@..(............C..V
c8020 02 00 00 e4 04 00 00 00 00 00 00 28 03 34 00 00 00 56 00 53 00 5f 00 56 00 45 00 52 00 53 00 49 ...........(.4...V.S._.V.E.R.S.I
c8040 00 4f 00 4e 00 5f 00 49 00 4e 00 46 00 4f 00 00 00 00 00 bd 04 ef fe 00 00 01 00 00 00 01 00 00 .O.N._.I.N.F.O..................
c8060 00 00 00 00 00 01 00 00 00 00 00 17 00 00 00 00 00 00 00 04 00 00 00 01 00 00 00 00 00 00 00 00 ................................
c8080 00 00 00 00 00 00 00 86 02 00 00 01 00 53 00 74 00 72 00 69 00 6e 00 67 00 46 00 69 00 6c 00 65 .............S.t.r.i.n.g.F.i.l.e
c80a0 00 49 00 6e 00 66 00 6f 00 00 00 62 02 00 00 01 00 30 00 34 00 30 00 39 00 30 00 34 00 62 00 30 .I.n.f.o...b.....0.4.0.9.0.4.b.0
c80c0 00 00 00 ca 00 51 00 01 00 46 00 69 00 6c 00 65 00 44 00 65 00 73 00 63 00 72 00 69 00 70 00 74 .....Q...F.i.l.e.D.e.s.c.r.i.p.t
c80e0 00 69 00 6f 00 6e 00 00 00 00 00 52 00 65 00 61 00 64 00 73 00 20 00 66 00 72 00 6f 00 6d 00 20 .i.o.n.....R.e.a.d.s...f.r.o.m..
c8100 00 73 00 74 00 64 00 69 00 6e 00 20 00 77 00 69 00 74 00 68 00 6f 00 75 00 74 00 20 00 6c 00 65 .s.t.d.i.n...w.i.t.h.o.u.t...l.e
c8120 00 61 00 6b 00 69 00 6e 00 67 00 20 00 69 00 6e 00 66 00 6f 00 20 00 74 00 6f 00 20 00 74 00 68 .a.k.i.n.g...i.n.f.o...t.o...t.h
c8140 00 65 00 20 00 74 00 65 00 72 00 6d 00 69 00 6e 00 61 00 6c 00 20 00 61 00 6e 00 64 00 20 00 6f .e...t.e.r.m.i.n.a.l...a.n.d...o
c8160 00 75 00 74 00 70 00 75 00 74 00 73 00 20 00 62 00 61 00 63 00 6b 00 20 00 74 00 6f 00 20 00 73 .u.t.p.u.t.s...b.a.c.k...t.o...s
c8180 00 74 00 64 00 6f 00 75 00 74 00 00 00 00 00 36 00 0b 00 01 00 46 00 69 00 6c 00 65 00 56 00 65 .t.d.o.u.t.....6.....F.i.l.e.V.e
c81a0 00 72 00 73 00 69 00 6f 00 6e 00 00 00 00 00 31 00 2c 00 20 00 30 00 2c 00 20 00 30 00 2c 00 20 .r.s.i.o.n.....1.,...0.,...0.,..
c81c0 00 30 00 00 00 00 00 38 00 0c 00 01 00 49 00 6e 00 74 00 65 00 72 00 6e 00 61 00 6c 00 4e 00 61 .0.....8.....I.n.t.e.r.n.a.l.N.a
c81e0 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 75 00 74 00 00 00 50 .m.e...h.i.d.d.e.n.i.n.p.u.t...P
c8200 00 16 00 01 00 4c 00 65 00 67 00 61 00 6c 00 43 00 6f 00 70 00 79 00 72 00 69 00 67 00 68 00 74 .....L.e.g.a.l.C.o.p.y.r.i.g.h.t
c8220 00 00 00 4a 00 6f 00 72 00 64 00 69 00 20 00 42 00 6f 00 67 00 67 00 69 00 61 00 6e 00 6f 00 20 ...J.o.r.d.i...B.o.g.g.i.a.n.o..
c8240 00 2d 00 20 00 32 00 30 00 31 00 32 00 00 00 48 00 10 00 01 00 4f 00 72 00 69 00 67 00 69 00 6e .-...2.0.1.2...H.....O.r.i.g.i.n
c8260 00 61 00 6c 00 46 00 69 00 6c 00 65 00 6e 00 61 00 6d 00 65 00 00 00 68 00 69 00 64 00 64 00 65 .a.l.F.i.l.e.n.a.m.e...h.i.d.d.e
c8280 00 6e 00 69 00 6e 00 70 00 75 00 74 00 2e 00 65 00 78 00 65 00 00 00 3a 00 0d 00 01 00 50 00 72 .n.i.n.p.u.t...e.x.e...:.....P.r
c82a0 00 6f 00 64 00 75 00 63 00 74 00 4e 00 61 00 6d 00 65 00 00 00 00 00 48 00 69 00 64 00 64 00 65 .o.d.u.c.t.N.a.m.e.....H.i.d.d.e
c82c0 00 6e 00 20 00 49 00 6e 00 70 00 75 00 74 00 00 00 00 00 3a 00 0b 00 01 00 50 00 72 00 6f 00 64 .n...I.n.p.u.t.....:.....P.r.o.d
c82e0 00 75 00 63 00 74 00 56 00 65 00 72 00 73 00 69 00 6f 00 6e 00 00 00 31 00 2c 00 20 00 30 00 2c .u.c.t.V.e.r.s.i.o.n...1.,...0.,
c8300 00 20 00 30 00 2c 00 20 00 30 00 00 00 00 00 44 00 00 00 01 00 56 00 61 00 72 00 46 00 69 00 6c ...0.,...0.....D.....V.a.r.F.i.l
c8320 00 65 00 49 00 6e 00 66 00 6f 00 00 00 00 00 24 00 04 00 00 00 54 00 72 00 61 00 6e 00 73 00 6c .e.I.n.f.o.....$.....T.r.a.n.s.l
c8340 00 61 00 74 00 69 00 6f 00 6e 00 00 00 00 00 09 04 b0 04 3c 61 73 73 65 6d 62 6c 79 20 78 6d 6c .a.t.i.o.n.........<assembly.xml
c8360 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 6f 6d 3a 61 73 ns="urn:schemas-microsoft-com:as
c8380 6d 2e 76 31 22 20 6d 61 6e 69 66 65 73 74 56 65 72 73 69 6f 6e 3d 22 31 2e 30 22 3e 0d 0a 20 20 m.v1".manifestVersion="1.0">....
c83a0 3c 74 72 75 73 74 49 6e 66 6f 20 78 6d 6c 6e 73 3d 22 75 72 6e 3a 73 63 68 65 6d 61 73 2d 6d 69 <trustInfo.xmlns="urn:schemas-mi
c83c0 63 72 6f 73 6f 66 74 2d 63 6f 6d 3a 61 73 6d 2e 76 33 22 3e 0d 0a 20 20 20 20 3c 73 65 63 75 72 crosoft-com:asm.v3">......<secur
c83e0 69 74 79 3e 0d 0a 20 20 20 20 20 20 3c 72 65 71 75 65 73 74 65 64 50 72 69 76 69 6c 65 67 65 73 ity>........<requestedPrivileges
c8400 3e 0d 0a 20 20 20 20 20 20 20 20 3c 72 65 71 75 65 73 74 65 64 45 78 65 63 75 74 69 6f 6e 4c 65 >..........<requestedExecutionLe
c8420 76 65 6c 20 6c 65 76 65 6c 3d 22 61 73 49 6e 76 6f 6b 65 72 22 20 75 69 41 63 63 65 73 73 3d 22 vel.level="asInvoker".uiAccess="
c8440 66 61 6c 73 65 22 3e 3c 2f 72 65 71 75 65 73 74 65 64 45 78 65 63 75 74 69 6f 6e 4c 65 76 65 6c false"></requestedExecutionLevel
c8460 3e 0d 0a 20 20 20 20 20 20 3c 2f 72 65 71 75 65 73 74 65 64 50 72 69 76 69 6c 65 67 65 73 3e 0d >........</requestedPrivileges>.
c8480 0a 20 20 20 20 3c 2f 73 65 63 75 72 69 74 79 3e 0d 0a 20 20 3c 2f 74 72 75 73 74 49 6e 66 6f 3e .....</security>....</trustInfo>
c84a0 0d 0a 20 20 3c 64 65 70 65 6e 64 65 6e 63 79 3e 0d 0a 20 20 20 20 3c 64 65 70 65 6e 64 65 6e 74 ....<dependency>......<dependent
c84c0 41 73 73 65 6d 62 6c 79 3e 0d 0a 20 20 20 20 20 20 3c 61 73 73 65 6d 62 6c 79 49 64 65 6e 74 69 Assembly>........<assemblyIdenti
c84e0 74 79 20 74 79 70 65 3d 22 77 69 6e 33 32 22 20 6e 61 6d 65 3d 22 4d 69 63 72 6f 73 6f 66 74 2e ty.type="win32".name="Microsoft.
c8500 56 43 39 30 2e 43 52 54 22 20 76 65 72 73 69 6f 6e 3d 22 39 2e 30 2e 32 31 30 32 32 2e 38 22 20 VC90.CRT".version="9.0.21022.8".
c8520 70 72 6f 63 65 73 73 6f 72 41 72 63 68 69 74 65 63 74 75 72 65 3d 22 78 38 36 22 20 70 75 62 6c processorArchitecture="x86".publ
c8540 69 63 4b 65 79 54 6f 6b 65 6e 3d 22 31 66 63 38 62 33 62 39 61 31 65 31 38 65 33 62 22 3e 3c 2f icKeyToken="1fc8b3b9a1e18e3b"></
c8560 61 73 73 65 6d 62 6c 79 49 64 65 6e 74 69 74 79 3e 0d 0a 20 20 20 20 3c 2f 64 65 70 65 6e 64 65 assemblyIdentity>......</depende
c8580 6e 74 41 73 73 65 6d 62 6c 79 3e 0d 0a 20 20 3c 2f 64 65 70 65 6e 64 65 6e 63 79 3e 0d 0a 3c 2f ntAssembly>....</dependency>..</
c85a0 61 73 73 65 6d 62 6c 79 3e 50 41 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 assembly>PAPADDINGXXPADDINGPADDI
c85c0 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c85e0 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c8600 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c8620 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c8640 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c8660 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c8680 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c86a0 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c86c0 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c86e0 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c8700 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c8720 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c8740 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c8760 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 4e 47 50 41 44 44 49 NGXXPADDINGPADDINGXXPADDINGPADDI
c8780 4e 47 58 58 50 41 44 44 49 4e 47 00 10 00 00 40 01 00 00 03 30 10 30 21 30 2f 30 38 30 46 30 4c NGXXPADDING....@....0.0!0/080F0L
c87a0 30 54 30 5e 30 64 30 6e 30 7b 30 89 30 97 30 a1 30 a8 30 ae 30 b3 30 b8 30 bd 30 c2 30 c8 30 d0 0T0^0d0n0{0.0.0.0.0.0.0.0.0.0.0.
c87c0 30 e4 30 ff 30 08 31 23 31 2d 31 40 31 4a 31 4f 31 54 31 76 31 7b 31 84 31 89 31 96 31 a7 31 ad 0.0.0.1#1-1@1J1O1T1v1{1.1.1.1.1.
c87e0 31 b4 31 c8 31 cd 31 d3 31 db 31 e1 31 e7 31 f4 31 fa 31 03 32 22 32 2a 32 33 32 39 32 41 32 4d 1.1.1.1.1.1.1.1.1.1.2"2*23292A2M
c8800 32 5f 32 6a 32 70 32 b9 32 bf 32 c7 32 ce 32 d3 32 d9 32 df 32 e7 32 ed 32 f4 32 fb 32 0b 33 13 2_2j2p2.2.2.2.2.2.2.2.2.2.2.2.3.
c8820 33 19 33 25 33 30 33 4e 33 54 33 5a 33 60 33 66 33 6c 33 73 33 7a 33 81 33 88 33 8f 33 96 33 9d 3.3%303N3T3Z3`3f3l3s3z3.3.3.3.3.
c8840 33 a5 33 ad 33 b5 33 c1 33 ca 33 cf 33 d5 33 df 33 e8 33 f3 33 ff 33 04 34 14 34 19 34 1f 34 25 3.3.3.3.3.3.3.3.3.3.3.3.4.4.4.4%
c8860 34 3b 34 42 34 8b 34 91 34 9a 34 a1 34 ac 34 b2 34 c6 34 db 34 e6 34 fe 34 14 35 21 35 5e 35 63 4;4B4.4.4.4.4.4.4.4.4.4.4.5!5^5c
c8880 35 84 35 89 35 a8 35 48 36 4d 36 5f 36 7d 36 91 36 97 36 00 37 06 37 0d 37 2a 37 77 37 7c 37 c1 5.5.5.5H6M6_6}6.6.6.7.7.7*7w7|7.
c88a0 37 e4 37 f1 37 fd 37 05 38 0d 38 19 38 3d 38 45 38 50 38 56 38 5c 38 62 38 68 38 6e 38 74 38 7a 7.7.7.7.8.8.8=8E8P8V8\8b8h8n8t8z
c88c0 38 80 38 9c 38 e2 38 02 39 00 00 00 20 00 00 24 00 00 00 dc 30 e8 30 ec 30 1c 31 20 31 74 31 78 8.8.8.8.9......$....0.0.0.1.1t1x
c88e0 31 1c 32 20 32 40 32 5c 32 60 32 68 32 74 32 00 30 00 00 0c 00 00 00 18 30 00 00 00 00 00 00 00 1.2.2@2\2`2h2t2.0.......0.......
c8900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c8920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c8940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c8960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c8980 00 00 00 00 00 00 00 00 00 00 00 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 ...........<?php...........names
c89a0 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 3b 0a pace.Symfony\Component\Console;.
c89c0 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 44 .use.Symfony\Component\Console\D
c89e0 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 20 53 79 escriptor\TextDescriptor;.use.Sy
c8a00 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
c8a20 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 5c 43 6f or\XmlDescriptor;.use.Symfony\Co
c8a40 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 45 78 63 65 70 74 mponent\Console\Exception\Except
c8a60 69 6f 6e 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 ionInterface;.use.Symfony\Compon
c8a80 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 44 65 62 75 67 46 6f 72 6d 61 74 74 65 ent\Console\Helper\DebugFormatte
c8aa0 72 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 rHelper;.use.Symfony\Component\C
c8ac0 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 50 72 6f 63 65 73 73 48 65 6c 70 65 72 3b 0a 75 73 65 onsole\Helper\ProcessHelper;.use
c8ae0 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 65 .Symfony\Component\Console\Helpe
c8b00 72 5c 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 6f r\QuestionHelper;.use.Symfony\Co
c8b20 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 72 mponent\Console\Input\InputInter
c8b40 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 73 face;.use.Symfony\Component\Cons
c8b60 6f 6c 65 5c 49 6e 70 75 74 5c 41 72 67 76 49 6e 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 ole\Input\ArgvInput;.use.Symfony
c8b80 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 41 72 72 61 79 49 6e \Component\Console\Input\ArrayIn
c8ba0 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 6f put;.use.Symfony\Component\Conso
c8bc0 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 53 79 le\Input\InputDefinition;.use.Sy
c8be0 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
c8c00 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 6e 74 putOption;.use.Symfony\Component
c8c20 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
c8c40 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
c8c60 74 5c 49 6e 70 75 74 41 77 61 72 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f t\InputAwareInterface;.use.Symfo
c8c80 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 42 75 66 66 ny\Component\Console\Output\Buff
c8ca0 65 72 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 eredOutput;.use.Symfony\Componen
c8cc0 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
c8ce0 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\
c8d00 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 6e Output\ConsoleOutput;.use.Symfon
c8d20 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
c8d40 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
c8d60 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
c8d80 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\
c8da0 43 6f 6d 6d 61 6e 64 5c 48 65 6c 70 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 Command\HelpCommand;.use.Symfony
c8dc0 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 4c 69 73 74 43 \Component\Console\Command\ListC
c8de0 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 43 6f ommand;.use.Symfony\Component\Co
c8e00 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 6d 66 nsole\Helper\HelperSet;.use.Symf
c8e20 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 46 6f 72 ony\Component\Console\Helper\For
c8e40 6d 61 74 74 65 72 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 matterHelper;.use.Symfony\Compon
c8e60 65 6e 74 5c 43 6f 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 3b ent\Console\Helper\DialogHelper;
c8e80 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 48 .use.Symfony\Component\Console\H
c8ea0 65 6c 70 65 72 5c 50 72 6f 67 72 65 73 73 48 65 6c 70 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e elper\ProgressHelper;.use.Symfon
c8ec0 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 54 61 62 6c 65 y\Component\Console\Helper\Table
c8ee0 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 6f Helper;.use.Symfony\Component\Co
c8f00 6e 73 6f 6c 65 5c 45 76 65 6e 74 5c 43 6f 6e 73 6f 6c 65 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 3b nsole\Event\ConsoleCommandEvent;
c8f20 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 45 .use.Symfony\Component\Console\E
c8f40 76 65 6e 74 5c 43 6f 6e 73 6f 6c 65 45 78 63 65 70 74 69 6f 6e 45 76 65 6e 74 3b 0a 75 73 65 20 vent\ConsoleExceptionEvent;.use.
c8f60 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 74 5c Symfony\Component\Console\Event\
c8f80 43 6f 6e 73 6f 6c 65 54 65 72 6d 69 6e 61 74 65 45 76 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f ConsoleTerminateEvent;.use.Symfo
c8fa0 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 43 ny\Component\Console\Exception\C
c8fc0 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d ommandNotFoundException;.use.Sym
c8fe0 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
c9000 5c 4c 6f 67 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 \LogicException;.use.Symfony\Com
c9020 70 6f 6e 65 6e 74 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 ponent\EventDispatcher\EventDisp
c9040 61 74 63 68 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 0a atcherInterface;................
c9060 0a 63 6c 61 73 73 20 41 70 70 6c 69 63 61 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f .class.Application.{.private.$co
c9080 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 77 61 6e 74 48 mmands.=.array();.private.$wantH
c90a0 65 6c 70 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 72 75 6e 6e 69 6e 67 43 6f elps.=.false;.private.$runningCo
c90c0 6d 6d 61 6e 64 3b 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 76 mmand;.private.$name;.private.$v
c90e0 65 72 73 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 63 61 74 63 68 45 78 63 65 70 74 69 6f 6e 73 ersion;.private.$catchExceptions
c9100 20 3d 20 74 72 75 65 3b 0a 70 72 69 76 61 74 65 20 24 61 75 74 6f 45 78 69 74 20 3d 20 74 72 75 .=.true;.private.$autoExit.=.tru
c9120 65 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 e;.private.$definition;.private.
c9140 24 68 65 6c 70 65 72 53 65 74 3b 0a 70 72 69 76 61 74 65 20 24 64 69 73 70 61 74 63 68 65 72 3b $helperSet;.private.$dispatcher;
c9160 0a 70 72 69 76 61 74 65 20 24 74 65 72 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 3b 0a 70 72 .private.$terminalDimensions;.pr
c9180 69 76 61 74 65 20 24 64 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 ivate.$defaultCommand;........pu
c91a0 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 20 blic.function.__construct($name.
c91c0 3d 20 27 55 4e 4b 4e 4f 57 4e 27 2c 20 24 76 65 72 73 69 6f 6e 20 3d 20 27 55 4e 4b 4e 4f 57 4e =.'UNKNOWN',.$version.=.'UNKNOWN
c91e0 27 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d ').{.$this->name.=.$name;.$this-
c9200 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 64 65 66 61 >version.=.$version;.$this->defa
c9220 75 6c 74 43 6f 6d 6d 61 6e 64 20 3d 20 27 6c 69 73 74 27 3b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 ultCommand.=.'list';.$this->help
c9240 65 72 53 65 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 48 65 6c 70 65 72 53 erSet.=.$this->getDefaultHelperS
c9260 65 74 28 29 3b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d et();.$this->definition.=.$this-
c9280 3e 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 0a 66 >getDefaultInputDefinition();..f
c92a0 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 oreach.($this->getDefaultCommand
c92c0 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 61 64 64 28 24 63 s().as.$command).{.$this->add($c
c92e0 6f 6d 6d 61 6e 64 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 ommand);.}.}..public.function.se
c9300 74 44 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 49 6e 74 65 72 tDispatcher(EventDispatcherInter
c9320 66 61 63 65 20 24 64 69 73 70 61 74 63 68 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 70 61 face.$dispatcher).{.$this->dispa
c9340 74 63 68 65 72 20 3d 20 24 64 69 73 70 61 74 63 68 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a tcher.=.$dispatcher;.}..........
c9360 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 49 6e 74 65 72 ..public.function.run(InputInter
c9380 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 6e 74 65 72 66 face.$input.=.null,.OutputInterf
c93a0 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 75 6c 6c 20 3d ace.$output.=.null).{.if.(null.=
c93c0 3d 3d 20 24 69 6e 70 75 74 29 20 7b 0a 24 69 6e 70 75 74 20 3d 20 6e 65 77 20 41 72 67 76 49 6e ==.$input).{.$input.=.new.ArgvIn
c93e0 70 75 74 28 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6f 75 74 70 75 74 29 20 put();.}..if.(null.===.$output).
c9400 7b 0a 24 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 {.$output.=.new.ConsoleOutput();
c9420 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 75 72 65 49 4f 28 24 69 6e 70 75 74 2c 20 24 .}..$this->configureIO($input,.$
c9440 6f 75 74 70 75 74 29 3b 0a 0a 74 72 79 20 7b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 24 74 68 69 output);..try.{.$exitCode.=.$thi
c9460 73 2d 3e 64 6f 52 75 6e 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 20 63 61 74 s->doRun($input,.$output);.}.cat
c9480 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 21 24 74 68 69 73 2d ch.(\Exception.$e).{.if.(!$this-
c94a0 3e 63 61 74 63 68 45 78 63 65 70 74 69 6f 6e 73 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a >catchExceptions).{.throw.$e;.}.
c94c0 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 6c 65 4f .if.($output.instanceof.ConsoleO
c94e0 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 45 utputInterface).{.$this->renderE
c9500 78 63 65 70 74 69 6f 6e 28 24 65 2c 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 45 72 72 6f 72 4f 75 xception($e,.$output->getErrorOu
c9520 74 70 75 74 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 45 tput());.}.else.{.$this->renderE
c9540 78 63 65 70 74 69 6f 6e 28 24 65 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 24 65 78 69 74 43 xception($e,.$output);.}..$exitC
c9560 6f 64 65 20 3d 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 3b 0a 69 66 20 28 69 73 5f 6e 75 6d 65 ode.=.$e->getCode();.if.(is_nume
c9580 72 69 63 28 24 65 78 69 74 43 6f 64 65 29 29 20 7b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 28 69 ric($exitCode)).{.$exitCode.=.(i
c95a0 6e 74 29 20 24 65 78 69 74 43 6f 64 65 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 65 78 69 74 43 6f nt).$exitCode;.if.(0.===.$exitCo
c95c0 64 65 29 20 7b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 31 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a de).{.$exitCode.=.1;.}.}.else.{.
c95e0 24 65 78 69 74 43 6f 64 65 20 3d 20 31 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 $exitCode.=.1;.}.}..if.($this->a
c9600 75 74 6f 45 78 69 74 29 20 7b 0a 69 66 20 28 24 65 78 69 74 43 6f 64 65 20 3e 20 32 35 35 29 20 utoExit).{.if.($exitCode.>.255).
c9620 7b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 32 35 35 3b 0a 7d 0a 0a 65 78 69 74 28 24 65 78 69 74 {.$exitCode.=.255;.}..exit($exit
c9640 43 6f 64 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 78 69 74 43 6f 64 65 3b 0a 7d 0a 0a 0a Code);.}..return.$exitCode;.}...
c9660 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 52 75 6e 28 49 6e 70 .......public.function.doRun(Inp
c9680 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 66 utInterface.$input,.OutputInterf
c96a0 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 ace.$output).{.if.(true.===.$inp
c96c0 75 74 2d 3e 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 ut->hasParameterOption(array('--
c96e0 76 65 72 73 69 6f 6e 27 2c 20 27 2d 56 27 29 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 version',.'-V'))).{.$output->wri
c9700 74 65 6c 6e 28 24 74 68 69 73 2d 3e 67 65 74 4c 6f 6e 67 56 65 72 73 69 6f 6e 28 29 29 3b 0a 0a teln($this->getLongVersion());..
c9720 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 24 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 return.0;.}..$name.=.$this->getC
c9740 6f 6d 6d 61 6e 64 4e 61 6d 65 28 24 69 6e 70 75 74 29 3b 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d ommandName($input);.if.(true.===
c9760 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 6e 28 61 72 72 61 .$input->hasParameterOption(arra
c9780 79 28 27 2d 2d 68 65 6c 70 27 2c 20 27 2d 68 27 29 29 29 20 7b 0a 69 66 20 28 21 24 6e 61 6d 65 y('--help',.'-h'))).{.if.(!$name
c97a0 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 27 68 65 6c 70 27 3b 0a 24 69 6e 70 75 74 20 3d 20 6e 65 77 ).{.$name.=.'help';.$input.=.new
c97c0 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 27 .ArrayInput(array('command'.=>.'
c97e0 68 65 6c 70 27 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 77 61 6e 74 48 65 6c help'));.}.else.{.$this->wantHel
c9800 70 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 6e 61 6d 65 29 20 7b 0a 24 6e ps.=.true;.}.}..if.(!$name).{.$n
c9820 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 3b 0a 24 69 6e ame.=.$this->defaultCommand;.$in
c9840 70 75 74 20 3d 20 6e 65 77 20 41 72 72 61 79 49 6e 70 75 74 28 61 72 72 61 79 28 27 63 6f 6d 6d put.=.new.ArrayInput(array('comm
c9860 61 6e 64 27 20 3d 3e 20 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 29 29 3b and'.=>.$this->defaultCommand));
c9880 0a 7d 0a 0a 0a 20 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 28 24 6e 61 .}....$command.=.$this->find($na
c98a0 6d 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 20 3d 20 24 63 me);..$this->runningCommand.=.$c
c98c0 6f 6d 6d 61 6e 64 3b 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 ommand;.$exitCode.=.$this->doRun
c98e0 43 6f 6d 6d 61 6e 64 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 Command($command,.$input,.$outpu
c9900 74 29 3b 0a 24 74 68 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 20 3d 20 6e 75 6c 6c t);.$this->runningCommand.=.null
c9920 3b 0a 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 70 75 62 ;..return.$exitCode;.}.......pub
c9940 6c 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 lic.function.setHelperSet(Helper
c9960 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 68 65 6c 70 65 72 53 Set.$helperSet).{.$this->helperS
c9980 65 74 20 3d 20 24 68 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 et.=.$helperSet;.}.......public.
c99a0 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e function.getHelperSet().{.return
c99c0 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 .$this->helperSet;.}.......publi
c99e0 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 49 6e 70 75 74 44 65 c.function.setDefinition(InputDe
c9a00 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 74 68 69 73 2d 3e 64 finition.$definition).{.$this->d
c9a20 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a efinition.=.$definition;.}......
c9a40 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 .public.function.getDefinition()
c9a60 0a 7b 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 3b 0a 7d 0a 0a .{.return.$this->definition;.}..
c9a80 0a 0a 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 28 29 0a 7b .....public.function.getHelp().{
c9aa0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 6e 67 56 65 72 73 69 6f 6e 28 29 3b .return.$this->getLongVersion();
c9ac0 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 61 74 63 .}.......public.function.setCatc
c9ae0 68 45 78 63 65 70 74 69 6f 6e 73 28 24 62 6f 6f 6c 65 61 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 hExceptions($boolean).{.$this->c
c9b00 61 74 63 68 45 78 63 65 70 74 69 6f 6e 73 20 3d 20 28 62 6f 6f 6c 29 20 24 62 6f 6f 6c 65 61 6e atchExceptions.=.(bool).$boolean
c9b20 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 41 75 74 ;.}.......public.function.setAut
c9b40 6f 45 78 69 74 28 24 62 6f 6f 6c 65 61 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 45 78 69 oExit($boolean).{.$this->autoExi
c9b60 74 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 0a 70 75 62 t.=.(bool).$boolean;.}.......pub
c9b80 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 20 lic.function.getName().{.return.
c9ba0 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 20 66 75 6e 63 $this->name;.}.......public.func
c9bc0 74 69 6f 6e 20 73 65 74 4e 61 6d 65 28 24 6e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 61 6d tion.setName($name).{.$this->nam
c9be0 65 20 3d 20 24 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 e.=.$name;.}.......public.functi
c9c00 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 68 69 73 2d 3e on.getVersion().{.return.$this->
c9c20 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 6e version;.}.......public.function
c9c40 20 73 65 74 56 65 72 73 69 6f 6e 28 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 .setVersion($version).{.$this->v
c9c60 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ersion.=.$version;.}.......publi
c9c80 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 0a 69 66 c.function.getLongVersion().{.if
c9ca0 20 28 27 55 4e 4b 4e 4f 57 4e 27 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 .('UNKNOWN'.!==.$this->getName()
c9cc0 20 26 26 20 27 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 .&&.'UNKNOWN'.!==.$this->getVers
c9ce0 69 6f 6e 28 29 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 ion()).{.return.sprintf('<info>%
c9d00 73 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 3c 2f 63 6f s</info>.version.<comment>%s</co
c9d20 6d 6d 65 6e 74 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 mment>',.$this->getName(),.$this
c9d40 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 3c 69 6e 66 ->getVersion());.}..return.'<inf
c9d60 6f 3e 43 6f 6e 73 6f 6c 65 20 54 6f 6f 6c 3c 2f 69 6e 66 6f 3e 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a o>Console.Tool</info>';.}.......
c9d80 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 67 69 73 74 65 72 28 24 6e 61 6d 65 ..public.function.register($name
c9da0 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 64 64 28 6e 65 77 20 43 6f 6d 6d 61 6e ).{.return.$this->add(new.Comman
c9dc0 64 28 24 6e 61 6d 65 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 d($name));.}.......public.functi
c9de0 6f 6e 20 61 64 64 43 6f 6d 6d 61 6e 64 73 28 61 72 72 61 79 20 24 63 6f 6d 6d 61 6e 64 73 29 0a on.addCommands(array.$commands).
c9e00 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 63 6f 6d 6d 61 6e 64 {.foreach.($commands.as.$command
c9e20 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 7d 0a 7d 0a 0a 0a ).{.$this->add($command);.}.}...
c9e40 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 43 6f 6d 6d ........public.function.add(Comm
c9e60 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 73 65 74 41 70 70 and.$command).{.$command->setApp
c9e80 6c 69 63 61 74 69 6f 6e 28 24 74 68 69 73 29 3b 0a 0a 69 66 20 28 21 24 63 6f 6d 6d 61 6e 64 2d lication($this);..if.(!$command-
c9ea0 3e 69 73 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 73 65 74 41 70 70 >isEnabled()).{.$command->setApp
c9ec0 6c 69 63 61 74 69 6f 6e 28 6e 75 6c 6c 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 lication(null);..return;.}..if.(
c9ee0 6e 75 6c 6c 20 3d 3d 3d 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e null.===.$command->getDefinition
c9f00 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 28 73 ()).{.throw.new.LogicException(s
c9f20 70 72 69 6e 74 66 28 27 43 6f 6d 6d 61 6e 64 20 63 6c 61 73 73 20 22 25 73 22 20 69 73 20 6e 6f printf('Command.class."%s".is.no
c9f40 74 20 63 6f 72 72 65 63 74 6c 79 20 69 6e 69 74 69 61 6c 69 7a 65 64 2e 20 59 6f 75 20 70 72 6f t.correctly.initialized..You.pro
c9f60 62 61 62 6c 79 20 66 6f 72 67 6f 74 20 74 6f 20 63 61 6c 6c 20 74 68 65 20 70 61 72 65 6e 74 20 bably.forgot.to.call.the.parent.
c9f80 63 6f 6e 73 74 72 75 63 74 6f 72 2e 27 2c 20 67 65 74 5f 63 6c 61 73 73 28 24 63 6f 6d 6d 61 6e constructor.',.get_class($comman
c9fa0 64 29 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 63 6f 6d 6d 61 6e d)));.}..$this->commands[$comman
c9fc0 64 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 66 6f 72 65 61 d->getName()].=.$command;..forea
c9fe0 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 29 20 61 73 20 24 61 ch.($command->getAliases().as.$a
ca000 6c 69 61 73 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 61 6c 69 61 73 5d 20 lias).{.$this->commands[$alias].
ca020 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 3b 0a =.$command;.}..return.$command;.
ca040 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 74 28 }...........public.function.get(
ca060 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 $name).{.if.(!isset($this->comma
ca080 6e 64 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 nds[$name])).{.throw.new.Command
ca0a0 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 54 68 65 20 63 NotFoundException(sprintf('The.c
ca0c0 6f 6d 6d 61 6e 64 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 6e ommand."%s".does.not.exist.',.$n
ca0e0 61 6d 65 29 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d ame));.}..$command.=.$this->comm
ca100 61 6e 64 73 5b 24 6e 61 6d 65 5d 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 61 6e 74 48 65 6c ands[$name];..if.($this->wantHel
ca120 70 73 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 6e 74 48 65 6c 70 73 20 3d 20 66 61 6c 73 65 3b 0a ps).{.$this->wantHelps.=.false;.
ca140 0a 24 68 65 6c 70 43 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 28 27 68 65 6c 70 .$helpCommand.=.$this->get('help
ca160 27 29 3b 0a 24 68 65 6c 70 43 6f 6d 6d 61 6e 64 2d 3e 73 65 74 43 6f 6d 6d 61 6e 64 28 24 63 6f ');.$helpCommand->setCommand($co
ca180 6d 6d 61 6e 64 29 3b 0a 0a 72 65 74 75 72 6e 20 24 68 65 6c 70 43 6f 6d 6d 61 6e 64 3b 0a 7d 0a mmand);..return.$helpCommand;.}.
ca1a0 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 70 75 62 6c .return.$command;.}.........publ
ca1c0 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 ic.function.has($name).{.return.
ca1e0 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 3b 0a 7d isset($this->commands[$name]);.}
ca200 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 65 .........public.function.getName
ca220 73 70 61 63 65 73 28 29 0a 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 20 3d 20 61 72 72 61 79 28 29 spaces().{.$namespaces.=.array()
ca240 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 63 ;.foreach.($this->commands.as.$c
ca260 6f 6d 6d 61 6e 64 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 ommand).{.$namespaces.=.array_me
ca280 72 67 65 28 24 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 rge($namespaces,.$this->extractA
ca2a0 6c 6c 4e 61 6d 65 73 70 61 63 65 73 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 llNamespaces($command->getName()
ca2c0 29 29 3b 0a 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 ));..foreach.($command->getAlias
ca2e0 65 73 28 29 20 61 73 20 24 61 6c 69 61 73 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 20 3d 20 es().as.$alias).{.$namespaces.=.
ca300 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6e 61 6d 65 73 70 61 63 65 73 2c 20 24 74 68 69 73 2d 3e array_merge($namespaces,.$this->
ca320 65 78 74 72 61 63 74 41 6c 6c 4e 61 6d 65 73 70 61 63 65 73 28 24 61 6c 69 61 73 29 29 3b 0a 7d extractAllNamespaces($alias));.}
ca340 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 61 72 72 61 79 5f 75 6e .}..return.array_values(array_un
ca360 69 71 75 65 28 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 6e 61 6d 65 73 70 61 63 65 73 29 29 29 ique(array_filter($namespaces)))
ca380 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 69 ;.}...........public.function.fi
ca3a0 6e 64 4e 61 6d 65 73 70 61 63 65 28 24 6e 61 6d 65 73 70 61 63 65 29 0a 7b 0a 24 61 6c 6c 4e 61 ndNamespace($namespace).{.$allNa
ca3c0 6d 65 73 70 61 63 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 mespaces.=.$this->getNamespaces(
ca3e0 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 6c 6c 62 61 63 6b );.$expr.=.preg_replace_callback
ca400 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 6d 61 74 63 68 65 ('{([^:]+|)}',.function.($matche
ca420 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 74 63 68 65 73 5b s).{.return.preg_quote($matches[
ca440 31 5d 29 2e 27 5b 5e 3a 5d 2a 27 3b 20 7d 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a 24 6e 61 1]).'[^:]*';.},.$namespace);.$na
ca460 6d 65 73 70 61 63 65 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 mespaces.=.preg_grep('{^'.$expr.
ca480 27 7d 27 2c 20 24 61 6c 6c 4e 61 6d 65 73 70 61 63 65 73 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 '}',.$allNamespaces);..if.(empty
ca4a0 28 24 6e 61 6d 65 73 70 61 63 65 73 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 70 72 69 ($namespaces)).{.$message.=.spri
ca4c0 6e 74 66 28 27 54 68 65 72 65 20 61 72 65 20 6e 6f 20 63 6f 6d 6d 61 6e 64 73 20 64 65 66 69 6e ntf('There.are.no.commands.defin
ca4e0 65 64 20 69 6e 20 74 68 65 20 22 25 73 22 20 6e 61 6d 65 73 70 61 63 65 2e 27 2c 20 24 6e 61 6d ed.in.the."%s".namespace.',.$nam
ca500 65 73 70 61 63 65 29 3b 0a 0a 69 66 20 28 24 61 6c 74 65 72 6e 61 74 69 76 65 73 20 3d 20 24 74 espace);..if.($alternatives.=.$t
ca520 68 69 73 2d 3e 66 69 6e 64 41 6c 74 65 72 6e 61 74 69 76 65 73 28 24 6e 61 6d 65 73 70 61 63 65 his->findAlternatives($namespace
ca540 2c 20 24 61 6c 6c 4e 61 6d 65 73 70 61 63 65 73 29 29 20 7b 0a 69 66 20 28 31 20 3d 3d 20 63 6f ,.$allNamespaces)).{.if.(1.==.co
ca560 75 6e 74 28 24 61 6c 74 65 72 6e 61 74 69 76 65 73 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e unt($alternatives)).{.$message..
ca580 3d 20 22 5c 6e 5c 6e 44 69 64 20 79 6f 75 20 6d 65 61 6e 20 74 68 69 73 3f 5c 6e 20 20 20 20 22 =."\n\nDid.you.mean.this?\n...."
ca5a0 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 5c 6e 44 69 64 20 ;.}.else.{.$message..=."\n\nDid.
ca5c0 79 6f 75 20 6d 65 61 6e 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 3f 5c 6e 20 20 20 20 22 3b 0a 7d you.mean.one.of.these?\n....";.}
ca5e0 0a 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 20 20 20 20 22 2c 20 ..$message..=.implode("\n....",.
ca600 24 61 6c 74 65 72 6e 61 74 69 76 65 73 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 43 6f 6d $alternatives);.}..throw.new.Com
ca620 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 2c 20 mandNotFoundException($message,.
ca640 24 61 6c 74 65 72 6e 61 74 69 76 65 73 29 3b 0a 7d 0a 0a 24 65 78 61 63 74 20 3d 20 69 6e 5f 61 $alternatives);.}..$exact.=.in_a
ca660 72 72 61 79 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 24 6e 61 6d 65 73 70 61 63 65 73 2c 20 74 72 rray($namespace,.$namespaces,.tr
ca680 75 65 29 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 6e 61 6d 65 73 70 61 63 65 73 29 20 3e 20 31 20 ue);.if.(count($namespaces).>.1.
ca6a0 26 26 20 21 24 65 78 61 63 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 4e &&.!$exact).{.throw.new.CommandN
ca6c0 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 54 68 65 20 6e 61 otFoundException(sprintf('The.na
ca6e0 6d 65 73 70 61 63 65 20 22 25 73 22 20 69 73 20 61 6d 62 69 67 75 6f 75 73 20 28 25 73 29 2e 27 mespace."%s".is.ambiguous.(%s).'
ca700 2c 20 24 6e 61 6d 65 73 70 61 63 65 2c 20 24 74 68 69 73 2d 3e 67 65 74 41 62 62 72 65 76 69 61 ,.$namespace,.$this->getAbbrevia
ca720 74 69 6f 6e 53 75 67 67 65 73 74 69 6f 6e 73 28 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 6e 61 tionSuggestions(array_values($na
ca740 6d 65 73 70 61 63 65 73 29 29 29 2c 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 6e 61 6d 65 73 mespaces))),.array_values($names
ca760 70 61 63 65 73 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 78 61 63 74 20 3f 20 24 6e 61 6d paces));.}..return.$exact.?.$nam
ca780 65 73 70 61 63 65 20 3a 20 72 65 73 65 74 28 24 6e 61 6d 65 73 70 61 63 65 73 29 3b 0a 7d 0a 0a espace.:.reset($namespaces);.}..
ca7a0 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 66 69 6e 64 ............public.function.find
ca7c0 28 24 6e 61 6d 65 29 0a 7b 0a 24 61 6c 6c 43 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 5f 6b ($name).{.$allCommands.=.array_k
ca7e0 65 79 73 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 29 3b 0a 24 65 78 70 72 20 3d 20 70 72 eys($this->commands);.$expr.=.pr
ca800 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('{([^:]+|)}'
ca820 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
ca840 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]).'[^:]*';.
ca860 7d 2c 20 24 6e 61 6d 65 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 20 3d 20 70 72 65 67 5f 67 72 65 70 },.$name);.$commands.=.preg_grep
ca880 28 27 7b 5e 27 2e 24 65 78 70 72 2e 27 7d 27 2c 20 24 61 6c 6c 43 6f 6d 6d 61 6e 64 73 29 3b 0a ('{^'.$expr.'}',.$allCommands);.
ca8a0 0a 69 66 20 28 65 6d 70 74 79 28 24 63 6f 6d 6d 61 6e 64 73 29 20 7c 7c 20 63 6f 75 6e 74 28 70 .if.(empty($commands).||.count(p
ca8c0 72 65 67 5f 67 72 65 70 28 27 7b 5e 27 2e 24 65 78 70 72 2e 27 24 7d 27 2c 20 24 63 6f 6d 6d 61 reg_grep('{^'.$expr.'$}',.$comma
ca8e0 6e 64 73 29 29 20 3c 20 31 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 nds)).<.1).{.if.(false.!==.$pos.
ca900 3d 20 73 74 72 72 70 6f 73 28 24 6e 61 6d 65 2c 20 27 3a 27 29 29 20 7b 0a 0a 20 24 74 68 69 73 =.strrpos($name,.':')).{...$this
ca920 2d 3e 66 69 6e 64 4e 61 6d 65 73 70 61 63 65 28 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 30 2c ->findNamespace(substr($name,.0,
ca940 20 24 70 6f 73 29 29 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 27 .$pos));.}..$message.=.sprintf('
ca960 43 6f 6d 6d 61 6e 64 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 Command."%s".is.not.defined.',.$
ca980 6e 61 6d 65 29 3b 0a 0a 69 66 20 28 24 61 6c 74 65 72 6e 61 74 69 76 65 73 20 3d 20 24 74 68 69 name);..if.($alternatives.=.$thi
ca9a0 73 2d 3e 66 69 6e 64 41 6c 74 65 72 6e 61 74 69 76 65 73 28 24 6e 61 6d 65 2c 20 24 61 6c 6c 43 s->findAlternatives($name,.$allC
ca9c0 6f 6d 6d 61 6e 64 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 ommands)).{.if.(1.==.count($alte
ca9e0 72 6e 61 74 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 rnatives)).{.$message..=."\n\nDi
caa00 64 20 79 6f 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 d.you.mean.this?\n....";.}.else.
caa20 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 75 20 6d 65 61 6e 20 {.$message..=."\n\nDid.you.mean.
caa40 6f 6e 65 20 6f 66 20 74 68 65 73 65 3f 5c 6e 20 20 20 20 22 3b 0a 7d 0a 24 6d 65 73 73 61 67 65 one.of.these?\n....";.}.$message
caa60 20 2e 3d 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 ..=.implode("\n....",.$alternati
caa80 76 65 73 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 ves);.}..throw.new.CommandNotFou
caaa0 6e 64 45 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 ndException($message,.$alternati
caac0 76 65 73 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 63 6f 6d 6d 61 6e 64 73 29 20 ves);.}....if.(count($commands).
caae0 3e 20 31 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 4c 69 73 74 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d >.1).{.$commandList.=.$this->com
cab00 6d 61 6e 64 73 3b 0a 24 63 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 mands;.$commands.=.array_filter(
cab20 24 63 6f 6d 6d 61 6e 64 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6e 61 6d 65 4f 72 41 6c 69 61 $commands,.function.($nameOrAlia
cab40 73 29 20 75 73 65 20 28 24 63 6f 6d 6d 61 6e 64 4c 69 73 74 2c 20 24 63 6f 6d 6d 61 6e 64 73 29 s).use.($commandList,.$commands)
cab60 20 7b 0a 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 20 3d 20 24 63 6f 6d 6d 61 6e 64 4c 69 73 74 5b 24 .{.$commandName.=.$commandList[$
cab80 6e 61 6d 65 4f 72 41 6c 69 61 73 5d 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 0a 72 65 74 75 72 6e nameOrAlias]->getName();..return
caba0 20 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 20 3d 3d 3d 20 24 6e 61 6d 65 4f 72 41 6c 69 61 73 20 7c .$commandName.===.$nameOrAlias.|
cabc0 7c 20 21 69 6e 5f 61 72 72 61 79 28 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 2c 20 24 63 6f 6d 6d 61 |.!in_array($commandName,.$comma
cabe0 6e 64 73 29 3b 0a 7d 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 nds);.});.}..$exact.=.in_array($
cac00 6e 61 6d 65 2c 20 24 63 6f 6d 6d 61 6e 64 73 2c 20 74 72 75 65 29 3b 0a 69 66 20 28 63 6f 75 6e name,.$commands,.true);.if.(coun
cac20 74 28 24 63 6f 6d 6d 61 6e 64 73 29 20 3e 20 31 20 26 26 20 21 24 65 78 61 63 74 29 20 7b 0a 24 t($commands).>.1.&&.!$exact).{.$
cac40 73 75 67 67 65 73 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 62 62 72 65 76 69 61 suggestions.=.$this->getAbbrevia
cac60 74 69 6f 6e 53 75 67 67 65 73 74 69 6f 6e 73 28 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 63 6f tionSuggestions(array_values($co
cac80 6d 6d 61 6e 64 73 29 29 3b 0a 0a 74 68 72 6f 77 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 4e 6f 74 46 mmands));..throw.new.CommandNotF
caca0 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 43 6f 6d 6d 61 6e 64 20 22 oundException(sprintf('Command."
cacc0 25 73 22 20 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 2c 20 %s".is.ambiguous.(%s).',.$name,.
cace0 24 73 75 67 67 65 73 74 69 6f 6e 73 29 2c 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 63 6f 6d $suggestions),.array_values($com
cad00 6d 61 6e 64 73 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 28 24 65 mands));.}..return.$this->get($e
cad20 78 61 63 74 20 3f 20 24 6e 61 6d 65 20 3a 20 72 65 73 65 74 28 24 63 6f 6d 6d 61 6e 64 73 29 29 xact.?.$name.:.reset($commands))
cad40 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 61 6c ;.}...........public.function.al
cad60 6c 28 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 l($namespace.=.null).{.if.(null.
cad80 3d 3d 3d 20 24 6e 61 6d 65 73 70 61 63 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e ===.$namespace).{.return.$this->
cada0 63 6f 6d 6d 61 6e 64 73 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 commands;.}..$commands.=.array()
cadc0 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 6e ;.foreach.($this->commands.as.$n
cade0 61 6d 65 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 69 66 20 28 24 6e 61 6d 65 73 70 61 63 ame.=>.$command).{.if.($namespac
cae00 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 4e 61 6d 65 73 70 61 63 65 28 24 6e e.===.$this->extractNamespace($n
cae20 61 6d 65 2c 20 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 27 3a ame,.substr_count($namespace,.':
cae40 27 29 20 2b 20 31 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 63 ').+.1)).{.$commands[$name].=.$c
cae60 6f 6d 6d 61 6e 64 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 73 3b 0a 7d ommand;.}.}..return.$commands;.}
cae80 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.
caea0 67 65 74 41 62 62 72 65 76 69 61 74 69 6f 6e 73 28 24 6e 61 6d 65 73 29 0a 7b 0a 24 61 62 62 72 getAbbreviations($names).{.$abbr
caec0 65 76 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6e 61 6d 65 73 20 61 evs.=.array();.foreach.($names.a
caee0 73 20 24 6e 61 6d 65 29 20 7b 0a 66 6f 72 20 28 24 6c 65 6e 20 3d 20 73 74 72 6c 65 6e 28 24 6e s.$name).{.for.($len.=.strlen($n
caf00 61 6d 65 29 3b 20 24 6c 65 6e 20 3e 20 30 3b 20 2d 2d 24 6c 65 6e 29 20 7b 0a 24 61 62 62 72 65 ame);.$len.>.0;.--$len).{.$abbre
caf20 76 20 3d 20 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 30 2c 20 24 6c 65 6e 29 3b 0a 24 61 62 62 v.=.substr($name,.0,.$len);.$abb
caf40 72 65 76 73 5b 24 61 62 62 72 65 76 5d 5b 5d 20 3d 20 24 6e 61 6d 65 3b 0a 7d 0a 7d 0a 0a 72 65 revs[$abbrev][].=.$name;.}.}..re
caf60 74 75 72 6e 20 24 61 62 62 72 65 76 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c turn.$abbrevs;.}............publ
caf80 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 54 65 78 74 28 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 ic.function.asText($namespace.=.
cafa0 6e 75 6c 6c 2c 20 24 72 61 77 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 null,.$raw.=.false).{.@trigger_e
cafc0 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.
cafe0 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 33 20 is.deprecated.since.version.2.3.
cb000 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_
cb020 55 53 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 USER_DEPRECATED);..$descriptor.=
cb040 20 6e 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 .new.TextDescriptor();.$output.=
cb060 20 6e 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 .new.BufferedOutput(BufferedOutp
cb080 75 74 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 20 21 24 72 61 77 29 3b 0a 24 64 ut::VERBOSITY_NORMAL,.!$raw);.$d
cb0a0 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 2c 20 24 74 68 escriptor->describe($output,.$th
cb0c0 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 61 6d 65 73 70 is,.array('namespace'.=>.$namesp
cb0e0 61 63 65 2c 20 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 ace,.'raw_output'.=>.true));..re
cb100 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 0a 0a turn.$output->fetch();.}........
cb120 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 6e 61 6d 65 73 ....public.function.asXml($names
cb140 70 61 63 65 20 3d 20 6e 75 6c 6c 2c 20 24 61 73 44 6f 6d 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 40 pace.=.null,.$asDom.=.false).{.@
cb160 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 4f 44 5f 5f 2e trigger_error('The.'.__METHOD__.
cb180 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 65 20 76 65 72 '.method.is.deprecated.since.ver
cb1a0 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 76 65 64 20 69 6e 20 sion.2.3.and.will.be.removed.in.
cb1c0 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 24 64 65 73 3.0.',.E_USER_DEPRECATED);..$des
cb1e0 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 6f 72 28 29 3b 0a 0a criptor.=.new.XmlDescriptor();..
cb200 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 63 72 69 70 74 6f 72 if.($asDom).{.return.$descriptor
cb220 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 74 68 69 73 2c 20 ->getApplicationDocument($this,.
cb240 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 42 75 $namespace);.}..$output.=.new.Bu
cb260 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 72 2d 3e 64 65 73 fferedOutput();.$descriptor->des
cb280 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 6d cribe($output,.$this,.array('nam
cb2a0 65 73 70 61 63 65 27 20 3d 3e 20 24 6e 61 6d 65 73 70 61 63 65 29 29 3b 0a 0a 72 65 74 75 72 6e espace'.=>.$namespace));..return
cb2c0 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 0a 0a 70 75 62 6c .$output->fetch();.}........publ
cb2e0 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 45 78 63 65 70 74 69 6f 6e 28 24 65 2c 20 ic.function.renderException($e,.
cb300 24 6f 75 74 70 75 74 29 0a 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 27 2c 20 $output).{.$output->writeln('',.
cb320 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 54 OutputInterface::VERBOSITY_QUIET
cb340 29 3b 0a 0a 64 6f 20 7b 0a 24 74 69 74 6c 65 20 3d 20 73 70 72 69 6e 74 66 28 27 20 20 5b 25 73 );..do.{.$title.=.sprintf('..[%s
cb360 5d 20 20 27 2c 20 67 65 74 5f 63 6c 61 73 73 28 24 65 29 29 3b 0a 0a 24 6c 65 6e 20 3d 20 24 74 ]..',.get_class($e));..$len.=.$t
cb380 68 69 73 2d 3e 73 74 72 69 6e 67 57 69 64 74 68 28 24 74 69 74 6c 65 29 3b 0a 0a 24 77 69 64 74 his->stringWidth($title);..$widt
cb3a0 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 54 65 72 6d 69 6e 61 6c 57 69 64 74 68 28 29 20 3f 20 h.=.$this->getTerminalWidth().?.
cb3c0 24 74 68 69 73 2d 3e 67 65 74 54 65 72 6d 69 6e 61 6c 57 69 64 74 68 28 29 20 2d 20 31 20 3a 20 $this->getTerminalWidth().-.1.:.
cb3e0 50 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 27 48 48 56 4d PHP_INT_MAX;...if.(defined('HHVM
cb400 5f 56 45 52 53 49 4f 4e 27 29 20 26 26 20 24 77 69 64 74 68 20 3e 20 31 20 3c 3c 20 33 31 29 20 _VERSION').&&.$width.>.1.<<.31).
cb420 7b 0a 24 77 69 64 74 68 20 3d 20 31 20 3c 3c 20 33 31 3b 0a 7d 0a 24 66 6f 72 6d 61 74 74 65 72 {.$width.=.1.<<.31;.}.$formatter
cb440 20 3d 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 3b 0a 24 6c 69 6e .=.$output->getFormatter();.$lin
cb460 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 70 72 65 67 5f 73 70 6c 69 es.=.array();.foreach.(preg_spli
cb480 74 28 27 2f 5c 72 3f 5c 6e 2f 27 2c 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 20 61 t('/\r?\n/',.$e->getMessage()).a
cb4a0 73 20 24 6c 69 6e 65 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 73 70 6c 69 74 s.$line).{.foreach.($this->split
cb4c0 53 74 72 69 6e 67 42 79 57 69 64 74 68 28 24 6c 69 6e 65 2c 20 24 77 69 64 74 68 20 2d 20 34 29 StringByWidth($line,.$width.-.4)
cb4e0 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 0a 20 24 6c 69 6e 65 4c 65 6e 67 74 68 20 3d 20 24 74 68 .as.$line).{...$lineLength.=.$th
cb500 69 73 2d 3e 73 74 72 69 6e 67 57 69 64 74 68 28 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 1b is->stringWidth(preg_replace('/.
cb520 5c 5b 5b 5e 6d 5d 2a 6d 2f 27 2c 20 27 27 2c 20 24 66 6f 72 6d 61 74 74 65 72 2d 3e 66 6f 72 6d \[[^m]*m/',.'',.$formatter->form
cb540 61 74 28 24 6c 69 6e 65 29 29 29 20 2b 20 34 3b 0a 24 6c 69 6e 65 73 5b 5d 20 3d 20 61 72 72 61 at($line))).+.4;.$lines[].=.arra
cb560 79 28 24 6c 69 6e 65 2c 20 24 6c 69 6e 65 4c 65 6e 67 74 68 29 3b 0a 0a 24 6c 65 6e 20 3d 20 6d y($line,.$lineLength);..$len.=.m
cb580 61 78 28 24 6c 69 6e 65 4c 65 6e 67 74 68 2c 20 24 6c 65 6e 29 3b 0a 7d 0a 7d 0a 0a 24 6d 65 73 ax($lineLength,.$len);.}.}..$mes
cb5a0 73 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 sages.=.array();.$messages[].=.$
cb5c0 65 6d 70 74 79 4c 69 6e 65 20 3d 20 24 66 6f 72 6d 61 74 74 65 72 2d 3e 66 6f 72 6d 61 74 28 73 emptyLine.=.$formatter->format(s
cb5e0 70 72 69 6e 74 66 28 27 3c 65 72 72 6f 72 3e 25 73 3c 2f 65 72 72 6f 72 3e 27 2c 20 73 74 72 5f printf('<error>%s</error>',.str_
cb600 72 65 70 65 61 74 28 27 20 27 2c 20 24 6c 65 6e 29 29 29 3b 0a 24 6d 65 73 73 61 67 65 73 5b 5d repeat('.',.$len)));.$messages[]
cb620 20 3d 20 24 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 .=.$formatter->format(sprintf('<
cb640 65 72 72 6f 72 3e 25 73 25 73 3c 2f 65 72 72 6f 72 3e 27 2c 20 24 74 69 74 6c 65 2c 20 73 74 72 error>%s%s</error>',.$title,.str
cb660 5f 72 65 70 65 61 74 28 27 20 27 2c 20 6d 61 78 28 30 2c 20 24 6c 65 6e 20 2d 20 24 74 68 69 73 _repeat('.',.max(0,.$len.-.$this
cb680 2d 3e 73 74 72 69 6e 67 57 69 64 74 68 28 24 74 69 74 6c 65 29 29 29 29 29 3b 0a 66 6f 72 65 61 ->stringWidth($title)))));.forea
cb6a0 63 68 20 28 24 6c 69 6e 65 73 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 ch.($lines.as.$line).{.$messages
cb6c0 5b 5d 20 3d 20 24 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 [].=.$formatter->format(sprintf(
cb6e0 27 3c 65 72 72 6f 72 3e 20 20 25 73 20 20 25 73 3c 2f 65 72 72 6f 72 3e 27 2c 20 24 6c 69 6e 65 '<error>..%s..%s</error>',.$line
cb700 5b 30 5d 2c 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 6c 65 6e 20 2d 20 24 6c 69 6e [0],.str_repeat('.',.$len.-.$lin
cb720 65 5b 31 5d 29 29 29 3b 0a 7d 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 65 6d 70 74 79 4c e[1])));.}.$messages[].=.$emptyL
cb740 69 6e 65 3b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 27 27 3b 0a 0a 24 6f 75 74 70 75 74 2d ine;.$messages[].=.'';..$output-
cb760 3e 77 72 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 >writeln($messages,.OutputInterf
cb780 61 63 65 3a 3a 4f 55 54 50 55 54 5f 52 41 57 20 7c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 ace::OUTPUT_RAW.|.OutputInterfac
cb7a0 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 29 3b 0a 0a 69 66 20 28 4f 75 74 70 75 74 e::VERBOSITY_QUIET);..if.(Output
cb7c0 49 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 20 3c 3d 20 Interface::VERBOSITY_VERBOSE.<=.
cb7e0 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
cb800 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 63 6f 6d 6d 65 6e 74 3e 45 78 63 65 70 74 69 6f 6e 20 ut->writeln('<comment>Exception.
cb820 74 72 61 63 65 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 trace:</comment>',.OutputInterfa
cb840 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 29 3b 0a 0a 0a 20 24 74 72 61 63 65 20 ce::VERBOSITY_QUIET);....$trace.
cb860 3d 20 24 65 2d 3e 67 65 74 54 72 61 63 65 28 29 3b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 =.$e->getTrace();.array_unshift(
cb880 24 74 72 61 63 65 2c 20 61 72 72 61 79 28 0a 27 66 75 6e 63 74 69 6f 6e 27 20 3d 3e 20 27 27 2c $trace,.array(.'function'.=>.'',
cb8a0 0a 27 66 69 6c 65 27 20 3d 3e 20 24 65 2d 3e 67 65 74 46 69 6c 65 28 29 20 21 3d 3d 20 6e 75 6c .'file'.=>.$e->getFile().!==.nul
cb8c0 6c 20 3f 20 24 65 2d 3e 67 65 74 46 69 6c 65 28 29 20 3a 20 27 6e 2f 61 27 2c 0a 27 6c 69 6e 65 l.?.$e->getFile().:.'n/a',.'line
cb8e0 27 20 3d 3e 20 24 65 2d 3e 67 65 74 4c 69 6e 65 28 29 20 21 3d 3d 20 6e 75 6c 6c 20 3f 20 24 65 '.=>.$e->getLine().!==.null.?.$e
cb900 2d 3e 67 65 74 4c 69 6e 65 28 29 20 3a 20 27 6e 2f 61 27 2c 0a 27 61 72 67 73 27 20 3d 3e 20 61 ->getLine().:.'n/a',.'args'.=>.a
cb920 72 72 61 79 28 29 2c 0a 29 29 3b 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 2c 20 24 63 6f 75 6e 74 rray(),.));..for.($i.=.0,.$count
cb940 20 3d 20 63 6f 75 6e 74 28 24 74 72 61 63 65 29 3b 20 24 69 20 3c 20 24 63 6f 75 6e 74 3b 20 2b .=.count($trace);.$i.<.$count;.+
cb960 2b 24 69 29 20 7b 0a 24 63 6c 61 73 73 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d +$i).{.$class.=.isset($trace[$i]
cb980 5b 27 63 6c 61 73 73 27 5d 29 20 3f 20 24 74 72 61 63 65 5b 24 69 5d 5b 27 63 6c 61 73 73 27 5d ['class']).?.$trace[$i]['class']
cb9a0 20 3a 20 27 27 3b 0a 24 74 79 70 65 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d 5b .:.'';.$type.=.isset($trace[$i][
cb9c0 27 74 79 70 65 27 5d 29 20 3f 20 24 74 72 61 63 65 5b 24 69 5d 5b 27 74 79 70 65 27 5d 20 3a 20 'type']).?.$trace[$i]['type'].:.
cb9e0 27 27 3b 0a 24 66 75 6e 63 74 69 6f 6e 20 3d 20 24 74 72 61 63 65 5b 24 69 5d 5b 27 66 75 6e 63 '';.$function.=.$trace[$i]['func
cba00 74 69 6f 6e 27 5d 3b 0a 24 66 69 6c 65 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d tion'];.$file.=.isset($trace[$i]
cba20 5b 27 66 69 6c 65 27 5d 29 20 3f 20 24 74 72 61 63 65 5b 24 69 5d 5b 27 66 69 6c 65 27 5d 20 3a ['file']).?.$trace[$i]['file'].:
cba40 20 27 6e 2f 61 27 3b 0a 24 6c 69 6e 65 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d .'n/a';.$line.=.isset($trace[$i]
cba60 5b 27 6c 69 6e 65 27 5d 29 20 3f 20 24 74 72 61 63 65 5b 24 69 5d 5b 27 6c 69 6e 65 27 5d 20 3a ['line']).?.$trace[$i]['line'].:
cba80 20 27 6e 2f 61 27 3b 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 .'n/a';..$output->writeln(sprint
cbaa0 66 28 27 20 25 73 25 73 25 73 28 29 20 61 74 20 3c 69 6e 66 6f 3e 25 73 3a 25 73 3c 2f 69 6e 66 f('.%s%s%s().at.<info>%s:%s</inf
cbac0 6f 3e 27 2c 20 24 63 6c 61 73 73 2c 20 24 74 79 70 65 2c 20 24 66 75 6e 63 74 69 6f 6e 2c 20 24 o>',.$class,.$type,.$function,.$
cbae0 66 69 6c 65 2c 20 24 6c 69 6e 65 29 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 file,.$line),.OutputInterface::V
cbb00 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 ERBOSITY_QUIET);.}..$output->wri
cbb20 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 3a 56 45 52 42 4f 53 teln('',.OutputInterface::VERBOS
cbb40 49 54 59 5f 51 55 49 45 54 29 3b 0a 7d 0a 7d 20 77 68 69 6c 65 20 28 24 65 20 3d 20 24 65 2d 3e ITY_QUIET);.}.}.while.($e.=.$e->
cbb60 67 65 74 50 72 65 76 69 6f 75 73 28 29 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 getPrevious());..if.(null.!==.$t
cbb80 68 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e his->runningCommand).{.$output->
cbba0 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e writeln(sprintf('<info>%s</info>
cbbc0 27 2c 20 73 70 72 69 6e 74 66 28 24 74 68 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 ',.sprintf($this->runningCommand
cbbe0 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 29 2c 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 ->getSynopsis(),.$this->getName(
cbc00 29 29 29 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 5f ))),.OutputInterface::VERBOSITY_
cbc20 51 55 49 45 54 29 3b 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 QUIET);.$output->writeln('',.Out
cbc40 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 54 29 3b 0a putInterface::VERBOSITY_QUIET);.
cbc60 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 69 6f 6e 20 67 65 74 }.}.......protected.function.get
cbc80 54 65 72 6d 69 6e 61 6c 57 69 64 74 68 28 29 0a 7b 0a 24 64 69 6d 65 6e 73 69 6f 6e 73 20 3d 20 TerminalWidth().{.$dimensions.=.
cbca0 24 74 68 69 73 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 $this->getTerminalDimensions();.
cbcc0 0a 72 65 74 75 72 6e 20 24 64 69 6d 65 6e 73 69 6f 6e 73 5b 30 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a .return.$dimensions[0];.}.......
cbce0 70 72 6f 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 48 65 protected.function.getTerminalHe
cbd00 69 67 68 74 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 ight().{.$dimensions.=.$this->ge
cbd20 74 54 65 72 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 tTerminalDimensions();..return.$
cbd40 64 69 6d 65 6e 73 69 6f 6e 73 5b 31 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 dimensions[1];.}.......public.fu
cbd60 6e 63 74 69 6f 6e 20 67 65 74 54 65 72 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 28 29 0a 7b nction.getTerminalDimensions().{
cbd80 0a 69 66 20 28 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 29 20 .if.($this->terminalDimensions).
cbda0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f {.return.$this->terminalDimensio
cbdc0 6e 73 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 53 45 ns;.}..if.('\\'.===.DIRECTORY_SE
cbde0 50 41 52 41 54 4f 52 29 20 7b 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 28 PARATOR).{...if.(preg_match('/^(
cbe00 5c 64 2b 29 78 5c 64 2b 20 5c 28 5c 64 2b 78 28 5c 64 2b 29 5c 29 24 2f 27 2c 20 74 72 69 6d 28 \d+)x\d+.\(\d+x(\d+)\)$/',.trim(
cbe20 67 65 74 65 6e 76 28 27 41 4e 53 49 43 4f 4e 27 29 29 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b getenv('ANSICON')),.$matches)).{
cbe40 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 73 5b 31 5d 2c .return.array((int).$matches[1],
cbe60 20 28 69 6e 74 29 20 24 6d 61 74 63 68 65 73 5b 32 5d 29 3b 0a 7d 0a 0a 20 69 66 20 28 70 72 65 .(int).$matches[2]);.}...if.(pre
cbe80 67 5f 6d 61 74 63 68 28 27 2f 5e 28 5c 64 2b 29 78 28 5c 64 2b 29 24 2f 27 2c 20 24 74 68 69 73 g_match('/^(\d+)x(\d+)$/',.$this
cbea0 2d 3e 67 65 74 43 6f 6e 73 6f 6c 65 4d 6f 64 65 28 29 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b ->getConsoleMode(),.$matches)).{
cbec0 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 73 5b 31 5d 2c .return.array((int).$matches[1],
cbee0 20 28 69 6e 74 29 20 24 6d 61 74 63 68 65 73 5b 32 5d 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 73 .(int).$matches[2]);.}.}..if.($s
cbf00 74 74 79 53 74 72 69 6e 67 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 74 74 79 43 6f 6c 75 6d 6e ttyString.=.$this->getSttyColumn
cbf20 73 28 29 29 20 7b 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 72 6f 77 73 2e 28 s()).{...if.(preg_match('/rows.(
cbf40 5c 64 2b 29 3b 2e 63 6f 6c 75 6d 6e 73 2e 28 5c 64 2b 29 3b 2f 69 27 2c 20 24 73 74 74 79 53 74 \d+);.columns.(\d+);/i',.$sttySt
cbf60 72 69 6e 67 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 28 ring,.$matches)).{.return.array(
cbf80 28 69 6e 74 29 20 24 6d 61 74 63 68 65 73 5b 32 5d 2c 20 28 69 6e 74 29 20 24 6d 61 74 63 68 65 (int).$matches[2],.(int).$matche
cbfa0 73 5b 31 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 3b 2e 28 5c s[1]);.}...if.(preg_match('/;.(\
cbfc0 64 2b 29 2e 72 6f 77 73 3b 2e 28 5c 64 2b 29 2e 63 6f 6c 75 6d 6e 73 2f 69 27 2c 20 24 73 74 74 d+).rows;.(\d+).columns/i',.$stt
cbfe0 79 53 74 72 69 6e 67 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 yString,.$matches)).{.return.arr
cc000 61 79 28 28 69 6e 74 29 20 24 6d 61 74 63 68 65 73 5b 32 5d 2c 20 28 69 6e 74 29 20 24 6d 61 74 ay((int).$matches[2],.(int).$mat
cc020 63 68 65 73 5b 31 5d 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 6e 75 6c 6c ches[1]);.}.}..return.array(null
cc040 2c 20 6e 75 6c 6c 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 ,.null);.}............public.fun
cc060 63 74 69 6f 6e 20 73 65 74 54 65 72 6d 69 6e 61 6c 44 69 6d 65 6e 73 69 6f 6e 73 28 24 77 69 64 ction.setTerminalDimensions($wid
cc080 74 68 2c 20 24 68 65 69 67 68 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 44 69 th,.$height).{.$this->terminalDi
cc0a0 6d 65 6e 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 24 77 69 64 74 68 2c 20 24 68 65 69 67 68 74 mensions.=.array($width,.$height
cc0c0 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 70 72 6f 74 65 );..return.$this;.}........prote
cc0e0 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 49 4f 28 49 6e 70 75 74 49 cted.function.configureIO(InputI
cc100 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
cc120 20 24 6f 75 74 70 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 .$output).{.if.(true.===.$input-
cc140 3e 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 61 6e 73 >hasParameterOption(array('--ans
cc160 69 27 29 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 74 72 i'))).{.$output->setDecorated(tr
cc180 75 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e ue);.}.elseif.(true.===.$input->
cc1a0 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 6e 6f 2d 61 hasParameterOption(array('--no-a
cc1c0 6e 73 69 27 29 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 nsi'))).{.$output->setDecorated(
cc1e0 66 61 6c 73 65 29 3b 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e false);.}..if.(true.===.$input->
cc200 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 6e 6f 2d 69 hasParameterOption(array('--no-i
cc220 6e 74 65 72 61 63 74 69 6f 6e 27 2c 20 27 2d 6e 27 29 29 29 20 7b 0a 24 69 6e 70 75 74 2d 3e 73 nteraction',.'-n'))).{.$input->s
cc240 65 74 49 6e 74 65 72 61 63 74 69 76 65 28 66 61 6c 73 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 etInteractive(false);.}.elseif.(
cc260 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 6f 73 69 78 5f 69 73 61 74 74 79 27 29 20 function_exists('posix_isatty').
cc280 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 68 61 73 28 27 71 &&.$this->getHelperSet()->has('q
cc2a0 75 65 73 74 69 6f 6e 27 29 29 20 7b 0a 24 69 6e 70 75 74 53 74 72 65 61 6d 20 3d 20 24 74 68 69 uestion')).{.$inputStream.=.$thi
cc2c0 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 67 65 74 28 27 71 75 65 73 74 69 6f 6e s->getHelperSet()->get('question
cc2e0 27 29 2d 3e 67 65 74 49 6e 70 75 74 53 74 72 65 61 6d 28 29 3b 0a 69 66 20 28 21 40 70 6f 73 69 ')->getInputStream();.if.(!@posi
cc300 78 5f 69 73 61 74 74 79 28 24 69 6e 70 75 74 53 74 72 65 61 6d 29 20 26 26 20 66 61 6c 73 65 20 x_isatty($inputStream).&&.false.
cc320 3d 3d 3d 20 67 65 74 65 6e 76 28 27 53 48 45 4c 4c 5f 49 4e 54 45 52 41 43 54 49 56 45 27 29 29 ===.getenv('SHELL_INTERACTIVE'))
cc340 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 28 66 61 6c 73 65 29 .{.$input->setInteractive(false)
cc360 3b 0a 7d 0a 7d 0a 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 ;.}.}..if.(true.===.$input->hasP
cc380 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 71 75 69 65 74 27 2c 20 arameterOption(array('--quiet',.
cc3a0 27 2d 71 27 29 29 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 '-q'))).{.$output->setVerbosity(
cc3c0 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 54 OutputInterface::VERBOSITY_QUIET
cc3e0 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d );.}.else.{.if.($input->hasParam
cc400 65 74 65 72 4f 70 74 69 6f 6e 28 27 2d 76 76 76 27 29 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 68 61 eterOption('-vvv').||.$input->ha
cc420 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 3d 33 27 29 20 sParameterOption('--verbose=3').
cc440 7c 7c 20 24 69 6e 70 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 ||.$input->getParameterOption('-
cc460 2d 76 65 72 62 6f 73 65 27 29 20 3d 3d 3d 20 33 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 73 65 74 -verbose').===.3).{.$output->set
cc480 56 65 72 62 6f 73 69 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 Verbosity(OutputInterface::VERBO
cc4a0 53 49 54 59 5f 44 45 42 55 47 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 6e 70 75 74 2d 3e 68 SITY_DEBUG);.}.elseif.($input->h
cc4c0 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 27 2d 76 76 27 29 20 7c 7c 20 24 69 6e 70 asParameterOption('-vv').||.$inp
cc4e0 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 2d 76 65 72 62 6f 73 ut->hasParameterOption('--verbos
cc500 65 3d 32 27 29 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 67 65 74 50 61 72 61 6d 65 74 65 72 4f 70 74 e=2').||.$input->getParameterOpt
cc520 69 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 65 27 29 20 3d 3d 3d 20 32 29 20 7b 0a 24 6f 75 74 70 75 ion('--verbose').===.2).{.$outpu
cc540 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 63 65 3a t->setVerbosity(OutputInterface:
cc560 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 29 3b 0a 7d 20 65 6c 73 65 :VERBOSITY_VERY_VERBOSE);.}.else
cc580 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 74 69 6f 6e 28 27 if.($input->hasParameterOption('
cc5a0 2d 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 69 -v').||.$input->hasParameterOpti
cc5c0 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 65 3d 31 27 29 20 7c 7c 20 24 69 6e 70 75 74 2d 3e 68 61 73 on('--verbose=1').||.$input->has
cc5e0 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 7c 7c 20 ParameterOption('--verbose').||.
cc600 24 69 6e 70 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 $input->getParameterOption('--ve
cc620 72 62 6f 73 65 27 29 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 rbose')).{.$output->setVerbosity
cc640 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 52 42 (OutputInterface::VERBOSITY_VERB
cc660 4f 53 45 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 OSE);.}.}.}................prote
cc680 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 52 75 6e 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 cted.function.doRunCommand(Comma
cc6a0 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 24 69 6e 70 nd.$command,.InputInterface.$inp
cc6c0 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 66 ut,.OutputInterface.$output).{.f
cc6e0 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 oreach.($command->getHelperSet()
cc700 20 61 73 20 24 68 65 6c 70 65 72 29 20 7b 0a 69 66 20 28 24 68 65 6c 70 65 72 20 69 6e 73 74 61 .as.$helper).{.if.($helper.insta
cc720 6e 63 65 6f 66 20 49 6e 70 75 74 41 77 61 72 65 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 68 65 nceof.InputAwareInterface).{.$he
cc740 6c 70 65 72 2d 3e 73 65 74 49 6e 70 75 74 28 24 69 6e 70 75 74 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 lper->setInput($input);.}.}..if.
cc760 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 64 69 73 70 61 74 63 68 65 72 29 20 7b 0a 72 (null.===.$this->dispatcher).{.r
cc780 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 2d 3e 72 75 6e 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 eturn.$command->run($input,.$out
cc7a0 70 75 74 29 3b 0a 7d 0a 0a 0a 20 74 72 79 20 7b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 6d 65 72 67 65 put);.}....try.{.$command->merge
cc7c0 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 24 69 6e 70 75 74 2d ApplicationDefinition();.$input-
cc7e0 3e 62 69 6e 64 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 >bind($command->getDefinition())
cc800 3b 0a 7d 20 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 ;.}.catch.(ExceptionInterface.$e
cc820 29 20 7b 0a 0a 20 7d 0a 0a 24 65 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 43 6f 6d ).{...}..$event.=.new.ConsoleCom
cc840 6d 61 6e 64 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 mandEvent($command,.$input,.$out
cc860 70 75 74 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 put);.$this->dispatcher->dispatc
cc880 68 28 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 73 3a 3a 43 4f 4d 4d 41 4e 44 2c 20 24 65 76 65 6e 74 h(ConsoleEvents::COMMAND,.$event
cc8a0 29 3b 0a 0a 69 66 20 28 24 65 76 65 6e 74 2d 3e 63 6f 6d 6d 61 6e 64 53 68 6f 75 6c 64 52 75 6e );..if.($event->commandShouldRun
cc8c0 28 29 29 20 7b 0a 74 72 79 20 7b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 24 63 6f 6d 6d 61 6e 64 ()).{.try.{.$exitCode.=.$command
cc8e0 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 20 63 61 74 63 68 20 ->run($input,.$output);.}.catch.
cc900 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 65 76 65 6e 74 20 3d 20 6e 65 77 20 43 (\Exception.$e).{.$event.=.new.C
cc920 6f 6e 73 6f 6c 65 45 78 63 65 70 74 69 6f 6e 45 76 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 onsoleExceptionEvent($command,.$
cc940 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 65 2c 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 input,.$output,.$e,.$e->getCode(
cc960 29 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 ));.$this->dispatcher->dispatch(
cc980 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 73 3a 3a 45 58 43 45 50 54 49 4f 4e 2c 20 24 65 76 65 6e 74 ConsoleEvents::EXCEPTION,.$event
cc9a0 29 3b 0a 0a 24 65 20 3d 20 24 65 76 65 6e 74 2d 3e 67 65 74 45 78 63 65 70 74 69 6f 6e 28 29 3b );..$e.=.$event->getException();
cc9c0 0a 0a 24 65 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 54 65 72 6d 69 6e 61 74 65 45 ..$event.=.new.ConsoleTerminateE
cc9e0 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 74 2c 20 vent($command,.$input,.$output,.
cca00 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 73 70 61 74 63 68 65 $e->getCode());.$this->dispatche
cca20 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 3a 3a 54 45 52 4d 49 r->dispatch(ConsoleEvents::TERMI
cca40 4e 41 54 45 2c 20 24 65 76 65 6e 74 29 3b 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 20 65 6c NATE,.$event);..throw.$e;.}.}.el
cca60 73 65 20 7b 0a 24 65 78 69 74 43 6f 64 65 20 3d 20 43 6f 6e 73 6f 6c 65 43 6f 6d 6d 61 6e 64 45 se.{.$exitCode.=.ConsoleCommandE
cca80 76 65 6e 74 3a 3a 52 45 54 55 52 4e 5f 43 4f 44 45 5f 44 49 53 41 42 4c 45 44 3b 0a 7d 0a 0a 24 vent::RETURN_CODE_DISABLED;.}..$
ccaa0 65 76 65 6e 74 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 54 65 72 6d 69 6e 61 74 65 45 76 65 6e event.=.new.ConsoleTerminateEven
ccac0 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 2c 20 24 65 78 t($command,.$input,.$output,.$ex
ccae0 69 74 43 6f 64 65 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 itCode);.$this->dispatcher->disp
ccb00 61 74 63 68 28 43 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 atch(ConsoleEvents::TERMINATE,.$
ccb20 65 76 65 6e 74 29 3b 0a 0a 72 65 74 75 72 6e 20 24 65 76 65 6e 74 2d 3e 67 65 74 45 78 69 74 43 event);..return.$event->getExitC
ccb40 6f 64 65 28 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 ode();.}.........protected.funct
ccb60 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 4e 61 6d 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 ion.getCommandName(InputInterfac
ccb80 65 20 24 69 6e 70 75 74 29 0a 7b 0a 72 65 74 75 72 6e 20 24 69 6e 70 75 74 2d 3e 67 65 74 46 69 e.$input).{.return.$input->getFi
ccba0 72 73 74 41 72 67 75 6d 65 6e 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 rstArgument();.}.......protected
ccbc0 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 6e 69 74 .function.getDefaultInputDefinit
ccbe0 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 ion().{.return.new.InputDefiniti
ccc00 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 28 27 63 6f 6d on(array(.new.InputArgument('com
ccc20 6d 61 6e 64 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 20 mand',.InputArgument::REQUIRED,.
ccc40 27 54 68 65 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 65 78 65 63 75 74 65 27 29 2c 0a 0a 6e 65 77 20 'The.command.to.execute'),..new.
ccc60 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 68 65 6c 70 27 2c 20 27 2d 68 27 2c 20 49 6e 70 75 InputOption('--help',.'-h',.Inpu
ccc80 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 70 6c 61 79 20 74 68 tOption::VALUE_NONE,.'Display.th
ccca0 69 73 20 68 65 6c 70 20 6d 65 73 73 61 67 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 is.help.message'),.new.InputOpti
cccc0 6f 6e 28 27 2d 2d 71 75 69 65 74 27 2c 20 27 2d 71 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a on('--quiet',.'-q',.InputOption:
ccce0 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 6f 20 6e 6f 74 20 6f 75 74 70 75 74 20 61 6e 79 20 :VALUE_NONE,.'Do.not.output.any.
ccd00 6d 65 73 73 61 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 76 65 message'),.new.InputOption('--ve
ccd20 72 62 6f 73 65 27 2c 20 27 2d 76 7c 76 76 7c 76 76 76 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e rbose',.'-v|vv|vvv',.InputOption
ccd40 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 49 6e 63 72 65 61 73 65 20 74 68 65 20 76 65 72 62 ::VALUE_NONE,.'Increase.the.verb
ccd60 6f 73 69 74 79 20 6f 66 20 6d 65 73 73 61 67 65 73 3a 20 31 20 66 6f 72 20 6e 6f 72 6d 61 6c 20 osity.of.messages:.1.for.normal.
ccd80 6f 75 74 70 75 74 2c 20 32 20 66 6f 72 20 6d 6f 72 65 20 76 65 72 62 6f 73 65 20 6f 75 74 70 75 output,.2.for.more.verbose.outpu
ccda0 74 20 61 6e 64 20 33 20 66 6f 72 20 64 65 62 75 67 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 t.and.3.for.debug'),.new.InputOp
ccdc0 74 69 6f 6e 28 27 2d 2d 76 65 72 73 69 6f 6e 27 2c 20 27 2d 56 27 2c 20 49 6e 70 75 74 4f 70 74 tion('--version',.'-V',.InputOpt
ccde0 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 68 69 73 20 61 ion::VALUE_NONE,.'Display.this.a
cce00 70 70 6c 69 63 61 74 69 6f 6e 20 76 65 72 73 69 6f 6e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f pplication.version'),.new.InputO
cce20 70 74 69 6f 6e 28 27 2d 2d 61 6e 73 69 27 2c 20 27 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a ption('--ansi',.'',.InputOption:
cce40 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 20 41 4e 53 49 20 6f 75 74 70 75 74 27 :VALUE_NONE,.'Force.ANSI.output'
cce60 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 61 6e 73 69 27 2c 20 ),.new.InputOption('--no-ansi',.
cce80 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 27 44 69 '',.InputOption::VALUE_NONE,.'Di
ccea0 73 61 62 6c 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 70 sable.ANSI.output'),.new.InputOp
ccec0 74 69 6f 6e 28 27 2d 2d 6e 6f 2d 69 6e 74 65 72 61 63 74 69 6f 6e 27 2c 20 27 2d 6e 27 2c 20 49 tion('--no-interaction',.'-n',.I
ccee0 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 20 nputOption::VALUE_NONE,.'Do.not.
ccf00 61 73 6b 20 61 6e 79 20 69 6e 74 65 72 61 63 74 69 76 65 20 71 75 65 73 74 69 6f 6e 27 29 2c 0a ask.any.interactive.question'),.
ccf20 29 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 67 ));.}.......protected.function.g
ccf40 65 74 44 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 etDefaultCommands().{.return.arr
ccf60 61 79 28 6e 65 77 20 48 65 6c 70 43 6f 6d 6d 61 6e 64 28 29 2c 20 6e 65 77 20 4c 69 73 74 43 6f ay(new.HelpCommand(),.new.ListCo
ccf80 6d 6d 61 6e 64 28 29 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 mmand());.}.......protected.func
ccfa0 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 48 65 6c 70 65 72 53 65 74 28 29 0a 7b 0a 72 65 74 tion.getDefaultHelperSet().{.ret
ccfc0 75 72 6e 20 6e 65 77 20 48 65 6c 70 65 72 53 65 74 28 61 72 72 61 79 28 0a 6e 65 77 20 46 6f 72 urn.new.HelperSet(array(.new.For
ccfe0 6d 61 74 74 65 72 48 65 6c 70 65 72 28 29 2c 0a 6e 65 77 20 44 69 61 6c 6f 67 48 65 6c 70 65 72 matterHelper(),.new.DialogHelper
cd000 28 66 61 6c 73 65 29 2c 0a 6e 65 77 20 50 72 6f 67 72 65 73 73 48 65 6c 70 65 72 28 66 61 6c 73 (false),.new.ProgressHelper(fals
cd020 65 29 2c 0a 6e 65 77 20 54 61 62 6c 65 48 65 6c 70 65 72 28 66 61 6c 73 65 29 2c 0a 6e 65 77 20 e),.new.TableHelper(false),.new.
cd040 44 65 62 75 67 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 28 29 2c 0a 6e 65 77 20 50 72 6f 63 DebugFormatterHelper(),.new.Proc
cd060 65 73 73 48 65 6c 70 65 72 28 29 2c 0a 6e 65 77 20 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 28 essHelper(),.new.QuestionHelper(
cd080 29 2c 0a 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 ),.));.}.......private.function.
cd0a0 67 65 74 53 74 74 79 43 6f 6c 75 6d 6e 73 28 29 0a 7b 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e getSttyColumns().{.if.(!function
cd0c0 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 6e 3b 0a _exists('proc_open')).{.return;.
cd0e0 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 3d 3e 20 }..$descriptorspec.=.array(1.=>.
cd100 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 79 28 27 array('pipe',.'w'),.2.=>.array('
cd120 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 5f 6f 70 pipe',.'w'));.$process.=.proc_op
cd140 65 6e 28 27 73 74 74 79 20 2d 61 20 7c 20 67 72 65 70 20 63 6f 6c 75 6d 6e 73 27 2c 20 24 64 65 en('stty.-a.|.grep.columns',.$de
cd160 73 63 72 69 70 74 6f 72 73 70 65 63 2c 20 24 70 69 70 65 73 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c scriptorspec,.$pipes,.null,.null
cd180 2c 20 61 72 72 61 79 28 27 73 75 70 70 72 65 73 73 5f 65 72 72 6f 72 73 27 20 3d 3e 20 74 72 75 ,.array('suppress_errors'.=>.tru
cd1a0 65 29 29 3b 0a 69 66 20 28 69 73 5f 72 65 73 6f 75 72 63 65 28 24 70 72 6f 63 65 73 73 29 29 20 e));.if.(is_resource($process)).
cd1c0 7b 0a 24 69 6e 66 6f 20 3d 20 73 74 72 65 61 6d 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 70 {.$info.=.stream_get_contents($p
cd1e0 69 70 65 73 5b 31 5d 29 3b 0a 66 63 6c 6f 73 65 28 24 70 69 70 65 73 5b 31 5d 29 3b 0a 66 63 6c ipes[1]);.fclose($pipes[1]);.fcl
cd200 6f 73 65 28 24 70 69 70 65 73 5b 32 5d 29 3b 0a 70 72 6f 63 5f 63 6c 6f 73 65 28 24 70 72 6f 63 ose($pipes[2]);.proc_close($proc
cd220 65 73 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 69 6e 66 6f 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 ess);..return.$info;.}.}.......p
cd240 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 73 6f 6c 65 4d 6f 64 65 28 29 rivate.function.getConsoleMode()
cd260 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 5f 6f 70 .{.if.(!function_exists('proc_op
cd280 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 72 73 70 en')).{.return;.}..$descriptorsp
cd2a0 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 20 27 77 ec.=.array(1.=>.array('pipe',.'w
cd2c0 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 0a 24 70 '),.2.=>.array('pipe',.'w'));.$p
cd2e0 72 6f 63 65 73 73 20 3d 20 70 72 6f 63 5f 6f 70 65 6e 28 27 6d 6f 64 65 20 43 4f 4e 27 2c 20 24 rocess.=.proc_open('mode.CON',.$
cd300 64 65 73 63 72 69 70 74 6f 72 73 70 65 63 2c 20 24 70 69 70 65 73 2c 20 6e 75 6c 6c 2c 20 6e 75 descriptorspec,.$pipes,.null,.nu
cd320 6c 6c 2c 20 61 72 72 61 79 28 27 73 75 70 70 72 65 73 73 5f 65 72 72 6f 72 73 27 20 3d 3e 20 74 ll,.array('suppress_errors'.=>.t
cd340 72 75 65 29 29 3b 0a 69 66 20 28 69 73 5f 72 65 73 6f 75 72 63 65 28 24 70 72 6f 63 65 73 73 29 rue));.if.(is_resource($process)
cd360 29 20 7b 0a 24 69 6e 66 6f 20 3d 20 73 74 72 65 61 6d 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 ).{.$info.=.stream_get_contents(
cd380 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 31 5d 29 3b 0a 66 $pipes[1]);.fclose($pipes[1]);.f
cd3a0 63 6c 6f 73 65 28 24 70 69 70 65 73 5b 32 5d 29 3b 0a 70 72 6f 63 5f 63 6c 6f 73 65 28 24 70 72 close($pipes[2]);.proc_close($pr
cd3c0 6f 63 65 73 73 29 3b 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 2d 2d 2d 2d 2d 2d ocess);..if.(preg_match('/------
cd3e0 2d 2d 2b 5c 72 3f 5c 6e 2e 2b 3f 28 5c 64 2b 29 5c 72 3f 5c 6e 2e 2b 3f 28 5c 64 2b 29 5c 72 3f --+\r?\n.+?(\d+)\r?\n.+?(\d+)\r?
cd400 5c 6e 2f 27 2c 20 24 69 6e 66 6f 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e \n/',.$info,.$matches)).{.return
cd420 20 24 6d 61 74 63 68 65 73 5b 32 5d 2e 27 78 27 2e 24 6d 61 74 63 68 65 73 5b 31 5d 3b 0a 7d 0a .$matches[2].'x'.$matches[1];.}.
cd440 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 67 65 74 }.}.........private.function.get
cd460 41 62 62 72 65 76 69 61 74 69 6f 6e 53 75 67 67 65 73 74 69 6f 6e 73 28 24 61 62 62 72 65 76 73 AbbreviationSuggestions($abbrevs
cd480 29 0a 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 25 73 2c 20 25 73 25 73 27 2c 20 24 ).{.return.sprintf('%s,.%s%s',.$
cd4a0 61 62 62 72 65 76 73 5b 30 5d 2c 20 24 61 62 62 72 65 76 73 5b 31 5d 2c 20 63 6f 75 6e 74 28 24 abbrevs[0],.$abbrevs[1],.count($
cd4c0 61 62 62 72 65 76 73 29 20 3e 20 32 20 3f 20 73 70 72 69 6e 74 66 28 27 20 61 6e 64 20 25 64 20 abbrevs).>.2.?.sprintf('.and.%d.
cd4e0 6d 6f 72 65 27 2c 20 63 6f 75 6e 74 28 24 61 62 62 72 65 76 73 29 20 2d 20 32 29 20 3a 20 27 27 more',.count($abbrevs).-.2).:.''
cd500 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 20 );.}............public.function.
cd520 65 78 74 72 61 63 74 4e 61 6d 65 73 70 61 63 65 28 24 6e 61 6d 65 2c 20 24 6c 69 6d 69 74 20 3d extractNamespace($name,.$limit.=
cd540 20 6e 75 6c 6c 29 0a 7b 0a 24 70 61 72 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 .null).{.$parts.=.explode(':',.$
cd560 6e 61 6d 65 29 3b 0a 61 72 72 61 79 5f 70 6f 70 28 24 70 61 72 74 73 29 3b 0a 0a 72 65 74 75 72 name);.array_pop($parts);..retur
cd580 6e 20 69 6d 70 6c 6f 64 65 28 27 3a 27 2c 20 6e 75 6c 6c 20 3d 3d 3d 20 24 6c 69 6d 69 74 20 3f n.implode(':',.null.===.$limit.?
cd5a0 20 24 70 61 72 74 73 20 3a 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 70 61 72 74 73 2c 20 30 2c .$parts.:.array_slice($parts,.0,
cd5c0 20 24 6c 69 6d 69 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 .$limit));.}...........private.f
cd5e0 75 6e 63 74 69 6f 6e 20 66 69 6e 64 41 6c 74 65 72 6e 61 74 69 76 65 73 28 24 6e 61 6d 65 2c 20 unction.findAlternatives($name,.
cd600 24 63 6f 6c 6c 65 63 74 69 6f 6e 29 0a 7b 0a 24 74 68 72 65 73 68 6f 6c 64 20 3d 20 31 65 33 3b $collection).{.$threshold.=.1e3;
cd620 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 63 6f 6c 6c .$alternatives.=.array();..$coll
cd640 65 63 74 69 6f 6e 50 61 72 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 ectionParts.=.array();.foreach.(
cd660 24 63 6f 6c 6c 65 63 74 69 6f 6e 20 61 73 20 24 69 74 65 6d 29 20 7b 0a 24 63 6f 6c 6c 65 63 74 $collection.as.$item).{.$collect
cd680 69 6f 6e 50 61 72 74 73 5b 24 69 74 65 6d 5d 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 ionParts[$item].=.explode(':',.$
cd6a0 69 74 65 6d 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 item);.}..foreach.(explode(':',.
cd6c0 24 6e 61 6d 65 29 20 61 73 20 24 69 20 3d 3e 20 24 73 75 62 6e 61 6d 65 29 20 7b 0a 66 6f 72 65 $name).as.$i.=>.$subname).{.fore
cd6e0 61 63 68 20 28 24 63 6f 6c 6c 65 63 74 69 6f 6e 50 61 72 74 73 20 61 73 20 24 63 6f 6c 6c 65 63 ach.($collectionParts.as.$collec
cd700 74 69 6f 6e 4e 61 6d 65 20 3d 3e 20 24 70 61 72 74 73 29 20 7b 0a 24 65 78 69 73 74 73 20 3d 20 tionName.=>.$parts).{.$exists.=.
cd720 69 73 73 65 74 28 24 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 isset($alternatives[$collectionN
cd740 61 6d 65 5d 29 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 70 61 72 74 73 5b 24 69 5d 29 20 26 26 ame]);.if.(!isset($parts[$i]).&&
cd760 20 24 65 78 69 73 74 73 29 20 7b 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 73 5b 24 63 6f 6c 6c 65 .$exists).{.$alternatives[$colle
cd780 63 74 69 6f 6e 4e 61 6d 65 5d 20 2b 3d 20 24 74 68 72 65 73 68 6f 6c 64 3b 0a 63 6f 6e 74 69 6e ctionName].+=.$threshold;.contin
cd7a0 75 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 73 65 74 28 24 70 61 72 74 73 5b 24 69 5d 29 ue;.}.elseif.(!isset($parts[$i])
cd7c0 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6c 65 76 20 3d 20 6c 65 76 65 6e 73 68 74 ).{.continue;.}..$lev.=.levensht
cd7e0 65 69 6e 28 24 73 75 62 6e 61 6d 65 2c 20 24 70 61 72 74 73 5b 24 69 5d 29 3b 0a 69 66 20 28 24 ein($subname,.$parts[$i]);.if.($
cd800 6c 65 76 20 3c 3d 20 73 74 72 6c 65 6e 28 24 73 75 62 6e 61 6d 65 29 20 2f 20 33 20 7c 7c 20 27 lev.<=.strlen($subname)./.3.||.'
cd820 27 20 21 3d 3d 20 24 73 75 62 6e 61 6d 65 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 '.!==.$subname.&&.false.!==.strp
cd840 6f 73 28 24 70 61 72 74 73 5b 24 69 5d 2c 20 24 73 75 62 6e 61 6d 65 29 29 20 7b 0a 24 61 6c 74 os($parts[$i],.$subname)).{.$alt
cd860 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 3d 20 24 65 78 ernatives[$collectionName].=.$ex
cd880 69 73 74 73 20 3f 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 5b 24 63 6f 6c 6c 65 63 74 69 6f 6e ists.?.$alternatives[$collection
cd8a0 4e 61 6d 65 5d 20 2b 20 24 6c 65 76 20 3a 20 24 6c 65 76 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 Name].+.$lev.:.$lev;.}.elseif.($
cd8c0 65 78 69 73 74 73 29 20 7b 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 73 5b 24 63 6f 6c 6c 65 63 74 exists).{.$alternatives[$collect
cd8e0 69 6f 6e 4e 61 6d 65 5d 20 2b 3d 20 24 74 68 72 65 73 68 6f 6c 64 3b 0a 7d 0a 7d 0a 7d 0a 0a 66 ionName].+=.$threshold;.}.}.}..f
cd900 6f 72 65 61 63 68 20 28 24 63 6f 6c 6c 65 63 74 69 6f 6e 20 61 73 20 24 69 74 65 6d 29 20 7b 0a oreach.($collection.as.$item).{.
cd920 24 6c 65 76 20 3d 20 6c 65 76 65 6e 73 68 74 65 69 6e 28 24 6e 61 6d 65 2c 20 24 69 74 65 6d 29 $lev.=.levenshtein($name,.$item)
cd940 3b 0a 69 66 20 28 24 6c 65 76 20 3c 3d 20 73 74 72 6c 65 6e 28 24 6e 61 6d 65 29 20 2f 20 33 20 ;.if.($lev.<=.strlen($name)./.3.
cd960 7c 7c 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 69 74 65 6d 2c 20 24 6e 61 6d 65 ||.false.!==.strpos($item,.$name
cd980 29 29 20 7b 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 73 5b 24 69 74 65 6d 5d 20 3d 20 69 73 73 65 )).{.$alternatives[$item].=.isse
cd9a0 74 28 24 61 6c 74 65 72 6e 61 74 69 76 65 73 5b 24 69 74 65 6d 5d 29 20 3f 20 24 61 6c 74 65 72 t($alternatives[$item]).?.$alter
cd9c0 6e 61 74 69 76 65 73 5b 24 69 74 65 6d 5d 20 2d 20 24 6c 65 76 20 3a 20 24 6c 65 76 3b 0a 7d 0a natives[$item].-.$lev.:.$lev;.}.
cd9e0 7d 0a 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 }..$alternatives.=.array_filter(
cda00 24 61 6c 74 65 72 6e 61 74 69 76 65 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6c 65 76 29 20 75 $alternatives,.function.($lev).u
cda20 73 65 20 28 24 74 68 72 65 73 68 6f 6c 64 29 20 7b 20 72 65 74 75 72 6e 20 24 6c 65 76 20 3c 20 se.($threshold).{.return.$lev.<.
cda40 32 20 2a 20 24 74 68 72 65 73 68 6f 6c 64 3b 20 7d 29 3b 0a 61 73 6f 72 74 28 24 61 6c 74 65 72 2.*.$threshold;.});.asort($alter
cda60 6e 61 74 69 76 65 73 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 24 61 6c natives);..return.array_keys($al
cda80 74 65 72 6e 61 74 69 76 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ternatives);.}.......public.func
cdaa0 74 69 6f 6e 20 73 65 74 44 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 4e tion.setDefaultCommand($commandN
cdac0 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 20 3d 20 24 ame).{.$this->defaultCommand.=.$
cdae0 63 6f 6d 6d 61 6e 64 4e 61 6d 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e commandName;.}..private.function
cdb00 20 73 74 72 69 6e 67 57 69 64 74 68 28 24 73 74 72 69 6e 67 29 0a 7b 0a 69 66 20 28 66 61 6c 73 .stringWidth($string).{.if.(fals
cdb20 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 6e 63 6f e.===.$encoding.=.mb_detect_enco
cdb40 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 72 65 74 ding($string,.null,.true)).{.ret
cdb60 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 6e 20 6d urn.strlen($string);.}..return.m
cdb80 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 29 3b 0a b_strwidth($string,.$encoding);.
cdba0 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 70 6c 69 74 53 74 72 69 6e 67 42 }..private.function.splitStringB
cdbc0 79 57 69 64 74 68 28 24 73 74 72 69 6e 67 2c 20 24 77 69 64 74 68 29 0a 7b 0a 0a 20 0a 20 0a 20 yWidth($string,.$width).{.......
cdbe0 69 66 20 28 66 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 if.(false.===.$encoding.=.mb_det
cdc00 65 63 74 5f 65 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 ect_encoding($string,.null,.true
cdc20 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 5f 73 70 6c 69 74 28 24 73 74 72 69 6e 67 2c 20 24 )).{.return.str_split($string,.$
cdc40 77 69 64 74 68 29 3b 0a 7d 0a 0a 24 75 74 66 38 53 74 72 69 6e 67 20 3d 20 6d 62 5f 63 6f 6e 76 width);.}..$utf8String.=.mb_conv
cdc60 65 72 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 74 72 69 6e 67 2c 20 27 75 74 66 38 27 2c 20 24 65 ert_encoding($string,.'utf8',.$e
cdc80 6e 63 6f 64 69 6e 67 29 3b 0a 24 6c 69 6e 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6c 69 6e ncoding);.$lines.=.array();.$lin
cdca0 65 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 68 20 28 70 72 65 67 5f 73 70 6c 69 74 28 27 2f 2f 75 e.=.'';.foreach.(preg_split('//u
cdcc0 27 2c 20 24 75 74 66 38 53 74 72 69 6e 67 29 20 61 73 20 24 63 68 61 72 29 20 7b 0a 0a 20 69 66 ',.$utf8String).as.$char).{...if
cdce0 20 28 6d 62 5f 73 74 72 77 69 64 74 68 28 24 6c 69 6e 65 2e 24 63 68 61 72 2c 20 27 75 74 66 38 .(mb_strwidth($line.$char,.'utf8
cdd00 27 29 20 3c 3d 20 24 77 69 64 74 68 29 20 7b 0a 24 6c 69 6e 65 20 2e 3d 20 24 63 68 61 72 3b 0a ').<=.$width).{.$line..=.$char;.
cdd20 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 20 24 6c 69 6e 65 73 5b 5d 20 3d 20 73 74 72 5f 70 61 64 continue;.}...$lines[].=.str_pad
cdd40 28 24 6c 69 6e 65 2c 20 24 77 69 64 74 68 29 3b 0a 24 6c 69 6e 65 20 3d 20 24 63 68 61 72 3b 0a ($line,.$width);.$line.=.$char;.
cdd60 7d 0a 69 66 20 28 27 27 20 21 3d 3d 20 24 6c 69 6e 65 29 20 7b 0a 24 6c 69 6e 65 73 5b 5d 20 3d }.if.(''.!==.$line).{.$lines[].=
cdd80 20 63 6f 75 6e 74 28 24 6c 69 6e 65 73 29 20 3f 20 73 74 72 5f 70 61 64 28 24 6c 69 6e 65 2c 20 .count($lines).?.str_pad($line,.
cdda0 24 77 69 64 74 68 29 20 3a 20 24 6c 69 6e 65 3b 0a 7d 0a 0a 6d 62 5f 63 6f 6e 76 65 72 74 5f 76 $width).:.$line;.}..mb_convert_v
cddc0 61 72 69 61 62 6c 65 73 28 24 65 6e 63 6f 64 69 6e 67 2c 20 27 75 74 66 38 27 2c 20 24 6c 69 6e ariables($encoding,.'utf8',.$lin
cdde0 65 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6c 69 6e 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 es);..return.$lines;.}.........p
cde00 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 6c 4e 61 6d 65 73 70 rivate.function.extractAllNamesp
cde20 61 63 65 73 28 24 6e 61 6d 65 29 0a 7b 0a 0a 20 24 70 61 72 74 73 20 3d 20 65 78 70 6c 6f 64 65 aces($name).{...$parts.=.explode
cde40 28 27 3a 27 2c 20 24 6e 61 6d 65 2c 20 2d 31 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 73 20 3d 20 (':',.$name,.-1);.$namespaces.=.
cde60 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 72 74 73 20 61 73 20 24 70 61 array();..foreach.($parts.as.$pa
cde80 72 74 29 20 7b 0a 69 66 20 28 63 6f 75 6e 74 28 24 6e 61 6d 65 73 70 61 63 65 73 29 29 20 7b 0a rt).{.if.(count($namespaces)).{.
cdea0 24 6e 61 6d 65 73 70 61 63 65 73 5b 5d 20 3d 20 65 6e 64 28 24 6e 61 6d 65 73 70 61 63 65 73 29 $namespaces[].=.end($namespaces)
cdec0 2e 27 3a 27 2e 24 70 61 72 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 .':'.$part;.}.else.{.$namespaces
cdee0 5b 5d 20 3d 20 24 70 61 72 74 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6e 61 6d 65 73 70 61 [].=.$part;.}.}..return.$namespa
cdf00 63 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 65 73 70 61 ces;.}.}.<?php...........namespa
cdf20 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 6f 6d ce.Symfony\Component\Console\Com
cdf40 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 6e mand;..use.Symfony\Component\Con
cdf60 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 6f 72 3b 0a sole\Descriptor\TextDescriptor;.
cdf80 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 44 65 use.Symfony\Component\Console\De
cdfa0 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 53 79 6d 66 scriptor\XmlDescriptor;.use.Symf
cdfc0 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\
cdfe0 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 79 5c ExceptionInterface;.use.Symfony\
ce000 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 66 Component\Console\Input\InputDef
ce020 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 43 inition;.use.Symfony\Component\C
ce040 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 79 onsole\Input\InputOption;.use.Sy
ce060 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
ce080 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
ce0a0 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;
ce0c0 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
ce0e0 75 74 70 75 74 5c 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e utput\BufferedOutput;.use.Symfon
ce100 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 75 y\Component\Console\Output\Outpu
ce120 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
ce140 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 53 79 6d 66 6f t\Console\Application;.use.Symfo
ce160 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 70 ny\Component\Console\Helper\Help
ce180 65 72 53 65 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 erSet;.use.Symfony\Component\Con
ce1a0 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
ce1c0 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
ce1e0 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 6f 6e 3b onsole\Exception\LogicException;
ce200 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 69 76 61 74 65 20 24 .......class.Command.{.private.$
ce220 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 3b 0a 70 72 69 76 application;.private.$name;.priv
ce240 61 74 65 20 24 70 72 6f 63 65 73 73 54 69 74 6c 65 3b 0a 70 72 69 76 61 74 65 20 24 61 6c 69 61 ate.$processTitle;.private.$alia
ce260 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 64 65 66 69 6e 69 74 69 ses.=.array();.private.$definiti
ce280 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 68 65 6c 70 3b 0a 70 72 69 76 61 74 65 20 24 64 65 73 63 on;.private.$help;.private.$desc
ce2a0 72 69 70 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 69 67 6e 6f 72 65 56 61 6c 69 64 61 74 69 ription;.private.$ignoreValidati
ce2c0 6f 6e 45 72 72 6f 72 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 61 70 70 6c 69 onErrors.=.false;.private.$appli
ce2e0 63 61 74 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 cationDefinitionMerged.=.false;.
ce300 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 69 6f 6e 4d 65 private.$applicationDefinitionMe
ce320 72 67 65 64 57 69 74 68 41 72 67 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 63 rgedWithArgs.=.false;.private.$c
ce340 6f 64 65 3b 0a 70 72 69 76 61 74 65 20 24 73 79 6e 6f 70 73 69 73 20 3d 20 61 72 72 61 79 28 29 ode;.private.$synopsis.=.array()
ce360 3b 0a 70 72 69 76 61 74 65 20 24 75 73 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 ;.private.$usages.=.array();.pri
ce380 76 61 74 65 20 24 68 65 6c 70 65 72 53 65 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 vate.$helperSet;.........public.
ce3a0 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 20 3d 20 6e 75 6c function.__construct($name.=.nul
ce3c0 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 65 77 20 49 6e 70 l).{.$this->definition.=.new.Inp
ce3e0 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 6e utDefinition();..if.(null.!==.$n
ce400 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 4e 61 6d 65 28 24 6e 61 6d 65 29 3b 0a 7d 0a ame).{.$this->setName($name);.}.
ce420 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 75 72 65 28 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 .$this->configure();..if.(!$this
ce440 2d 3e 6e 61 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 69 ->name).{.throw.new.LogicExcepti
ce460 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 63 6f 6d 6d 61 6e 64 20 64 65 66 69 6e 65 64 20 on(sprintf('The.command.defined.
ce480 69 6e 20 22 25 73 22 20 63 61 6e 6e 6f 74 20 68 61 76 65 20 61 6e 20 65 6d 70 74 79 20 6e 61 6d in."%s".cannot.have.an.empty.nam
ce4a0 65 2e 27 2c 20 67 65 74 5f 63 6c 61 73 73 28 24 74 68 69 73 29 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a e.',.get_class($this)));.}.}....
ce4c0 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 61 6c 69 64 61 74 ...public.function.ignoreValidat
ce4e0 69 6f 6e 45 72 72 6f 72 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 56 61 6c 69 64 ionErrors().{.$this->ignoreValid
ce500 61 74 69 6f 6e 45 72 72 6f 72 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c ationErrors.=.true;.}.......publ
ce520 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 41 70 70 6c 69 ic.function.setApplication(Appli
ce540 63 61 74 69 6f 6e 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 cation.$application.=.null).{.$t
ce560 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 6f 6e 3b his->application.=.$application;
ce580 0a 69 66 20 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 48 .if.($application).{.$this->setH
ce5a0 65 6c 70 65 72 53 65 74 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 48 65 6c 70 65 72 elperSet($application->getHelper
ce5c0 53 65 74 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 Set());.}.else.{.$this->helperSe
ce5e0 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 t.=.null;.}.}.......public.funct
ce600 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
ce620 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
ce640 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.
ce660 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
ce680 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
ce6a0 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 72 6e 20 24 74 68 69 n.getApplication().{.return.$thi
ce6c0 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 0a 0a 70 75 62 6c 69 s->application;.}..........publi
ce6e0 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 72 65 74 75 72 6e 20 c.function.isEnabled().{.return.
ce700 74 72 75 65 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 true;.}.....protected.function.c
ce720 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a onfigure().{.}..................
ce740 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 70 75 .protected.function.execute(Inpu
ce760 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
ce780 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 ce.$output).{.throw.new.LogicExc
ce7a0 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 6f 76 65 72 72 69 64 65 20 74 68 65 20 65 78 eption('You.must.override.the.ex
ce7c0 65 63 75 74 65 28 29 20 6d 65 74 68 6f 64 20 69 6e 20 74 68 65 20 63 6f 6e 63 72 65 74 65 20 63 ecute().method.in.the.concrete.c
ce7e0 6f 6d 6d 61 6e 64 20 63 6c 61 73 73 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 ommand.class.');.}............pr
ce800 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 74 49 otected.function.interact(InputI
ce820 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
ce840 20 24 6f 75 74 70 75 74 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 .$output).{.}...........protecte
ce860 64 20 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 d.function.initialize(InputInter
ce880 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 75 face.$input,.OutputInterface.$ou
ce8a0 74 70 75 74 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c tput).{.}...................publ
ce8c0 69 63 20 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 ic.function.run(InputInterface.$
ce8e0 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 0a input,.OutputInterface.$output).
ce900 7b 0a 0a 20 24 74 68 69 73 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 74 72 75 65 29 3b 0a 24 74 {...$this->getSynopsis(true);.$t
ce920 68 69 73 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 66 61 6c 73 65 29 3b 0a 0a 0a 20 24 74 68 69 his->getSynopsis(false);....$thi
ce940 73 2d 3e 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 6e 28 29 3b s->mergeApplicationDefinition();
ce960 0a 0a 0a 20 74 72 79 20 7b 0a 24 69 6e 70 75 74 2d 3e 62 69 6e 64 28 24 74 68 69 73 2d 3e 64 65 ....try.{.$input->bind($this->de
ce980 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d 20 63 61 74 63 68 20 28 45 78 63 65 70 74 69 6f 6e 49 6e 74 finition);.}.catch.(ExceptionInt
ce9a0 65 72 66 61 63 65 20 24 65 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 56 erface.$e).{.if.(!$this->ignoreV
ce9c0 61 6c 69 64 61 74 69 6f 6e 45 72 72 6f 72 73 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d alidationErrors).{.throw.$e;.}.}
ce9e0 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 ..$this->initialize($input,.$out
cea00 70 75 74 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 put);..if.(null.!==.$this->proce
cea20 73 73 54 69 74 6c 65 29 20 7b 0a 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 ssTitle).{.if.(function_exists('
cea40 63 6c 69 5f 73 65 74 5f 70 72 6f 63 65 73 73 5f 74 69 74 6c 65 27 29 29 20 7b 0a 63 6c 69 5f 73 cli_set_process_title')).{.cli_s
cea60 65 74 5f 70 72 6f 63 65 73 73 5f 74 69 74 6c 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 54 et_process_title($this->processT
cea80 69 74 6c 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 74 73 itle);.}.elseif.(function_exists
ceaa0 28 27 73 65 74 70 72 6f 63 74 69 74 6c 65 27 29 29 20 7b 0a 73 65 74 70 72 6f 63 74 69 74 6c 65 ('setproctitle')).{.setproctitle
ceac0 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 69 66 20 ($this->processTitle);.}.elseif.
ceae0 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 52 59 (OutputInterface::VERBOSITY_VERY
ceb00 5f 56 45 52 42 4f 53 45 20 3d 3d 3d 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 _VERBOSE.===.$output->getVerbosi
ceb20 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 3c 63 6f 6d 6d 65 ty()).{.$output->writeln('<comme
ceb40 6e 74 3e 49 6e 73 74 61 6c 6c 20 74 68 65 20 70 72 6f 63 74 69 74 6c 65 20 50 45 43 4c 20 74 6f nt>Install.the.proctitle.PECL.to
ceb60 20 62 65 20 61 62 6c 65 20 74 6f 20 63 68 61 6e 67 65 20 74 68 65 20 70 72 6f 63 65 73 73 20 74 .be.able.to.change.the.process.t
ceb80 69 74 6c 65 2e 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 69 6e 70 itle.</comment>');.}.}..if.($inp
ceba0 75 74 2d 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 69 6e ut->isInteractive()).{.$this->in
cebc0 74 65 72 61 63 74 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 20 0a 20 teract($input,.$output);.}......
cebe0 0a 20 69 66 20 28 24 69 6e 70 75 74 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 ..if.($input->hasArgument('comma
cec00 6e 64 27 29 20 26 26 20 6e 75 6c 6c 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 nd').&&.null.===.$input->getArgu
cec20 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 27 29 29 20 7b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 41 72 ment('command')).{.$input->setAr
cec40 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 gument('command',.$this->getName
cec60 28 29 29 3b 0a 7d 0a 0a 24 69 6e 70 75 74 2d 3e 76 61 6c 69 64 61 74 65 28 29 3b 0a 0a 69 66 20 ());.}..$input->validate();..if.
cec80 28 24 74 68 69 73 2d 3e 63 6f 64 65 29 20 7b 0a 24 73 74 61 74 75 73 43 6f 64 65 20 3d 20 63 61 ($this->code).{.$statusCode.=.ca
ceca0 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 74 68 69 73 2d 3e 63 6f 64 65 2c 20 24 69 6e 70 75 74 ll_user_func($this->code,.$input
cecc0 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 74 61 74 75 73 43 6f 64 65 ,.$output);.}.else.{.$statusCode
cece0 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 .=.$this->execute($input,.$outpu
ced00 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 5f 6e 75 6d 65 72 69 63 28 24 73 74 61 74 75 73 t);.}..return.is_numeric($status
ced20 43 6f 64 65 29 20 3f 20 28 69 6e 74 29 20 24 73 74 61 74 75 73 43 6f 64 65 20 3a 20 30 3b 0a 7d Code).?.(int).$statusCode.:.0;.}
ced40 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.
ced60 73 65 74 43 6f 64 65 28 24 63 6f 64 65 29 0a 7b 0a 69 66 20 28 21 69 73 5f 63 61 6c 6c 61 62 6c setCode($code).{.if.(!is_callabl
ced80 65 28 24 63 6f 64 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 e($code)).{.throw.new.InvalidArg
ceda0 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 63 61 6c 6c 61 62 6c 65 umentException('Invalid.callable
cedc0 20 70 72 6f 76 69 64 65 64 20 74 6f 20 43 6f 6d 6d 61 6e 64 3a 3a 73 65 74 43 6f 64 65 2e 27 29 .provided.to.Command::setCode.')
cede0 3b 0a 7d 0a 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 ;.}..if.(PHP_VERSION_ID.>=.50400
cee00 20 26 26 20 24 63 6f 64 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 43 6c 6f 73 75 72 65 29 20 7b .&&.$code.instanceof.\Closure).{
cee20 0a 24 72 20 3d 20 6e 65 77 20 5c 52 65 66 6c 65 63 74 69 6f 6e 46 75 6e 63 74 69 6f 6e 28 24 63 .$r.=.new.\ReflectionFunction($c
cee40 6f 64 65 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 72 2d 3e 67 65 74 43 6c 6f 73 75 72 ode);.if.(null.===.$r->getClosur
cee60 65 54 68 69 73 28 29 29 20 7b 0a 24 63 6f 64 65 20 3d 20 5c 43 6c 6f 73 75 72 65 3a 3a 62 69 6e eThis()).{.$code.=.\Closure::bin
cee80 64 28 24 63 6f 64 65 2c 20 24 74 68 69 73 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 64 d($code,.$this);.}.}..$this->cod
ceea0 65 20 3d 20 24 63 6f 64 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a e.=.$code;..return.$this;.}.....
ceec0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 65 72 67 65 41 70 70 6c 69 63 61 ....public.function.mergeApplica
ceee0 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 28 24 6d 65 72 67 65 41 72 67 73 20 3d 20 74 72 75 65 tionDefinition($mergeArgs.=.true
cef00 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 ).{.if.(null.===.$this->applicat
cef20 69 6f 6e 20 7c 7c 20 28 74 72 75 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 ion.||.(true.===.$this->applicat
cef40 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 20 26 26 20 28 24 74 68 69 73 2d 3e 61 ionDefinitionMerged.&&.($this->a
cef60 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 68 41 72 pplicationDefinitionMergedWithAr
cef80 67 73 20 7c 7c 20 21 24 6d 65 72 67 65 41 72 67 73 29 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d gs.||.!$mergeArgs))).{.return;.}
cefa0 0a 0a 69 66 20 28 24 6d 65 72 67 65 41 72 67 73 29 20 7b 0a 24 63 75 72 72 65 6e 74 41 72 67 75 ..if.($mergeArgs).{.$currentArgu
cefc0 6d 65 6e 74 73 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 ments.=.$this->definition->getAr
cefe0 67 75 6d 65 6e 74 73 28 29 3b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 73 65 guments();.$this->definition->se
cf000 74 41 72 67 75 6d 65 6e 74 73 28 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 tArguments($this->application->g
cf020 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 29 3b etDefinition()->getArguments());
cf040 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 67 75 6d 65 6e 74 73 .$this->definition->addArguments
cf060 28 24 63 75 72 72 65 6e 74 41 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 ($currentArguments);.}..$this->d
cf080 65 66 69 6e 69 74 69 6f 6e 2d 3e 61 64 64 4f 70 74 69 6f 6e 73 28 24 74 68 69 73 2d 3e 61 70 70 efinition->addOptions($this->app
cf0a0 6c 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 67 65 74 4f 70 lication->getDefinition()->getOp
cf0c0 74 69 6f 6e 73 28 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 tions());..$this->applicationDef
cf0e0 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 20 3d 20 74 72 75 65 3b 0a 69 66 20 28 24 6d 65 72 67 65 initionMerged.=.true;.if.($merge
cf100 41 72 67 73 29 20 7b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 Args).{.$this->applicationDefini
cf120 74 69 6f 6e 4d 65 72 67 65 64 57 69 74 68 41 72 67 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a tionMergedWithArgs.=.true;.}.}..
cf140 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 69 6e 69 .......public.function.setDefini
cf160 74 69 6f 6e 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 24 64 65 66 69 6e 69 74 tion($definition).{.if.($definit
cf180 69 6f 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 29 20 ion.instanceof.InputDefinition).
cf1a0 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 64 65 66 69 6e 69 74 69 6f {.$this->definition.=.$definitio
cf1c0 6e 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 73 n;.}.else.{.$this->definition->s
cf1e0 65 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 24 74 etDefinition($definition);.}..$t
cf200 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
cf220 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 7d 0a 0a 0a 0a 0a 0a .=.false;..return.$this;.}......
cf240 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 .public.function.getDefinition()
cf260 0a 7b 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 3b 0a 7d 0a 0a .{.return.$this->definition;.}..
cf280 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 74 ..........public.function.getNat
cf2a0 69 76 65 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 69 73 2d 3e iveDefinition().{.return.$this->
cf2c0 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 getDefinition();.}............pu
cf2e0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 2c blic.function.addArgument($name,
cf300 20 24 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 .$mode.=.null,.$description.=.''
cf320 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 ,.$default.=.null).{.$this->defi
cf340 6e 69 74 69 6f 6e 2d 3e 61 64 64 41 72 67 75 6d 65 6e 74 28 6e 65 77 20 49 6e 70 75 74 41 72 67 nition->addArgument(new.InputArg
cf360 75 6d 65 6e 74 28 24 6e 61 6d 65 2c 20 24 6d 6f 64 65 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e ument($name,.$mode,.$description
cf380 2c 20 24 64 65 66 61 75 6c 74 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a ,.$default));..return.$this;.}..
cf3a0 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 4f 70 ...........public.function.addOp
cf3c0 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 73 68 6f 72 74 63 75 74 20 3d 20 6e 75 6c 6c 2c 20 24 6d tion($name,.$shortcut.=.null,.$m
cf3e0 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 24 ode.=.null,.$description.=.'',.$
cf400 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 default.=.null).{.$this->definit
cf420 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 74 69 6f 6e 28 24 ion->addOption(new.InputOption($
cf440 6e 61 6d 65 2c 20 24 73 68 6f 72 74 63 75 74 2c 20 24 6d 6f 64 65 2c 20 24 64 65 73 63 72 69 70 name,.$shortcut,.$mode,.$descrip
cf460 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b tion,.$default));..return.$this;
cf480 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
cf4a0 6e 20 73 65 74 4e 61 6d 65 28 24 6e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 n.setName($name).{.$this->valida
cf4c0 74 65 4e 61 6d 65 28 24 6e 61 6d 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e teName($name);..$this->name.=.$n
cf4e0 61 6d 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 0a ame;..return.$this;.}...........
cf500 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 63 65 73 73 54 69 74 ...public.function.setProcessTit
cf520 6c 65 28 24 74 69 74 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 54 69 74 6c 65 le($title).{.$this->processTitle
cf540 20 3d 20 24 74 69 74 6c 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a .=.$title;..return.$this;.}.....
cf560 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
cf580 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 0a 0a 70 75 62 6c turn.$this->name;.}.........publ
cf5a0 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 24 64 65 73 63 ic.function.setDescription($desc
cf5c0 72 69 70 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 ription).{.$this->description.=.
cf5e0 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a $description;..return.$this;.}..
cf600 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 70 74 .....public.function.getDescript
cf620 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 69 6f ion().{.return.$this->descriptio
cf640 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 73 65 74 n;.}.........public.function.set
cf660 48 65 6c 70 28 24 68 65 6c 70 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 20 3d 20 24 68 65 6c Help($help).{.$this->help.=.$hel
cf680 70 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 p;..return.$this;.}.......public
cf6a0 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 74 68 .function.getHelp().{.return.$th
cf6c0 69 73 2d 3e 68 65 6c 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 is->help;.}........public.functi
cf6e0 6f 6e 20 67 65 74 50 72 6f 63 65 73 73 65 64 48 65 6c 70 28 29 0a 7b 0a 24 6e 61 6d 65 20 3d 20 on.getProcessedHelp().{.$name.=.
cf700 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 0a 24 70 6c 61 63 65 68 6f 6c 64 65 72 73 20 3d 20 61 72 $this->name;..$placeholders.=.ar
cf720 72 61 79 28 0a 27 25 63 6f 6d 6d 61 6e 64 2e 6e 61 6d 65 25 27 2c 0a 27 25 63 6f 6d 6d 61 6e 64 ray(.'%command.name%',.'%command
cf740 2e 66 75 6c 6c 5f 6e 61 6d 65 25 27 2c 0a 29 3b 0a 24 72 65 70 6c 61 63 65 6d 65 6e 74 73 20 3d .full_name%',.);.$replacements.=
cf760 20 61 72 72 61 79 28 0a 24 6e 61 6d 65 2c 0a 24 5f 53 45 52 56 45 52 5b 27 50 48 50 5f 53 45 4c .array(.$name,.$_SERVER['PHP_SEL
cf780 46 27 5d 2e 27 20 27 2e 24 6e 61 6d 65 2c 0a 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 F'].'.'.$name,.);..return.str_re
cf7a0 70 6c 61 63 65 28 24 70 6c 61 63 65 68 6f 6c 64 65 72 73 2c 20 24 72 65 70 6c 61 63 65 6d 65 6e place($placeholders,.$replacemen
cf7c0 74 73 2c 20 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 28 29 20 3f 3a 20 24 74 68 69 73 2d 3e 67 ts,.$this->getHelp().?:.$this->g
cf7e0 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 etDescription());.}...........pu
cf800 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 6c 69 61 73 65 73 28 24 61 6c 69 61 73 65 blic.function.setAliases($aliase
cf820 73 29 0a 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 61 6c 69 61 73 65 73 29 20 26 26 20 s).{.if.(!is_array($aliases).&&.
cf840 21 24 61 6c 69 61 73 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 !$aliases.instanceof.\Traversabl
cf860 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 78 e).{.throw.new.InvalidArgumentEx
cf880 63 65 70 74 69 6f 6e 28 27 24 61 6c 69 61 73 65 73 20 6d 75 73 74 20 62 65 20 61 6e 20 61 72 72 ception('$aliases.must.be.an.arr
cf8a0 61 79 20 6f 72 20 61 6e 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 5c 54 72 61 76 65 72 73 61 62 6c ay.or.an.instance.of.\Traversabl
cf8c0 65 27 29 3b 0a 7d 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 e');.}..foreach.($aliases.as.$al
cf8e0 69 61 73 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 4e 61 6d 65 28 24 61 6c 69 61 ias).{.$this->validateName($alia
cf900 73 29 3b 0a 7d 0a 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 s);.}..$this->aliases.=.$aliases
cf920 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 20 ;..return.$this;.}.......public.
cf940 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 function.getAliases().{.return.$
cf960 74 68 69 73 2d 3e 61 6c 69 61 73 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 this->aliases;.}.........public.
cf980 66 75 6e 63 74 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 function.getSynopsis($short.=.fa
cf9a0 6c 73 65 29 0a 7b 0a 24 6b 65 79 20 3d 20 24 73 68 6f 72 74 20 3f 20 27 73 68 6f 72 74 27 20 3a lse).{.$key.=.$short.?.'short'.:
cf9c0 20 27 6c 6f 6e 67 27 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 79 6e 6f .'long';..if.(!isset($this->syno
cf9e0 70 73 69 73 5b 24 6b 65 79 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 79 6e 6f 70 73 69 73 5b 24 psis[$key])).{.$this->synopsis[$
cfa00 6b 65 79 5d 20 3d 20 74 72 69 6d 28 73 70 72 69 6e 74 66 28 27 25 73 20 25 73 27 2c 20 24 74 68 key].=.trim(sprintf('%s.%s',.$th
cfa20 69 73 2d 3e 6e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 is->name,.$this->definition->get
cfa40 53 79 6e 6f 70 73 69 73 28 24 73 68 6f 72 74 29 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 Synopsis($short)));.}..return.$t
cfa60 68 69 73 2d 3e 73 79 6e 6f 70 73 69 73 5b 24 6b 65 79 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 his->synopsis[$key];.}.......pub
cfa80 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 55 73 61 67 65 28 24 75 73 61 67 65 29 0a 7b 0a lic.function.addUsage($usage).{.
cfaa0 69 66 20 28 30 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 75 73 61 67 65 2c 20 24 74 68 69 73 2d 3e if.(0.!==.strpos($usage,.$this->
cfac0 6e 61 6d 65 29 29 20 7b 0a 24 75 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 20 25 73 name)).{.$usage.=.sprintf('%s.%s
cfae0 27 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 2c 20 24 75 73 61 67 65 29 3b 0a 7d 0a 0a 24 74 68 69 ',.$this->name,.$usage);.}..$thi
cfb00 73 2d 3e 75 73 61 67 65 73 5b 5d 20 3d 20 24 75 73 61 67 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 s->usages[].=.$usage;..return.$t
cfb20 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
cfb40 55 73 61 67 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 73 61 67 65 73 3b Usages().{.return.$this->usages;
cfb60 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 74 .}...........public.function.get
cfb80 48 65 6c 70 65 72 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 Helper($name).{.return.$this->he
cfba0 6c 70 65 72 53 65 74 2d 3e 67 65 74 28 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 lperSet->get($name);.}.........p
cfbc0 75 62 6c 69 63 20 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 ublic.function.asText().{.@trigg
cfbe0 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 74 er_error('The.'.__METHOD__.'.met
cfc00 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 20 hod.is.deprecated.since.version.
cfc20 32 2e 33 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.3.and.will.be.removed.in.3.0.'
cfc40 2c 20 45 5f 55 53 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 ,.E_USER_DEPRECATED);..$descript
cfc60 6f 72 20 3d 20 6e 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 or.=.new.TextDescriptor();.$outp
cfc80 75 74 20 3d 20 6e 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 ut.=.new.BufferedOutput(Buffered
cfca0 4f 75 74 70 75 74 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 Output::VERBOSITY_NORMAL,.true);
cfcc0 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 2c 20 .$descriptor->describe($output,.
cfce0 24 74 68 69 73 2c 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 $this,.array('raw_output'.=>.tru
cfd00 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 63 68 28 29 3b 0a 7d e));..return.$output->fetch();.}
cfd20 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 58 6d 6c ...........public.function.asXml
cfd40 28 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 ($asDom.=.false).{.@trigger_erro
cfd60 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 20 r('The.'.__METHOD__.'.method.is.
cfd80 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 64 deprecated.since.version.2.3.and
cfda0 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
cfdc0 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 65 R_DEPRECATED);..$descriptor.=.ne
cfde0 77 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 w.XmlDescriptor();..if.($asDom).
cfe00 7b 0a 72 65 74 75 72 6e 20 24 64 65 73 63 72 69 70 74 6f 72 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 {.return.$descriptor->getCommand
cfe20 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 6e 65 Document($this);.}..$output.=.ne
cfe40 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 72 2d w.BufferedOutput();.$descriptor-
cfe60 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 74 75 >describe($output,.$this);..retu
cfe80 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 0a 0a 0a 0a rn.$output->fetch();.}..........
cfea0 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 4e 61 6d 65 28 24 .private.function.validateName($
cfec0 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 5b 5e 5c 3a 5d name).{.if.(!preg_match('/^[^\:]
cfee0 2b 2b 28 5c 3a 5b 5e 5c 3a 5d 2b 2b 29 2a 24 2f 27 2c 20 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 ++(\:[^\:]++)*$/',.$name)).{.thr
cff00 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(
cff20 73 70 72 69 6e 74 66 28 27 43 6f 6d 6d 61 6e 64 20 6e 61 6d 65 20 22 25 73 22 20 69 73 20 69 6e sprintf('Command.name."%s".is.in
cff40 76 61 6c 69 64 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a valid.',.$name));.}.}.}.<?php...
cff60 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
cff80 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 6d 66 6f 6e ent\Console\Command;..use.Symfon
cffa0 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 44 65 73 63 72 y\Component\Console\Helper\Descr
cffc0 69 70 74 6f 72 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 iptorHelper;.use.Symfony\Compone
cffe0 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;.
d0000 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
d0020 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 6d put\InputOption;.use.Symfony\Com
d0040 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
d0060 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
d0080 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 0a le\Output\OutputInterface;......
d00a0 0a 63 6c 61 73 73 20 48 65 6c 70 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 .class.HelpCommand.extends.Comma
d00c0 6e 64 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 nd.{.private.$command;.....prote
d00e0 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
d0100 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 28 29 3b 0a 0a 24 74 s->ignoreValidationErrors();..$t
d0120 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 68 65 6c 70 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e his.->setName('help').->setDefin
d0140 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 28 27 ition(array(.new.InputArgument('
d0160 63 6f 6d 6d 61 6e 64 5f 6e 61 6d 65 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 command_name',.InputArgument::OP
d0180 54 49 4f 4e 41 4c 2c 20 27 54 68 65 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 27 2c 20 27 68 65 6c TIONAL,.'The.command.name',.'hel
d01a0 70 27 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 p'),.new.InputOption('xml',.null
d01c0 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 54 6f 20 6f ,.InputOption::VALUE_NONE,.'To.o
d01e0 75 74 70 75 74 20 68 65 6c 70 20 61 73 20 58 4d 4c 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 utput.help.as.XML'),.new.InputOp
d0200 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e tion('format',.null,.InputOption
d0220 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 54 68 65 20 6f 75 74 70 75 74 20 66 6f ::VALUE_REQUIRED,.'The.output.fo
d0240 72 6d 61 74 20 28 74 78 74 2c 20 78 6d 6c 2c 20 6a 73 6f 6e 2c 20 6f 72 20 6d 64 29 27 2c 20 27 rmat.(txt,.xml,.json,.or.md)',.'
d0260 74 78 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 72 61 77 27 2c 20 6e 75 txt'),.new.InputOption('raw',.nu
d0280 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 54 6f ll,.InputOption::VALUE_NONE,.'To
d02a0 20 6f 75 74 70 75 74 20 72 61 77 20 63 6f 6d 6d 61 6e 64 20 68 65 6c 70 27 29 2c 0a 29 29 0a 2d .output.raw.command.help'),.)).-
d02c0 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 44 69 73 70 6c 61 79 73 20 68 65 6c 70 20 66 >setDescription('Displays.help.f
d02e0 6f 72 20 61 20 63 6f 6d 6d 61 6e 64 27 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 46 0a or.a.command').->setHelp(<<<EOF.
d0300 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 2f 69 6e 66 6f 3e 20 The.<info>%command.name%</info>.
d0320 63 6f 6d 6d 61 6e 64 20 64 69 73 70 6c 61 79 73 20 68 65 6c 70 20 66 6f 72 20 61 20 67 69 76 65 command.displays.help.for.a.give
d0340 6e 20 63 6f 6d 6d 61 6e 64 3a 0a 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 6f 6d 6d 61 6e 64 n.command:....<info>php.%command
d0360 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 6c 69 73 74 3c 2f 69 6e 66 6f 3e 0a 0a 59 6f 75 20 63 61 6e .full_name%.list</info>..You.can
d0380 20 61 6c 73 6f 20 6f 75 74 70 75 74 20 74 68 65 20 68 65 6c 70 20 69 6e 20 6f 74 68 65 72 20 66 .also.output.the.help.in.other.f
d03a0 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 3e 2d 2d 66 ormats.by.using.the.<comment>--f
d03c0 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 69 6e 66 6f ormat</comment>.option:....<info
d03e0 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 6f 72 6d 61 >php.%command.full_name%.--forma
d0400 74 3d 78 6d 6c 20 6c 69 73 74 3c 2f 69 6e 66 6f 3e 0a 0a 54 6f 20 64 69 73 70 6c 61 79 20 74 68 t=xml.list</info>..To.display.th
d0420 65 20 6c 69 73 74 20 6f 66 20 61 76 61 69 6c 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 73 2c 20 70 6c e.list.of.available.commands,.pl
d0440 65 61 73 65 20 75 73 65 20 74 68 65 20 3c 69 6e 66 6f 3e 6c 69 73 74 3c 2f 69 6e 66 6f 3e 20 63 ease.use.the.<info>list</info>.c
d0460 6f 6d 6d 61 6e 64 2e 0a 45 4f 46 0a 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ommand..EOF.).;.}.......public.f
d0480 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d unction.setCommand(Command.$comm
d04a0 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 61 6e 64 and).{.$this->command.=.$command
d04c0 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 65 78 65 63 75 ;.}.....protected.function.execu
d04e0 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
d0500 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d Interface.$output).{.if.(null.==
d0520 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 =.$this->command).{.$this->comma
d0540 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 2d 3e 66 69 nd.=.$this->getApplication()->fi
d0560 6e 64 28 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 5f nd($input->getArgument('command_
d0580 6e 61 6d 65 27 29 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 name'));.}..if.($input->getOptio
d05a0 6e 28 27 78 6d 6c 27 29 29 20 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 n('xml')).{.@trigger_error('The.
d05c0 2d 2d 78 6d 6c 20 6f 70 74 69 6f 6e 20 77 61 73 20 64 65 70 72 65 63 61 74 65 64 20 69 6e 20 76 --xml.option.was.deprecated.in.v
d05e0 65 72 73 69 6f 6e 20 32 2e 37 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 ersion.2.7.and.will.be.removed.i
d0600 6e 20 76 65 72 73 69 6f 6e 20 33 2e 30 2e 20 55 73 65 20 74 68 65 20 2d 2d 66 6f 72 6d 61 74 20 n.version.3.0..Use.the.--format.
d0620 6f 70 74 69 6f 6e 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 option.instead.',.E_USER_DEPRECA
d0640 54 45 44 29 3b 0a 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 TED);..$input->setOption('format
d0660 27 2c 20 27 78 6d 6c 27 29 3b 0a 7d 0a 0a 24 68 65 6c 70 65 72 20 3d 20 6e 65 77 20 44 65 73 63 ',.'xml');.}..$helper.=.new.Desc
d0680 72 69 70 74 6f 72 48 65 6c 70 65 72 28 29 3b 0a 24 68 65 6c 70 65 72 2d 3e 64 65 73 63 72 69 62 riptorHelper();.$helper->describ
d06a0 65 28 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 2c 20 61 72 72 61 79 e($output,.$this->command,.array
d06c0 28 0a 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 (.'format'.=>.$input->getOption(
d06e0 27 66 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 'format'),.'raw_text'.=>.$input-
d0700 3e 67 65 74 4f 70 74 69 6f 6e 28 27 72 61 77 27 29 2c 0a 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 63 >getOption('raw'),.));..$this->c
d0720 6f 6d 6d 61 6e 64 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a ommand.=.null;.}.}.<?php........
d0740 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
d0760 6f 6e 73 6f 6c 65 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 onsole\Command;..use.Symfony\Com
d0780 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 44 65 73 63 72 69 70 74 6f 72 ponent\Console\Helper\Descriptor
d07a0 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 6f Helper;.use.Symfony\Component\Co
d07c0 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 65 20 53 nsole\Input\InputArgument;.use.S
d07e0 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
d0800 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 6e nputOption;.use.Symfony\Componen
d0820 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 0a t\Console\Input\InputInterface;.
d0840 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
d0860 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 66 6f 6e tput\OutputInterface;.use.Symfon
d0880 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 44 y\Component\Console\Input\InputD
d08a0 65 66 69 6e 69 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 69 73 74 43 6f 6d 6d 61 efinition;.......class.ListComma
d08c0 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 nd.extends.Command.{....protecte
d08e0 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.-
d0900 3e 73 65 74 4e 61 6d 65 28 27 6c 69 73 74 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e >setName('list').->setDefinition
d0920 28 24 74 68 69 73 2d 3e 63 72 65 61 74 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 0a 2d 3e 73 65 ($this->createDefinition()).->se
d0940 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 4c 69 73 74 73 20 63 6f 6d 6d 61 6e 64 73 27 29 0a 2d tDescription('Lists.commands').-
d0960 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 46 0a 54 68 65 20 3c 69 6e 66 6f 3e 25 63 6f 6d 6d 61 >setHelp(<<<EOF.The.<info>%comma
d0980 6e 64 2e 6e 61 6d 65 25 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 6c 69 73 74 73 20 61 6c nd.name%</info>.command.lists.al
d09a0 6c 20 63 6f 6d 6d 61 6e 64 73 3a 0a 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 6f 6d 6d 61 6e l.commands:....<info>php.%comman
d09c0 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 3c 2f 69 6e 66 6f 3e 0a 0a 59 6f 75 20 63 61 6e 20 61 6c 73 d.full_name%</info>..You.can.als
d09e0 6f 20 64 69 73 70 6c 61 79 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 61 20 73 70 65 o.display.the.commands.for.a.spe
d0a00 63 69 66 69 63 20 6e 61 6d 65 73 70 61 63 65 3a 0a 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 cific.namespace:....<info>php.%c
d0a20 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 74 65 73 74 3c 2f 69 6e 66 6f 3e 0a 0a 59 ommand.full_name%.test</info>..Y
d0a40 6f 75 20 63 61 6e 20 61 6c 73 6f 20 6f 75 74 70 75 74 20 74 68 65 20 69 6e 66 6f 72 6d 61 74 69 ou.can.also.output.the.informati
d0a60 6f 6e 20 69 6e 20 6f 74 68 65 72 20 66 6f 72 6d 61 74 73 20 62 79 20 75 73 69 6e 67 20 74 68 65 on.in.other.formats.by.using.the
d0a80 20 3c 63 6f 6d 6d 65 6e 74 3e 2d 2d 66 6f 72 6d 61 74 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 6f 70 74 .<comment>--format</comment>.opt
d0aa0 69 6f 6e 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 ion:....<info>php.%command.full_
d0ac0 6e 61 6d 65 25 20 2d 2d 66 6f 72 6d 61 74 3d 78 6d 6c 3c 2f 69 6e 66 6f 3e 0a 0a 49 74 27 73 20 name%.--format=xml</info>..It's.
d0ae0 61 6c 73 6f 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 67 65 74 20 72 61 77 20 6c 69 73 74 20 6f 66 also.possible.to.get.raw.list.of
d0b00 20 63 6f 6d 6d 61 6e 64 73 20 28 75 73 65 66 75 6c 20 66 6f 72 20 65 6d 62 65 64 64 69 6e 67 20 .commands.(useful.for.embedding.
d0b20 63 6f 6d 6d 61 6e 64 20 72 75 6e 6e 65 72 29 3a 0a 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 command.runner):....<info>php.%c
d0b40 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 72 61 77 3c 2f 69 6e 66 6f 3e 0a 45 ommand.full_name%.--raw</info>.E
d0b60 4f 46 0a 29 0a 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 OF.).;.}.....public.function.get
d0b80 4e 61 74 69 76 65 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 69 NativeDefinition().{.return.$thi
d0ba0 73 2d 3e 63 72 65 61 74 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f s->createDefinition();.}.....pro
d0bc0 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
d0be0 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.$
d0c00 6f 75 74 70 75 74 29 0a 7b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 output).{.if.($input->getOption(
d0c20 27 78 6d 6c 27 29 29 20 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 2d 2d 'xml')).{.@trigger_error('The.--
d0c40 78 6d 6c 20 6f 70 74 69 6f 6e 20 77 61 73 20 64 65 70 72 65 63 61 74 65 64 20 69 6e 20 76 65 72 xml.option.was.deprecated.in.ver
d0c60 73 69 6f 6e 20 32 2e 37 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 sion.2.7.and.will.be.removed.in.
d0c80 76 65 72 73 69 6f 6e 20 33 2e 30 2e 20 55 73 65 20 74 68 65 20 2d 2d 66 6f 72 6d 61 74 20 6f 70 version.3.0..Use.the.--format.op
d0ca0 74 69 6f 6e 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 tion.instead.',.E_USER_DEPRECATE
d0cc0 44 29 3b 0a 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 2c D);..$input->setOption('format',
d0ce0 20 27 78 6d 6c 27 29 3b 0a 7d 0a 0a 24 68 65 6c 70 65 72 20 3d 20 6e 65 77 20 44 65 73 63 72 69 .'xml');.}..$helper.=.new.Descri
d0d00 70 74 6f 72 48 65 6c 70 65 72 28 29 3b 0a 24 68 65 6c 70 65 72 2d 3e 64 65 73 63 72 69 62 65 28 ptorHelper();.$helper->describe(
d0d20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 $output,.$this->getApplication()
d0d40 2c 20 61 72 72 61 79 28 0a 27 66 6f 72 6d 61 74 27 20 3d 3e 20 24 69 6e 70 75 74 2d 3e 67 65 74 ,.array(.'format'.=>.$input->get
d0d60 4f 70 74 69 6f 6e 28 27 66 6f 72 6d 61 74 27 29 2c 0a 27 72 61 77 5f 74 65 78 74 27 20 3d 3e 20 Option('format'),.'raw_text'.=>.
d0d80 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 72 61 77 27 29 2c 0a 27 6e 61 6d 65 73 $input->getOption('raw'),.'names
d0da0 70 61 63 65 27 20 3d 3e 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 6e 61 pace'.=>.$input->getArgument('na
d0dc0 6d 65 73 70 61 63 65 27 29 2c 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e mespace'),.));.}.....private.fun
d0de0 63 74 69 6f 6e 20 63 72 65 61 74 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 ction.createDefinition().{.retur
d0e00 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
d0e20 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 6e 61 6d 65 73 70 61 63 65 27 2c 20 49 6e 70 75 .InputArgument('namespace',.Inpu
d0e40 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 6e 61 6d 65 73 70 tArgument::OPTIONAL,.'The.namesp
d0e60 61 63 65 20 6e 61 6d 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 78 6d 6c ace.name'),.new.InputOption('xml
d0e80 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
d0ea0 2c 20 27 54 6f 20 6f 75 74 70 75 74 20 6c 69 73 74 20 61 73 20 58 4d 4c 27 29 2c 0a 6e 65 77 20 ,.'To.output.list.as.XML'),.new.
d0ec0 49 6e 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 InputOption('raw',.null,.InputOp
d0ee0 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 70 75 74 20 72 61 77 tion::VALUE_NONE,.'To.output.raw
d0f00 20 63 6f 6d 6d 61 6e 64 20 6c 69 73 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e .command.list'),.new.InputOption
d0f20 28 27 66 6f 72 6d 61 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 ('format',.null,.InputOption::VA
d0f40 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 54 68 65 20 6f 75 74 70 75 74 20 66 6f 72 6d 61 74 LUE_REQUIRED,.'The.output.format
d0f60 20 28 74 78 74 2c 20 78 6d 6c 2c 20 6a 73 6f 6e 2c 20 6f 72 20 6d 64 29 27 2c 20 27 74 78 74 27 .(txt,.xml,.json,.or.md)',.'txt'
d0f80 29 2c 0a 29 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 ),.));.}.}.<?php...........names
d0fa0 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 3b 0a pace.Symfony\Component\Console;.
d0fc0 0a 0a 0a 0a 0a 0a 66 69 6e 61 6c 20 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 73 0a ......final.class.ConsoleEvents.
d0fe0 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 43 4f 4d 4d 41 4e 44 20 3d 20 27 63 {.............const.COMMAND.=.'c
d1000 6f 6e 73 6f 6c 65 2e 63 6f 6d 6d 61 6e 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e onsole.command';.............con
d1020 73 74 20 54 45 52 4d 49 4e 41 54 45 20 3d 20 27 63 6f 6e 73 6f 6c 65 2e 74 65 72 6d 69 6e 61 74 st.TERMINATE.=.'console.terminat
d1040 65 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 45 58 43 45 50 54 49 4f 4e e';..............const.EXCEPTION
d1060 20 3d 20 27 63 6f 6e 73 6f 6c 65 2e 65 78 63 65 70 74 69 6f 6e 27 3b 0a 7d 0a 3c 3f 70 68 70 0a .=.'console.exception';.}.<?php.
d1080 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
d10a0 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 3b 0a 0a 75 73 65 20 53 onent\Console\Descriptor;..use.S
d10c0 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 6c 69 63 61 ymfony\Component\Console\Applica
d10e0 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
d1100 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 6f 6e 79 ole\Command\Command;.use.Symfony
d1120 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 43 6f 6d \Component\Console\Exception\Com
d1140 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 mandNotFoundException;.......cla
d1160 73 73 20 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 73 63 72 69 70 74 69 6f 6e 0a 7b 0a 63 6f 6e 73 ss.ApplicationDescription.{.cons
d1180 74 20 47 4c 4f 42 41 4c 5f 4e 41 4d 45 53 50 41 43 45 20 3d 20 27 5f 67 6c 6f 62 61 6c 27 3b 0a t.GLOBAL_NAMESPACE.=.'_global';.
d11a0 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 0a 0a 0a 0a 70 72 ....private.$application;.....pr
d11c0 69 76 61 74 65 20 24 6e 61 6d 65 73 70 61 63 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6e ivate.$namespace;.....private.$n
d11e0 61 6d 65 73 70 61 63 65 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 73 amespaces;.....private.$commands
d1200 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 61 6c 69 61 73 65 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 ;.....private.$aliases;........p
d1220 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 70 70 6c 69 ublic.function.__construct(Appli
d1240 63 61 74 69 6f 6e 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 24 6e 61 6d 65 73 70 61 63 65 20 cation.$application,.$namespace.
d1260 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 69 6f 6e 20 3d 20 24 =.null).{.$this->application.=.$
d1280 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 73 70 61 63 65 20 3d 20 application;.$this->namespace.=.
d12a0 24 6e 61 6d 65 73 70 61 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f $namespace;.}.....public.functio
d12c0 6e 20 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d n.getNamespaces().{.if.(null.===
d12e0 20 24 74 68 69 73 2d 3e 6e 61 6d 65 73 70 61 63 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 .$this->namespaces).{.$this->ins
d1300 70 65 63 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 pectApplication();.}..return.$th
d1320 69 73 2d 3e 6e 61 6d 65 73 70 61 63 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e is->namespaces;.}.....public.fun
d1340 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d ction.getCommands().{.if.(null.=
d1360 3d 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 ==.$this->commands).{.$this->ins
d1380 70 65 63 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 pectApplication();.}..return.$th
d13a0 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 is->commands;.}.........public.f
d13c0 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 unction.getCommand($name).{.if.(
d13e0 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 20 26 !isset($this->commands[$name]).&
d1400 26 20 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 73 5b 24 6e 61 6d 65 5d 29 29 &.!isset($this->aliases[$name]))
d1420 20 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 .{.throw.new.CommandNotFoundExce
d1440 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 43 6f 6d 6d 61 6e 64 20 25 73 20 64 6f 65 73 20 6e ption(sprintf('Command.%s.does.n
d1460 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 69 ot.exist.',.$name));.}..return.i
d1480 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 20 3f 20 24 sset($this->commands[$name]).?.$
d14a0 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 20 3a 20 24 74 68 69 73 2d 3e 61 this->commands[$name].:.$this->a
d14c0 6c 69 61 73 65 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 liases[$name];.}..private.functi
d14e0 6f 6e 20 69 6e 73 70 65 63 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 0a 7b 0a 24 74 68 69 73 2d on.inspectApplication().{.$this-
d1500 3e 63 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 >commands.=.array();.$this->name
d1520 73 70 61 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 61 6c 6c 20 3d 20 24 74 68 69 73 2d spaces.=.array();..$all.=.$this-
d1540 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 61 6c 6c 28 24 74 68 69 73 2d 3e 6e 61 6d 65 73 70 61 >application->all($this->namespa
d1560 63 65 20 3f 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 4e 61 6d ce.?.$this->application->findNam
d1580 65 73 70 61 63 65 28 24 74 68 69 73 2d 3e 6e 61 6d 65 73 70 61 63 65 29 20 3a 20 6e 75 6c 6c 29 espace($this->namespace).:.null)
d15a0 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 73 6f 72 74 43 6f 6d 6d 61 6e 64 73 28 24 ;.foreach.($this->sortCommands($
d15c0 61 6c 6c 29 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 73 29 all).as.$namespace.=>.$commands)
d15e0 20 7b 0a 24 6e 61 6d 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 66 6f 72 65 61 63 68 20 28 .{.$names.=.array();...foreach.(
d1600 24 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 6e 64 29 20 $commands.as.$name.=>.$command).
d1620 7b 0a 69 66 20 28 21 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 63 6f {.if.(!$command->getName()).{.co
d1640 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 ntinue;.}..if.($command->getName
d1660 28 29 20 3d 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b ().===.$name).{.$this->commands[
d1680 24 6e 61 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 74 68 69 $name].=.$command;.}.else.{.$thi
d16a0 73 2d 3e 61 6c 69 61 73 65 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a s->aliases[$name].=.$command;.}.
d16c0 0a 24 6e 61 6d 65 73 5b 5d 20 3d 20 24 6e 61 6d 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6e 61 6d .$names[].=.$name;.}..$this->nam
d16e0 65 73 70 61 63 65 73 5b 24 6e 61 6d 65 73 70 61 63 65 5d 20 3d 20 61 72 72 61 79 28 27 69 64 27 espaces[$namespace].=.array('id'
d1700 20 3d 3e 20 24 6e 61 6d 65 73 70 61 63 65 2c 20 27 63 6f 6d 6d 61 6e 64 73 27 20 3d 3e 20 24 6e .=>.$namespace,.'commands'.=>.$n
d1720 61 6d 65 73 29 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 ames);.}.}.......private.functio
d1740 6e 20 73 6f 72 74 43 6f 6d 6d 61 6e 64 73 28 61 72 72 61 79 20 24 63 6f 6d 6d 61 6e 64 73 29 0a n.sortCommands(array.$commands).
d1760 7b 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 79 28 29 3b {.$namespacedCommands.=.array();
d1780 0a 24 67 6c 6f 62 61 6c 43 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 .$globalCommands.=.array();.fore
d17a0 61 63 68 20 28 24 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 ach.($commands.as.$name.=>.$comm
d17c0 61 6e 64 29 20 7b 0a 24 6b 65 79 20 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e and).{.$key.=.$this->application
d17e0 2d 3e 65 78 74 72 61 63 74 4e 61 6d 65 73 70 61 63 65 28 24 6e 61 6d 65 2c 20 31 29 3b 0a 69 66 ->extractNamespace($name,.1);.if
d1800 20 28 21 24 6b 65 79 29 20 7b 0a 24 67 6c 6f 62 61 6c 43 6f 6d 6d 61 6e 64 73 5b 27 5f 67 6c 6f .(!$key).{.$globalCommands['_glo
d1820 62 61 6c 27 5d 5b 24 6e 61 6d 65 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 20 65 6c 73 65 20 bal'][$name].=.$command;.}.else.
d1840 7b 0a 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d 6d 61 6e 64 73 5b 24 6b 65 79 5d 5b 24 6e 61 6d {.$namespacedCommands[$key][$nam
d1860 65 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 7d 0a 6b 73 6f 72 74 28 24 6e 61 6d 65 73 70 e].=.$command;.}.}.ksort($namesp
d1880 61 63 65 64 43 6f 6d 6d 61 6e 64 73 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d 6d 61 6e acedCommands);.$namespacedComman
d18a0 64 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 67 6c 6f 62 61 6c 43 6f 6d 6d 61 6e 64 73 ds.=.array_merge($globalCommands
d18c0 2c 20 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d 6d 61 6e 64 73 29 3b 0a 0a 66 6f 72 65 61 63 68 ,.$namespacedCommands);..foreach
d18e0 20 28 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d 6d 61 6e 64 73 20 61 73 20 26 24 63 6f 6d 6d 61 .($namespacedCommands.as.&$comma
d1900 6e 64 73 53 65 74 29 20 7b 0a 6b 73 6f 72 74 28 24 63 6f 6d 6d 61 6e 64 73 53 65 74 29 3b 0a 7d ndsSet).{.ksort($commandsSet);.}
d1920 0a 0a 20 75 6e 73 65 74 28 24 63 6f 6d 6d 61 6e 64 73 53 65 74 29 3b 0a 0a 72 65 74 75 72 6e 20 ...unset($commandsSet);..return.
d1940 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d 6d 61 6e 64 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a $namespacedCommands;.}.}.<?php..
d1960 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
d1980 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 44 65 73 63 72 69 70 74 6f 72 3b 0a 0a 75 73 65 20 53 79 nent\Console\Descriptor;..use.Sy
d19a0 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
d19c0 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
d19e0 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 6f 6e 79 5c le\Command\Command;.use.Symfony\
d1a00 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
d1a20 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
d1a40 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.
d1a60 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\
d1a80 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
d1aa0 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
d1ac0 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
d1ae0 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 74 \Exception\InvalidArgumentExcept
d1b00 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 44 65 73 63 72 69 ion;.......abstract.class.Descri
d1b20 70 74 6f 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 44 65 73 63 72 69 70 74 6f 72 49 6e 74 65 72 66 ptor.implements.DescriptorInterf
d1b40 61 63 65 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 70 75 ace.{....private.$output;.....pu
d1b60 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 70 75 74 49 6e 74 blic.function.describe(OutputInt
d1b80 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 72 72 61 79 20 24 erface.$output,.$object,.array.$
d1ba0 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 2d 3e 6f 75 74 70 options.=.array()).{.$this->outp
d1bc0 75 74 20 3d 20 24 6f 75 74 70 75 74 3b 0a 0a 73 77 69 74 63 68 20 28 74 72 75 65 29 20 7b 0a 63 ut.=.$output;..switch.(true).{.c
d1be0 61 73 65 20 24 6f 62 6a 65 63 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 70 75 74 41 72 67 75 ase.$object.instanceof.InputArgu
d1c00 6d 65 6e 74 3a 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 41 72 67 75 6d 65 ment:.$this->describeInputArgume
d1c20 6e 74 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 0a 63 61 nt($object,.$options);.break;.ca
d1c40 73 65 20 24 6f 62 6a 65 63 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 70 75 74 4f 70 74 69 6f se.$object.instanceof.InputOptio
d1c60 6e 3a 0a 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 6e 28 24 6f n:.$this->describeInputOption($o
d1c80 62 6a 65 63 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 bject,.$options);.break;.case.$o
d1ca0 62 6a 65 63 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e bject.instanceof.InputDefinition
d1cc0 3a 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
d1ce0 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 0a 63 61 73 65 ($object,.$options);.break;.case
d1d00 20 24 6f 62 6a 65 63 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 6d 61 6e 64 3a 0a 24 74 68 .$object.instanceof.Command:.$th
d1d20 69 73 2d 3e 64 65 73 63 72 69 62 65 43 6f 6d 6d 61 6e 64 28 24 6f 62 6a 65 63 74 2c 20 24 6f 70 is->describeCommand($object,.$op
d1d40 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 74 tions);.break;.case.$object.inst
d1d60 61 6e 63 65 6f 66 20 41 70 70 6c 69 63 61 74 69 6f 6e 3a 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 anceof.Application:.$this->descr
d1d80 69 62 65 41 70 70 6c 69 63 61 74 69 6f 6e 28 24 6f 62 6a 65 63 74 2c 20 24 6f 70 74 69 6f 6e 73 ibeApplication($object,.$options
d1da0 29 3b 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 );.break;.default:.throw.new.Inv
d1dc0 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 4f alidArgumentException(sprintf('O
d1de0 62 6a 65 63 74 20 6f 66 20 74 79 70 65 20 22 25 73 22 20 69 73 20 6e 6f 74 20 64 65 73 63 72 69 bject.of.type."%s".is.not.descri
d1e00 62 61 62 6c 65 2e 27 2c 20 67 65 74 5f 63 6c 61 73 73 28 24 6f 62 6a 65 63 74 29 29 29 3b 0a 7d bable.',.get_class($object)));.}
d1e20 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 77 72 69 .}........protected.function.wri
d1e40 74 65 28 24 63 6f 6e 74 65 6e 74 2c 20 24 64 65 63 6f 72 61 74 65 64 20 3d 20 66 61 6c 73 65 29 te($content,.$decorated.=.false)
d1e60 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 63 6f 6e 74 65 6e 74 .{.$this->output->write($content
d1e80 2c 20 66 61 6c 73 65 2c 20 24 64 65 63 6f 72 61 74 65 64 20 3f 20 4f 75 74 70 75 74 49 6e 74 65 ,.false,.$decorated.?.OutputInte
d1ea0 72 66 61 63 65 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 20 3a 20 4f 75 74 70 75 74 49 6e 74 rface::OUTPUT_NORMAL.:.OutputInt
d1ec0 65 72 66 61 63 65 3a 3a 4f 55 54 50 55 54 5f 52 41 57 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a erface::OUTPUT_RAW);.}..........
d1ee0 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 65 73 63 abstract.protected.function.desc
d1f00 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 74 20 ribeInputArgument(InputArgument.
d1f20 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 72 61 $argument,.array.$options.=.arra
d1f40 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
d1f60 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 49 d.function.describeInputOption(I
d1f80 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 6f nputOption.$option,.array.$optio
d1fa0 6e 73 20 3d 20 61 72 72 61 79 28 29 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 ns.=.array());..........abstract
d1fc0 20 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 .protected.function.describeInpu
d1fe0 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 24 64 65 66 tDefinition(InputDefinition.$def
d2000 69 6e 69 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 79 28 inition,.array.$options.=.array(
d2020 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 64 20 ));..........abstract.protected.
d2040 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 64 function.describeCommand(Command
d2060 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 61 .$command,.array.$options.=.arra
d2080 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
d20a0 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 74 69 6f 6e 28 41 d.function.describeApplication(A
d20c0 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 72 72 61 79 20 24 pplication.$application,.array.$
d20e0 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a options.=.array());.}.<?php.....
d2100 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
d2120 74 5c 43 6f 6e 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 t\Console\Descriptor;..use.Symfo
d2140 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
d2160 75 74 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 44 65 73 utInterface;.......interface.Des
d2180 63 72 69 70 74 6f 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 criptorInterface.{........public
d21a0 20 66 75 6e 63 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 .function.describe(OutputInterfa
d21c0 63 65 20 24 6f 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 ce.$output,.$object,.array.$opti
d21e0 6f 6e 73 20 3d 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 ons.=.array());.}.<?php.........
d2200 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 6f ..namespace.Symfony\Component\Co
d2220 6e 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 nsole\Descriptor;..use.Symfony\C
d2240 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 69 6f 6e 3b 0a 75 73 omponent\Console\Application;.us
d2260 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
d2280 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 6f 6d 70 6f 6e 65 and\Command;.use.Symfony\Compone
d22a0 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;.
d22c0 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
d22e0 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 53 79 6d 66 6f 6e 79 put\InputDefinition;.use.Symfony
d2300 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 4f 70 \Component\Console\Input\InputOp
d2320 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 44 65 73 63 72 69 70 74 tion;.........class.JsonDescript
d2340 6f 72 20 65 78 74 65 6e 64 73 20 44 65 73 63 72 69 70 74 6f 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 or.extends.Descriptor.{....prote
d2360 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 41 72 67 75 6d cted.function.describeInputArgum
d2380 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 2c 20 61 72 72 ent(InputArgument.$argument,.arr
d23a0 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 2d 3e ay.$options.=.array()).{.$this->
d23c0 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 41 72 67 75 6d 65 6e writeData($this->getInputArgumen
d23e0 74 44 61 74 61 28 24 61 72 67 75 6d 65 6e 74 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a tData($argument),.$options);.}..
d2400 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 63 72 69 62 65 49 6e ...protected.function.describeIn
d2420 70 75 74 4f 70 74 69 6f 6e 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 2c 20 61 putOption(InputOption.$option,.a
d2440 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
d2460 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 4f 70 74 69 6f ->writeData($this->getInputOptio
d2480 6e 44 61 74 61 28 24 6f 70 74 69 6f 6e 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a nData($option),.$options);.}....
d24a0 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 49 6e 70 75 .protected.function.describeInpu
d24c0 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 24 64 65 66 tDefinition(InputDefinition.$def
d24e0 69 6e 69 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 79 28 inition,.array.$options.=.array(
d2500 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 44 61 74 61 28 24 74 68 69 73 2d 3e 67 65 74 )).{.$this->writeData($this->get
d2520 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 44 61 74 61 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 InputDefinitionData($definition)
d2540 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
d2560 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 64 20 24 63 ction.describeCommand(Command.$c
d2580 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 61 79 28 29 ommand,.array.$options.=.array()
d25a0 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 44 61 74 61 28 24 74 68 69 73 2d 3e 67 65 74 43 ).{.$this->writeData($this->getC
d25c0 6f 6d 6d 61 6e 64 44 61 74 61 28 24 63 6f 6d 6d 61 6e 64 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b ommandData($command),.$options);
d25e0 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 63 72 69 .}.....protected.function.descri
d2600 62 65 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 beApplication(Application.$appli
d2620 63 61 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 79 28 29 cation,.array.$options.=.array()
d2640 29 0a 7b 0a 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 20 3d 20 69 73 73 65 74 28 ).{.$describedNamespace.=.isset(
d2660 24 6f 70 74 69 6f 6e 73 5b 27 6e 61 6d 65 73 70 61 63 65 27 5d 29 20 3f 20 24 6f 70 74 69 6f 6e $options['namespace']).?.$option
d2680 73 5b 27 6e 61 6d 65 73 70 61 63 65 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 24 64 65 73 63 72 69 70 74 s['namespace'].:.null;.$descript
d26a0 69 6f 6e 20 3d 20 6e 65 77 20 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 73 63 72 69 70 74 69 6f 6e ion.=.new.ApplicationDescription
d26c0 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 ($application,.$describedNamespa
d26e0 63 65 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 ce);.$commands.=.array();..forea
d2700 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 61 6e 64 73 28 29 20 ch.($description->getCommands().
d2720 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 24 74 68 as.$command).{.$commands[].=.$th
d2740 69 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 44 61 74 61 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 7d 0a is->getCommandData($command);.}.
d2760 0a 24 64 61 74 61 20 3d 20 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 0a 3f 20 61 .$data.=.$describedNamespace.?.a
d2780 72 72 61 79 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 rray('commands'.=>.$commands,.'n
d27a0 61 6d 65 73 70 61 63 65 27 20 3d 3e 20 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 amespace'.=>.$describedNamespace
d27c0 29 0a 3a 20 61 72 72 61 79 28 27 63 6f 6d 6d 61 6e 64 73 27 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 ).:.array('commands'.=>.$command
d27e0 73 2c 20 27 6e 61 6d 65 73 70 61 63 65 73 27 20 3d 3e 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 s,.'namespaces'.=>.array_values(
d2800 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 29 29 3b $description->getNamespaces()));
d2820 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 44 61 74 61 28 24 64 61 74 61 2c 20 24 6f 70 74 69 6f ..$this->writeData($data,.$optio
d2840 6e 73 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 6e ns);.}..........private.function
d2860 20 77 72 69 74 65 44 61 74 61 28 61 72 72 61 79 20 24 64 61 74 61 2c 20 61 72 72 61 79 20 24 6f .writeData(array.$data,.array.$o
d2880 70 74 69 6f 6e 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 6a 73 6f 6e 5f 65 6e 63 6f ptions).{.$this->write(json_enco
d28a0 64 65 28 24 64 61 74 61 2c 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 6a 73 6f 6e 5f 65 de($data,.isset($options['json_e
d28c0 6e 63 6f 64 69 6e 67 27 5d 29 20 3f 20 24 6f 70 74 69 6f 6e 73 5b 27 6a 73 6f 6e 5f 65 6e 63 6f ncoding']).?.$options['json_enco
d28e0 64 69 6e 67 27 5d 20 3a 20 30 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 ding'].:.0));.}.......private.fu
d2900 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 44 61 74 61 28 49 6e 70 75 nction.getInputArgumentData(Inpu
d2920 74 41 72 67 75 6d 65 6e 74 20 24 61 72 67 75 6d 65 6e 74 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 tArgument.$argument).{.return.ar
d2940 72 61 79 28 0a 27 6e 61 6d 65 27 20 3d 3e 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d ray(.'name'.=>.$argument->getNam
d2960 65 28 29 2c 0a 27 69 73 5f 72 65 71 75 69 72 65 64 27 20 3d 3e 20 24 61 72 67 75 6d 65 6e 74 2d e(),.'is_required'.=>.$argument-
d2980 3e 69 73 52 65 71 75 69 72 65 64 28 29 2c 0a 27 69 73 5f 61 72 72 61 79 27 20 3d 3e 20 24 61 72 >isRequired(),.'is_array'.=>.$ar
d29a0 67 75 6d 65 6e 74 2d 3e 69 73 41 72 72 61 79 28 29 2c 0a 27 64 65 73 63 72 69 70 74 69 6f 6e 27 gument->isArray(),.'description'
d29c0 20 3d 3e 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 5c 73 2a 2f .=>.preg_replace('/\s*[\r\n]\s*/
d29e0 27 2c 20 27 20 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f ',.'.',.$argument->getDescriptio
d2a00 6e 28 29 29 2c 0a 27 64 65 66 61 75 6c 74 27 20 3d 3e 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 n()),.'default'.=>.$argument->ge
d2a20 74 44 65 66 61 75 6c 74 28 29 2c 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 tDefault(),.);.}.......private.f
d2a40 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 4f 70 74 69 6f 6e 44 61 74 61 28 49 6e 70 75 74 unction.getInputOptionData(Input
d2a60 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a Option.$option).{.return.array(.
d2a80 27 6e 61 6d 65 27 20 3d 3e 20 27 2d 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 'name'.=>.'--'.$option->getName(
d2aa0 29 2c 0a 27 73 68 6f 72 74 63 75 74 27 20 3d 3e 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f ),.'shortcut'.=>.$option->getSho
d2ac0 72 74 63 75 74 28 29 20 3f 20 27 2d 27 2e 69 6d 70 6c 6f 64 65 28 27 7c 2d 27 2c 20 65 78 70 6c rtcut().?.'-'.implode('|-',.expl
d2ae0 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 74 63 75 74 28 29 29 ode('|',.$option->getShortcut())
d2b00 29 20 3a 20 27 27 2c 0a 27 61 63 63 65 70 74 5f 76 61 6c 75 65 27 20 3d 3e 20 24 6f 70 74 69 6f ).:.'',.'accept_value'.=>.$optio
d2b20 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 2c 0a 27 69 73 5f 76 61 6c 75 65 5f 72 65 71 75 n->acceptValue(),.'is_value_requ
d2b40 69 72 65 64 27 20 3d 3e 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 ired'.=>.$option->isValueRequire
d2b60 64 28 29 2c 0a 27 69 73 5f 6d 75 6c 74 69 70 6c 65 27 20 3d 3e 20 24 6f 70 74 69 6f 6e 2d 3e 69 d(),.'is_multiple'.=>.$option->i
d2b80 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_
d2ba0 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*/',.'.',.$
d2bc0 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 2c 0a 27 64 65 66 61 option->getDescription()),.'defa
d2be0 75 6c 74 27 20 3d 3e 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 2c 0a 29 ult'.=>.$option->getDefault(),.)
d2c00 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 49 6e ;.}.......private.function.getIn
d2c20 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 44 61 74 61 28 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f putDefinitionData(InputDefinitio
d2c40 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 0a 7b 0a 24 69 6e 70 75 74 41 72 67 75 6d 65 6e 74 73 n.$definition).{.$inputArguments
d2c60 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 69 6e 69 74 69 6f 6e .=.array();.foreach.($definition
d2c80 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 61 72 ->getArguments().as.$name.=>.$ar
d2ca0 67 75 6d 65 6e 74 29 20 7b 0a 24 69 6e 70 75 74 41 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d gument).{.$inputArguments[$name]
d2cc0 20 3d 20 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 .=.$this->getInputArgumentData($
d2ce0 61 72 67 75 6d 65 6e 74 29 3b 0a 7d 0a 0a 24 69 6e 70 75 74 4f 70 74 69 6f 6e 73 20 3d 20 61 72 argument);.}..$inputOptions.=.ar
d2d00 72 61 79 28 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 ray();.foreach.($definition->get
d2d20 4f 70 74 69 6f 6e 73 28 29 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 6f 70 74 69 6f 6e 29 20 7b Options().as.$name.=>.$option).{
d2d40 0a 24 69 6e 70 75 74 4f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 74 68 69 73 2d 3e 67 .$inputOptions[$name].=.$this->g
d2d60 65 74 49 6e 70 75 74 4f 70 74 69 6f 6e 44 61 74 61 28 24 6f 70 74 69 6f 6e 29 3b 0a 7d 0a 0a 72 etInputOptionData($option);.}..r
d2d80 65 74 75 72 6e 20 61 72 72 61 79 28 27 61 72 67 75 6d 65 6e 74 73 27 20 3d 3e 20 24 69 6e 70 75 eturn.array('arguments'.=>.$inpu
d2da0 74 41 72 67 75 6d 65 6e 74 73 2c 20 27 6f 70 74 69 6f 6e 73 27 20 3d 3e 20 24 69 6e 70 75 74 4f tArguments,.'options'.=>.$inputO
d2dc0 70 74 69 6f 6e 73 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 ptions);.}.......private.functio
d2de0 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 44 61 74 61 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e n.getCommandData(Command.$comman
d2e00 64 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 0a 24 63 d).{.$command->getSynopsis();.$c
d2e20 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 74 69 ommand->mergeApplicationDefiniti
d2e40 6f 6e 28 66 61 6c 73 65 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 6e 61 6d 65 27 on(false);..return.array(.'name'
d2e60 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 0a 27 75 73 61 67 65 27 .=>.$command->getName(),.'usage'
d2e80 20 3d 3e 20 61 72 72 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 .=>.array_merge(array($command->
d2ea0 67 65 74 53 79 6e 6f 70 73 69 73 28 29 29 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 55 73 61 getSynopsis()),.$command->getUsa
d2ec0 67 65 73 28 29 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 29 2c 0a ges(),.$command->getAliases()),.
d2ee0 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 44 65 'description'.=>.$command->getDe
d2f00 73 63 72 69 70 74 69 6f 6e 28 29 2c 0a 27 68 65 6c 70 27 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 2d scription(),.'help'.=>.$command-
d2f20 3e 67 65 74 50 72 6f 63 65 73 73 65 64 48 65 6c 70 28 29 2c 0a 27 64 65 66 69 6e 69 74 69 6f 6e >getProcessedHelp(),.'definition
d2f40 27 20 3d 3e 20 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 61 '.=>.$this->getInputDefinitionDa
d2f60 74 61 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 74 69 76 65 44 65 66 69 6e 69 74 69 6f 6e ta($command->getNativeDefinition
d2f80 28 29 29 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 ()),.);.}.}.<?php...........name
d2fa0 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 5c space.Symfony\Component\Console\
d2fc0 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 65 Descriptor;..use.Symfony\Compone
d2fe0 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 53 79 6d 66 nt\Console\Application;.use.Symf
d3000 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 43 6f ony\Component\Console\Command\Co
d3020 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 43 6f 6e mmand;.use.Symfony\Component\Con
d3040 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 65 20 53 79 sole\Input\InputArgument;.use.Sy
d3060 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
d3080 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 70 6f putDefinition;.use.Symfony\Compo
d30a0 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;.
d30c0 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 61 72 6b 64 6f 77 6e 44 65 73 63 72 69 70 74 6f 72 ........class.MarkdownDescriptor
d30e0 20 65 78 74 65 6e 64 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 .extends.Descriptor.{....protect
d3100 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 41 72 67 75 6d 65 6e ed.function.describeInputArgumen
d3120 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 2c 20 61 72 72 61 79 t(InputArgument.$argument,.array
d3140 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 2d 3e 77 72 .$options.=.array()).{.$this->wr
d3160 69 74 65 28 0a 27 2a 2a 27 2e 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 ite(.'**'.$argument->getName().'
d3180 3a 2a 2a 27 2e 22 5c 6e 5c 6e 22 0a 2e 27 2a 20 4e 61 6d 65 3a 20 27 2e 28 24 61 72 67 75 6d 65 :**'."\n\n"..'*.Name:.'.($argume
d31a0 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3f 3a 20 27 3c 6e 6f 6e 65 3e 27 29 2e 22 5c 6e 22 0a nt->getName().?:.'<none>')."\n".
d31c0 2e 27 2a 20 49 73 20 72 65 71 75 69 72 65 64 3a 20 27 2e 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 .'*.Is.required:.'.($argument->i
d31e0 73 52 65 71 75 69 72 65 64 28 29 20 3f 20 27 79 65 73 27 20 3a 20 27 6e 6f 27 29 2e 22 5c 6e 22 sRequired().?.'yes'.:.'no')."\n"
d3200 0a 2e 27 2a 20 49 73 20 61 72 72 61 79 3a 20 27 2e 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 41 ..'*.Is.array:.'.($argument->isA
d3220 72 72 61 79 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 rray().?.'yes'.:.'no')."\n"..'*.
d3240 44 65 73 63 72 69 70 74 69 6f 6e 3a 20 27 2e 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 5c 73 Description:.'.preg_replace('/\s
d3260 2a 5b 5c 72 5c 6e 5d 5c 73 2a 2f 27 2c 20 22 5c 6e 20 20 22 2c 20 24 61 72 67 75 6d 65 6e 74 2d *[\r\n]\s*/',."\n..",.$argument-
d3280 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 20 3f 3a 20 27 3c 6e 6f 6e 65 3e 27 29 2e 22 >getDescription().?:.'<none>')."
d32a0 5c 6e 22 0a 2e 27 2a 20 44 65 66 61 75 6c 74 3a 20 60 27 2e 73 74 72 5f 72 65 70 6c 61 63 65 28 \n"..'*.Default:.`'.str_replace(
d32c0 22 5c 6e 22 2c 20 27 27 2c 20 76 61 72 5f 65 78 70 6f 72 74 28 24 61 72 67 75 6d 65 6e 74 2d 3e "\n",.'',.var_export($argument->
d32e0 67 65 74 44 65 66 61 75 6c 74 28 29 2c 20 74 72 75 65 29 29 2e 27 60 27 0a 29 3b 0a 7d 0a 0a 0a getDefault(),.true)).'`'.);.}...
d3300 0a 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 49 6e 70 ..protected.function.describeInp
d3320 75 74 4f 70 74 69 6f 6e 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 2c 20 61 72 utOption(InputOption.$option,.ar
d3340 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 2d ray.$options.=.array()).{.$this-
d3360 3e 77 72 69 74 65 28 0a 27 2a 2a 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2e >write(.'**'.$option->getName().
d3380 27 3a 2a 2a 27 2e 22 5c 6e 5c 6e 22 0a 2e 27 2a 20 4e 61 6d 65 3a 20 60 2d 2d 27 2e 24 6f 70 74 ':**'."\n\n"..'*.Name:.`--'.$opt
d33a0 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 60 27 2e 22 5c 6e 22 0a 2e 27 2a 20 53 68 6f 72 ion->getName().'`'."\n"..'*.Shor
d33c0 74 63 75 74 3a 20 27 2e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 tcut:.'.($option->getShortcut().
d33e0 3f 20 27 60 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 ?.'`-'.implode('|-',.explode('|'
d3400 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 29 2e 27 60 27 20 3a ,.$option->getShortcut())).'`'.:
d3420 20 27 3c 6e 6f 6e 65 3e 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 41 63 63 65 70 74 20 76 61 6c 75 65 .'<none>')."\n"..'*.Accept.value
d3440 3a 20 27 2e 28 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 27 79 :.'.($option->acceptValue().?.'y
d3460 65 73 27 20 3a 20 27 6e 6f 27 29 2e 22 5c 6e 22 0a 2e 27 2a 20 49 73 20 76 61 6c 75 65 20 72 65 es'.:.'no')."\n"..'*.Is.value.re
d3480 71 75 69 72 65 64 3a 20 27 2e 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 quired:.'.($option->isValueRequi
d34a0 72 65 64 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 red().?.'yes'.:.'no')."\n"..'*.I
d34c0 73 20 6d 75 6c 74 69 70 6c 65 3a 20 27 2e 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 s.multiple:.'.($option->isArray(
d34e0 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 44 65 73 63 72 ).?.'yes'.:.'no')."\n"..'*.Descr
d3500 69 70 74 69 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 iption:.'.preg_replace('/\s*[\r\
d3520 6e 5d 5c 73 2a 2f 27 2c 20 22 5c 6e 20 20 22 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 73 n]\s*/',."\n..",.$option->getDes
d3540 63 72 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 cription().?:.'<none>')."\n"..'*
d3560 20 44 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 .Default:.`'.str_replace("\n",.'
d3580 27 2c 20 76 61 72 5f 65 78 70 6f 72 74 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c ',.var_export($option->getDefaul
d35a0 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
d35c0 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 44 65 66 69 6e 69 74 ed.function.describeInputDefinit
d35e0 69 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 ion(InputDefinition.$definition,
d3600 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 0a 69 66 20 .array.$options.=.array()).{.if.
d3620 28 24 73 68 6f 77 41 72 67 75 6d 65 6e 74 73 20 3d 20 63 6f 75 6e 74 28 24 64 65 66 69 6e 69 74 ($showArguments.=.count($definit
d3640 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 29 20 3e 20 30 29 20 7b 0a 24 74 68 69 ion->getArguments()).>.0).{.$thi
d3660 73 2d 3e 77 72 69 74 65 28 27 23 23 23 20 41 72 67 75 6d 65 6e 74 73 3a 27 29 3b 0a 66 6f 72 65 s->write('###.Arguments:');.fore
d3680 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 6d 65 6e 74 73 28 29 ach.($definition->getArguments()
d36a0 20 61 73 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 22 5c .as.$argument).{.$this->write("\
d36c0 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 64 65 73 63 72 n\n");.$this->write($this->descr
d36e0 69 62 65 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 29 3b 0a 7d 0a ibeInputArgument($argument));.}.
d3700 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 }..if.(count($definition->getOpt
d3720 69 6f 6e 73 28 29 29 20 3e 20 30 29 20 7b 0a 69 66 20 28 24 73 68 6f 77 41 72 67 75 6d 65 6e 74 ions()).>.0).{.if.($showArgument
d3740 73 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 7d 0a 0a 24 74 s).{.$this->write("\n\n");.}..$t
d3760 68 69 73 2d 3e 77 72 69 74 65 28 27 23 23 23 20 4f 70 74 69 6f 6e 73 3a 27 29 3b 0a 66 6f 72 65 his->write('###.Options:');.fore
d3780 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
d37a0 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 22 5c 6e 5c 6e 22 s.$option).{.$this->write("\n\n"
d37c0 29 3b 0a 24 74 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 );.$this->write($this->describeI
d37e0 6e 70 75 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a nputOption($option));.}.}.}.....
d3800 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 61 protected.function.describeComma
d3820 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 69 nd(Command.$command,.array.$opti
d3840 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 79 ons.=.array()).{.$command->getSy
d3860 6e 6f 70 73 69 73 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 6d 65 72 67 65 41 70 70 6c 69 63 61 nopsis();.$command->mergeApplica
d3880 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 2d 3e 77 tionDefinition(false);..$this->w
d38a0 72 69 74 65 28 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 22 5c 6e 22 0a 2e rite(.$command->getName()."\n"..
d38c0 73 74 72 5f 72 65 70 65 61 74 28 27 2d 27 2c 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d 61 6e 64 2d str_repeat('-',.strlen($command-
d38e0 3e 67 65 74 4e 61 6d 65 28 29 29 29 2e 22 5c 6e 5c 6e 22 0a 2e 27 2a 20 44 65 73 63 72 69 70 74 >getName()))."\n\n"..'*.Descript
d3900 69 6f 6e 3a 20 27 2e 28 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
d3920 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 55 73 61 67 65 3a 27 ().?:.'<none>')."\n"..'*.Usage:'
d3940 2e 22 5c 6e 5c 6e 22 0a 2e 61 72 72 61 79 5f 72 65 64 75 63 65 28 61 72 72 61 79 5f 6d 65 72 67 ."\n\n"..array_reduce(array_merg
d3960 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 69 73 28 29 29 e(array($command->getSynopsis())
d3980 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 2c 20 24 63 6f 6d 6d 61 ,.$command->getAliases(),.$comma
d39a0 6e 64 2d 3e 67 65 74 55 73 61 67 65 73 28 29 29 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 63 61 72 nd->getUsages()),.function.($car
d39c0 72 79 2c 20 24 75 73 61 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 61 72 72 79 20 2e 3d 20 27 ry,.$usage).{.return.$carry..=.'
d39e0 20 20 2a 20 60 27 2e 24 75 73 61 67 65 2e 27 60 27 2e 22 5c 6e 22 3b 0a 7d 29 0a 29 3b 0a 0a 69 ..*.`'.$usage.'`'."\n";.}).);..i
d3a00 66 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 f.($help.=.$command->getProcesse
d3a20 64 48 65 6c 70 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 22 5c 6e 22 29 3b 0a 24 dHelp()).{.$this->write("\n");.$
d3a40 74 68 69 73 2d 3e 77 72 69 74 65 28 24 68 65 6c 70 29 3b 0a 7d 0a 0a 69 66 20 28 24 63 6f 6d 6d this->write($help);.}..if.($comm
d3a60 61 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 20 7b 0a 24 74 and->getNativeDefinition()).{.$t
d3a80 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 3e 64 65 73 63 72 his->write("\n\n");.$this->descr
d3aa0 69 62 65 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 ibeInputDefinition($command->get
d3ac0 4e 61 74 69 76 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f NativeDefinition());.}.}.....pro
d3ae0 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 74 tected.function.describeApplicat
d3b00 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 72 ion(Application.$application,.ar
d3b20 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 72 ray.$options.=.array()).{.$descr
d3b40 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 27 ibedNamespace.=.isset($options['
d3b60 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 61 namespace']).?.$options['namespa
d3b80 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 20 ce'].:.null;.$description.=.new.
d3ba0 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 74 ApplicationDescription($applicat
d3bc0 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 0a 24 74 68 69 ion,.$describedNamespace);..$thi
d3be0 73 2d 3e 77 72 69 74 65 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 s->write($application->getName()
d3c00 2e 22 5c 6e 22 2e 73 74 72 5f 72 65 70 65 61 74 28 27 3d 27 2c 20 73 74 72 6c 65 6e 28 24 61 70 ."\n".str_repeat('=',.strlen($ap
d3c20 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 29 3b 0a 0a 66 6f 72 65 61 63 plication->getName())));..foreac
d3c40 68 20 28 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 h.($description->getNamespaces()
d3c60 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 29 20 7b 0a 69 66 20 28 41 70 70 6c 69 63 61 74 69 6f .as.$namespace).{.if.(Applicatio
d3c80 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 50 41 43 45 20 21 nDescription::GLOBAL_NAMESPACE.!
d3ca0 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 69 73 2d 3e 77 72 ==.$namespace['id']).{.$this->wr
d3cc0 69 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 27 2a 2a 27 2e 24 ite("\n\n");.$this->write('**'.$
d3ce0 6e 61 6d 65 73 70 61 63 65 5b 27 69 64 27 5d 2e 27 3a 2a 2a 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 namespace['id'].':**');.}..$this
d3d00 2d 3e 77 72 69 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 69 6d ->write("\n\n");.$this->write(im
d3d20 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 20 28 plode("\n",.array_map(function.(
d3d40 24 63 6f 6d 6d 61 6e 64 4e 61 6d 65 29 20 7b 0a 72 65 74 75 72 6e 20 27 2a 20 27 2e 24 63 6f 6d $commandName).{.return.'*.'.$com
d3d60 6d 61 6e 64 4e 61 6d 65 3b 0a 7d 2c 20 24 6e 61 6d 65 73 70 61 63 65 5b 27 63 6f 6d 6d 61 6e 64 mandName;.},.$namespace['command
d3d80 73 27 5d 29 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 73 63 72 69 70 74 69 6f 6e s'])));.}..foreach.($description
d3da0 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).{.$
d3dc0 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 3e 77 72 69 74 this->write("\n\n");.$this->writ
d3de0 65 28 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e e($this->describeCommand($comman
d3e00 64 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 d));.}.}.}.<?php...........names
d3e20 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 44 pace.Symfony\Component\Console\D
d3e40 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 65 6e escriptor;..use.Symfony\Componen
d3e60 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 53 79 6d 66 6f t\Console\Application;.use.Symfo
d3e80 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 43 6f 6d ny\Component\Console\Command\Com
d3ea0 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 43 6f 6e 73 mand;.use.Symfony\Component\Cons
d3ec0 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 65 20 53 79 6d ole\Input\InputArgument;.use.Sym
d3ee0 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
d3f00 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 70 6f 6e utDefinition;.use.Symfony\Compon
d3f20 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 0a ent\Console\Input\InputOption;..
d3f40 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 65 78 74 44 65 73 63 72 69 70 74 6f 72 20 65 78 74 65 .......class.TextDescriptor.exte
d3f60 6e 64 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 nds.Descriptor.{....protected.fu
d3f80 6e 63 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 nction.describeInputArgument(Inp
d3fa0 75 74 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 utArgument.$argument,.array.$opt
d3fc0 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 ions.=.array()).{.if.(null.!==.$
d3fe0 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 26 26 20 28 21 69 73 5f 61 argument->getDefault().&&.(!is_a
d4000 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 20 7c 7c rray($argument->getDefault()).||
d4020 20 63 6f 75 6e 74 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 29 .count($argument->getDefault()))
d4040 29 20 7b 0a 24 64 65 66 61 75 6c 74 20 3d 20 73 70 72 69 6e 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 ).{.$default.=.sprintf('<comment
d4060 3e 20 5b 64 65 66 61 75 6c 74 3a 20 25 73 5d 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 74 68 69 >.[default:.%s]</comment>',.$thi
d4080 73 2d 3e 66 6f 72 6d 61 74 44 65 66 61 75 6c 74 56 61 6c 75 65 28 24 61 72 67 75 6d 65 6e 74 2d s->formatDefaultValue($argument-
d40a0 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 65 66 61 75 >getDefault()));.}.else.{.$defau
d40c0 6c 74 20 3d 20 27 27 3b 0a 7d 0a 0a 24 74 6f 74 61 6c 57 69 64 74 68 20 3d 20 69 73 73 65 74 28 lt.=.'';.}..$totalWidth.=.isset(
d40e0 24 6f 70 74 69 6f 6e 73 5b 27 74 6f 74 61 6c 5f 77 69 64 74 68 27 5d 29 20 3f 20 24 6f 70 74 69 $options['total_width']).?.$opti
d4100 6f 6e 73 5b 27 74 6f 74 61 6c 5f 77 69 64 74 68 27 5d 20 3a 20 73 74 72 6c 65 6e 28 24 61 72 67 ons['total_width'].:.strlen($arg
d4120 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 24 73 70 61 63 69 6e 67 57 69 64 74 68 ument->getName());.$spacingWidth
d4140 20 3d 20 24 74 6f 74 61 6c 57 69 64 74 68 20 2d 20 73 74 72 6c 65 6e 28 24 61 72 67 75 6d 65 6e .=.$totalWidth.-.strlen($argumen
d4160 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 2b 20 32 3b 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 t->getName()).+.2;..$this->write
d4180 54 65 78 74 28 73 70 72 69 6e 74 66 28 27 20 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 25 Text(sprintf('..<info>%s</info>%
d41a0 73 25 73 25 73 27 2c 0a 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 0a 73 74 s%s%s',.$argument->getName(),.st
d41c0 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 74 68 29 2c 0a 0a 20 r_repeat('.',.$spacingWidth),...
d41e0 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 22 preg_replace('/\s*[\r\n]\s*/',."
d4200 5c 6e 22 2e 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 74 6f 74 61 6c 57 69 64 74 68 20 \n".str_repeat('.',.$totalWidth.
d4220 2b 20 31 37 29 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e +.17),.$argument->getDescription
d4240 28 29 29 2c 0a 24 64 65 66 61 75 6c 74 0a 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a ()),.$default.),.$options);.}...
d4260 0a 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 49 6e 70 ..protected.function.describeInp
d4280 75 74 4f 70 74 69 6f 6e 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 2c 20 61 72 utOption(InputOption.$option,.ar
d42a0 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 69 66 20 28 24 6f ray.$options.=.array()).{.if.($o
d42c0 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 20 26 26 20 6e 75 6c 6c 20 21 3d 3d ption->acceptValue().&&.null.!==
d42e0 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 26 26 20 28 21 69 73 5f 61 .$option->getDefault().&&.(!is_a
d4300 72 72 61 79 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 7c 7c 20 63 rray($option->getDefault()).||.c
d4320 6f 75 6e 74 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 29 29 20 7b 0a ount($option->getDefault()))).{.
d4340 24 64 65 66 61 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 $default.=.sprintf('<comment>.[d
d4360 65 66 61 75 6c 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 efault:.%s]</comment>',.$this->f
d4380 6f 72 6d 61 74 44 65 66 61 75 6c 74 56 61 6c 75 65 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 ormatDefaultValue($option->getDe
d43a0 66 61 75 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 fault()));.}.else.{.$default.=.'
d43c0 27 3b 0a 7d 0a 0a 24 76 61 6c 75 65 20 3d 20 27 27 3b 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e ';.}..$value.=.'';.if.($option->
d43e0 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 27 3d 27 2e 73 74 acceptValue()).{.$value.=.'='.st
d4400 72 74 6f 75 70 70 65 72 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 0a 69 rtoupper($option->getName());..i
d4420 66 20 28 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 29 20 7b f.($option->isValueOptional()).{
d4440 0a 24 76 61 6c 75 65 20 3d 20 27 5b 27 2e 24 76 61 6c 75 65 2e 27 5d 27 3b 0a 7d 0a 7d 0a 0a 24 .$value.=.'['.$value.']';.}.}..$
d4460 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 27 74 6f 74 totalWidth.=.isset($options['tot
d4480 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 6c 5f 77 69 al_width']).?.$options['total_wi
d44a0 64 74 68 27 5d 20 3a 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 dth'].:.$this->calculateTotalWid
d44c0 74 68 46 6f 72 4f 70 74 69 6f 6e 73 28 61 72 72 61 79 28 24 6f 70 74 69 6f 6e 29 29 3b 0a 24 73 thForOptions(array($option));.$s
d44e0 79 6e 6f 70 73 69 73 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 25 73 27 2c 0a 24 6f 70 74 69 6f ynopsis.=.sprintf('%s%s',.$optio
d4500 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 27 2d 25 73 2c n->getShortcut().?.sprintf('-%s,
d4520 20 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 3a 20 27 20 .',.$option->getShortcut()).:.'.
d4540 20 20 20 27 2c 0a 73 70 72 69 6e 74 66 28 27 2d 2d 25 73 25 73 27 2c 20 24 6f 70 74 69 6f 6e 2d ...',.sprintf('--%s%s',.$option-
d4560 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 76 61 6c 75 65 29 0a 29 3b 0a 0a 24 73 70 61 63 69 6e 67 >getName(),.$value).);..$spacing
d4580 57 69 64 74 68 20 3d 20 24 74 6f 74 61 6c 57 69 64 74 68 20 2d 20 73 74 72 6c 65 6e 28 24 73 79 Width.=.$totalWidth.-.strlen($sy
d45a0 6e 6f 70 73 69 73 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 nopsis).+.2;..$this->writeText(s
d45c0 70 72 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 25 73 25 printf('..<info>%s</info>%s%s%s%
d45e0 73 27 2c 0a 24 73 79 6e 6f 70 73 69 73 2c 0a 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 s',.$synopsis,.str_repeat('.',.$
d4600 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 61 63 65 28 27 2f spacingWidth),...preg_replace('/
d4620 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 65 70 65 61 74 28 \s*[\r\n]\s*/',."\n".str_repeat(
d4640 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 6f 70 74 69 6f 6e 2d '.',.$totalWidth.+.17),.$option-
d4660 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 2c 0a 24 64 65 66 61 75 6c 74 2c 0a 24 6f >getDescription()),.$default,.$o
d4680 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 20 3f 20 27 3c 63 6f 6d 6d 65 6e 74 3e 20 28 6d ption->isArray().?.'<comment>.(m
d46a0 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 20 61 6c 6c 6f 77 65 64 29 3c 2f 63 6f 6d 6d 65 6e 74 ultiple.values.allowed)</comment
d46c0 3e 27 20 3a 20 27 27 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 >'.:.''.),.$options);.}.....prot
d46e0 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 44 65 66 69 ected.function.describeInputDefi
d4700 6e 69 74 69 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 nition(InputDefinition.$definiti
d4720 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 79 28 29 29 0a 7b 0a on,.array.$options.=.array()).{.
d4740 24 74 6f 74 61 6c 57 69 64 74 68 20 3d 20 24 74 68 69 73 2d 3e 63 61 6c 63 75 6c 61 74 65 54 6f $totalWidth.=.$this->calculateTo
d4760 74 61 6c 57 69 64 74 68 46 6f 72 4f 70 74 69 6f 6e 73 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e talWidthForOptions($definition->
d4780 67 65 74 4f 70 74 69 6f 6e 73 28 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 69 6e 69 74 getOptions());.foreach.($definit
d47a0 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 6d 65 6e 74 ion->getArguments().as.$argument
d47c0 29 20 7b 0a 24 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 ).{.$totalWidth.=.max($totalWidt
d47e0 68 2c 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 65 28 29 29 29 h,.strlen($argument->getName()))
d4800 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 41 72 67 75 6d 65 6e ;.}..if.($definition->getArgumen
d4820 74 73 28 29 29 20 7b 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 ts()).{.$this->writeText('<comme
d4840 6e 74 3e 41 72 67 75 6d 65 6e 74 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 6f 70 74 69 6f nt>Arguments:</comment>',.$optio
d4860 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 66 6f 72 ns);.$this->writeText("\n");.for
d4880 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 6d 65 6e 74 73 28 each.($definition->getArguments(
d48a0 29 20 61 73 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 ).as.$argument).{.$this->describ
d48c0 65 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 2c 20 61 72 72 61 79 5f eInputArgument($argument,.array_
d48e0 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
d4900 74 68 27 20 3d 3e 20 24 74 6f 74 61 6c 57 69 64 74 68 29 29 29 3b 0a 24 74 68 69 73 2d 3e 77 72 th'.=>.$totalWidth)));.$this->wr
d4920 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 64 65 66 69 6e 69 74 iteText("\n");.}.}..if.($definit
d4940 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 20 26 26 20 24 64 65 66 69 6e 69 74 69 ion->getArguments().&&.$definiti
d4960 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 on->getOptions()).{.$this->write
d4980 54 65 78 74 28 22 5c 6e 22 29 3b 0a 7d 0a 0a 69 66 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e Text("\n");.}..if.($definition->
d49a0 67 65 74 4f 70 74 69 6f 6e 73 28 29 29 20 7b 0a 24 6c 61 74 65 72 4f 70 74 69 6f 6e 73 20 3d 20 getOptions()).{.$laterOptions.=.
d49c0 61 72 72 61 79 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 27 3c 63 6f 6d array();..$this->writeText('<com
d49e0 6d 65 6e 74 3e 4f 70 74 69 6f 6e 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 6f 70 74 69 6f ment>Options:</comment>',.$optio
d4a00 6e 73 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 4f 70 ns);.foreach.($definition->getOp
d4a20 74 69 6f 6e 73 28 29 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 69 66 20 28 73 74 72 6c 65 6e tions().as.$option).{.if.(strlen
d4a40 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 3e 20 31 29 20 7b 0a ($option->getShortcut()).>.1).{.
d4a60 24 6c 61 74 65 72 4f 70 74 69 6f 6e 73 5b 5d 20 3d 20 24 6f 70 74 69 6f 6e 3b 0a 63 6f 6e 74 69 $laterOptions[].=.$option;.conti
d4a80 6e 75 65 3b 0a 7d 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 24 nue;.}.$this->writeText("\n");.$
d4aa0 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f this->describeInputOption($optio
d4ac0 6e 2c 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6f 70 74 69 6f 6e 73 2c 20 61 72 72 61 79 28 27 n,.array_merge($options,.array('
d4ae0 74 6f 74 61 6c 5f 77 69 64 74 68 27 20 3d 3e 20 24 74 6f 74 61 6c 57 69 64 74 68 29 29 29 3b 0a total_width'.=>.$totalWidth)));.
d4b00 7d 0a 66 6f 72 65 61 63 68 20 28 24 6c 61 74 65 72 4f 70 74 69 6f 6e 73 20 61 73 20 24 6f 70 74 }.foreach.($laterOptions.as.$opt
d4b20 69 6f 6e 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 0a 24 ion).{.$this->writeText("\n");.$
d4b40 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f this->describeInputOption($optio
d4b60 6e 2c 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6f 70 74 69 6f 6e 73 2c 20 61 72 72 61 79 28 27 n,.array_merge($options,.array('
d4b80 74 6f 74 61 6c 5f 77 69 64 74 68 27 20 3d 3e 20 24 74 6f 74 61 6c 57 69 64 74 68 29 29 29 3b 0a total_width'.=>.$totalWidth)));.
d4ba0 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 64 65 73 }.}.}.....protected.function.des
d4bc0 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
d4be0 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 63 6f 6d 6d rray.$options.=.array()).{.$comm
d4c00 61 6e 64 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 74 72 75 65 29 3b 0a 24 63 6f 6d 6d 61 6e 64 and->getSynopsis(true);.$command
d4c20 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 66 61 6c 73 65 29 3b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e ->getSynopsis(false);.$command->
d4c40 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 6e 28 66 61 6c 73 65 mergeApplicationDefinition(false
d4c60 29 3b 0a 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 55 );..$this->writeText('<comment>U
d4c80 73 61 67 65 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 sage:</comment>',.$options);.for
d4ca0 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 63 6f 6d 6d 61 6e 64 each.(array_merge(array($command
d4cc0 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 74 72 75 65 29 29 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e ->getSynopsis(true)),.$command->
d4ce0 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 61 67 65 getAliases(),.$command->getUsage
d4d00 73 28 29 29 20 61 73 20 24 75 73 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 s()).as.$usage).{.$this->writeTe
d4d20 78 74 28 22 5c 6e 22 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 27 20 20 27 2e xt("\n");.$this->writeText('..'.
d4d40 24 75 73 61 67 65 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 77 72 69 74 $usage,.$options);.}.$this->writ
d4d60 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 0a 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 63 6f 6d eText("\n");..$definition.=.$com
d4d80 6d 61 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 3b 0a 69 66 20 mand->getNativeDefinition();.if.
d4da0 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 7c 7c 20 24 64 ($definition->getOptions().||.$d
d4dc0 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 74 68 efinition->getArguments()).{.$th
d4de0 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 63 is->writeText("\n");.$this->desc
d4e00 72 69 62 65 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 64 65 66 69 6e 69 74 69 6f 6e 2c ribeInputDefinition($definition,
d4e20 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 65 78 74 28 22 5c 6e .$options);.$this->writeText("\n
d4e40 22 29 3b 0a 7d 0a 0a 69 66 20 28 24 68 65 6c 70 20 3d 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 ");.}..if.($help.=.$command->get
d4e60 50 72 6f 63 65 73 73 65 64 48 65 6c 70 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 ProcessedHelp()).{.$this->writeT
d4e80 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 78 74 28 27 3c 63 6f ext("\n");.$this->writeText('<co
d4ea0 6d 6d 65 6e 74 3e 48 65 6c 70 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 6f 70 74 69 6f 6e 73 mment>Help:</comment>',.$options
d4ec0 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 24 74 68 69 73 );.$this->writeText("\n");.$this
d4ee0 2d 3e 77 72 69 74 65 54 65 78 74 28 27 20 27 2e 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 ->writeText('.'.str_replace("\n"
d4f00 2c 20 22 5c 6e 20 22 2c 20 24 68 65 6c 70 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 24 74 68 69 ,."\n.",.$help),.$options);.$thi
d4f20 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 s->writeText("\n");.}.}.....prot
d4f40 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 74 69 ected.function.describeApplicati
d4f60 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 72 72 on(Application.$application,.arr
d4f80 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 72 69 ay.$options.=.array()).{.$descri
d4fa0 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 27 6e bedNamespace.=.isset($options['n
d4fc0 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 61 63 amespace']).?.$options['namespac
d4fe0 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 20 41 e'].:.null;.$description.=.new.A
d5000 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 74 69 pplicationDescription($applicati
d5020 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 0a 69 66 20 28 69 on,.$describedNamespace);..if.(i
d5040 73 73 65 74 28 24 6f 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 sset($options['raw_text']).&&.$o
d5060 70 74 69 6f 6e 73 5b 27 72 61 77 5f 74 65 78 74 27 5d 29 20 7b 0a 24 77 69 64 74 68 20 3d 20 24 ptions['raw_text']).{.$width.=.$
d5080 74 68 69 73 2d 3e 67 65 74 43 6f 6c 75 6d 6e 57 69 64 74 68 28 24 64 65 73 63 72 69 70 74 69 6f this->getColumnWidth($descriptio
d50a0 6e 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 73 28 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 n->getCommands());..foreach.($de
d50c0 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 63 6f 6d scription->getCommands().as.$com
d50e0 6d 61 6e 64 29 20 7b 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 mand).{.$this->writeText(sprintf
d5100 28 22 25 2d 24 7b 77 69 64 74 68 7d 73 20 25 73 22 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 ("%-${width}s.%s",.$command->get
d5120 4e 61 6d 65 28 29 2c 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 Name(),.$command->getDescription
d5140 28 29 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 65 78 74 ()),.$options);.$this->writeText
d5160 28 22 5c 6e 22 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 27 27 20 21 3d 20 24 68 65 ("\n");.}.}.else.{.if.(''.!=.$he
d5180 6c 70 20 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 48 65 6c 70 28 29 29 20 7b 0a lp.=.$application->getHelp()).{.
d51a0 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 24 68 65 6c 70 5c 6e 5c 6e 22 2c 20 24 6f $this->writeText("$help\n\n",.$o
d51c0 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 22 3c 63 ptions);.}..$this->writeText("<c
d51e0 6f 6d 6d 65 6e 74 3e 55 73 61 67 65 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 5c 6e 22 2c 20 24 6f 70 74 omment>Usage:</comment>\n",.$opt
d5200 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 20 20 63 6f 6d 6d 61 ions);.$this->writeText("..comma
d5220 6e 64 20 5b 6f 70 74 69 6f 6e 73 5d 20 5b 61 72 67 75 6d 65 6e 74 73 5d 5c 6e 5c 6e 22 2c 20 24 nd.[options].[arguments]\n\n",.$
d5240 6f 70 74 69 6f 6e 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 62 65 49 6e 70 75 74 44 options);..$this->describeInputD
d5260 65 66 69 6e 69 74 69 6f 6e 28 6e 65 77 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 61 efinition(new.InputDefinition($a
d5280 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 29 2d 3e 67 65 74 pplication->getDefinition()->get
d52a0 4f 70 74 69 6f 6e 73 28 29 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 77 Options()),.$options);..$this->w
d52c0 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 78 74 riteText("\n");.$this->writeText
d52e0 28 22 5c 6e 22 29 3b 0a 0a 24 77 69 64 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6c 75 ("\n");..$width.=.$this->getColu
d5300 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 6d 61 6e 64 mnWidth($description->getCommand
d5320 73 28 29 29 3b 0a 0a 69 66 20 28 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 29 20 s());..if.($describedNamespace).
d5340 7b 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 3c 63 6f 6d {.$this->writeText(sprintf('<com
d5360 6d 65 6e 74 3e 41 76 61 69 6c 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 74 68 65 20 ment>Available.commands.for.the.
d5380 22 25 73 22 20 6e 61 6d 65 73 70 61 63 65 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 64 65 73 "%s".namespace:</comment>',.$des
d53a0 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 65 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 20 65 cribedNamespace),.$options);.}.e
d53c0 6c 73 65 20 7b 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 lse.{.$this->writeText('<comment
d53e0 3e 41 76 61 69 6c 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c >Available.commands:</comment>',
d5400 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 64 65 73 63 72 .$options);.}....foreach.($descr
d5420 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
d5440 73 70 61 63 65 29 20 7b 0a 69 66 20 28 21 24 64 65 73 63 72 69 62 65 64 4e 61 6d 65 73 70 61 63 space).{.if.(!$describedNamespac
d5460 65 20 26 26 20 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 73 63 72 69 70 74 69 6f 6e 3a 3a 47 4c 4f e.&&.ApplicationDescription::GLO
d5480 42 41 4c 5f 4e 41 4d 45 53 50 41 43 45 20 21 3d 3d 20 24 6e 61 6d 65 73 70 61 63 65 5b 27 69 64 BAL_NAMESPACE.!==.$namespace['id
d54a0 27 5d 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 0a 24 74 ']).{.$this->writeText("\n");.$t
d54c0 68 69 73 2d 3e 77 72 69 74 65 54 65 78 74 28 27 20 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 6e 61 6d his->writeText('.<comment>'.$nam
d54e0 65 73 70 61 63 65 5b 27 69 64 27 5d 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 6f 70 74 69 espace['id'].'</comment>',.$opti
d5500 6f 6e 73 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 61 6d 65 73 70 61 63 65 5b 27 63 6f ons);.}..foreach.($namespace['co
d5520 6d 6d 61 6e 64 73 27 5d 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 mmands'].as.$name).{.$this->writ
d5540 65 54 65 78 74 28 22 5c 6e 22 29 3b 0a 24 73 70 61 63 69 6e 67 57 69 64 74 68 20 3d 20 24 77 69 eText("\n");.$spacingWidth.=.$wi
d5560 64 74 68 20 2d 20 73 74 72 6c 65 6e 28 24 6e 61 6d 65 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 dth.-.strlen($name);.$this->writ
d5580 65 54 65 78 74 28 73 70 72 69 6e 74 66 28 27 20 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e eText(sprintf('..<info>%s</info>
d55a0 25 73 25 73 27 2c 20 24 6e 61 6d 65 2c 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 73 %s%s',.$name,.str_repeat('.',.$s
d55c0 70 61 63 69 6e 67 57 69 64 74 68 29 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2d 3e 67 65 74 43 pacingWidth),.$description->getC
d55e0 6f 6d 6d 61 6e 64 28 24 6e 61 6d 65 29 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 ommand($name)->getDescription())
d5600 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 54 65 ,.$options);.}.}..$this->writeTe
d5620 78 74 28 22 5c 6e 22 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 xt("\n");.}.}.....private.functi
d5640 6f 6e 20 77 72 69 74 65 54 65 78 74 28 24 63 6f 6e 74 65 6e 74 2c 20 61 72 72 61 79 20 24 6f 70 on.writeText($content,.array.$op
d5660 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 77 72 69 74 65 28 tions.=.array()).{.$this->write(
d5680 0a 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 72 61 77 5f 74 65 78 74 27 5d 29 20 26 26 20 .isset($options['raw_text']).&&.
d56a0 24 6f 70 74 69 6f 6e 73 5b 27 72 61 77 5f 74 65 78 74 27 5d 20 3f 20 73 74 72 69 70 5f 74 61 67 $options['raw_text'].?.strip_tag
d56c0 73 28 24 63 6f 6e 74 65 6e 74 29 20 3a 20 24 63 6f 6e 74 65 6e 74 2c 0a 69 73 73 65 74 28 24 6f s($content).:.$content,.isset($o
d56e0 70 74 69 6f 6e 73 5b 27 72 61 77 5f 6f 75 74 70 75 74 27 5d 29 20 3f 20 21 24 6f 70 74 69 6f 6e ptions['raw_output']).?.!$option
d5700 73 5b 27 72 61 77 5f 6f 75 74 70 75 74 27 5d 20 3a 20 74 72 75 65 0a 29 3b 0a 7d 0a 0a 0a 0a 0a s['raw_output'].:.true.);.}.....
d5720 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 44 65 66 61 75 ....private.function.formatDefau
d5740 6c 74 56 61 6c 75 65 28 24 64 65 66 61 75 6c 74 29 0a 7b 0a 69 66 20 28 50 48 50 5f 56 45 52 53 ltValue($default).{.if.(PHP_VERS
d5760 49 4f 4e 5f 49 44 20 3c 20 35 30 34 30 30 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 ION_ID.<.50400).{.return.str_rep
d5780 6c 61 63 65 28 61 72 72 61 79 28 27 5c 2f 27 2c 20 27 5c 5c 5c 5c 27 29 2c 20 61 72 72 61 79 28 lace(array('\/',.'\\\\'),.array(
d57a0 27 2f 27 2c 20 27 5c 5c 27 29 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 65 66 61 75 6c 74 '/',.'\\'),.json_encode($default
d57c0 29 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 27 5c 5c 5c 5c 27 ));.}..return.str_replace('\\\\'
d57e0 2c 20 27 5c 5c 27 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 65 66 61 75 6c 74 2c 20 4a 53 ,.'\\',.json_encode($default,.JS
d5800 4f 4e 5f 55 4e 45 53 43 41 50 45 44 5f 53 4c 41 53 48 45 53 20 7c 20 4a 53 4f 4e 5f 55 4e 45 53 ON_UNESCAPED_SLASHES.|.JSON_UNES
d5820 43 41 50 45 44 5f 55 4e 49 43 4f 44 45 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 CAPED_UNICODE));.}.......private
d5840 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6c 75 6d 6e 57 69 64 74 68 28 61 72 72 61 79 20 24 .function.getColumnWidth(array.$
d5860 63 6f 6d 6d 61 6e 64 73 29 0a 7b 0a 24 77 69 64 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a commands).{.$widths.=.array();..
d5880 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 foreach.($commands.as.$command).
d58a0 7b 0a 24 77 69 64 74 68 73 5b 5d 20 3d 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 {.$widths[].=.strlen($command->g
d58c0 65 74 4e 61 6d 65 28 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 etName());.foreach.($command->ge
d58e0 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 77 69 64 74 68 73 5b tAliases().as.$alias).{.$widths[
d5900 5d 20 3d 20 73 74 72 6c 65 6e 28 24 61 6c 69 61 73 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 ].=.strlen($alias);.}.}..return.
d5920 6d 61 78 28 24 77 69 64 74 68 73 29 20 2b 20 32 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 max($widths).+.2;.}.......privat
d5940 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 63 75 6c 61 74 65 54 6f 74 61 6c 57 69 64 74 68 46 6f e.function.calculateTotalWidthFo
d5960 72 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 6f 6e 73 29 0a 7b 0a 24 74 6f 74 61 6c 57 69 64 74 68 rOptions($options).{.$totalWidth
d5980 20 3d 20 30 3b 0a 66 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 .=.0;.foreach.($options.as.$opti
d59a0 6f 6e 29 20 7b 0a 0a 20 24 6e 61 6d 65 4c 65 6e 67 74 68 20 3d 20 31 20 2b 20 6d 61 78 28 73 74 on).{...$nameLength.=.1.+.max(st
d59c0 72 6c 65 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 2c 20 31 29 rlen($option->getShortcut()),.1)
d59e0 20 2b 20 34 20 2b 20 73 74 72 6c 65 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 .+.4.+.strlen($option->getName()
d5a00 29 3b 0a 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 20 );..if.($option->acceptValue()).
d5a20 7b 0a 24 76 61 6c 75 65 4c 65 6e 67 74 68 20 3d 20 31 20 2b 20 73 74 72 6c 65 6e 28 24 6f 70 74 {.$valueLength.=.1.+.strlen($opt
d5a40 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 20 0a 20 24 76 61 6c 75 65 4c 65 6e 67 74 68 20 ion->getName());...$valueLength.
d5a60 2b 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 20 3f 20 +=.$option->isValueOptional().?.
d5a80 32 20 3a 20 30 3b 20 0a 0a 24 6e 61 6d 65 4c 65 6e 67 74 68 20 2b 3d 20 24 76 61 6c 75 65 4c 65 2.:.0;...$nameLength.+=.$valueLe
d5aa0 6e 67 74 68 3b 0a 7d 0a 24 74 6f 74 61 6c 57 69 64 74 68 20 3d 20 6d 61 78 28 24 74 6f 74 61 6c ngth;.}.$totalWidth.=.max($total
d5ac0 57 69 64 74 68 2c 20 24 6e 61 6d 65 4c 65 6e 67 74 68 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 Width,.$nameLength);.}..return.$
d5ae0 74 6f 74 61 6c 57 69 64 74 68 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a totalWidth;.}.}.<?php...........
d5b00 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
d5b20 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
d5b40 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.
d5b60 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
d5b80 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
d5ba0 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
d5bc0 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
d5be0 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
d5c00 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
d5c20 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 58 6d 6c 44 65 73 63 72 69 70 74 6f 72 20 on;.........class.XmlDescriptor.
d5c40 65 78 74 65 6e 64 73 20 44 65 73 63 72 69 70 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 extends.Descriptor.{......public
d5c60 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 44 6f 63 75 .function.getInputDefinitionDocu
d5c80 6d 65 6e 74 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 ment(InputDefinition.$definition
d5ca0 29 0a 7b 0a 24 64 6f 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 ).{.$dom.=.new.\DOMDocument('1.0
d5cc0 27 2c 20 27 55 54 46 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 ',.'UTF-8');.$dom->appendChild($
d5ce0 64 65 66 69 6e 69 74 69 6f 6e 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d definitionXML.=.$dom->createElem
d5d00 65 6e 74 28 27 64 65 66 69 6e 69 74 69 6f 6e 27 29 29 3b 0a 0a 24 64 65 66 69 6e 69 74 69 6f 6e ent('definition'));..$definition
d5d20 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 61 72 67 75 6d 65 6e 74 73 58 4d 4c 20 3d XML->appendChild($argumentsXML.=
d5d40 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 73 27 .$dom->createElement('arguments'
d5d60 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 72 67 ));.foreach.($definition->getArg
d5d80 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 68 69 73 2d 3e uments().as.$argument).{.$this->
d5da0 61 70 70 65 6e 64 44 6f 63 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 73 58 4d 4c 2c 20 24 74 appendDocument($argumentsXML,.$t
d5dc0 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
d5de0 72 67 75 6d 65 6e 74 29 29 3b 0a 7d 0a 0a 24 64 65 66 69 6e 69 74 69 6f 6e 58 4d 4c 2d 3e 61 70 rgument));.}..$definitionXML->ap
d5e00 70 65 6e 64 43 68 69 6c 64 28 24 6f 70 74 69 6f 6e 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 pendChild($optionsXML.=.$dom->cr
d5e20 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 6f 70 74 69 6f 6e 73 27 29 29 3b 0a 66 6f 72 65 61 63 68 eateElement('options'));.foreach
d5e40 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 73 20 24 .($definition->getOptions().as.$
d5e60 6f 70 74 69 6f 6e 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 28 option).{.$this->appendDocument(
d5e80 24 6f 70 74 69 6f 6e 73 58 4d 4c 2c 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 4f 70 74 69 $optionsXML,.$this->getInputOpti
d5ea0 6f 6e 44 6f 63 75 6d 65 6e 74 28 24 6f 70 74 69 6f 6e 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 onDocument($option));.}..return.
d5ec0 24 64 6f 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 67 65 $dom;.}.......public.function.ge
d5ee0 74 43 6f 6d 6d 61 6e 64 44 6f 63 75 6d 65 6e 74 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e tCommandDocument(Command.$comman
d5f00 64 29 0a 7b 0a 24 64 6f 6d 20 3d 20 6e 65 77 20 5c 44 4f 4d 44 6f 63 75 6d 65 6e 74 28 27 31 2e d).{.$dom.=.new.\DOMDocument('1.
d5f20 30 27 2c 20 27 55 54 46 2d 38 27 29 3b 0a 24 64 6f 6d 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 0',.'UTF-8');.$dom->appendChild(
d5f40 24 63 6f 6d 6d 61 6e 64 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e $commandXML.=.$dom->createElemen
d5f60 74 28 27 63 6f 6d 6d 61 6e 64 27 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 79 6e t('command'));..$command->getSyn
d5f80 6f 70 73 69 73 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 6d 65 72 67 65 41 70 70 6c 69 63 61 74 opsis();.$command->mergeApplicat
d5fa0 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 28 66 61 6c 73 65 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 58 ionDefinition(false);..$commandX
d5fc0 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 64 27 2c 20 24 63 6f 6d 6d 61 6e 64 2d ML->setAttribute('id',.$command-
d5fe0 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 73 65 74 41 74 74 >getName());.$commandXML->setAtt
d6000 72 69 62 75 74 65 28 27 6e 61 6d 65 27 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 ribute('name',.$command->getName
d6020 28 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 ());..$commandXML->appendChild($
d6040 75 73 61 67 65 73 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 usagesXML.=.$dom->createElement(
d6060 27 75 73 61 67 65 73 27 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 6d 65 72 67 'usages'));..foreach.(array_merg
d6080 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 69 73 28 29 29 e(array($command->getSynopsis())
d60a0 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 2c 20 24 63 6f 6d 6d 61 ,.$command->getAliases(),.$comma
d60c0 6e 64 2d 3e 67 65 74 55 73 61 67 65 73 28 29 29 20 61 73 20 24 75 73 61 67 65 29 20 7b 0a 24 75 nd->getUsages()).as.$usage).{.$u
d60e0 73 61 67 65 73 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 sagesXML->appendChild($dom->crea
d6100 74 65 45 6c 65 6d 65 6e 74 28 27 75 73 61 67 65 27 2c 20 24 75 73 61 67 65 29 29 3b 0a 7d 0a 0a teElement('usage',.$usage));.}..
d6120 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 73 63 72 69 $commandXML->appendChild($descri
d6140 70 74 69 6f 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 ptionXML.=.$dom->createElement('
d6160 64 65 73 63 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 description'));.$descriptionXML-
d6180 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 65 78 74 4e 6f 64 >appendChild($dom->createTextNod
d61a0 65 28 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 24 63 6f 6d 6d e(str_replace("\n",."\n.",.$comm
d61c0 61 6e 64 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 29 29 3b 0a 0a 24 63 6f 6d 6d and->getDescription())));..$comm
d61e0 61 6e 64 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 68 65 6c 70 58 4d 4c 20 3d 20 24 andXML->appendChild($helpXML.=.$
d6200 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 68 65 6c 70 27 29 29 3b 0a 24 68 65 dom->createElement('help'));.$he
d6220 6c 70 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 lpXML->appendChild($dom->createT
d6240 65 78 74 4e 6f 64 65 28 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 22 5c 6e 20 22 2c extNode(str_replace("\n",."\n.",
d6260 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 29 29 .$command->getProcessedHelp())))
d6280 3b 0a 0a 24 64 65 66 69 6e 69 74 69 6f 6e 58 4d 4c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e ;..$definitionXML.=.$this->getIn
d62a0 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 2d 3e putDefinitionDocument($command->
d62c0 67 65 74 4e 61 74 69 76 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 3b 0a 24 74 68 69 73 2d 3e 61 getNativeDefinition());.$this->a
d62e0 70 70 65 6e 64 44 6f 63 75 6d 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2c 20 24 64 65 66 69 ppendDocument($commandXML,.$defi
d6300 6e 69 74 69 6f 6e 58 4d 4c 2d 3e 67 65 74 45 6c 65 6d 65 6e 74 73 42 79 54 61 67 4e 61 6d 65 28 nitionXML->getElementsByTagName(
d6320 27 64 65 66 69 6e 69 74 69 6f 6e 27 29 2d 3e 69 74 65 6d 28 30 29 29 3b 0a 0a 72 65 74 75 72 6e 'definition')->item(0));..return
d6340 20 24 64 6f 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 .$dom;.}........public.function.
d6360 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 41 70 70 6c 69 63 61 74 69 getApplicationDocument(Applicati
d6380 6f 6e 20 24 61 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 on.$application,.$namespace.=.nu
d63a0 6c 6c 29 0a 7b 0a 24 64 6f 6d 20 3d 20 6e 65 77 20 5c 44 4f 4d 44 6f 63 75 6d 65 6e 74 28 27 31 ll).{.$dom.=.new.\DOMDocument('1
d63c0 2e 30 27 2c 20 27 55 54 46 2d 38 27 29 3b 0a 24 64 6f 6d 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 .0',.'UTF-8');.$dom->appendChild
d63e0 28 24 72 6f 6f 74 58 6d 6c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 ($rootXml.=.$dom->createElement(
d6400 27 73 79 6d 66 6f 6e 79 27 29 29 3b 0a 0a 69 66 20 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 'symfony'));..if.($application->
d6420 67 65 74 4e 61 6d 65 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 getName().!==.'UNKNOWN').{.$root
d6440 58 6d 6c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 6e 61 6d 65 27 2c 20 24 61 70 70 6c 69 Xml->setAttribute('name',.$appli
d6460 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 69 66 20 28 24 61 70 70 6c 69 63 61 cation->getName());.if.($applica
d6480 74 69 6f 6e 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 20 21 3d 3d 20 27 55 4e 4b 4e 4f 57 4e 27 tion->getVersion().!==.'UNKNOWN'
d64a0 29 20 7b 0a 24 72 6f 6f 74 58 6d 6c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 76 65 72 73 ).{.$rootXml->setAttribute('vers
d64c0 69 6f 6e 27 2c 20 24 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 ion',.$application->getVersion()
d64e0 29 3b 0a 7d 0a 7d 0a 0a 24 72 6f 6f 74 58 6d 6c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 63 );.}.}..$rootXml->appendChild($c
d6500 6f 6d 6d 61 6e 64 73 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 ommandsXML.=.$dom->createElement
d6520 28 27 63 6f 6d 6d 61 6e 64 73 27 29 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 6e ('commands'));..$description.=.n
d6540 65 77 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 ew.ApplicationDescription($appli
d6560 63 61 74 69 6f 6e 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a 0a 69 66 20 28 24 6e 61 6d 65 73 cation,.$namespace);..if.($names
d6580 70 61 63 65 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 73 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 pace).{.$commandsXML->setAttribu
d65a0 74 65 28 27 6e 61 6d 65 73 70 61 63 65 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a 7d 0a 0a te('namespace',.$namespace);.}..
d65c0 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 61 6e foreach.($description->getComman
d65e0 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 61 70 70 65 6e ds().as.$command).{.$this->appen
d6600 64 44 6f 63 75 6d 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 73 58 4d 4c 2c 20 24 74 68 69 73 2d 3e 67 dDocument($commandsXML,.$this->g
d6620 65 74 43 6f 6d 6d 61 6e 64 44 6f 63 75 6d 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 29 29 3b 0a 7d 0a etCommandDocument($command));.}.
d6640 0a 69 66 20 28 21 24 6e 61 6d 65 73 70 61 63 65 29 20 7b 0a 24 72 6f 6f 74 58 6d 6c 2d 3e 61 70 .if.(!$namespace).{.$rootXml->ap
d6660 70 65 6e 64 43 68 69 6c 64 28 24 6e 61 6d 65 73 70 61 63 65 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d pendChild($namespacesXML.=.$dom-
d6680 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 6e 61 6d 65 73 70 61 63 65 73 27 29 29 3b 0a 0a >createElement('namespaces'));..
d66a0 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 4e 61 6d 65 73 70 foreach.($description->getNamesp
d66c0 61 63 65 73 28 29 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 44 65 73 63 72 69 70 74 69 6f 6e 29 aces().as.$namespaceDescription)
d66e0 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 .{.$namespacesXML->appendChild($
d6700 6e 61 6d 65 73 70 61 63 65 41 72 72 61 79 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 namespaceArrayXML.=.$dom->create
d6720 45 6c 65 6d 65 6e 74 28 27 6e 61 6d 65 73 70 61 63 65 27 29 29 3b 0a 24 6e 61 6d 65 73 70 61 63 Element('namespace'));.$namespac
d6740 65 41 72 72 61 79 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 64 27 2c 20 24 6e eArrayXML->setAttribute('id',.$n
d6760 61 6d 65 73 70 61 63 65 44 65 73 63 72 69 70 74 69 6f 6e 5b 27 69 64 27 5d 29 3b 0a 0a 66 6f 72 amespaceDescription['id']);..for
d6780 65 61 63 68 20 28 24 6e 61 6d 65 73 70 61 63 65 44 65 73 63 72 69 70 74 69 6f 6e 5b 27 63 6f 6d each.($namespaceDescription['com
d67a0 6d 61 6e 64 73 27 5d 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 41 72 mands'].as.$name).{.$namespaceAr
d67c0 72 61 79 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 63 6f 6d 6d 61 6e 64 58 4d 4c 20 rayXML->appendChild($commandXML.
d67e0 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 27 29 =.$dom->createElement('command')
d6800 29 3b 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d );.$commandXML->appendChild($dom
d6820 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 24 6e 61 6d 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a ->createTextNode($name));.}.}.}.
d6840 0a 72 65 74 75 72 6e 20 24 64 6f 6d 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 .return.$dom;.}.....protected.fu
d6860 6e 63 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 nction.describeInputArgument(Inp
d6880 75 74 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 utArgument.$argument,.array.$opt
d68a0 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 6f ions.=.array()).{.$this->writeDo
d68c0 63 75 6d 65 6e 74 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 6f cument($this->getInputArgumentDo
d68e0 63 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 cument($argument));.}.....protec
d6900 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
d6920 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
d6940 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 6f ions.=.array()).{.$this->writeDo
d6960 63 75 6d 65 6e 74 28 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 cument($this->getInputOptionDocu
d6980 6d 65 6e 74 28 24 6f 70 74 69 6f 6e 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 ment($option));.}.....protected.
d69a0 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 6f 6e function.describeInputDefinition
d69c0 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 61 72 (InputDefinition.$definition,.ar
d69e0 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 2d ray.$options.=.array()).{.$this-
d6a00 3e 77 72 69 74 65 44 6f 63 75 6d 65 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 49 6e 70 75 74 44 65 >writeDocument($this->getInputDe
d6a20 66 69 6e 69 74 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 29 3b 0a finitionDocument($definition));.
d6a40 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 63 72 69 62 }.....protected.function.describ
d6a60 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 72 72 61 79 eCommand(Command.$command,.array
d6a80 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 2d 3e 77 72 .$options.=.array()).{.$this->wr
d6aa0 69 74 65 44 6f 63 75 6d 65 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 44 6f 63 iteDocument($this->getCommandDoc
d6ac0 75 6d 65 6e 74 28 24 63 6f 6d 6d 61 6e 64 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 ument($command));.}.....protecte
d6ae0 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 74 69 6f 6e 28 41 d.function.describeApplication(A
d6b00 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 72 72 61 79 20 24 pplication.$application,.array.$
d6b20 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 2d 3e 77 72 69 74 options.=.array()).{.$this->writ
d6b40 65 44 6f 63 75 6d 65 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 44 eDocument($this->getApplicationD
d6b60 6f 63 75 6d 65 6e 74 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 69 73 73 65 74 28 24 6f 70 74 ocument($application,.isset($opt
d6b80 69 6f 6e 73 5b 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 ions['namespace']).?.$options['n
d6ba0 61 6d 65 73 70 61 63 65 27 5d 20 3a 20 6e 75 6c 6c 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 amespace'].:.null));.}........pr
d6bc0 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 70 70 65 6e 64 44 6f 63 75 6d 65 6e 74 28 5c 44 ivate.function.appendDocument(\D
d6be0 4f 4d 4e 6f 64 65 20 24 70 61 72 65 6e 74 4e 6f 64 65 2c 20 5c 44 4f 4d 4e 6f 64 65 20 24 69 6d OMNode.$parentNode,.\DOMNode.$im
d6c00 70 6f 72 74 65 64 50 61 72 65 6e 74 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 69 6d 70 6f 72 74 portedParent).{.foreach.($import
d6c20 65 64 50 61 72 65 6e 74 2d 3e 63 68 69 6c 64 4e 6f 64 65 73 20 61 73 20 24 63 68 69 6c 64 4e 6f edParent->childNodes.as.$childNo
d6c40 64 65 29 20 7b 0a 24 70 61 72 65 6e 74 4e 6f 64 65 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 de).{.$parentNode->appendChild($
d6c60 70 61 72 65 6e 74 4e 6f 64 65 2d 3e 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 74 2d 3e 69 6d 70 6f 72 parentNode->ownerDocument->impor
d6c80 74 4e 6f 64 65 28 24 63 68 69 6c 64 4e 6f 64 65 2c 20 74 72 75 65 29 29 3b 0a 7d 0a 7d 0a 0a 0a tNode($childNode,.true));.}.}...
d6ca0 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 6f 63 75 ......private.function.writeDocu
d6cc0 6d 65 6e 74 28 5c 44 4f 4d 44 6f 63 75 6d 65 6e 74 20 24 64 6f 6d 29 0a 7b 0a 24 64 6f 6d 2d 3e ment(\DOMDocument.$dom).{.$dom->
d6ce0 66 6f 72 6d 61 74 4f 75 74 70 75 74 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 formatOutput.=.true;.$this->writ
d6d00 65 28 24 64 6f 6d 2d 3e 73 61 76 65 58 4d 4c 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 e($dom->saveXML());.}.......priv
d6d20 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 44 6f 63 ate.function.getInputArgumentDoc
d6d40 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 29 0a 7b ument(InputArgument.$argument).{
d6d60 0a 24 64 6f 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 .$dom.=.new.\DOMDocument('1.0',.
d6d80 27 55 54 46 2d 38 27 29 3b 0a 0a 24 64 6f 6d 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 6f 62 'UTF-8');..$dom->appendChild($ob
d6da0 6a 65 63 74 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 61 jectXML.=.$dom->createElement('a
d6dc0 72 67 75 6d 65 6e 74 27 29 29 3b 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 rgument'));.$objectXML->setAttri
d6de0 62 75 74 65 28 27 6e 61 6d 65 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 bute('name',.$argument->getName(
d6e00 29 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 73 ));.$objectXML->setAttribute('is
d6e20 5f 72 65 71 75 69 72 65 64 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 65 _required',.$argument->isRequire
d6e40 64 28 29 20 3f 20 31 20 3a 20 30 29 3b 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 73 65 74 41 74 74 d().?.1.:.0);.$objectXML->setAtt
d6e60 72 69 62 75 74 65 28 27 69 73 5f 61 72 72 61 79 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 ribute('is_array',.$argument->is
d6e80 41 72 72 61 79 28 29 20 3f 20 31 20 3a 20 30 29 3b 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 61 70 Array().?.1.:.0);.$objectXML->ap
d6ea0 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 3d 20 24 64 6f 6d pendChild($descriptionXML.=.$dom
d6ec0 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 6f 6e 27 29 29 3b ->createElement('description'));
d6ee0 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 69 6c 64 28 24 64 .$descriptionXML->appendChild($d
d6f00 6f 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 om->createTextNode($argument->ge
d6f20 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 29 3b 0a 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 61 tDescription()));..$objectXML->a
d6f40 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 6d 2d 3e ppendChild($defaultsXML.=.$dom->
d6f60 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 24 64 65 66 createElement('defaults'));.$def
d6f80 61 75 6c 74 73 20 3d 20 69 73 5f 61 72 72 61 79 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 aults.=.is_array($argument->getD
d6fa0 65 66 61 75 6c 74 28 29 29 20 3f 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c efault()).?.$argument->getDefaul
d6fc0 74 28 29 20 3a 20 28 69 73 5f 62 6f 6f 6c 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 t().:.(is_bool($argument->getDef
d6fe0 61 75 6c 74 28 29 29 20 3f 20 61 72 72 61 79 28 76 61 72 5f 65 78 70 6f 72 74 28 24 61 72 67 75 ault()).?.array(var_export($argu
d7000 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 2c 20 74 72 75 65 29 29 20 3a 20 28 24 61 ment->getDefault(),.true)).:.($a
d7020 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3f 20 61 72 72 61 79 28 24 61 rgument->getDefault().?.array($a
d7040 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 3a 20 61 72 72 61 79 28 29 rgument->getDefault()).:.array()
d7060 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 61 75 6c 74 73 20 61 73 20 24 64 65 66 61 75 ));.foreach.($defaults.as.$defau
d7080 6c 74 29 20 7b 0a 24 64 65 66 61 75 6c 74 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 lt).{.$defaultsXML->appendChild(
d70a0 24 64 65 66 61 75 6c 74 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e $defaultXML.=.$dom->createElemen
d70c0 74 28 27 64 65 66 61 75 6c 74 27 29 29 3b 0a 24 64 65 66 61 75 6c 74 58 4d 4c 2d 3e 61 70 70 65 t('default'));.$defaultXML->appe
d70e0 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 64 65 ndChild($dom->createTextNode($de
d7100 66 61 75 6c 74 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 6f 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a fault));.}..return.$dom;.}......
d7120 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 4f 70 74 69 6f 6e .private.function.getInputOption
d7140 44 6f 63 75 6d 65 6e 74 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 29 0a 7b 0a Document(InputOption.$option).{.
d7160 24 64 6f 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 $dom.=.new.\DOMDocument('1.0',.'
d7180 55 54 46 2d 38 27 29 3b 0a 0a 24 64 6f 6d 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 6f 62 6a UTF-8');..$dom->appendChild($obj
d71a0 65 63 74 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 6f 70 ectXML.=.$dom->createElement('op
d71c0 74 69 6f 6e 27 29 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 tion'));.$objectXML->setAttribut
d71e0 65 28 27 6e 61 6d 65 27 2c 20 27 2d 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 e('name',.'--'.$option->getName(
d7200 29 29 3b 0a 24 70 6f 73 20 3d 20 73 74 72 70 6f 73 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 ));.$pos.=.strpos($option->getSh
d7220 6f 72 74 63 75 74 28 29 2c 20 27 7c 27 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 ortcut(),.'|');.if.(false.!==.$p
d7240 6f 73 29 20 7b 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 os).{.$objectXML->setAttribute('
d7260 73 68 6f 72 74 63 75 74 27 2c 20 27 2d 27 2e 73 75 62 73 74 72 28 24 6f 70 74 69 6f 6e 2d 3e 67 shortcut',.'-'.substr($option->g
d7280 65 74 53 68 6f 72 74 63 75 74 28 29 2c 20 30 2c 20 24 70 6f 73 29 29 3b 0a 24 6f 62 6a 65 63 74 etShortcut(),.0,.$pos));.$object
d72a0 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 73 27 2c 20 27 XML->setAttribute('shortcuts',.'
d72c0 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 24 6f -'.implode('|-',.explode('|',.$o
d72e0 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 29 29 3b 0a 7d 20 65 6c 73 65 20 ption->getShortcut())));.}.else.
d7300 7b 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 73 68 6f 72 {.$objectXML->setAttribute('shor
d7320 74 63 75 74 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 20 3f 20 tcut',.$option->getShortcut().?.
d7340 27 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3a 20 27 27 29 '-'.$option->getShortcut().:.'')
d7360 3b 0a 7d 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 61 63 ;.}.$objectXML->setAttribute('ac
d7380 63 65 70 74 5f 76 61 6c 75 65 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 cept_value',.$option->acceptValu
d73a0 65 28 29 20 3f 20 31 20 3a 20 30 29 3b 0a 24 6f 62 6a 65 63 74 58 4d 4c 2d 3e 73 65 74 41 74 74 e().?.1.:.0);.$objectXML->setAtt
d73c0 72 69 62 75 74 65 28 27 69 73 5f 76 61 6c 75 65 5f 72 65 71 75 69 72 65 64 27 2c 20 24 6f 70 74 ribute('is_value_required',.$opt
d73e0 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 31 20 3a 20 30 29 3b ion->isValueRequired().?.1.:.0);
d7400 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 73 5f 6d 75 .$objectXML->setAttribute('is_mu
d7420 6c 74 69 70 6c 65 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 20 3f 20 31 20 ltiple',.$option->isArray().?.1.
d7440 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 28 24 64 :.0);.$objectXML->appendChild($d
d7460 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 6c 65 6d escriptionXML.=.$dom->createElem
d7480 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 74 69 6f ent('description'));.$descriptio
d74a0 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 65 54 65 nXML->appendChild($dom->createTe
d74c0 78 74 4e 6f 64 65 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 xtNode($option->getDescription()
d74e0 29 29 3b 0a 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())
d7500 20 7b 0a 24 64 65 66 61 75 6c 74 73 20 3d 20 69 73 5f 61 72 72 61 79 28 24 6f 70 74 69 6f 6e 2d .{.$defaults.=.is_array($option-
d7520 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 3f 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 >getDefault()).?.$option->getDef
d7540 61 75 6c 74 28 29 20 3a 20 28 69 73 5f 62 6f 6f 6c 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 ault().:.(is_bool($option->getDe
d7560 66 61 75 6c 74 28 29 29 20 3f 20 61 72 72 61 79 28 76 61 72 5f 65 78 70 6f 72 74 28 24 6f 70 74 fault()).?.array(var_export($opt
d7580 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 2c 20 74 72 75 65 29 29 20 3a 20 28 24 6f 70 ion->getDefault(),.true)).:.($op
d75a0 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3f 20 61 72 72 61 79 28 24 6f 70 74 69 tion->getDefault().?.array($opti
d75c0 6f 6e 2d 3e 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 24 on->getDefault()).:.array()));.$
d75e0 6f 62 6a 65 63 74 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 73 objectXML->appendChild($defaults
d7600 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 61 75 XML.=.$dom->createElement('defau
d7620 6c 74 73 27 29 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 64 65 66 61 75 6c 74 73 29 29 20 lts'));..if.(!empty($defaults)).
d7640 7b 0a 66 6f 72 65 61 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 {.foreach.($defaults.as.$default
d7660 29 20 7b 0a 24 64 65 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 ).{.$defaultsXML->appendChild($d
d7680 65 66 61 75 6c 74 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 efaultXML.=.$dom->createElement(
d76a0 27 64 65 66 61 75 6c 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 'default'));.$defaultXML->append
d76c0 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 64 65 66 61 Child($dom->createTextNode($defa
d76e0 75 6c 74 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 6f 6d 3b 0a 7d 0a 7d 0a 3c ult));.}.}.}..return.$dom;.}.}.<
d7700 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
d7720 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 0a 0a 0a 0a 0a \Component\Console\Event;.......
d7740 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 65 78 74 65 6e 64 class.ConsoleCommandEvent.extend
d7760 73 20 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 63 6f 6e 73 74 20 52 45 54 55 52 4e s.ConsoleEvent.{....const.RETURN
d7780 5f 43 4f 44 45 5f 44 49 53 41 42 4c 45 44 20 3d 20 31 31 33 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 _CODE_DISABLED.=.113;.......priv
d77a0 61 74 65 20 24 63 6f 6d 6d 61 6e 64 53 68 6f 75 6c 64 52 75 6e 20 3d 20 74 72 75 65 3b 0a 0a 0a ate.$commandShouldRun.=.true;...
d77c0 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 43 6f 6d 6d 61 ....public.function.disableComma
d77e0 6e 64 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 64 53 68 6f 75 nd().{.return.$this->commandShou
d7800 6c 64 52 75 6e 20 3d 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 ldRun.=.false;.}.......public.fu
d7820 6e 63 74 69 6f 6e 20 65 6e 61 62 6c 65 43 6f 6d 6d 61 6e 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 nction.enableCommand().{.return.
d7840 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 74 72 75 65 3b 0a $this->commandShouldRun.=.true;.
d7860 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 6d 6d 61 6e 64 53 }.......public.function.commandS
d7880 68 6f 75 6c 64 52 75 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 houldRun().{.return.$this->comma
d78a0 6e 64 53 68 6f 75 6c 64 52 75 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ndShouldRun;.}.}.<?php..........
d78c0 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
d78e0 73 6f 6c 65 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 sole\Event;..use.Symfony\Compone
d7900 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 20 nt\Console\Command\Command;.use.
d7920 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\
d7940 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 6d 70 InputInterface;.use.Symfony\Comp
d7960 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
d7980 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 45 76 65 6e face;.use.Symfony\Component\Even
d79a0 74 44 69 73 70 61 74 63 68 65 72 5c 45 76 65 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 tDispatcher\Event;.......class.C
d79c0 6f 6e 73 6f 6c 65 45 76 65 6e 74 20 65 78 74 65 6e 64 73 20 45 76 65 6e 74 0a 7b 0a 70 72 6f 74 onsoleEvent.extends.Event.{.prot
d79e0 65 63 74 65 64 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 70 72 69 76 61 74 65 20 24 69 6e 70 75 74 3b ected.$command;..private.$input;
d7a00 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 .private.$output;..public.functi
d7a20 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 6f 6d 6d 61 6e 64 2c on.__construct(Command.$command,
d7a40 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 6e .InputInterface.$input,.OutputIn
d7a60 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 63 6f 6d 6d 61 6e terface.$output).{.$this->comman
d7a80 64 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 24 69 6e d.=.$command;.$this->input.=.$in
d7aa0 70 75 74 3b 0a 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 7d 0a put;.$this->output.=.$output;.}.
d7ac0 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 61 6e 64 ......public.function.getCommand
d7ae0 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 64 3b 0a 7d 0a 0a 0a ().{.return.$this->command;.}...
d7b00 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 70 75 74 28 29 0a 7b ....public.function.getInput().{
d7b20 0a 72 65 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 .return.$this->input;.}.......pu
d7b40 62 6c 69 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 blic.function.getOutput().{.retu
d7b60 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a rn.$this->output;.}.}.<?php.....
d7b80 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
d7ba0 74 5c 43 6f 6e 73 6f 6c 65 5c 45 76 65 6e 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f t\Console\Event;..use.Symfony\Co
d7bc0 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 3b mponent\Console\Command\Command;
d7be0 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
d7c00 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
d7c20 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
d7c40 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 6e 73 6f 6c 65 45 78 Interface;.......class.ConsoleEx
d7c60 63 65 70 74 69 6f 6e 45 76 65 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 6f 6c 65 45 76 65 6e ceptionEvent.extends.ConsoleEven
d7c80 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 65 78 63 65 70 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 t.{.private.$exception;.private.
d7ca0 24 65 78 69 74 43 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 $exitCode;..public.function.__co
d7cc0 6e 73 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 nstruct(Command.$command,.InputI
d7ce0 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
d7d00 20 24 6f 75 74 70 75 74 2c 20 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 78 63 65 70 74 69 6f 6e 2c .$output,.\Exception.$exception,
d7d20 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 72 75 63 .$exitCode).{.parent::__construc
d7d40 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 0a 0a 24 t($command,.$input,.$output);..$
d7d60 74 68 69 73 2d 3e 73 65 74 45 78 63 65 70 74 69 6f 6e 28 24 65 78 63 65 70 74 69 6f 6e 29 3b 0a this->setException($exception);.
d7d80 24 74 68 69 73 2d 3e 65 78 69 74 43 6f 64 65 20 3d 20 28 69 6e 74 29 20 24 65 78 69 74 43 6f 64 $this->exitCode.=.(int).$exitCod
d7da0 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 45 78 e;.}.......public.function.getEx
d7dc0 63 65 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 63 65 70 74 ception().{.return.$this->except
d7de0 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 73 ion;.}.........public.function.s
d7e00 65 74 45 78 63 65 70 74 69 6f 6e 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 78 63 65 70 74 69 6f etException(\Exception.$exceptio
d7e20 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 20 3d 20 24 65 78 63 65 70 74 69 n).{.$this->exception.=.$excepti
d7e40 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 67 65 74 45 on;.}.......public.function.getE
d7e60 78 69 74 43 6f 64 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 69 74 43 6f xitCode().{.return.$this->exitCo
d7e80 64 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 de;.}.}.<?php...........namespac
d7ea0 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
d7ec0 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
d7ee0 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
d7f00 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
d7f20 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
d7f40 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;....
d7f60 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 54 65 72 6d 69 6e 61 74 65 45 76 65 6e 74 20 65 ...class.ConsoleTerminateEvent.e
d7f80 78 74 65 6e 64 73 20 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 0a 0a 70 72 69 76 61 xtends.ConsoleEvent.{......priva
d7fa0 74 65 20 24 65 78 69 74 43 6f 64 65 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f te.$exitCode;..public.function._
d7fc0 5f 63 6f 6e 73 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 _construct(Command.$command,.Inp
d7fe0 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 66 utInterface.$input,.OutputInterf
d8000 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 65 78 69 74 43 6f 64 65 29 0a 7b 0a 70 61 72 65 6e 74 ace.$output,.$exitCode).{.parent
d8020 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 69 6e 70 75 74 2c 20 ::__construct($command,.$input,.
d8040 24 6f 75 74 70 75 74 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 65 74 45 78 69 74 43 6f 64 65 28 24 65 $output);..$this->setExitCode($e
d8060 78 69 74 43 6f 64 65 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 xitCode);.}.......public.functio
d8080 6e 20 73 65 74 45 78 69 74 43 6f 64 65 28 24 65 78 69 74 43 6f 64 65 29 0a 7b 0a 24 74 68 69 73 n.setExitCode($exitCode).{.$this
d80a0 2d 3e 65 78 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 ->exitCode.=.(int).$exitCode;.}.
d80c0 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 78 69 74 43 6f 64 ......public.function.getExitCod
d80e0 65 28 29 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 e().{.return.$this->exitCode;.}.
d8100 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
d8120 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 3b ony\Component\Console\Exception;
d8140 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 6d 61 6e 64 4e 6f 74 46 6f 75 6e 64 45 78 63 65 .......class.CommandNotFoundExce
d8160 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 78 ption.extends.\InvalidArgumentEx
d8180 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 65 ception.implements.ExceptionInte
d81a0 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 3b 0a 0a rface.{.private.$alternatives;..
d81c0 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
d81e0 74 28 24 6d 65 73 73 61 67 65 2c 20 61 72 72 61 79 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 20 t($message,.array.$alternatives.
d8200 3d 20 61 72 72 61 79 28 29 2c 20 24 63 6f 64 65 20 3d 20 30 2c 20 5c 45 78 63 65 70 74 69 6f 6e =.array(),.$code.=.0,.\Exception
d8220 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 3a 5f 5f 63 .$previous.=.null).{.parent::__c
d8240 6f 6e 73 74 72 75 63 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 onstruct($message,.$code,.$previ
d8260 6f 75 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 6c 74 65 72 6e 61 74 69 76 65 73 20 3d 20 24 61 6c ous);..$this->alternatives.=.$al
d8280 74 65 72 6e 61 74 69 76 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ternatives;.}.....public.functio
d82a0 6e 20 67 65 74 41 6c 74 65 72 6e 61 74 69 76 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 n.getAlternatives().{.return.$th
d82c0 69 73 2d 3e 61 6c 74 65 72 6e 61 74 69 76 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a is->alternatives;.}.}.<?php.....
d82e0 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
d8300 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 69 6e 74 65 72 t\Console\Exception;.......inter
d8320 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 3c 3f 70 68 face.ExceptionInterface.{.}.<?ph
d8340 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
d8360 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 0a 0a 63 mponent\Console\Exception;.....c
d8380 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 69 6f 6e 20 65 78 lass.InvalidArgumentException.ex
d83a0 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 70 74 69 6f 6e 20 tends.\InvalidArgumentException.
d83c0 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 63 65 0a 7b 0a implements.ExceptionInterface.{.
d83e0 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
d8400 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 3b ony\Component\Console\Exception;
d8420 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 76 61 6c 69 64 4f 70 74 69 6f 6e 45 78 63 65 70 74 .......class.InvalidOptionExcept
d8440 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
d8460 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
d8480 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
d84a0 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 78 63 65 e.Symfony\Component\Console\Exce
d84c0 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 20 ption;.....class.LogicException.
d84e0 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 65 6e extends.\LogicException.implemen
d8500 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 70 0a ts.ExceptionInterface.{.}.<?php.
d8520 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
d8540 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 0a 0a 63 6c 61 onent\Console\Exception;.....cla
d8560 73 73 20 52 75 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 ss.RuntimeException.extends.\Run
d8580 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
d85a0 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 0a onInterface.{.}.<?php...........
d85c0 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
d85e0 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 79 5c 43 6f 6d 70 ole\Formatter;..use.Symfony\Comp
d8600 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
d8620 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 4f 75 rgumentException;.......class.Ou
d8640 74 70 75 74 46 6f 72 6d 61 74 74 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4f 75 74 70 75 74 46 tputFormatter.implements.OutputF
d8660 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 64 65 63 ormatterInterface.{.private.$dec
d8680 6f 72 61 74 65 64 3b 0a 70 72 69 76 61 74 65 20 24 73 74 79 6c 65 73 20 3d 20 61 72 72 61 79 28 orated;.private.$styles.=.array(
d86a0 29 3b 0a 70 72 69 76 61 74 65 20 24 73 74 79 6c 65 53 74 61 63 6b 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a );.private.$styleStack;.........
d86c0 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 61 70 65 28 24 74 public.static.function.escape($t
d86e0 65 78 74 29 0a 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 28 5b 5e ext).{.return.preg_replace('/([^
d8700 5c 5c 5c 5c 5d 3f 29 3c 2f 27 2c 20 27 24 31 5c 5c 3c 27 2c 20 24 74 65 78 74 29 3b 0a 7d 0a 0a \\\\]?)</',.'$1\\<',.$text);.}..
d8720 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
d8740 74 28 24 64 65 63 6f 72 61 74 65 64 20 3d 20 66 61 6c 73 65 2c 20 61 72 72 61 79 20 24 73 74 79 t($decorated.=.false,.array.$sty
d8760 6c 65 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 63 6f 72 61 74 65 les.=.array()).{.$this->decorate
d8780 64 20 3d 20 28 62 6f 6f 6c 29 20 24 64 65 63 6f 72 61 74 65 64 3b 0a 0a 24 74 68 69 73 2d 3e 73 d.=.(bool).$decorated;..$this->s
d87a0 65 74 53 74 79 6c 65 28 27 65 72 72 6f 72 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 etStyle('error',.new.OutputForma
d87c0 74 74 65 72 53 74 79 6c 65 28 27 77 68 69 74 65 27 2c 20 27 72 65 64 27 29 29 3b 0a 24 74 68 69 tterStyle('white',.'red'));.$thi
d87e0 73 2d 3e 73 65 74 53 74 79 6c 65 28 27 69 6e 66 6f 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 6f s->setStyle('info',.new.OutputFo
d8800 72 6d 61 74 74 65 72 53 74 79 6c 65 28 27 67 72 65 65 6e 27 29 29 3b 0a 24 74 68 69 73 2d 3e 73 rmatterStyle('green'));.$this->s
d8820 65 74 53 74 79 6c 65 28 27 63 6f 6d 6d 65 6e 74 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 etStyle('comment',.new.OutputFor
d8840 6d 61 74 74 65 72 53 74 79 6c 65 28 27 79 65 6c 6c 6f 77 27 29 29 3b 0a 24 74 68 69 73 2d 3e 73 matterStyle('yellow'));.$this->s
d8860 65 74 53 74 79 6c 65 28 27 71 75 65 73 74 69 6f 6e 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 6f etStyle('question',.new.OutputFo
d8880 72 6d 61 74 74 65 72 53 74 79 6c 65 28 27 62 6c 61 63 6b 27 2c 20 27 63 79 61 6e 27 29 29 3b 0a rmatterStyle('black',.'cyan'));.
d88a0 0a 66 6f 72 65 61 63 68 20 28 24 73 74 79 6c 65 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 73 .foreach.($styles.as.$name.=>.$s
d88c0 74 79 6c 65 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 53 74 79 6c 65 28 24 6e 61 6d 65 2c 20 24 tyle).{.$this->setStyle($name,.$
d88e0 73 74 79 6c 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 20 3d 20 6e style);.}..$this->styleStack.=.n
d8900 65 77 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 28 29 3b 0a ew.OutputFormatterStyleStack();.
d8920 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 63 6f 72 }.......public.function.setDecor
d8940 61 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 64 65 63 6f 72 61 ated($decorated).{.$this->decora
d8960 74 65 64 20 3d 20 28 62 6f 6f 6c 29 20 24 64 65 63 6f 72 61 74 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a ted.=.(bool).$decorated;.}......
d8980 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().{
d89a0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 63 6f 72 61 74 65 64 3b 0a 7d 0a 0a 0a 0a 0a .return.$this->decorated;.}.....
d89c0 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
d89e0 65 2c 20 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 63 65 e,.OutputFormatterStyleInterface
d8a00 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 73 74 72 74 6f 6c 6f .$style).{.$this->styles[strtolo
d8a20 77 65 72 28 24 6e 61 6d 65 29 5d 20 3d 20 24 73 74 79 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a wer($name)].=.$style;.}.........
d8a40 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 74 79 6c 65 28 24 6e 61 6d 65 29 0a public.function.hasStyle($name).
d8a60 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 73 74 72 {.return.isset($this->styles[str
d8a80 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 tolower($name)]);.}...........pu
d8aa0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 79 6c 65 28 24 6e 61 6d 65 29 0a 7b 0a blic.function.getStyle($name).{.
d8ac0 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 53 74 79 6c 65 28 24 6e 61 6d 65 29 29 20 7b 0a 74 if.(!$this->hasStyle($name)).{.t
d8ae0 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
d8b00 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 64 65 66 69 6e 65 64 20 73 74 79 6c 65 3a 20 25 73 27 2c n(sprintf('Undefined.style:.%s',
d8b20 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 .$name));.}..return.$this->style
d8b40 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a s[strtolower($name)];.}.........
d8b60 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)
d8b80 0a 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6d 65 73 73 61 67 65 3b .{.$message.=.(string).$message;
d8ba0 0a 24 6f 66 66 73 65 74 20 3d 20 30 3b 0a 24 6f 75 74 70 75 74 20 3d 20 27 27 3b 0a 24 74 61 67 .$offset.=.0;.$output.=.'';.$tag
d8bc0 52 65 67 65 78 20 3d 20 27 5b 61 2d 7a 5d 5b 61 2d 7a 30 2d 39 5f 3d 3b 2d 5d 2a 27 3b 0a 70 72 Regex.=.'[a-z][a-z0-9_=;-]*';.pr
d8be0 65 67 5f 6d 61 74 63 68 5f 61 6c 6c 28 22 23 3c 28 28 24 74 61 67 52 65 67 65 78 29 20 7c 20 2f eg_match_all("#<(($tagRegex).|./
d8c00 28 24 74 61 67 52 65 67 65 78 29 3f 29 3e 23 69 78 22 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 6d ($tagRegex)?)>#ix",.$message,.$m
d8c20 61 74 63 68 65 73 2c 20 50 52 45 47 5f 4f 46 46 53 45 54 5f 43 41 50 54 55 52 45 29 3b 0a 66 6f atches,.PREG_OFFSET_CAPTURE);.fo
d8c40 72 65 61 63 68 20 28 24 6d 61 74 63 68 65 73 5b 30 5d 20 61 73 20 24 69 20 3d 3e 20 24 6d 61 74 reach.($matches[0].as.$i.=>.$mat
d8c60 63 68 29 20 7b 0a 24 70 6f 73 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 24 74 65 78 74 20 3d 20 ch).{.$pos.=.$match[1];.$text.=.
d8c80 24 6d 61 74 63 68 5b 30 5d 3b 0a 0a 69 66 20 28 30 20 21 3d 20 24 70 6f 73 20 26 26 20 27 5c 5c $match[0];..if.(0.!=.$pos.&&.'\\
d8ca0 27 20 3d 3d 20 24 6d 65 73 73 61 67 65 5b 24 70 6f 73 20 2d 20 31 5d 29 20 7b 0a 63 6f 6e 74 69 '.==.$message[$pos.-.1]).{.conti
d8cc0 6e 75 65 3b 0a 7d 0a 0a 0a 20 24 6f 75 74 70 75 74 20 2e 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c nue;.}....$output..=.$this->appl
d8ce0 79 43 75 72 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 yCurrentStyle(substr($message,.$
d8d00 6f 66 66 73 65 74 2c 20 24 70 6f 73 20 2d 20 24 6f 66 66 73 65 74 29 29 3b 0a 24 6f 66 66 73 65 offset,.$pos.-.$offset));.$offse
d8d20 74 20 3d 20 24 70 6f 73 20 2b 20 73 74 72 6c 65 6e 28 24 74 65 78 74 29 3b 0a 0a 0a 20 69 66 20 t.=.$pos.+.strlen($text);....if.
d8d40 28 24 6f 70 65 6e 20 3d 20 27 2f 27 20 21 3d 20 24 74 65 78 74 5b 31 5d 29 20 7b 0a 24 74 61 67 ($open.=.'/'.!=.$text[1]).{.$tag
d8d60 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 5b 24 69 5d 5b 30 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a .=.$matches[1][$i][0];.}.else.{.
d8d80 24 74 61 67 20 3d 20 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 33 5d 5b 24 69 5d 5b 30 5d 29 $tag.=.isset($matches[3][$i][0])
d8da0 20 3f 20 24 6d 61 74 63 68 65 73 5b 33 5d 5b 24 69 5d 5b 30 5d 20 3a 20 27 27 3b 0a 7d 0a 0a 69 .?.$matches[3][$i][0].:.'';.}..i
d8dc0 66 20 28 21 24 6f 70 65 6e 20 26 26 20 21 24 74 61 67 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 73 f.(!$open.&&.!$tag).{...$this->s
d8de0 74 79 6c 65 53 74 61 63 6b 2d 3e 70 6f 70 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 66 61 6c 73 tyleStack->pop();.}.elseif.(fals
d8e00 65 20 3d 3d 3d 20 24 73 74 79 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 53 74 79 6c e.===.$style.=.$this->createStyl
d8e20 65 46 72 6f 6d 53 74 72 69 6e 67 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 61 67 29 29 29 20 7b eFromString(strtolower($tag))).{
d8e40 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 72 65 6e 74 53 .$output..=.$this->applyCurrentS
d8e60 74 79 6c 65 28 24 74 65 78 74 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 6f 70 65 6e 29 20 7b 0a tyle($text);.}.elseif.($open).{.
d8e80 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 2d 3e 70 75 73 68 28 24 73 74 79 6c 65 29 3b $this->styleStack->push($style);
d8ea0 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 2d 3e 70 6f 70 .}.else.{.$this->styleStack->pop
d8ec0 28 24 73 74 79 6c 65 29 3b 0a 7d 0a 7d 0a 0a 24 6f 75 74 70 75 74 20 2e 3d 20 24 74 68 69 73 2d ($style);.}.}..$output..=.$this-
d8ee0 3e 61 70 70 6c 79 43 75 72 72 65 6e 74 53 74 79 6c 65 28 73 75 62 73 74 72 28 24 6d 65 73 73 61 >applyCurrentStyle(substr($messa
d8f00 67 65 2c 20 24 6f 66 66 73 65 74 29 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 ge,.$offset));..return.str_repla
d8f20 63 65 28 27 5c 5c 3c 27 2c 20 27 3c 27 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 70 ce('\\<',.'<',.$output);.}.....p
d8f40 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 79 6c 65 53 74 61 63 6b 28 29 0a 7b ublic.function.getStyleStack().{
d8f60 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 3b 0a 7d 0a 0a 0a 0a .return.$this->styleStack;.}....
d8f80 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 65 53 74 79 6c .....private.function.createStyl
d8fa0 65 46 72 6f 6d 53 74 72 69 6e 67 28 24 73 74 72 69 6e 67 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 eFromString($string).{.if.(isset
d8fc0 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 24 73 74 72 69 6e 67 5d 29 29 20 7b 0a 72 65 74 75 ($this->styles[$string])).{.retu
d8fe0 72 6e 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 24 73 74 72 69 6e 67 5d 3b 0a 7d 0a 0a 69 66 rn.$this->styles[$string];.}..if
d9000 20 28 21 70 72 65 67 5f 6d 61 74 63 68 5f 61 6c 6c 28 27 2f 28 5b 5e 3d 5d 2b 29 3d 28 5b 5e 3b .(!preg_match_all('/([^=]+)=([^;
d9020 5d 2b 29 28 3b 7c 24 29 2f 27 2c 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 74 72 69 6e 67 29 2c ]+)(;|$)/',.strtolower($string),
d9040 20 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 29 20 7b 0a 72 65 .$matches,.PREG_SET_ORDER)).{.re
d9060 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 73 74 79 6c 65 20 3d 20 6e 65 77 20 4f 75 74 70 turn.false;.}..$style.=.new.Outp
d9080 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 utFormatterStyle();.foreach.($ma
d90a0 74 63 68 65 73 20 61 73 20 24 6d 61 74 63 68 29 20 7b 0a 61 72 72 61 79 5f 73 68 69 66 74 28 24 tches.as.$match).{.array_shift($
d90c0 6d 61 74 63 68 29 3b 0a 0a 69 66 20 28 27 66 67 27 20 3d 3d 20 24 6d 61 74 63 68 5b 30 5d 29 20 match);..if.('fg'.==.$match[0]).
d90e0 7b 0a 24 73 74 79 6c 65 2d 3e 73 65 74 46 6f 72 65 67 72 6f 75 6e 64 28 24 6d 61 74 63 68 5b 31 {.$style->setForeground($match[1
d9100 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 62 67 27 20 3d 3d 20 24 6d 61 74 63 68 5b 30 5d 29 ]);.}.elseif.('bg'.==.$match[0])
d9120 20 7b 0a 24 73 74 79 6c 65 2d 3e 73 65 74 42 61 63 6b 67 72 6f 75 6e 64 28 24 6d 61 74 63 68 5b .{.$style->setBackground($match[
d9140 31 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 72 79 20 7b 0a 24 73 74 79 6c 65 2d 3e 73 65 74 4f 1]);.}.else.{.try.{.$style->setO
d9160 70 74 69 6f 6e 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 49 6e 76 61 ption($match[1]);.}.catch.(\Inva
d9180 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 72 65 74 75 72 lidArgumentException.$e).{.retur
d91a0 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 79 6c 65 3b 0a 7d n.false;.}.}.}..return.$style;.}
d91c0 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 70 70 6c 79 43 .........private.function.applyC
d91e0 75 72 72 65 6e 74 53 74 79 6c 65 28 24 74 65 78 74 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 urrentStyle($text).{.return.$thi
d9200 73 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 20 26 26 20 73 74 72 6c 65 6e 28 24 74 65 78 74 s->isDecorated().&&.strlen($text
d9220 29 20 3e 20 30 20 3f 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 2d 3e 67 65 74 43 75 ).>.0.?.$this->styleStack->getCu
d9240 72 72 65 6e 74 28 29 2d 3e 61 70 70 6c 79 28 24 74 65 78 74 29 20 3a 20 24 74 65 78 74 3b 0a 7d rrent()->apply($text).:.$text;.}
d9260 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
d9280 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 72 fony\Component\Console\Formatter
d92a0 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 ;.......interface.OutputFormatte
d92c0 72 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 rInterface.{......public.functio
d92e0 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 3b 0a 0a 0a 0a 0a n.setDecorated($decorated);.....
d9300 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 28 29 3b ..public.function.isDecorated();
d9320 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 53 74 79 6c 65 ........public.function.setStyle
d9340 28 24 6e 61 6d 65 2c 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 ($name,.OutputFormatterStyleInte
d9360 72 66 61 63 65 20 24 73 74 79 6c 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 rface.$style);.........public.fu
d9380 6e 63 74 69 6f 6e 20 68 61 73 53 74 79 6c 65 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a nction.hasStyle($name);.........
d93a0 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 24 6e 61 6d 65 29 3b public.function.getStyle($name);
d93c0 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 6f 72 6d 61 74 28 .........public.function.format(
d93e0 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d $message);.}.<?php...........nam
d9400 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
d9420 5c 46 6f 72 6d 61 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 \Formatter;..use.Symfony\Compone
d9440 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 72 67 75 nt\Console\Exception\InvalidArgu
d9460 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 4f 75 74 70 75 mentException;.......class.Outpu
d9480 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4f 75 74 70 75 tFormatterStyle.implements.Outpu
d94a0 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 70 72 69 76 61 tFormatterStyleInterface.{.priva
d94c0 74 65 20 73 74 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 te.static.$availableForegroundCo
d94e0 6c 6f 72 73 20 3d 20 61 72 72 61 79 28 0a 27 62 6c 61 63 6b 27 20 3d 3e 20 61 72 72 61 79 28 27 lors.=.array(.'black'.=>.array('
d9500 73 65 74 27 20 3d 3e 20 33 30 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 72 65 64 set'.=>.30,.'unset'.=>.39),.'red
d9520 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 31 2c 20 27 75 6e 73 65 74 27 20 '.=>.array('set'.=>.31,.'unset'.
d9540 3d 3e 20 33 39 29 2c 0a 27 67 72 65 65 6e 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d =>.39),.'green'.=>.array('set'.=
d9560 3e 20 33 32 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 79 65 6c 6c 6f 77 27 20 3d >.32,.'unset'.=>.39),.'yellow'.=
d9580 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 33 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 >.array('set'.=>.33,.'unset'.=>.
d95a0 33 39 29 2c 0a 27 62 6c 75 65 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 34 39),.'blue'.=>.array('set'.=>.34
d95c0 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 6d 61 67 65 6e 74 61 27 20 3d 3e 20 61 ,.'unset'.=>.39),.'magenta'.=>.a
d95e0 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 35 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 rray('set'.=>.35,.'unset'.=>.39)
d9600 2c 0a 27 63 79 61 6e 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 36 2c 20 27 ,.'cyan'.=>.array('set'.=>.36,.'
d9620 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 77 68 69 74 65 27 20 3d 3e 20 61 72 72 61 79 28 unset'.=>.39),.'white'.=>.array(
d9640 27 73 65 74 27 20 3d 3e 20 33 37 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 27 64 65 'set'.=>.37,.'unset'.=>.39),.'de
d9660 66 61 75 6c 74 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 33 39 2c 20 27 75 6e fault'.=>.array('set'.=>.39,.'un
d9680 73 65 74 27 20 3d 3e 20 33 39 29 2c 0a 29 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 set'.=>.39),.);.private.static.$
d96a0 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 20 3d 20 61 72 72 61 availableBackgroundColors.=.arra
d96c0 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 34 30 2c y(.'black'.=>.array('set'.=>.40,
d96e0 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 27 72 65 64 27 20 3d 3e 20 61 72 72 61 79 28 .'unset'.=>.49),.'red'.=>.array(
d9700 27 73 65 74 27 20 3d 3e 20 34 31 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 27 67 72 'set'.=>.41,.'unset'.=>.49),.'gr
d9720 65 65 6e 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 32 2c 20 27 75 6e 73 65 een'.=>.array('set'.=>.42,.'unse
d9740 74 27 20 3d 3e 20 34 39 29 2c 0a 27 79 65 6c 6c 6f 77 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 t'.=>.49),.'yellow'.=>.array('se
d9760 74 27 20 3d 3e 20 34 33 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 27 62 6c 75 65 27 t'.=>.43,.'unset'.=>.49),.'blue'
d9780 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 34 2c 20 27 75 6e 73 65 74 27 20 3d .=>.array('set'.=>.44,.'unset'.=
d97a0 3e 20 34 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 27 20 >.49),.'magenta'.=>.array('set'.
d97c0 3d 3e 20 34 35 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 27 63 79 61 6e 27 20 3d 3e =>.45,.'unset'.=>.49),.'cyan'.=>
d97e0 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 36 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 .array('set'.=>.46,.'unset'.=>.4
d9800 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 34 37 9),.'white'.=>.array('set'.=>.47
d9820 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 2c 0a 27 64 65 66 61 75 6c 74 27 20 3d 3e 20 61 ,.'unset'.=>.49),.'default'.=>.a
d9840 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 39 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 34 39 29 rray('set'.=>.49,.'unset'.=>.49)
d9860 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 4f 70 ,.);.private.static.$availableOp
d9880 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 0a 27 62 6f 6c 64 27 20 3d 3e 20 61 72 72 61 79 28 27 tions.=.array(.'bold'.=>.array('
d98a0 73 65 74 27 20 3d 3e 20 31 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 32 32 29 2c 0a 27 75 6e 64 65 set'.=>.1,.'unset'.=>.22),.'unde
d98c0 72 73 63 6f 72 65 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 34 2c 20 27 75 6e rscore'.=>.array('set'.=>.4,.'un
d98e0 73 65 74 27 20 3d 3e 20 32 34 29 2c 0a 27 62 6c 69 6e 6b 27 20 3d 3e 20 61 72 72 61 79 28 27 73 set'.=>.24),.'blink'.=>.array('s
d9900 65 74 27 20 3d 3e 20 35 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 32 35 29 2c 0a 27 72 65 76 65 72 et'.=>.5,.'unset'.=>.25),.'rever
d9920 73 65 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 27 20 3d 3e 20 37 2c 20 27 75 6e 73 65 74 27 se'.=>.array('set'.=>.7,.'unset'
d9940 20 3d 3e 20 32 37 29 2c 0a 27 63 6f 6e 63 65 61 6c 27 20 3d 3e 20 61 72 72 61 79 28 27 73 65 74 .=>.27),.'conceal'.=>.array('set
d9960 27 20 3d 3e 20 38 2c 20 27 75 6e 73 65 74 27 20 3d 3e 20 32 38 29 2c 0a 29 3b 0a 0a 70 72 69 76 '.=>.8,.'unset'.=>.28),.);..priv
d9980 61 74 65 20 24 66 6f 72 65 67 72 6f 75 6e 64 3b 0a 70 72 69 76 61 74 65 20 24 62 61 63 6b 67 72 ate.$foreground;.private.$backgr
d99a0 6f 75 6e 64 3b 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 29 ound;.private.$options.=.array()
d99c0 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 6e 73 ;.........public.function.__cons
d99e0 74 72 75 63 74 28 24 66 6f 72 65 67 72 6f 75 6e 64 20 3d 20 6e 75 6c 6c 2c 20 24 62 61 63 6b 67 truct($foreground.=.null,.$backg
d9a00 72 6f 75 6e 64 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 round.=.null,.array.$options.=.a
d9a20 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 66 6f 72 65 67 72 6f 75 rray()).{.if.(null.!==.$foregrou
d9a40 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 46 6f 72 65 67 72 6f 75 6e 64 28 24 66 6f 72 65 nd).{.$this->setForeground($fore
d9a60 67 72 6f 75 6e 64 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 62 61 63 6b 67 72 6f ground);.}.if.(null.!==.$backgro
d9a80 75 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 42 61 63 6b 67 72 6f 75 6e 64 28 24 62 61 63 und).{.$this->setBackground($bac
d9aa0 6b 67 72 6f 75 6e 64 29 3b 0a 7d 0a 69 66 20 28 63 6f 75 6e 74 28 24 6f 70 74 69 6f 6e 73 29 29 kground);.}.if.(count($options))
d9ac0 20 7b 0a 24 74 68 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 .{.$this->setOptions($options);.
d9ae0 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 73 65 74 46 }.}.........public.function.setF
d9b00 6f 72 65 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 28 6e oreground($color.=.null).{.if.(n
d9b20 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 66 6f 72 65 67 72 6f ull.===.$color).{.$this->foregro
d9b40 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 73 73 und.=.null;..return;.}..if.(!iss
d9b60 65 74 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 72 6f 75 6e 64 43 et(static::$availableForegroundC
d9b80 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 76 61 olors[$color])).{.throw.new.Inva
d9ba0 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 27 49 lidArgumentException(sprintf(.'I
d9bc0 6e 76 61 6c 69 64 20 66 6f 72 65 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 20 73 70 65 63 69 66 69 65 nvalid.foreground.color.specifie
d9be0 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 2c 0a d:."%s"..Expected.one.of.(%s)',.
d9c00 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 79 73 $color,.implode(',.',.array_keys
d9c20 28 73 74 61 74 69 63 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 (static::$availableForegroundCol
d9c40 6f 72 73 29 29 0a 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 6f 72 65 67 72 6f 75 6e 64 20 3d ors)).));.}..$this->foreground.=
d9c60 20 73 74 61 74 69 63 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 .static::$availableForegroundCol
d9c80 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 66 75 ors[$color];.}.........public.fu
d9ca0 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 75 nction.setBackground($color.=.nu
d9cc0 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 63 6f 6c 6f 72 29 20 7b 0a 24 74 68 ll).{.if.(null.===.$color).{.$th
d9ce0 69 73 2d 3e 62 61 63 6b 67 72 6f 75 6e 64 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 72 6e 3b 0a is->background.=.null;..return;.
d9d00 7d 0a 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 6c 61 62 6c 65 }..if.(!isset(static::$available
d9d20 42 61 63 6b 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 6c 6f 72 5d 29 29 20 7b 0a 74 68 72 BackgroundColors[$color])).{.thr
d9d40 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(
d9d60 73 70 72 69 6e 74 66 28 0a 27 49 6e 76 61 6c 69 64 20 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c sprintf(.'Invalid.background.col
d9d80 6f 72 20 73 70 65 63 69 66 69 65 64 3a 20 22 25 73 22 2e 20 45 78 70 65 63 74 65 64 20 6f 6e 65 or.specified:."%s"..Expected.one
d9da0 20 6f 66 20 28 25 73 29 27 2c 0a 24 63 6f 6c 6f 72 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c .of.(%s)',.$color,.implode(',.',
d9dc0 20 61 72 72 61 79 5f 6b 65 79 73 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 42 61 .array_keys(static::$availableBa
d9de0 63 6b 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 29 29 0a 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 62 ckgroundColors)).));.}..$this->b
d9e00 61 63 6b 67 72 6f 75 6e 64 20 3d 20 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 42 61 ackground.=.static::$availableBa
d9e20 63 6b 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 6c 6f 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a ckgroundColors[$color];.}.......
d9e40 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 28 24 6f 70 74 ..public.function.setOption($opt
d9e60 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 6c ion).{.if.(!isset(static::$avail
d9e80 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 6e ableOptions[$option])).{.throw.n
d9ea0 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
d9ec0 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 20 ntf(.'Invalid.option.specified:.
d9ee0 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 70 "%s"..Expected.one.of.(%s)',.$op
d9f00 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 73 tion,.implode(',.',.array_keys(s
d9f20 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 7d tatic::$availableOptions)).));.}
d9f40 0a 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 ..if.(!in_array(static::$availab
d9f60 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 2d 3e 6f 70 74 69 6f leOptions[$option],.$this->optio
d9f80 6e 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 5d 20 3d 20 73 74 61 74 69 63 ns)).{.$this->options[].=.static
d9fa0 3a 3a 24 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 3b 0a 7d 0a ::$availableOptions[$option];.}.
d9fc0 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 75 6e 73 65 74 4f }.........public.function.unsetO
d9fe0 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 73 74 61 74 ption($option).{.if.(!isset(stat
da000 69 63 3a 3a 24 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 29 29 ic::$availableOptions[$option]))
da020 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 65 .{.throw.new.InvalidArgumentExce
da040 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 74 69 6f 6e 20 73 ption(sprintf(.'Invalid.option.s
da060 70 65 63 69 66 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 pecified:."%s"..Expected.one.of.
da080 28 25 73 29 27 2c 0a 24 6f 70 74 69 6f 6e 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 (%s)',.$option,.implode(',.',.ar
da0a0 72 61 79 5f 6b 65 79 73 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f ray_keys(static::$availableOptio
da0c0 6e 73 29 29 0a 29 29 3b 0a 7d 0a 0a 24 70 6f 73 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 ns)).));.}..$pos.=.array_search(
da0e0 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 5b 24 6f 70 74 69 6f static::$availableOptions[$optio
da100 6e 5d 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 n],.$this->options);.if.(false.!
da120 3d 3d 20 24 70 6f 73 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b ==.$pos).{.unset($this->options[
da140 24 70 6f 73 5d 29 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 $pos]);.}.}.......public.functio
da160 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).{.$
da180 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 this->options.=.array();..foreac
da1a0 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 74 68 69 73 2d h.($options.as.$option).{.$this-
da1c0 3e 73 65 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a >setOption($option);.}.}........
da1e0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 70 70 6c 79 28 24 74 65 78 74 29 0a 7b 0a .public.function.apply($text).{.
da200 24 73 65 74 43 6f 64 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 75 6e 73 65 74 43 6f 64 65 73 $setCodes.=.array();.$unsetCodes
da220 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d .=.array();..if.(null.!==.$this-
da240 3e 66 6f 72 65 67 72 6f 75 6e 64 29 20 7b 0a 24 73 65 74 43 6f 64 65 73 5b 5d 20 3d 20 24 74 68 >foreground).{.$setCodes[].=.$th
da260 69 73 2d 3e 66 6f 72 65 67 72 6f 75 6e 64 5b 27 73 65 74 27 5d 3b 0a 24 75 6e 73 65 74 43 6f 64 is->foreground['set'];.$unsetCod
da280 65 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 66 6f 72 65 67 72 6f 75 6e 64 5b 27 75 6e 73 65 74 27 es[].=.$this->foreground['unset'
da2a0 5d 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 62 61 63 6b 67 72 6f ];.}.if.(null.!==.$this->backgro
da2c0 75 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 62 61 63 6b und).{.$setCodes[].=.$this->back
da2e0 67 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 ground['set'];.$unsetCodes[].=.$
da300 74 68 69 73 2d 3e 62 61 63 6b 67 72 6f 75 6e 64 5b 27 75 6e 73 65 74 27 5d 3b 0a 7d 0a 69 66 20 this->background['unset'];.}.if.
da320 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 29 20 7b 0a 66 6f 72 65 61 63 (count($this->options)).{.foreac
da340 68 20 28 24 74 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 h.($this->options.as.$option).{.
da360 24 73 65 74 43 6f 64 65 73 5b 5d 20 3d 20 24 6f 70 74 69 6f 6e 5b 27 73 65 74 27 5d 3b 0a 24 75 $setCodes[].=.$option['set'];.$u
da380 6e 73 65 74 43 6f 64 65 73 5b 5d 20 3d 20 24 6f 70 74 69 6f 6e 5b 27 75 6e 73 65 74 27 5d 3b 0a nsetCodes[].=.$option['unset'];.
da3a0 7d 0a 7d 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 73 65 74 43 6f 64 65 73 29 29 }.}..if.(0.===.count($setCodes))
da3c0 20 7b 0a 72 65 74 75 72 6e 20 24 74 65 78 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e .{.return.$text;.}..return.sprin
da3e0 74 66 28 22 5c 30 33 33 5b 25 73 6d 25 73 5c 30 33 33 5b 25 73 6d 22 2c 20 69 6d 70 6c 6f 64 65 tf("\033[%sm%s\033[%sm",.implode
da400 28 27 3b 27 2c 20 24 73 65 74 43 6f 64 65 73 29 2c 20 24 74 65 78 74 2c 20 69 6d 70 6c 6f 64 65 (';',.$setCodes),.$text,.implode
da420 28 27 3b 27 2c 20 24 75 6e 73 65 74 43 6f 64 65 73 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a (';',.$unsetCodes));.}.}.<?php..
da440 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
da460 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 6e nent\Console\Formatter;.......in
da480 74 65 72 66 61 63 65 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 terface.OutputFormatterStyleInte
da4a0 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 20 73 65 74 rface.{......public.function.set
da4c0 46 6f 72 65 67 72 6f 75 6e 64 28 24 63 6f 6c 6f 72 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a Foreground($color.=.null);......
da4e0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 42 61 63 6b 67 72 6f 75 6e 64 28 24 .public.function.setBackground($
da500 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 75 6e 63 color.=.null);.......public.func
da520 74 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 3b 0a 0a 0a 0a 0a 0a 0a 70 tion.setOption($option);.......p
da540 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 74 69 ublic.function.unsetOption($opti
da560 6f 6e 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 70 on);.......public.function.setOp
da580 74 69 6f 6e 73 28 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 tions(array.$options);.........p
da5a0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 70 70 6c 79 28 24 74 65 78 74 29 3b 0a 7d 0a 3c ublic.function.apply($text);.}.<
da5c0 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
da5e0 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 3b 0a 0a 75 \Component\Console\Formatter;..u
da600 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 78 63 se.Symfony\Component\Console\Exc
da620 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 74 69 6f 6e 3b eption\InvalidArgumentException;
da640 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 72 53 74 79 6c 65 53 .....class.OutputFormatterStyleS
da660 74 61 63 6b 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 74 79 6c 65 73 3b 0a 0a 0a 0a 0a 70 tack.{....private.$styles;.....p
da680 72 69 76 61 74 65 20 24 65 6d 70 74 79 53 74 79 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 rivate.$emptyStyle;.......public
da6a0 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 46 6f 72 6d .function.__construct(OutputForm
da6c0 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 20 24 65 6d 70 74 79 53 74 79 6c 65 20 atterStyleInterface.$emptyStyle.
da6e0 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6d 70 74 79 53 74 79 6c 65 20 3d 20 24 65 =.null).{.$this->emptyStyle.=.$e
da700 6d 70 74 79 53 74 79 6c 65 20 3f 3a 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 mptyStyle.?:.new.OutputFormatter
da720 53 74 79 6c 65 28 29 3b 0a 24 74 68 69 73 2d 3e 72 65 73 65 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 Style();.$this->reset();.}.....p
da740 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e ublic.function.reset().{.$this->
da760 73 74 79 6c 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 styles.=.array();.}.......public
da780 20 66 75 6e 63 74 69 6f 6e 20 70 75 73 68 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 .function.push(OutputFormatterSt
da7a0 79 6c 65 49 6e 74 65 72 66 61 63 65 20 24 73 74 79 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 yleInterface.$style).{.$this->st
da7c0 79 6c 65 73 5b 5d 20 3d 20 24 73 74 79 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 yles[].=.$style;.}...........pub
da7e0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 6f 70 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 lic.function.pop(OutputFormatter
da800 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 20 24 73 74 79 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a StyleInterface.$style.=.null).{.
da820 69 66 20 28 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 29 29 20 7b 0a 72 65 74 75 if.(empty($this->styles)).{.retu
da840 72 6e 20 24 74 68 69 73 2d 3e 65 6d 70 74 79 53 74 79 6c 65 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c rn.$this->emptyStyle;.}..if.(nul
da860 6c 20 3d 3d 3d 20 24 73 74 79 6c 65 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 70 6f 70 l.===.$style).{.return.array_pop
da880 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 ($this->styles);.}..foreach.(arr
da8a0 61 79 5f 72 65 76 65 72 73 65 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 2c 20 74 72 75 65 29 20 ay_reverse($this->styles,.true).
da8c0 61 73 20 24 69 6e 64 65 78 20 3d 3e 20 24 73 74 61 63 6b 65 64 53 74 79 6c 65 29 20 7b 0a 69 66 as.$index.=>.$stackedStyle).{.if
da8e0 20 28 24 73 74 79 6c 65 2d 3e 61 70 70 6c 79 28 27 27 29 20 3d 3d 3d 20 24 73 74 61 63 6b 65 64 .($style->apply('').===.$stacked
da900 53 74 79 6c 65 2d 3e 61 70 70 6c 79 28 27 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 Style->apply('')).{.$this->style
da920 73 20 3d 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 2c 20 30 s.=.array_slice($this->styles,.0
da940 2c 20 24 69 6e 64 65 78 29 3b 0a 0a 72 65 74 75 72 6e 20 24 73 74 61 63 6b 65 64 53 74 79 6c 65 ,.$index);..return.$stackedStyle
da960 3b 0a 7d 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 ;.}.}..throw.new.InvalidArgument
da980 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 63 6f 72 72 65 63 74 6c 79 20 6e 65 73 74 65 64 20 73 74 Exception('Incorrectly.nested.st
da9a0 79 6c 65 20 74 61 67 20 66 6f 75 6e 64 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 yle.tag.found.');.}.......public
da9c0 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 75 72 72 65 6e 74 28 29 0a 7b 0a 69 66 20 28 65 6d 70 .function.getCurrent().{.if.(emp
da9e0 74 79 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 ty($this->styles)).{.return.$thi
daa00 73 2d 3e 65 6d 70 74 79 53 74 79 6c 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e s->emptyStyle;.}..return.$this->
daa20 73 74 79 6c 65 73 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 29 20 2d 20 31 5d styles[count($this->styles).-.1]
daa40 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 6d 70 ;.}.......public.function.setEmp
daa60 74 79 53 74 79 6c 65 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 tyStyle(OutputFormatterStyleInte
daa80 72 66 61 63 65 20 24 65 6d 70 74 79 53 74 79 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6d 70 74 rface.$emptyStyle).{.$this->empt
daaa0 79 53 74 79 6c 65 20 3d 20 24 65 6d 70 74 79 53 74 79 6c 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 yStyle.=.$emptyStyle;..return.$t
daac0 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 6d his;.}.....public.function.getEm
daae0 70 74 79 53 74 79 6c 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6d 70 74 79 ptyStyle().{.return.$this->empty
dab00 53 74 79 6c 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 Style;.}.}.<?php...........names
dab20 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 48 pace.Symfony\Component\Console\H
dab40 65 6c 70 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 62 75 67 46 6f 72 6d 61 74 elper;.........class.DebugFormat
dab60 74 65 72 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 terHelper.extends.Helper.{.priva
dab80 74 65 20 24 63 6f 6c 6f 72 73 20 3d 20 61 72 72 61 79 28 27 62 6c 61 63 6b 27 2c 20 27 72 65 64 te.$colors.=.array('black',.'red
daba0 27 2c 20 27 67 72 65 65 6e 27 2c 20 27 79 65 6c 6c 6f 77 27 2c 20 27 62 6c 75 65 27 2c 20 27 6d ',.'green',.'yellow',.'blue',.'m
dabc0 61 67 65 6e 74 61 27 2c 20 27 63 79 61 6e 27 2c 20 27 77 68 69 74 65 27 2c 20 27 64 65 66 61 75 agenta',.'cyan',.'white',.'defau
dabe0 6c 74 27 29 3b 0a 70 72 69 76 61 74 65 20 24 73 74 61 72 74 65 64 20 3d 20 61 72 72 61 79 28 29 lt');.private.$started.=.array()
dac00 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 75 6e 74 20 3d 20 2d 31 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ;.private.$count.=.-1;..........
dac20 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 61 72 74 28 24 69 64 2c 20 24 6d 65 73 .public.function.start($id,.$mes
dac40 73 61 67 65 2c 20 24 70 72 65 66 69 78 20 3d 20 27 52 55 4e 27 29 0a 7b 0a 24 74 68 69 73 2d 3e sage,.$prefix.=.'RUN').{.$this->
dac60 73 74 61 72 74 65 64 5b 24 69 64 5d 20 3d 20 61 72 72 61 79 28 27 62 6f 72 64 65 72 27 20 3d 3e started[$id].=.array('border'.=>
dac80 20 2b 2b 24 74 68 69 73 2d 3e 63 6f 75 6e 74 20 25 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 63 .++$this->count.%.count($this->c
daca0 6f 6c 6f 72 73 29 29 3b 0a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 25 73 3c 62 67 3d olors));..return.sprintf("%s<bg=
dacc0 62 6c 75 65 3b 66 67 3d 77 68 69 74 65 3e 20 25 73 20 3c 2f 3e 20 3c 66 67 3d 62 6c 75 65 3e 25 blue;fg=white>.%s.</>.<fg=blue>%
dace0 73 3c 2f 3e 5c 6e 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 s</>\n",.$this->getBorder($id),.
dad00 24 70 72 65 66 69 78 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a $prefix,.$message);.}...........
dad20 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 28 24 69 64 2c 20 ..public.function.progress($id,.
dad40 24 62 75 66 66 65 72 2c 20 24 65 72 72 6f 72 20 3d 20 66 61 6c 73 65 2c 20 24 70 72 65 66 69 78 $buffer,.$error.=.false,.$prefix
dad60 20 3d 20 27 4f 55 54 27 2c 20 24 65 72 72 6f 72 50 72 65 66 69 78 20 3d 20 27 45 52 52 27 29 0a .=.'OUT',.$errorPrefix.=.'ERR').
dad80 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 27 3b 0a 0a 69 66 20 28 24 65 72 72 6f 72 29 20 7b 0a {.$message.=.'';..if.($error).{.
dada0 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 6f if.(isset($this->started[$id]['o
dadc0 75 74 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 ut'])).{.$message..=."\n";.unset
dade0 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 3b 0a 7d 0a ($this->started[$id]['out']);.}.
dae00 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]['
dae20 65 72 72 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 err'])).{.$message..=.sprintf('%
dae40 73 3c 62 67 3d 72 65 64 3b 66 67 3d 77 68 69 74 65 3e 20 25 73 20 3c 2f 3e 20 27 2c 20 24 74 68 s<bg=red;fg=white>.%s.</>.',.$th
dae60 69 73 2d 3e 67 65 74 42 6f 72 64 65 72 28 24 69 64 29 2c 20 24 65 72 72 6f 72 50 72 65 66 69 78 is->getBorder($id),.$errorPrefix
dae80 29 3b 0a 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 20 3d 20 );.$this->started[$id]['err'].=.
daea0 74 72 75 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 true;.}..$message..=.str_replace
daec0 28 22 5c 6e 22 2c 20 73 70 72 69 6e 74 66 28 22 5c 6e 25 73 3c 62 67 3d 72 65 64 3b 66 67 3d 77 ("\n",.sprintf("\n%s<bg=red;fg=w
daee0 68 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 hite>.%s.</>.",.$this->getBorder
daf00 28 24 69 64 29 2c 20 24 65 72 72 6f 72 50 72 65 66 69 78 29 2c 20 24 62 75 66 66 65 72 29 3b 0a ($id),.$errorPrefix),.$buffer);.
daf20 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 61 72 74 65 }.else.{.if.(isset($this->starte
daf40 64 5b 24 69 64 5d 5b 27 65 72 72 27 5d 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c d[$id]['err'])).{.$message..=."\
daf60 6e 22 3b 0a 75 6e 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 n";.unset($this->started[$id]['e
daf80 72 72 27 5d 29 3b 0a 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 61 72 74 rr']);.}.if.(!isset($this->start
dafa0 65 64 5b 24 69 64 5d 5b 27 6f 75 74 27 5d 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 73 ed[$id]['out'])).{.$message..=.s
dafc0 70 72 69 6e 74 66 28 27 25 73 3c 62 67 3d 67 72 65 65 6e 3b 66 67 3d 77 68 69 74 65 3e 20 25 73 printf('%s<bg=green;fg=white>.%s
dafe0 20 3c 2f 3e 20 27 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 .</>.',.$this->getBorder($id),.$
db000 70 72 65 66 69 78 29 3b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 6f 75 prefix);.$this->started[$id]['ou
db020 74 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 73 74 72 5f 72 t'].=.true;.}..$message..=.str_r
db040 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 73 70 72 69 6e 74 66 28 22 5c 6e 25 73 3c 62 67 3d 67 72 eplace("\n",.sprintf("\n%s<bg=gr
db060 65 65 6e 3b 66 67 3d 77 68 69 74 65 3e 20 25 73 20 3c 2f 3e 20 22 2c 20 24 74 68 69 73 2d 3e 67 een;fg=white>.%s.</>.",.$this->g
db080 65 74 42 6f 72 64 65 72 28 24 69 64 29 2c 20 24 70 72 65 66 69 78 29 2c 20 24 62 75 66 66 65 72 etBorder($id),.$prefix),.$buffer
db0a0 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6d 65 73 73 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a );.}..return.$message;.}........
db0c0 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 69 64 2c 20 24 6d ....public.function.stop($id,.$m
db0e0 65 73 73 61 67 65 2c 20 24 73 75 63 63 65 73 73 66 75 6c 2c 20 24 70 72 65 66 69 78 20 3d 20 27 essage,.$successful,.$prefix.=.'
db100 52 45 53 27 29 0a 7b 0a 24 74 72 61 69 6c 69 6e 67 45 4f 4c 20 3d 20 69 73 73 65 74 28 24 74 68 RES').{.$trailingEOL.=.isset($th
db120 69 73 2d 3e 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 6f 75 74 27 5d 29 20 7c 7c 20 69 73 73 65 is->started[$id]['out']).||.isse
db140 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 20 3f 20 t($this->started[$id]['err']).?.
db160 22 5c 6e 22 20 3a 20 27 27 3b 0a 0a 69 66 20 28 24 73 75 63 63 65 73 73 66 75 6c 29 20 7b 0a 72 "\n".:.'';..if.($successful).{.r
db180 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 25 73 25 73 3c 62 67 3d 67 72 65 65 6e 3b 66 67 3d eturn.sprintf("%s%s<bg=green;fg=
db1a0 77 68 69 74 65 3e 20 25 73 20 3c 2f 3e 20 3c 66 67 3d 67 72 65 65 6e 3e 25 73 3c 2f 3e 5c 6e 22 white>.%s.</>.<fg=green>%s</>\n"
db1c0 2c 20 24 74 72 61 69 6c 69 6e 67 45 4f 4c 2c 20 24 74 68 69 73 2d 3e 67 65 74 42 6f 72 64 65 72 ,.$trailingEOL,.$this->getBorder
db1e0 28 24 69 64 29 2c 20 24 70 72 65 66 69 78 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 24 6d ($id),.$prefix,.$message);.}..$m
db200 65 73 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 22 25 73 25 73 3c 62 67 3d 72 65 64 3b 66 67 essage.=.sprintf("%s%s<bg=red;fg
db220 3d 77 68 69 74 65 3e 20 25 73 20 3c 2f 3e 20 3c 66 67 3d 72 65 64 3e 25 73 3c 2f 3e 5c 6e 22 2c =white>.%s.</>.<fg=red>%s</>\n",
db240 20 24 74 72 61 69 6c 69 6e 67 45 4f 4c 2c 20 24 74 68 69 73 2d 3e 67 65 74 42 6f 72 64 65 72 28 .$trailingEOL,.$this->getBorder(
db260 24 69 64 29 2c 20 24 70 72 65 66 69 78 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 0a 75 6e 73 65 74 $id),.$prefix,.$message);..unset
db280 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 2c 20 24 74 68 ($this->started[$id]['out'],.$th
db2a0 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 0a 72 65 74 75 72 is->started[$id]['err']);..retur
db2c0 6e 20 24 6d 65 73 73 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 n.$message;.}.......private.func
db2e0 74 69 6f 6e 20 67 65 74 42 6f 72 64 65 72 28 24 69 64 29 0a 7b 0a 72 65 74 75 72 6e 20 73 70 72 tion.getBorder($id).{.return.spr
db300 69 6e 74 66 28 27 3c 62 67 3d 25 73 3e 20 3c 2f 3e 27 2c 20 24 74 68 69 73 2d 3e 63 6f 6c 6f 72 intf('<bg=%s>.</>',.$this->color
db320 73 5b 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 5b 24 69 64 5d 5b 27 62 6f 72 64 65 72 27 5d 5d s[$this->started[$id]['border']]
db340 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 61 6d 65 );.}.....public.function.getName
db360 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 64 65 62 75 67 5f 66 6f 72 6d 61 74 74 65 72 27 3b 0a 7d ().{.return.'debug_formatter';.}
db380 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
db3a0 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 3b 0a 0a fony\Component\Console\Helper;..
db3c0 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 44 65 use.Symfony\Component\Console\De
db3e0 73 63 72 69 70 74 6f 72 5c 44 65 73 63 72 69 70 74 6f 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 scriptor\DescriptorInterface;.us
db400 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 63 e.Symfony\Component\Console\Desc
db420 72 69 70 74 6f 72 5c 4a 73 6f 6e 44 65 73 63 72 69 70 74 6f 72 3b 0a 75 73 65 20 53 79 6d 66 6f riptor\JsonDescriptor;.use.Symfo
db440 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\
db460 4d 61 72 6b 64 6f 77 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 MarkdownDescriptor;.use.Symfony\
db480 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 54 65 78 Component\Console\Descriptor\Tex
db4a0 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 70 6f 6e 65 tDescriptor;.use.Symfony\Compone
db4c0 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 63 72 69 70 nt\Console\Descriptor\XmlDescrip
db4e0 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 6f 6e 73 6f tor;.use.Symfony\Component\Conso
db500 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 20 53 le\Output\OutputInterface;.use.S
db520 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 69 ymfony\Component\Console\Excepti
db540 6f 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 on\InvalidArgumentException;....
db560 0a 0a 0a 63 6c 61 73 73 20 44 65 73 63 72 69 70 74 6f 72 48 65 6c 70 65 72 20 65 78 74 65 6e 64 ...class.DescriptorHelper.extend
db580 73 20 48 65 6c 70 65 72 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 64 65 73 63 72 69 70 74 6f s.Helper.{....private.$descripto
db5a0 72 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 74 69 6f rs.=.array();.....public.functio
db5c0 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 72 65 67 69 73 74 n.__construct().{.$this.->regist
db5e0 65 72 28 27 74 78 74 27 2c 20 6e 65 77 20 54 65 78 74 44 65 73 63 72 69 70 74 6f 72 28 29 29 0a er('txt',.new.TextDescriptor()).
db600 2d 3e 72 65 67 69 73 74 65 72 28 27 78 6d 6c 27 2c 20 6e 65 77 20 58 6d 6c 44 65 73 63 72 69 70 ->register('xml',.new.XmlDescrip
db620 74 6f 72 28 29 29 0a 2d 3e 72 65 67 69 73 74 65 72 28 27 6a 73 6f 6e 27 2c 20 6e 65 77 20 4a 73 tor()).->register('json',.new.Js
db640 6f 6e 44 65 73 63 72 69 70 74 6f 72 28 29 29 0a 2d 3e 72 65 67 69 73 74 65 72 28 27 6d 64 27 2c onDescriptor()).->register('md',
db660 20 6e 65 77 20 4d 61 72 6b 64 6f 77 6e 44 65 73 63 72 69 70 74 6f 72 28 29 29 0a 3b 0a 7d 0a 0a .new.MarkdownDescriptor()).;.}..
db680 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 65 73 .............public.function.des
db6a0 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 74 2c 20 24 cribe(OutputInterface.$output,.$
db6c0 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 61 79 28 29 object,.array.$options.=.array()
db6e0 29 0a 7b 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 ).{.$options.=.array_merge(array
db700 28 0a 27 72 61 77 5f 74 65 78 74 27 20 3d 3e 20 66 61 6c 73 65 2c 0a 27 66 6f 72 6d 61 74 27 20 (.'raw_text'.=>.false,.'format'.
db720 3d 3e 20 27 74 78 74 27 2c 0a 29 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 21 69 73 =>.'txt',.),.$options);..if.(!is
db740 73 65 74 28 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 6f 72 73 5b 24 6f 70 74 69 6f 6e 73 5b set($this->descriptors[$options[
db760 27 66 6f 72 6d 61 74 27 5d 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 'format']])).{.throw.new.Invalid
db780 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 73 75 70 ArgumentException(sprintf('Unsup
db7a0 70 6f 72 74 65 64 20 66 6f 72 6d 61 74 20 22 25 73 22 2e 27 2c 20 24 6f 70 74 69 6f 6e 73 5b 27 ported.format."%s".',.$options['
db7c0 66 6f 72 6d 61 74 27 5d 29 29 3b 0a 7d 0a 0a 24 64 65 73 63 72 69 70 74 6f 72 20 3d 20 24 74 68 format']));.}..$descriptor.=.$th
db7e0 69 73 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 is->descriptors[$options['format
db800 27 5d 5d 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 ']];.$descriptor->describe($outp
db820 75 74 2c 20 24 6f 62 6a 65 63 74 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a ut,.$object,.$options);.}.......
db840 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 65 72 28 24 66 6f 72 ...public.function.register($for
db860 6d 61 74 2c 20 44 65 73 63 72 69 70 74 6f 72 49 6e 74 65 72 66 61 63 65 20 24 64 65 73 63 72 69 mat,.DescriptorInterface.$descri
db880 70 74 6f 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 6f 72 73 5b 24 66 6f 72 6d ptor).{.$this->descriptors[$form
db8a0 61 74 5d 20 3d 20 24 64 65 73 63 72 69 70 74 6f 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 at].=.$descriptor;..return.$this
db8c0 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 28 ;.}.....public.function.getName(
db8e0 29 0a 7b 0a 72 65 74 75 72 6e 20 27 64 65 73 63 72 69 70 74 6f 72 27 3b 0a 7d 0a 7d 0a 3c 3f 70 ).{.return.'descriptor';.}.}.<?p
db900 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
db920 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 79 omponent\Console\Helper;..use.Sy
db940 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
db960 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.
db980 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
db9a0 69 6f 6e 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 ion\RuntimeException;.use.Symfon
db9c0 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 75 y\Component\Console\Output\Outpu
db9e0 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
dba00 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 74 t\Console\Formatter\OutputFormat
dba20 74 65 72 53 74 79 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 69 61 6c 6f 67 48 terStyle;..........class.DialogH
dba40 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 49 6e 70 75 74 41 77 61 72 65 48 65 6c 70 65 72 0a 7b elper.extends.InputAwareHelper.{
dba60 0a 70 72 69 76 61 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 .private.$inputStream;.private.s
dba80 74 61 74 69 63 20 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 tatic.$shell;.private.static.$st
dbaa0 74 79 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 ty;..public.function.__construct
dbac0 28 24 74 72 69 67 67 65 72 44 65 70 72 65 63 61 74 69 6f 6e 45 72 72 6f 72 20 3d 20 74 72 75 65 ($triggerDeprecationError.=.true
dbae0 29 0a 7b 0a 69 66 20 28 24 74 72 69 67 67 65 72 44 65 70 72 65 63 61 74 69 6f 6e 45 72 72 6f 72 ).{.if.($triggerDeprecationError
dbb00 29 20 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 22 53 79 6d 66 6f 6e 79 5c 43 6f 6d ).{.@trigger_error('"Symfony\Com
dbb20 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 44 69 61 6c 6f 67 48 65 6c 70 ponent\Console\Helper\DialogHelp
dbb40 65 72 22 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 er".is.deprecated.since.version.
dbb60 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 20 2.5.and.will.be.removed.in.3.0..
dbb80 55 73 65 20 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 Use."Symfony\Component\Console\H
dbba0 65 6c 70 65 72 5c 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 22 20 69 6e 73 74 65 61 64 2e 27 2c elper\QuestionHelper".instead.',
dbbc0 20 45 5f 55 53 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 0a .E_USER_DEPRECATED);.}.}........
dbbe0 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 74 28 .........public.function.select(
dbc00 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 71 75 65 73 74 69 OutputInterface.$output,.$questi
dbc20 6f 6e 2c 20 24 63 68 6f 69 63 65 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 2c 20 24 on,.$choices,.$default.=.null,.$
dbc40 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 65 20 attempts.=.false,.$errorMessage.
dbc60 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 6c 74 =.'Value."%s".is.invalid',.$mult
dbc80 69 73 65 6c 65 63 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 77 69 64 74 68 20 3d 20 6d 61 78 28 iselect.=.false).{.$width.=.max(
dbca0 61 72 72 61 79 5f 6d 61 70 28 27 73 74 72 6c 65 6e 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 array_map('strlen',.array_keys($
dbcc0 63 68 6f 69 63 65 73 29 29 29 3b 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 28 61 72 72 61 79 29 choices)));..$messages.=.(array)
dbce0 20 24 71 75 65 73 74 69 6f 6e 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 68 6f 69 63 65 73 20 61 73 .$question;.foreach.($choices.as
dbd00 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d .$key.=>.$value).{.$messages[].=
dbd20 20 73 70 72 69 6e 74 66 28 22 20 20 5b 3c 69 6e 66 6f 3e 25 2d 24 7b 77 69 64 74 68 7d 73 3c 2f .sprintf("..[<info>%-${width}s</
dbd40 69 6e 66 6f 3e 5d 20 25 73 22 2c 20 24 6b 65 79 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 24 6f info>].%s",.$key,.$value);.}..$o
dbd60 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 29 3b 0a 0a 24 72 65 73 utput->writeln($messages);..$res
dbd80 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 24 6f 75 74 ult.=.$this->askAndValidate($out
dbda0 70 75 74 2c 20 27 3e 20 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 70 69 63 6b 65 64 29 20 75 73 put,.'>.',.function.($picked).us
dbdc0 65 20 28 24 63 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 e.($choices,.$errorMessage,.$mul
dbde0 74 69 73 65 6c 65 63 74 29 20 7b 0a 0a 20 24 73 65 6c 65 63 74 65 64 43 68 6f 69 63 65 73 20 3d tiselect).{...$selectedChoices.=
dbe00 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 20 27 2c 20 27 27 2c 20 24 70 69 63 6b 65 64 29 3b 0a .str_replace('.',.'',.$picked);.
dbe20 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 20 28 21 70 72 65 67 .if.($multiselect).{...if.(!preg
dbe40 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 3f 3a 2c 5b 61 2d 7a _match('/^[a-zA-Z0-9_-]+(?:,[a-z
dbe60 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 64 43 68 6f 69 63 65 A-Z0-9_-]+)*$/',.$selectedChoice
dbe80 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 20 49 6e 76 61 6c 69 s,.$matches)).{.throw.new.Invali
dbea0 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 24 65 72 72 6f dArgumentException(sprintf($erro
dbec0 72 4d 65 73 73 61 67 65 2c 20 24 70 69 63 6b 65 64 29 29 3b 0a 7d 0a 24 73 65 6c 65 63 74 65 64 rMessage,.$picked));.}.$selected
dbee0 43 68 6f 69 63 65 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 2c 27 2c 20 24 73 65 6c 65 63 74 65 64 Choices.=.explode(',',.$selected
dbf00 43 68 6f 69 63 65 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 65 6c 65 63 74 65 64 43 68 6f 69 Choices);.}.else.{.$selectedChoi
dbf20 63 65 73 20 3d 20 61 72 72 61 79 28 24 70 69 63 6b 65 64 29 3b 0a 7d 0a 0a 24 6d 75 6c 74 69 73 ces.=.array($picked);.}..$multis
dbf40 65 6c 65 63 74 43 68 6f 69 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 electChoices.=.array();..foreach
dbf60 20 28 24 73 65 6c 65 63 74 65 64 43 68 6f 69 63 65 73 20 61 73 20 24 76 61 6c 75 65 29 20 7b 0a .($selectedChoices.as.$value).{.
dbf80 69 66 20 28 65 6d 70 74 79 28 24 63 68 6f 69 63 65 73 5b 24 76 61 6c 75 65 5d 29 29 20 7b 0a 74 if.(empty($choices[$value])).{.t
dbfa0 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
dbfc0 6e 28 73 70 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 n(sprintf($errorMessage,.$value)
dbfe0 29 3b 0a 7d 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 24 76 61 );.}.$multiselectChoices[].=.$va
dc000 6c 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 6d 75 6c 74 69 73 65 6c 65 63 74 29 20 7b 0a 72 65 74 75 lue;.}..if.($multiselect).{.retu
dc020 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 0a 0a 72 65 74 75 72 rn.$multiselectChoices;.}..retur
dc040 6e 20 24 70 69 63 6b 65 64 3b 0a 7d 2c 20 24 61 74 74 65 6d 70 74 73 2c 20 24 64 65 66 61 75 6c n.$picked;.},.$attempts,.$defaul
dc060 74 29 3b 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 t);..return.$result;.}..........
dc080 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 4f 75 74 70 75 74 49 6e ....public.function.ask(OutputIn
dc0a0 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 64 65 66 terface.$output,.$question,.$def
dc0c0 61 75 6c 74 20 3d 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 ault.=.null,.array.$autocomplete
dc0e0 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 26 26 20 21 .=.null).{.if.($this->input.&&.!
dc100 24 74 68 69 73 2d 3e 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 $this->input->isInteractive()).{
dc120 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 .return.$default;.}..$output->wr
dc140 69 74 65 28 24 71 75 65 73 74 69 6f 6e 29 3b 0a 0a 24 69 6e 70 75 74 53 74 72 65 61 6d 20 3d 20 ite($question);..$inputStream.=.
dc160 24 74 68 69 73 2d 3e 69 6e 70 75 74 53 74 72 65 61 6d 20 3f 3a 20 53 54 44 49 4e 3b 0a 0a 69 66 $this->inputStream.?:.STDIN;..if
dc180 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 20 7c 7c 20 21 24 74 68 .(null.===.$autocomplete.||.!$th
dc1a0 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 0a 24 72 65 74 20 3d is->hasSttyAvailable()).{.$ret.=
dc1c0 20 66 67 65 74 73 28 24 69 6e 70 75 74 53 74 72 65 61 6d 2c 20 34 30 39 36 29 3b 0a 69 66 20 28 .fgets($inputStream,.4096);.if.(
dc1e0 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 false.===.$ret).{.throw.new.Runt
dc200 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 24 72 65 74 20 imeException('Aborted');.}.$ret.
dc220 3d 20 74 72 69 6d 28 24 72 65 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 74 20 3d 20 27 27 =.trim($ret);.}.else.{.$ret.=.''
dc240 3b 0a 0a 24 69 20 3d 20 30 3b 0a 24 6f 66 73 20 3d 20 2d 31 3b 0a 24 6d 61 74 63 68 65 73 20 3d ;..$i.=.0;.$ofs.=.-1;.$matches.=
dc260 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 3b 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 63 6f .$autocomplete;.$numMatches.=.co
dc280 75 6e 74 28 24 6d 61 74 63 68 65 73 29 3b 0a 0a 24 73 74 74 79 4d 6f 64 65 20 3d 20 73 68 65 6c unt($matches);..$sttyMode.=.shel
dc2a0 6c 5f 65 78 65 63 28 27 73 74 74 79 20 2d 67 27 29 3b 0a 0a 0a 20 73 68 65 6c 6c 5f 65 78 65 63 l_exec('stty.-g');....shell_exec
dc2c0 28 27 73 74 74 79 20 2d 69 63 61 6e 6f 6e 20 2d 65 63 68 6f 27 29 3b 0a 0a 0a 20 24 6f 75 74 70 ('stty.-icanon.-echo');....$outp
dc2e0 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2d 3e 73 65 74 53 74 79 6c 65 28 27 68 6c ut->getFormatter()->setStyle('hl
dc300 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 28 27 62 6c 61 ',.new.OutputFormatterStyle('bla
dc320 63 6b 27 2c 20 27 77 68 69 74 65 27 29 29 3b 0a 0a 0a 20 77 68 69 6c 65 20 28 21 66 65 6f 66 28 ck',.'white'));....while.(!feof(
dc340 24 69 6e 70 75 74 53 74 72 65 61 6d 29 29 20 7b 0a 24 63 20 3d 20 66 72 65 61 64 28 24 69 6e 70 $inputStream)).{.$c.=.fread($inp
dc360 75 74 53 74 72 65 61 6d 2c 20 31 29 3b 0a 0a 0a 20 69 66 20 28 22 5c 31 37 37 22 20 3d 3d 3d 20 utStream,.1);....if.("\177".===.
dc380 24 63 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 6e 75 6d 4d 61 74 63 68 65 73 20 26 26 20 30 $c).{.if.(0.===.$numMatches.&&.0
dc3a0 20 21 3d 3d 20 24 69 29 20 7b 0a 2d 2d 24 69 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 .!==.$i).{.--$i;...$output->writ
dc3c0 65 28 22 5c 30 33 33 5b 31 44 22 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 20 3d 3d 3d 20 30 29 20 7b e("\033[1D");.}..if.($i.===.0).{
dc3e0 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
dc400 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
dc420 65 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 30 3b 0a 7d es);.}.else.{.$numMatches.=.0;.}
dc440 0a 0a 0a 20 24 72 65 74 20 3d 20 73 75 62 73 74 72 28 24 72 65 74 2c 20 30 2c 20 24 69 29 3b 0a ....$ret.=.substr($ret,.0,.$i);.
dc460 7d 20 65 6c 73 65 69 66 20 28 22 5c 30 33 33 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 0a 20 24 63 20 }.elseif.("\033".===.$c).{...$c.
dc480 2e 3d 20 66 72 65 61 64 28 24 69 6e 70 75 74 53 74 72 65 61 6d 2c 20 32 29 3b 0a 0a 0a 20 69 66 .=.fread($inputStream,.2);....if
dc4a0 20 28 69 73 73 65 74 28 24 63 5b 32 5d 29 20 26 26 20 28 27 41 27 20 3d 3d 3d 20 24 63 5b 32 5d .(isset($c[2]).&&.('A'.===.$c[2]
dc4c0 20 7c 7c 20 27 42 27 20 3d 3d 3d 20 24 63 5b 32 5d 29 29 20 7b 0a 69 66 20 28 27 41 27 20 3d 3d .||.'B'.===.$c[2])).{.if.('A'.==
dc4e0 3d 20 24 63 5b 32 5d 20 26 26 20 2d 31 20 3d 3d 3d 20 24 6f 66 73 29 20 7b 0a 24 6f 66 73 20 3d =.$c[2].&&.-1.===.$ofs).{.$ofs.=
dc500 20 30 3b 0a 7d 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 6e 75 6d 4d 61 74 63 68 65 73 29 20 7b 0a .0;.}..if.(0.===.$numMatches).{.
dc520 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6f 66 73 20 2b 3d 20 28 27 41 27 20 3d 3d 3d 20 24 63 continue;.}..$ofs.+=.('A'.===.$c
dc540 5b 32 5d 29 20 3f 20 2d 31 20 3a 20 31 3b 0a 24 6f 66 73 20 3d 20 28 24 6e 75 6d 4d 61 74 63 68 [2]).?.-1.:.1;.$ofs.=.($numMatch
dc560 65 73 20 2b 20 24 6f 66 73 29 20 25 20 24 6e 75 6d 4d 61 74 63 68 65 73 3b 0a 7d 0a 7d 20 65 6c es.+.$ofs).%.$numMatches;.}.}.el
dc580 73 65 69 66 20 28 6f 72 64 28 24 63 29 20 3c 20 33 32 29 20 7b 0a 69 66 20 28 22 5c 74 22 20 3d seif.(ord($c).<.32).{.if.("\t".=
dc5a0 3d 3d 20 24 63 20 7c 7c 20 22 5c 6e 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 69 66 20 28 24 6e 75 6d ==.$c.||."\n".===.$c).{.if.($num
dc5c0 4d 61 74 63 68 65 73 20 3e 20 30 20 26 26 20 2d 31 20 21 3d 3d 20 24 6f 66 73 29 20 7b 0a 24 72 Matches.>.0.&&.-1.!==.$ofs).{.$r
dc5e0 65 74 20 3d 20 24 6d 61 74 63 68 65 73 5b 24 6f 66 73 5d 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e et.=.$matches[$ofs];...$output->
dc600 77 72 69 74 65 28 73 75 62 73 74 72 28 24 72 65 74 2c 20 24 69 29 29 3b 0a 24 69 20 3d 20 73 74 write(substr($ret,.$i));.$i.=.st
dc620 72 6c 65 6e 28 24 72 65 74 29 3b 0a 7d 0a 0a 69 66 20 28 22 5c 6e 22 20 3d 3d 3d 20 24 63 29 20 rlen($ret);.}..if.("\n".===.$c).
dc640 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 63 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a {.$output->write($c);.break;.}..
dc660 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 30 3b 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 $numMatches.=.0;.}..continue;.}.
dc680 65 6c 73 65 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 63 29 3b 0a 24 72 65 74 20 else.{.$output->write($c);.$ret.
dc6a0 2e 3d 20 24 63 3b 0a 2b 2b 24 69 3b 0a 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 30 3b 0a 24 .=.$c;.++$i;..$numMatches.=.0;.$
dc6c0 6f 66 73 20 3d 20 30 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 ofs.=.0;..foreach.($autocomplete
dc6e0 20 61 73 20 24 76 61 6c 75 65 29 20 7b 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 .as.$value).{...if.(0.===.strpos
dc700 28 24 76 61 6c 75 65 2c 20 24 72 65 74 29 20 26 26 20 24 69 20 21 3d 3d 20 73 74 72 6c 65 6e 28 ($value,.$ret).&&.$i.!==.strlen(
dc720 24 76 61 6c 75 65 29 29 20 7b 0a 24 6d 61 74 63 68 65 73 5b 24 6e 75 6d 4d 61 74 63 68 65 73 2b $value)).{.$matches[$numMatches+
dc740 2b 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 +].=.$value;.}.}.}....$output->w
dc760 72 69 74 65 28 22 5c 30 33 33 5b 4b 22 29 3b 0a 0a 69 66 20 28 24 6e 75 6d 4d 61 74 63 68 65 73 rite("\033[K");..if.($numMatches
dc780 20 3e 20 30 20 26 26 20 2d 31 20 21 3d 3d 20 24 6f 66 73 29 20 7b 0a 0a 20 24 6f 75 74 70 75 74 .>.0.&&.-1.!==.$ofs).{...$output
dc7a0 2d 3e 77 72 69 74 65 28 22 5c 30 33 33 37 22 29 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 ->write("\0337");...$output->wri
dc7c0 74 65 28 27 3c 68 6c 3e 27 2e 73 75 62 73 74 72 28 24 6d 61 74 63 68 65 73 5b 24 6f 66 73 5d 2c te('<hl>'.substr($matches[$ofs],
dc7e0 20 24 69 29 2e 27 3c 2f 68 6c 3e 27 29 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 .$i).'</hl>');...$output->write(
dc800 22 5c 30 33 33 38 22 29 3b 0a 7d 0a 7d 0a 0a 0a 20 73 68 65 6c 6c 5f 65 78 65 63 28 73 70 72 69 "\0338");.}.}....shell_exec(spri
dc820 6e 74 66 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 7d 0a 0a 72 ntf('stty.%s',.$sttyMode));.}..r
dc840 65 74 75 72 6e 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 eturn.strlen($ret).>.0.?.$ret.:.
dc860 24 64 65 66 61 75 6c 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 $default;.}.............public.f
dc880 75 6e 63 74 69 6f 6e 20 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 4f 75 74 70 75 74 49 6e unction.askConfirmation(OutputIn
dc8a0 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 64 65 66 terface.$output,.$question,.$def
dc8c0 61 75 6c 74 20 3d 20 74 72 75 65 29 0a 7b 0a 24 61 6e 73 77 65 72 20 3d 20 27 7a 27 3b 0a 77 68 ault.=.true).{.$answer.=.'z';.wh
dc8e0 69 6c 65 20 28 24 61 6e 73 77 65 72 20 26 26 20 21 69 6e 5f 61 72 72 61 79 28 73 74 72 74 6f 6c ile.($answer.&&.!in_array(strtol
dc900 6f 77 65 72 28 24 61 6e 73 77 65 72 5b 30 5d 29 2c 20 61 72 72 61 79 28 27 79 27 2c 20 27 6e 27 ower($answer[0]),.array('y',.'n'
dc920 29 29 29 20 7b 0a 24 61 6e 73 77 65 72 20 3d 20 24 74 68 69 73 2d 3e 61 73 6b 28 24 6f 75 74 70 ))).{.$answer.=.$this->ask($outp
dc940 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d ut,.$question);.}..if.(false.===
dc960 20 24 64 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 27 .$default).{.return.$answer.&&.'
dc980 79 27 20 3d 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 61 6e 73 77 65 72 5b 30 5d 29 3b 0a 7d 0a y'.==.strtolower($answer[0]);.}.
dc9a0 0a 72 65 74 75 72 6e 20 21 24 61 6e 73 77 65 72 20 7c 7c 20 27 79 27 20 3d 3d 20 73 74 72 74 6f .return.!$answer.||.'y'.==.strto
dc9c0 6c 6f 77 65 72 28 24 61 6e 73 77 65 72 5b 30 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a lower($answer[0]);.}............
dc9e0 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 52 65 73 70 6f 6e .public.function.askHiddenRespon
dca00 73 65 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 71 75 65 se(OutputInterface.$output,.$que
dca20 73 74 69 6f 6e 2c 20 24 66 61 6c 6c 62 61 63 6b 20 3d 20 74 72 75 65 29 0a 7b 0a 69 66 20 28 27 stion,.$fallback.=.true).{.if.('
dca40 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).{.$
dca60 65 78 65 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 exe.=.__DIR__.'/../Resources/bin
dca80 2f 68 69 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 /hiddeninput.exe';....if.('phar:
dcaa0 27 20 3d 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 '.===.substr(__FILE__,.0,.5)).{.
dcac0 24 74 6d 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 $tmpExe.=.sys_get_temp_dir().'/h
dcae0 69 64 64 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 iddeninput.exe';.copy($exe,.$tmp
dcb00 45 78 65 29 3b 0a 24 65 78 65 20 3d 20 24 74 6d 70 45 78 65 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 Exe);.$exe.=.$tmpExe;.}..$output
dcb20 2d 3e 77 72 69 74 65 28 24 71 75 65 73 74 69 6f 6e 29 3b 0a 24 76 61 6c 75 65 20 3d 20 72 74 72 ->write($question);.$value.=.rtr
dcb40 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 3e 77 im(shell_exec($exe));.$output->w
dcb60 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 29 29 riteln('');..if.(isset($tmpExe))
dcb80 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 24 76 .{.unlink($tmpExe);.}..return.$v
dcba0 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 69 6c alue;.}..if.($this->hasSttyAvail
dcbc0 61 62 6c 65 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 able()).{.$output->write($questi
dcbe0 6f 6e 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 on);..$sttyMode.=.shell_exec('st
dcc00 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 20 2d 65 63 68 6f ty.-g');..shell_exec('stty.-echo
dcc20 27 29 3b 0a 24 76 61 6c 75 65 20 3d 20 66 67 65 74 73 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 53 ');.$value.=.fgets($this->inputS
dcc40 74 72 65 61 6d 20 3f 3a 20 53 54 44 49 4e 2c 20 34 30 39 36 29 3b 0a 73 68 65 6c 6c 5f 65 78 65 tream.?:.STDIN,.4096);.shell_exe
dcc60 63 28 73 70 72 69 6e 74 66 28 27 73 74 74 79 20 25 73 27 2c 20 24 73 74 74 79 4d 6f 64 65 29 29 c(sprintf('stty.%s',.$sttyMode))
dcc80 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 74 68 72 6f 77 ;..if.(false.===.$value).{.throw
dcca0 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 41 62 6f 72 74 65 64 27 29 .new.RuntimeException('Aborted')
dccc0 3b 0a 7d 0a 0a 24 76 61 6c 75 65 20 3d 20 74 72 69 6d 28 24 76 61 6c 75 65 29 3b 0a 24 6f 75 74 ;.}..$value.=.trim($value);.$out
dcce0 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 61 6c 75 65 put->writeln('');..return.$value
dcd00 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 73 68 65 6c 6c 20 3d 20 24 74 68 69 ;.}..if.(false.!==.$shell.=.$thi
dcd20 73 2d 3e 67 65 74 53 68 65 6c 6c 28 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 s->getShell()).{.$output->write(
dcd40 24 71 75 65 73 74 69 6f 6e 29 3b 0a 24 72 65 61 64 43 6d 64 20 3d 20 24 73 68 65 6c 6c 20 3d 3d $question);.$readCmd.=.$shell.==
dcd60 3d 20 27 63 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 =.'csh'.?.'set.mypassword.=.$<'.
dcd80 3a 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 :.'read.-r.mypassword';.$command
dcda0 20 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 .=.sprintf("/usr/bin/env.%s.-c.'
dcdc0 73 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 stty.-echo;.%s;.stty.echo;.echo.
dcde0 5c 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 \$mypassword'",.$shell,.$readCmd
dce00 29 3b 0a 24 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 );.$value.=.rtrim(shell_exec($co
dce20 6d 6d 61 6e 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 mmand));.$output->writeln('');..
dce40 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 66 61 6c 6c 62 61 63 6b 29 return.$value;.}..if.($fallback)
dce60 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 73 6b 28 24 6f 75 74 70 75 74 2c 20 24 71 .{.return.$this->ask($output,.$q
dce80 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 uestion);.}..throw.new.RuntimeEx
dcea0 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 70 ception('Unable.to.hide.the.resp
dcec0 6f 6e 73 65 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 onse');.}....................pub
dcee0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 4f 75 74 70 lic.function.askAndValidate(Outp
dcf00 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 6e 2c 20 utInterface.$output,.$question,.
dcf20 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 2c 20 24 $validator,.$attempts.=.false,.$
dcf40 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 61 75 74 6f 63 6f 6d 70 6c default.=.null,.array.$autocompl
dcf60 65 74 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 61 74 20 3d 20 24 74 68 69 73 3b 0a 0a 24 69 ete.=.null).{.$that.=.$this;..$i
dcf80 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
dcfa0 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 2c 20 24 61 75 74 utput,.$question,.$default,.$aut
dcfc0 6f 63 6f 6d 70 6c 65 74 65 2c 20 24 74 68 61 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 61 74 ocomplete,.$that).{.return.$that
dcfe0 2d 3e 61 73 6b 28 24 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 ->ask($output,.$question,.$defau
dd000 6c 74 2c 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 29 3b 0a 7d 3b 0a 0a 72 65 74 75 72 6e 20 24 lt,.$autocomplete);.};..return.$
dd020 74 68 69 73 2d 3e 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 this->validateAttempts($intervie
dd040 77 65 72 2c 20 24 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 wer,.$output,.$validator,.$attem
dd060 70 74 73 29 3b 0a 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 pts);.}....................publi
dd080 63 20 66 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 41 6e 64 56 c.function.askHiddenResponseAndV
dd0a0 61 6c 69 64 61 74 65 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 alidate(OutputInterface.$output,
dd0c0 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 61 74 74 65 6d 70 74 .$question,.$validator,.$attempt
dd0e0 73 20 3d 20 66 61 6c 73 65 2c 20 24 66 61 6c 6c 62 61 63 6b 20 3d 20 74 72 75 65 29 0a 7b 0a 24 s.=.false,.$fallback.=.true).{.$
dd100 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 72 20 3d 20 66 75 that.=.$this;..$interviewer.=.fu
dd120 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 75 65 73 74 69 6f nction.().use.($output,.$questio
dd140 6e 2c 20 24 66 61 6c 6c 62 61 63 6b 2c 20 24 74 68 61 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 n,.$fallback,.$that).{.return.$t
dd160 68 61 74 2d 3e 61 73 6b 48 69 64 64 65 6e 52 65 73 70 6f 6e 73 65 28 24 6f 75 74 70 75 74 2c 20 hat->askHiddenResponse($output,.
dd180 24 71 75 65 73 74 69 6f 6e 2c 20 24 66 61 6c 6c 62 61 63 6b 29 3b 0a 7d 3b 0a 0a 72 65 74 75 72 $question,.$fallback);.};..retur
dd1a0 6e 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 74 74 65 6d 70 74 73 28 24 69 6e 74 65 72 n.$this->validateAttempts($inter
dd1c0 76 69 65 77 65 72 2c 20 24 6f 75 74 70 75 74 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 61 74 viewer,.$output,.$validator,.$at
dd1e0 74 65 6d 70 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 tempts);.}.........public.functi
dd200 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 24 74 68 on.setInputStream($stream).{.$th
dd220 69 73 2d 3e 69 6e 70 75 74 53 74 72 65 61 6d 20 3d 20 24 73 74 72 65 61 6d 3b 0a 7d 0a 0a 0a 0a is->inputStream.=.$stream;.}....
dd240 0a 0a 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 53 74 72 65 61 ...public.function.getInputStrea
dd260 6d 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 53 74 72 65 61 6d 3b m().{.return.$this->inputStream;
dd280 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 28 29 .}.....public.function.getName()
dd2a0 0a 7b 0a 72 65 74 75 72 6e 20 27 64 69 61 6c 6f 67 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 .{.return.'dialog';.}.......priv
dd2c0 61 74 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 ate.function.getShell().{.if.(nu
dd2e0 6c 6c 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 ll.!==.self::$shell).{.return.se
dd300 6c 66 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 lf::$shell;.}..self::$shell.=.fa
dd320 6c 73 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 lse;..if.(file_exists('/usr/bin/
dd340 65 6e 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 env')).{...$test.=."/usr/bin/env
dd360 20 25 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 .%s.-c.'echo.OK'.2>./dev/null";.
dd380 66 6f 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 foreach.(array('bash',.'zsh',.'k
dd3a0 73 68 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 sh',.'csh').as.$sh).{.if.('OK'.=
dd3c0 3d 3d 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 ==.rtrim(shell_exec(sprintf($tes
dd3e0 74 2c 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 t,.$sh)))).{.self::$shell.=.$sh;
dd400 0a 62 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 .break;.}.}.}..return.self::$she
dd420 6c 6c 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 53 74 74 79 41 ll;.}..private.function.hasSttyA
dd440 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 3a 3a vailable().{.if.(null.!==.self::
dd460 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 0a 0a $stty).{.return.self::$stty;.}..
dd480 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 69 74 exec('stty.2>&1',.$output,.$exit
dd4a0 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 65 78 code);..return.self::$stty.=.$ex
dd4c0 69 74 63 6f 64 65 20 3d 3d 3d 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 itcode.===.0;.}..............pri
dd4e0 76 61 74 65 20 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 vate.function.validateAttempts($
dd500 69 6e 74 65 72 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 interviewer,.OutputInterface.$ou
dd520 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 0a 7b 0a 24 tput,.$validator,.$attempts).{.$
dd540 65 20 3d 20 6e 75 6c 6c 3b 0a 77 68 69 6c 65 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 61 74 74 65 e.=.null;.while.(false.===.$atte
dd560 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 75 6c 6c 20 mpts.||.$attempts--).{.if.(null.
dd580 21 3d 3d 20 24 65 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 73 !==.$e).{.$output->writeln($this
dd5a0 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 74 74 65 72 ->getHelperSet()->get('formatter
dd5c0 27 29 2d 3e 66 6f 72 6d 61 74 42 6c 6f 63 6b 28 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 ')->formatBlock($e->getMessage()
dd5e0 2c 20 27 65 72 72 6f 72 27 29 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 63 61 6c ,.'error'));.}..try.{.return.cal
dd600 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 69 6e 74 65 72 76 69 l_user_func($validator,.$intervi
dd620 65 77 65 72 28 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 ewer());.}.catch.(\Exception.$e)
dd640 20 7b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a .{.}.}..throw.$e;.}.}.<?php.....
dd660 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
dd680 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
dd6a0 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
dd6c0 74 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 6f 72 6d 61 74 74 65 tFormatter;.......class.Formatte
dd6e0 72 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 0a 0a 0a 0a rHelper.extends.Helper.{........
dd700 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 53 65 63 74 69 6f 6e 28 ..public.function.formatSection(
dd720 24 73 65 63 74 69 6f 6e 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 73 74 79 6c 65 20 3d 20 27 69 6e $section,.$message,.$style.=.'in
dd740 66 6f 27 29 0a 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 3c 25 73 3e 5b 25 73 5d 3c fo').{.return.sprintf('<%s>[%s]<
dd760 2f 25 73 3e 20 25 73 27 2c 20 24 73 74 79 6c 65 2c 20 24 73 65 63 74 69 6f 6e 2c 20 24 73 74 79 /%s>.%s',.$style,.$section,.$sty
dd780 6c 65 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 le,.$message);.}...........publi
dd7a0 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 42 6c 6f 63 6b 28 24 6d 65 73 73 61 67 65 73 c.function.formatBlock($messages
dd7c0 2c 20 24 73 74 79 6c 65 2c 20 24 6c 61 72 67 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 ,.$style,.$large.=.false).{.if.(
dd7e0 21 69 73 5f 61 72 72 61 79 28 24 6d 65 73 73 61 67 65 73 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 !is_array($messages)).{.$message
dd800 73 20 3d 20 61 72 72 61 79 28 24 6d 65 73 73 61 67 65 73 29 3b 0a 7d 0a 0a 24 6c 65 6e 20 3d 20 s.=.array($messages);.}..$len.=.
dd820 30 3b 0a 24 6c 69 6e 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 0;.$lines.=.array();.foreach.($m
dd840 65 73 73 61 67 65 73 20 61 73 20 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 essages.as.$message).{.$message.
dd860 3d 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 3a 3a 65 73 63 61 70 65 28 24 6d 65 73 73 61 =.OutputFormatter::escape($messa
dd880 67 65 29 3b 0a 24 6c 69 6e 65 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 24 6c 61 72 67 65 20 3f ge);.$lines[].=.sprintf($large.?
dd8a0 20 27 20 20 25 73 20 20 27 20 3a 20 27 20 25 73 20 27 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 24 .'..%s..'.:.'.%s.',.$message);.$
dd8c0 6c 65 6e 20 3d 20 6d 61 78 28 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 6d 65 73 73 61 67 65 len.=.max($this->strlen($message
dd8e0 29 20 2b 20 28 24 6c 61 72 67 65 20 3f 20 34 20 3a 20 32 29 2c 20 24 6c 65 6e 29 3b 0a 7d 0a 0a ).+.($large.?.4.:.2),.$len);.}..
dd900 24 6d 65 73 73 61 67 65 73 20 3d 20 24 6c 61 72 67 65 20 3f 20 61 72 72 61 79 28 73 74 72 5f 72 $messages.=.$large.?.array(str_r
dd920 65 70 65 61 74 28 27 20 27 2c 20 24 6c 65 6e 29 29 20 3a 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 epeat('.',.$len)).:.array();.for
dd940 20 28 24 69 20 3d 20 30 3b 20 69 73 73 65 74 28 24 6c 69 6e 65 73 5b 24 69 5d 29 3b 20 2b 2b 24 .($i.=.0;.isset($lines[$i]);.++$
dd960 69 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 6c 69 6e 65 73 5b 24 69 5d 2e 73 74 i).{.$messages[].=.$lines[$i].st
dd980 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 6c 65 6e 20 2d 20 24 74 68 69 73 2d 3e 73 74 72 6c r_repeat('.',.$len.-.$this->strl
dd9a0 65 6e 28 24 6c 69 6e 65 73 5b 24 69 5d 29 29 3b 0a 7d 0a 69 66 20 28 24 6c 61 72 67 65 29 20 7b en($lines[$i]));.}.if.($large).{
dd9c0 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 .$messages[].=.str_repeat('.',.$
dd9e0 6c 65 6e 29 3b 0a 7d 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 69 73 73 65 74 28 24 6d 65 73 len);.}..for.($i.=.0;.isset($mes
dda00 73 61 67 65 73 5b 24 69 5d 29 3b 20 2b 2b 24 69 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 24 69 sages[$i]);.++$i).{.$messages[$i
dda20 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 3c 25 73 3e 25 73 3c 2f 25 73 3e 27 2c 20 24 73 74 79 6c ].=.sprintf('<%s>%s</%s>',.$styl
dda40 65 2c 20 24 6d 65 73 73 61 67 65 73 5b 24 69 5d 2c 20 24 73 74 79 6c 65 29 3b 0a 7d 0a 0a 72 65 e,.$messages[$i],.$style);.}..re
dda60 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 7d turn.implode("\n",.$messages);.}
dda80 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().{
ddaa0 0a 72 65 74 75 72 6e 20 27 66 6f 72 6d 61 74 74 65 72 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a .return.'formatter';.}.}.<?php..
ddac0 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
ddae0 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
ddb00 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 4f 75 y\Component\Console\Formatter\Ou
ddb20 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 0a 0a 0a 61 62 tputFormatterInterface;.......ab
ddb40 73 74 72 61 63 74 20 63 6c 61 73 73 20 48 65 6c 70 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 48 stract.class.Helper.implements.H
ddb60 65 6c 70 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 68 65 6c 70 elperInterface.{.protected.$help
ddb80 65 72 53 65 74 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 erSet.=.null;.......public.funct
ddba0 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
ddbc0 65 72 53 65 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 erSet.=.null).{.$this->helperSet
ddbe0 20 3d 20 24 68 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 .=.$helperSet;.}.......public.fu
ddc00 6e 63 74 69 6f 6e 20 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 nction.getHelperSet().{.return.$
ddc20 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 this->helperSet;.}.........publi
ddc40 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 c.static.function.strlen($string
ddc60 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 6e 67 20 3d 20 6d 62 ).{.if.(false.===.$encoding.=.mb
ddc80 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 20 6e 75 6c 6c 2c 20 _detect_encoding($string,.null,.
ddca0 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 74 72 69 6e 67 29 3b true)).{.return.strlen($string);
ddcc0 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 74 72 69 6e 67 2c 20 .}..return.mb_strwidth($string,.
ddce0 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 63 20 66 75 6e $encoding);.}..public.static.fun
ddd00 63 74 69 6f 6e 20 66 6f 72 6d 61 74 54 69 6d 65 28 24 73 65 63 73 29 0a 7b 0a 73 74 61 74 69 63 ction.formatTime($secs).{.static
ddd20 20 24 74 69 6d 65 46 6f 72 6d 61 74 73 20 3d 20 61 72 72 61 79 28 0a 61 72 72 61 79 28 30 2c 20 .$timeFormats.=.array(.array(0,.
ddd40 27 3c 20 31 20 73 65 63 27 29 2c 0a 61 72 72 61 79 28 32 2c 20 27 31 20 73 65 63 27 29 2c 0a 61 '<.1.sec'),.array(2,.'1.sec'),.a
ddd60 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 79 28 36 30 2c 20 27 rray(59,.'secs',.1),.array(60,.'
ddd80 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 73 27 2c 20 36 30 29 1.min'),.array(3600,.'mins',.60)
ddda0 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 72 61 79 28 38 36 34 ,.array(5400,.'1.hr'),.array(864
dddc0 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 32 39 36 30 30 2c 20 00,.'hrs',.3600),.array(129600,.
ddde0 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 64 61 79 73 27 2c 20 '1.day'),.array(604800,.'days',.
dde00 38 36 34 30 30 29 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 69 6d 65 46 6f 72 6d 61 74 86400),.);..foreach.($timeFormat
dde20 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 20 3e 3d 20 24 66 6f s.as.$format).{.if.($secs.>=.$fo
dde40 72 6d 61 74 5b 30 5d 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 32 20 3d 3d rmat[0]).{.continue;.}..if.(2.==
dde60 20 63 6f 75 6e 74 28 24 66 6f 72 6d 61 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 66 6f 72 6d 61 .count($format)).{.return.$forma
dde80 74 5b 31 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 63 65 69 6c 28 24 73 65 63 73 20 2f 20 24 66 6f t[1];.}..return.ceil($secs./.$fo
ddea0 72 6d 61 74 5b 32 5d 29 2e 27 20 27 2e 24 66 6f 72 6d 61 74 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 70 75 rmat[2]).'.'.$format[1];.}.}..pu
ddec0 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 4d 65 6d 6f 72 blic.static.function.formatMemor
ddee0 79 28 24 6d 65 6d 6f 72 79 29 0a 7b 0a 69 66 20 28 24 6d 65 6d 6f 72 79 20 3e 3d 20 31 30 32 34 y($memory).{.if.($memory.>=.1024
ddf00 20 2a 20 31 30 32 34 20 2a 20 31 30 32 34 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 .*.1024.*.1024).{.return.sprintf
ddf20 28 27 25 2e 31 66 20 47 69 42 27 2c 20 24 6d 65 6d 6f 72 79 20 2f 20 31 30 32 34 20 2f 20 31 30 ('%.1f.GiB',.$memory./.1024./.10
ddf40 32 34 20 2f 20 31 30 32 34 29 3b 0a 7d 0a 0a 69 66 20 28 24 6d 65 6d 6f 72 79 20 3e 3d 20 31 30 24./.1024);.}..if.($memory.>=.10
ddf60 32 34 20 2a 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 24.*.1024).{.return.sprintf('%.1
ddf80 66 20 4d 69 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 29 3b 0a f.MiB',.$memory./.1024./.1024);.
ddfa0 7d 0a 0a 69 66 20 28 24 6d 65 6d 6f 72 79 20 3e 3d 20 31 30 32 34 29 20 7b 0a 72 65 74 75 72 6e }..if.($memory.>=.1024).{.return
ddfc0 20 73 70 72 69 6e 74 66 28 27 25 64 20 4b 69 42 27 2c 20 24 6d 65 6d 6f 72 79 20 2f 20 31 30 32 .sprintf('%d.KiB',.$memory./.102
ddfe0 34 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 25 64 20 42 27 2c 20 24 6d 4);.}..return.sprintf('%d.B',.$m
de000 65 6d 6f 72 79 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 emory);.}..public.static.functio
de020 6e 20 73 74 72 6c 65 6e 57 69 74 68 6f 75 74 44 65 63 6f 72 61 74 69 6f 6e 28 4f 75 74 70 75 74 n.strlenWithoutDecoration(Output
de040 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 2c 20 24 FormatterInterface.$formatter,.$
de060 73 74 72 69 6e 67 29 0a 7b 0a 24 69 73 44 65 63 6f 72 61 74 65 64 20 3d 20 24 66 6f 72 6d 61 74 string).{.$isDecorated.=.$format
de080 74 65 72 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 3b 0a 24 66 6f 72 6d 61 74 74 65 72 2d 3e ter->isDecorated();.$formatter->
de0a0 73 65 74 44 65 63 6f 72 61 74 65 64 28 66 61 6c 73 65 29 3b 0a 0a 20 24 73 74 72 69 6e 67 20 3d setDecorated(false);...$string.=
de0c0 20 24 66 6f 72 6d 61 74 74 65 72 2d 3e 66 6f 72 6d 61 74 28 24 73 74 72 69 6e 67 29 3b 0a 0a 20 .$formatter->format($string);...
de0e0 24 73 74 72 69 6e 67 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 22 2f 5c 30 33 33 5c 5b 5b $string.=.preg_replace("/\033\[[
de100 5e 6d 5d 2a 6d 2f 22 2c 20 27 27 2c 20 24 73 74 72 69 6e 67 29 3b 0a 24 66 6f 72 6d 61 74 74 65 ^m]*m/",.'',.$string);.$formatte
de120 72 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 69 73 44 65 63 6f 72 61 74 65 64 29 3b 0a 0a r->setDecorated($isDecorated);..
de140 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 29 3b 0a 7d 0a return.self::strlen($string);.}.
de160 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
de180 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;...
de1a0 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 48 65 6c 70 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a ....interface.HelperInterface.{.
de1c0 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 53 65 .....public.function.setHelperSe
de1e0 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 75 6c 6c 29 3b 0a t(HelperSet.$helperSet.=.null);.
de200 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 48 65 6c 70 65 72 53 ......public.function.getHelperS
de220 65 74 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 4e et();.......public.function.getN
de240 61 6d 65 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 ame();.}.<?php...........namespa
de260 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
de280 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
de2a0 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 6f 6e 79 ole\Command\Command;.use.Symfony
de2c0 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 76 \Component\Console\Exception\Inv
de2e0 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 0a 63 6c 61 alidArgumentException;.......cla
de300 73 73 20 48 65 6c 70 65 72 53 65 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 74 65 72 61 74 6f ss.HelperSet.implements.\Iterato
de320 72 41 67 67 72 65 67 61 74 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 68 65 6c 70 65 72 73 20 3d 20 rAggregate.{.private.$helpers.=.
de340 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a array();.private.$command;......
de360 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
de380 61 79 20 24 68 65 6c 70 65 72 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 66 6f 72 65 61 63 68 ay.$helpers.=.array()).{.foreach
de3a0 20 28 24 68 65 6c 70 65 72 73 20 61 73 20 24 61 6c 69 61 73 20 3d 3e 20 24 68 65 6c 70 65 72 29 .($helpers.as.$alias.=>.$helper)
de3c0 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 28 24 68 65 6c 70 65 72 2c 20 69 73 5f 69 6e 74 28 24 61 .{.$this->set($helper,.is_int($a
de3e0 6c 69 61 73 29 20 3f 20 6e 75 6c 6c 20 3a 20 24 61 6c 69 61 73 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a lias).?.null.:.$alias);.}.}.....
de400 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 28 48 65 6c 70 65 72 49 6e 74 ...public.function.set(HelperInt
de420 65 72 66 61 63 65 20 24 68 65 6c 70 65 72 2c 20 24 61 6c 69 61 73 20 3d 20 6e 75 6c 6c 29 0a 7b erface.$helper,.$alias.=.null).{
de440 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 5b 24 68 65 6c 70 65 72 2d 3e 67 65 74 4e 61 6d 65 .$this->helpers[$helper->getName
de460 28 29 5d 20 3d 20 24 68 65 6c 70 65 72 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 61 6c 69 ()].=.$helper;.if.(null.!==.$ali
de480 61 73 29 20 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 5b 24 61 6c 69 61 73 5d 20 3d 20 24 as).{.$this->helpers[$alias].=.$
de4a0 68 65 6c 70 65 72 3b 0a 7d 0a 0a 24 68 65 6c 70 65 72 2d 3e 73 65 74 48 65 6c 70 65 72 53 65 74 helper;.}..$helper->setHelperSet
de4c0 28 24 74 68 69 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 ($this);.}.........public.functi
de4e0 6f 6e 20 68 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 on.has($name).{.return.isset($th
de500 69 73 2d 3e 68 65 6c 70 65 72 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a is->helpers[$name]);.}..........
de520 0a 70 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 .public.function.get($name).{.if
de540 20 28 21 24 74 68 69 73 2d 3e 68 61 73 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 .(!$this->has($name)).{.throw.ne
de560 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 6e w.InvalidArgumentException(sprin
de580 74 66 28 27 54 68 65 20 68 65 6c 70 65 72 20 22 25 73 22 20 69 73 20 6e 6f 74 20 64 65 66 69 6e tf('The.helper."%s".is.not.defin
de5a0 65 64 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 69 66 20 28 27 64 69 61 6c 6f 67 27 20 3d ed.',.$name));.}..if.('dialog'.=
de5c0 3d 3d 20 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 ==.$name.&&.$this->helpers[$name
de5e0 5d 20 69 6e 73 74 61 6e 63 65 6f 66 20 44 69 61 6c 6f 67 48 65 6c 70 65 72 29 20 7b 0a 40 74 72 ].instanceof.DialogHelper).{.@tr
de600 69 67 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 igger_error('"Symfony\Component\
de620 43 6f 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 Console\Helper\DialogHelper".is.
de640 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 64 deprecated.since.version.2.5.and
de660 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 22 53 79 .will.be.removed.in.3.0..Use."Sy
de680 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 51 mfony\Component\Console\Helper\Q
de6a0 75 65 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 uestionHelper".instead.',.E_USER
de6c0 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 70 72 6f 67 72 65 73 _DEPRECATED);.}.elseif.('progres
de6e0 73 27 20 3d 3d 3d 20 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 s'.===.$name.&&.$this->helpers[$
de700 6e 61 6d 65 5d 20 69 6e 73 74 61 6e 63 65 6f 66 20 50 72 6f 67 72 65 73 73 48 65 6c 70 65 72 29 name].instanceof.ProgressHelper)
de720 20 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 22 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 .{.@trigger_error('"Symfony\Comp
de740 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 50 72 6f 67 72 65 73 73 48 65 6c onent\Console\Helper\ProgressHel
de760 70 65 72 22 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 per".is.deprecated.since.version
de780 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.
de7a0 20 55 73 65 20 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 .Use."Symfony\Component\Console\
de7c0 48 65 6c 70 65 72 5c 50 72 6f 67 72 65 73 73 42 61 72 22 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 Helper\ProgressBar".instead.',.E
de7e0 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 74 61 _USER_DEPRECATED);.}.elseif.('ta
de800 62 6c 65 27 20 3d 3d 3d 20 24 6e 61 6d 65 20 26 26 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 ble'.===.$name.&&.$this->helpers
de820 5b 24 6e 61 6d 65 5d 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 48 65 6c 70 65 72 29 20 [$name].instanceof.TableHelper).
de840 7b 0a 40 74 72 69 67 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 {.@trigger_error('"Symfony\Compo
de860 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 48 65 6c 70 65 72 22 nent\Console\Helper\TableHelper"
de880 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 35 .is.deprecated.since.version.2.5
de8a0 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 65 .and.will.be.removed.in.3.0..Use
de8c0 20 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 65 6c 70 ."Symfony\Component\Console\Help
de8e0 65 72 5c 54 61 62 6c 65 22 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 er\Table".instead.',.E_USER_DEPR
de900 45 43 41 54 45 44 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 ECATED);.}..return.$this->helper
de920 73 5b 24 6e 61 6d 65 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 s[$name];.}.......public.functio
de940 6e 20 73 65 74 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 20 3d 20 n.setCommand(Command.$command.=.
de960 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 6e null).{.$this->command.=.$comman
de980 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 67 65 74 43 6f d;.}.......public.function.getCo
de9a0 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 6d 6d 61 6e 64 3b mmand().{.return.$this->command;
de9c0 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 72 28 .}..public.function.getIterator(
de9e0 29 0a 7b 0a 72 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 74 ).{.return.new.\ArrayIterator($t
dea00 68 69 73 2d 3e 68 65 6c 70 65 72 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a his->helpers);.}.}.<?php........
dea20 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
dea40 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
dea60 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
dea80 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
deaa0 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 77 61 72 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a e\Input\InputAwareInterface;....
deac0 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 49 6e 70 75 74 41 77 61 72 65 48 65 6c 70 ...abstract.class.InputAwareHelp
deae0 65 72 20 65 78 74 65 6e 64 73 20 48 65 6c 70 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 70 er.extends.Helper.implements.Inp
deb00 75 74 41 77 61 72 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e utAwareInterface.{.protected.$in
deb20 70 75 74 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 49 6e 70 75 put;.....public.function.setInpu
deb40 74 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 24 74 68 69 73 t(InputInterface.$input).{.$this
deb60 2d 3e 69 6e 70 75 74 20 3d 20 24 69 6e 70 75 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a ->input.=.$input;.}.}.<?php.....
deb80 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
deba0 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
debc0 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 6c 65 4f omponent\Console\Output\ConsoleO
debe0 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 6d 70 utputInterface;.use.Symfony\Comp
dec00 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
dec20 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 50 72 6f 63 face;.use.Symfony\Component\Proc
dec40 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 65 64 45 78 63 65 70 ess\Exception\ProcessFailedExcep
dec60 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 72 6f 63 tion;.use.Symfony\Component\Proc
dec80 65 73 73 5c 50 72 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 ess\Process;.use.Symfony\Compone
deca0 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 73 42 75 69 6c 64 65 72 3b 0a 0a 0a 0a 0a 0a nt\Process\ProcessBuilder;......
decc0 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 48 65 6c .class.ProcessHelper.extends.Hel
dece0 70 65 72 0a 7b 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 per.{.............public.functio
ded00 6e 20 72 75 6e 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 n.run(OutputInterface.$output,.$
ded20 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 62 61 63 6b 20 3d 20 cmd,.$error.=.null,.$callback.=.
ded40 6e 75 6c 6c 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 null,.$verbosity.=.OutputInterfa
ded60 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 29 0a 7b 0a 69 66 ce::VERBOSITY_VERY_VERBOSE).{.if
ded80 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 6c 65 4f 75 74 70 .($output.instanceof.ConsoleOutp
deda0 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 6f 75 74 70 75 74 utInterface).{.$output.=.$output
dedc0 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 24 66 6f 72 6d 61 74 74 65 ->getErrorOutput();.}..$formatte
dede0 72 20 3d 20 24 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 r.=.$this->getHelperSet()->get('
dee00 64 65 62 75 67 5f 66 6f 72 6d 61 74 74 65 72 27 29 3b 0a 0a 69 66 20 28 69 73 5f 61 72 72 61 79 debug_formatter');..if.(is_array
dee20 28 24 63 6d 64 29 29 20 7b 0a 24 70 72 6f 63 65 73 73 20 3d 20 50 72 6f 63 65 73 73 42 75 69 6c ($cmd)).{.$process.=.ProcessBuil
dee40 64 65 72 3a 3a 63 72 65 61 74 65 28 24 63 6d 64 29 2d 3e 67 65 74 50 72 6f 63 65 73 73 28 29 3b der::create($cmd)->getProcess();
dee60 0a 7d 20 65 6c 73 65 69 66 20 28 24 63 6d 64 20 69 6e 73 74 61 6e 63 65 6f 66 20 50 72 6f 63 65 .}.elseif.($cmd.instanceof.Proce
dee80 73 73 29 20 7b 0a 24 70 72 6f 63 65 73 73 20 3d 20 24 63 6d 64 3b 0a 7d 20 65 6c 73 65 20 7b 0a ss).{.$process.=.$cmd;.}.else.{.
deea0 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 6d 64 29 3b 0a 7d 0a $process.=.new.Process($cmd);.}.
deec0 0a 69 66 20 28 24 76 65 72 62 6f 73 69 74 79 20 3c 3d 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 .if.($verbosity.<=.$output->getV
deee0 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 28 24 66 6f erbosity()).{.$output->write($fo
def00 72 6d 61 74 74 65 72 2d 3e 73 74 61 72 74 28 73 70 6c 5f 6f 62 6a 65 63 74 5f 68 61 73 68 28 24 rmatter->start(spl_object_hash($
def20 70 72 6f 63 65 73 73 29 2c 20 24 74 68 69 73 2d 3e 65 73 63 61 70 65 53 74 72 69 6e 67 28 24 70 process),.$this->escapeString($p
def40 72 6f 63 65 73 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 29 29 29 29 3b 0a 7d 0a 0a rocess->getCommandLine())));.}..
def60 69 66 20 28 24 6f 75 74 70 75 74 2d 3e 69 73 44 65 62 75 67 28 29 29 20 7b 0a 24 63 61 6c 6c 62 if.($output->isDebug()).{.$callb
def80 61 63 6b 20 3d 20 24 74 68 69 73 2d 3e 77 72 61 70 43 61 6c 6c 62 61 63 6b 28 24 6f 75 74 70 75 ack.=.$this->wrapCallback($outpu
defa0 74 2c 20 24 70 72 6f 63 65 73 73 2c 20 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 7d 0a 0a 24 70 72 6f t,.$process,.$callback);.}..$pro
defc0 63 65 73 73 2d 3e 72 75 6e 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 0a 69 66 20 28 24 76 65 72 62 cess->run($callback);..if.($verb
defe0 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 29 osity.<=.$output->getVerbosity()
df000 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 24 70 72 6f 63 65 73 73 2d 3e 69 73 53 75 63 63 65 ).{.$message.=.$process->isSucce
df020 73 73 66 75 6c 28 29 20 3f 20 27 43 6f 6d 6d 61 6e 64 20 72 61 6e 20 73 75 63 63 65 73 73 66 75 ssful().?.'Command.ran.successfu
df040 6c 6c 79 27 20 3a 20 73 70 72 69 6e 74 66 28 27 25 73 20 43 6f 6d 6d 61 6e 64 20 64 69 64 20 6e lly'.:.sprintf('%s.Command.did.n
df060 6f 74 20 72 75 6e 20 73 75 63 63 65 73 73 66 75 6c 6c 79 27 2c 20 24 70 72 6f 63 65 73 73 2d 3e ot.run.successfully',.$process->
df080 67 65 74 45 78 69 74 43 6f 64 65 28 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 getExitCode());.$output->write($
df0a0 66 6f 72 6d 61 74 74 65 72 2d 3e 73 74 6f 70 28 73 70 6c 5f 6f 62 6a 65 63 74 5f 68 61 73 68 28 formatter->stop(spl_object_hash(
df0c0 24 70 72 6f 63 65 73 73 29 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 70 72 6f 63 65 73 73 2d 3e 69 $process),.$message,.$process->i
df0e0 73 53 75 63 63 65 73 73 66 75 6c 28 29 29 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 70 72 6f 63 65 73 sSuccessful()));.}..if.(!$proces
df100 73 2d 3e 69 73 53 75 63 63 65 73 73 66 75 6c 28 29 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 65 s->isSuccessful().&&.null.!==.$e
df120 72 72 6f 72 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 rror).{.$output->writeln(sprintf
df140 28 27 3c 65 72 72 6f 72 3e 25 73 3c 2f 65 72 72 6f 72 3e 27 2c 20 24 74 68 69 73 2d 3e 65 73 63 ('<error>%s</error>',.$this->esc
df160 61 70 65 53 74 72 69 6e 67 28 24 65 72 72 6f 72 29 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 apeString($error)));.}..return.$
df180 70 72 6f 63 65 73 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 process;.}....................pu
df1a0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 75 73 74 52 75 6e 28 4f 75 74 70 75 74 49 6e 74 65 blic.function.mustRun(OutputInte
df1c0 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 6f 72 20 3d 20 6e 75 rface.$output,.$cmd,.$error.=.nu
df1e0 6c 6c 2c 20 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 70 72 6f 63 65 73 73 ll,.$callback.=.null).{.$process
df200 20 3d 20 24 74 68 69 73 2d 3e 72 75 6e 28 24 6f 75 74 70 75 74 2c 20 24 63 6d 64 2c 20 24 65 72 .=.$this->run($output,.$cmd,.$er
df220 72 6f 72 2c 20 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 0a 69 66 20 28 21 24 70 72 6f 63 65 73 73 2d ror,.$callback);..if.(!$process-
df240 3e 69 73 53 75 63 63 65 73 73 66 75 6c 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 50 72 6f >isSuccessful()).{.throw.new.Pro
df260 63 65 73 73 46 61 69 6c 65 64 45 78 63 65 70 74 69 6f 6e 28 24 70 72 6f 63 65 73 73 29 3b 0a 7d cessFailedException($process);.}
df280 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 63 65 73 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 ..return.$process;.}...........p
df2a0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 61 70 43 61 6c 6c 62 61 63 6b 28 4f 75 74 70 ublic.function.wrapCallback(Outp
df2c0 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 50 72 6f 63 65 73 73 20 24 70 72 utInterface.$output,.Process.$pr
df2e0 6f 63 65 73 73 2c 20 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 ocess,.$callback.=.null).{.if.($
df300 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 74 70 75 74 49 output.instanceof.ConsoleOutputI
df320 6e 74 65 72 66 61 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 nterface).{.$output.=.$output->g
df340 65 74 45 72 72 6f 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 etErrorOutput();.}..$formatter.=
df360 20 24 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 64 65 62 .$this->getHelperSet()->get('deb
df380 75 67 5f 66 6f 72 6d 61 74 74 65 72 27 29 3b 0a 0a 24 74 68 61 74 20 3d 20 24 74 68 69 73 3b 0a ug_formatter');..$that.=.$this;.
df3a0 0a 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 28 24 74 79 70 65 2c 20 24 62 75 66 66 65 72 .return.function.($type,.$buffer
df3c0 29 20 75 73 65 20 28 24 6f 75 74 70 75 74 2c 20 24 70 72 6f 63 65 73 73 2c 20 24 63 61 6c 6c 62 ).use.($output,.$process,.$callb
df3e0 61 63 6b 2c 20 24 66 6f 72 6d 61 74 74 65 72 2c 20 24 74 68 61 74 29 20 7b 0a 24 6f 75 74 70 75 ack,.$formatter,.$that).{.$outpu
df400 74 2d 3e 77 72 69 74 65 28 24 66 6f 72 6d 61 74 74 65 72 2d 3e 70 72 6f 67 72 65 73 73 28 73 70 t->write($formatter->progress(sp
df420 6c 5f 6f 62 6a 65 63 74 5f 68 61 73 68 28 24 70 72 6f 63 65 73 73 29 2c 20 24 74 68 61 74 2d 3e l_object_hash($process),.$that->
df440 65 73 63 61 70 65 53 74 72 69 6e 67 28 24 62 75 66 66 65 72 29 2c 20 50 72 6f 63 65 73 73 3a 3a escapeString($buffer),.Process::
df460 45 52 52 20 3d 3d 3d 20 24 74 79 70 65 29 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 ERR.===.$type));..if.(null.!==.$
df480 63 61 6c 6c 62 61 63 6b 29 20 7b 0a 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 63 61 6c 6c callback).{.call_user_func($call
df4a0 62 61 63 6b 2c 20 24 74 79 70 65 2c 20 24 62 75 66 66 65 72 29 3b 0a 7d 0a 7d 3b 0a 7d 0a 0a 0a back,.$type,.$buffer);.}.};.}...
df4c0 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 53 74 72 69 6e 67 ....public.function.escapeString
df4e0 28 24 73 74 72 29 0a 7b 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 3c 27 2c ($str).{.return.str_replace('<',
df500 20 27 5c 5c 3c 27 2c 20 24 73 74 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 .'\\<',.$str);.}.....public.func
df520 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 70 72 6f 63 65 73 73 tion.getName().{.return.'process
df540 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 65 ';.}.}.<?php...........namespace
df560 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 65 .Symfony\Component\Console\Helpe
df580 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
df5a0 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 72 66 61 63 65 3b e\Output\ConsoleOutputInterface;
df5c0 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
df5e0 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 66 6f utput\OutputInterface;.use.Symfo
df600 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 4c ny\Component\Console\Exception\L
df620 6f 67 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 50 72 6f 67 ogicException;........class.Prog
df640 72 65 73 73 42 61 72 0a 7b 0a 0a 20 70 72 69 76 61 74 65 20 24 62 61 72 57 69 64 74 68 20 3d 20 ressBar.{...private.$barWidth.=.
df660 32 38 3b 0a 70 72 69 76 61 74 65 20 24 62 61 72 43 68 61 72 3b 0a 70 72 69 76 61 74 65 20 24 65 28;.private.$barChar;.private.$e
df680 6d 70 74 79 42 61 72 43 68 61 72 20 3d 20 27 2d 27 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 67 mptyBarChar.=.'-';.private.$prog
df6a0 72 65 73 73 43 68 61 72 20 3d 20 27 3e 27 3b 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 3b ressChar.=.'>';.private.$format;
df6c0 0a 70 72 69 76 61 74 65 20 24 69 6e 74 65 72 6e 61 6c 46 6f 72 6d 61 74 3b 0a 70 72 69 76 61 74 .private.$internalFormat;.privat
df6e0 65 20 24 72 65 64 72 61 77 46 72 65 71 20 3d 20 31 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 e.$redrawFreq.=.1;.....private.$
df700 6f 75 74 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 73 74 65 70 20 3d 20 30 3b 0a 70 72 69 76 61 output;.private.$step.=.0;.priva
df720 74 65 20 24 6d 61 78 3b 0a 70 72 69 76 61 74 65 20 24 73 74 61 72 74 54 69 6d 65 3b 0a 70 72 69 te.$max;.private.$startTime;.pri
df740 76 61 74 65 20 24 73 74 65 70 57 69 64 74 68 3b 0a 70 72 69 76 61 74 65 20 24 70 65 72 63 65 6e vate.$stepWidth;.private.$percen
df760 74 20 3d 20 30 2e 30 3b 0a 70 72 69 76 61 74 65 20 24 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 t.=.0.0;.private.$lastMessagesLe
df780 6e 67 74 68 20 3d 20 30 3b 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 4c 69 6e 65 43 6f 75 ngth.=.0;.private.$formatLineCou
df7a0 6e 74 3b 0a 70 72 69 76 61 74 65 20 24 6d 65 73 73 61 67 65 73 3b 0a 70 72 69 76 61 74 65 20 24 nt;.private.$messages;.private.$
df7c0 6f 76 65 72 77 72 69 74 65 20 3d 20 74 72 75 65 3b 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 overwrite.=.true;..private.stati
df7e0 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 74 69 63 20 24 66 c.$formatters;.private.static.$f
df800 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 74 69 6f 6e 20 5f ormats;........public.function._
df820 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 74 70 _construct(OutputInterface.$outp
df840 75 74 2c 20 24 6d 61 78 20 3d 20 30 29 0a 7b 0a 69 66 20 28 24 6f 75 74 70 75 74 20 69 6e 73 74 ut,.$max.=.0).{.if.($output.inst
df860 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 20 7b anceof.ConsoleOutputInterface).{
df880 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 74 70 .$output.=.$output->getErrorOutp
df8a0 75 74 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 ut();.}..$this->output.=.$output
df8c0 3b 0a 24 74 68 69 73 2d 3e 73 65 74 4d 61 78 53 74 65 70 73 28 24 6d 61 78 29 3b 0a 0a 69 66 20 ;.$this->setMaxSteps($max);..if.
df8e0 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 28 29 29 20 (!$this->output->isDecorated()).
df900 7b 0a 0a 20 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a {...$this->overwrite.=.false;...
df920 20 24 74 68 69 73 2d 3e 73 65 74 52 65 64 72 61 77 46 72 65 71 75 65 6e 63 79 28 24 6d 61 78 20 .$this->setRedrawFrequency($max.
df940 2f 20 31 30 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 20 3d 20 74 69 6d /.10);.}..$this->startTime.=.tim
df960 65 28 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 e();.}..........public.static.fu
df980 6e 63 74 69 6f 6e 20 73 65 74 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 6d 61 74 74 65 72 44 65 nction.setPlaceholderFormatterDe
df9a0 66 69 6e 69 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 63 61 6c 6c 61 62 6c 65 29 0a 7b 0a 69 66 20 finition($name,.$callable).{.if.
df9c0 28 21 73 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 (!self::$formatters).{.self::$fo
df9e0 72 6d 61 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 rmatters.=.self::initPlaceholder
dfa00 46 6f 72 6d 61 74 74 65 72 73 28 29 3b 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 Formatters();.}..self::$formatte
dfa20 72 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 63 61 6c 6c 61 62 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a rs[$name].=.$callable;.}........
dfa40 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 50 6c 61 63 65 .public.static.function.getPlace
dfa60 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 24 6e 61 6d 65 29 holderFormatterDefinition($name)
dfa80 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 20 7b 0a 73 65 6c .{.if.(!self::$formatters).{.sel
dfaa0 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 74 50 6c 61 63 65 f::$formatters.=.self::initPlace
dfac0 68 6f 6c 64 65 72 46 6f 72 6d 61 74 74 65 72 73 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 holderFormatters();.}..return.is
dfae0 73 65 74 28 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 73 5b 24 6e 61 6d 65 5d 29 20 3f 20 set(self::$formatters[$name]).?.
dfb00 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 74 65 72 73 5b 24 6e 61 6d 65 5d 20 3a 20 6e 75 6c 6c 3b self::$formatters[$name].:.null;
dfb20 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
dfb40 6f 6e 20 73 65 74 46 6f 72 6d 61 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 66 on.setFormatDefinition($name,.$f
dfb60 6f 72 6d 61 74 29 0a 7b 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 29 20 7b 0a ormat).{.if.(!self::$formats).{.
dfb80 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 6f 72 6d 61 self::$formats.=.self::initForma
dfba0 74 73 28 29 3b 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 5b 24 6e 61 6d 65 5d 20 3d ts();.}..self::$formats[$name].=
dfbc0 20 24 66 6f 72 6d 61 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 .$format;.}.........public.stati
dfbe0 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 69 6f 6e 28 24 c.function.getFormatDefinition($
dfc00 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 29 20 7b 0a 73 name).{.if.(!self::$formats).{.s
dfc20 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 6f 72 6d 61 74 elf::$formats.=.self::initFormat
dfc40 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 24 66 6f 72 6d s();.}..return.isset(self::$form
dfc60 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 73 5b 24 6e 61 ats[$name]).?.self::$formats[$na
dfc80 6d 65 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 73 me].:.null;.}..public.function.s
dfca0 65 74 4d 65 73 73 61 67 65 28 24 6d 65 73 73 61 67 65 2c 20 24 6e 61 6d 65 20 3d 20 27 6d 65 73 etMessage($message,.$name.=.'mes
dfcc0 73 61 67 65 27 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 73 5b 24 6e 61 6d 65 5d 20 sage').{.$this->messages[$name].
dfce0 3d 20 24 6d 65 73 73 61 67 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 =.$message;.}..public.function.g
dfd00 65 74 4d 65 73 73 61 67 65 28 24 6e 61 6d 65 20 3d 20 27 6d 65 73 73 61 67 65 27 29 0a 7b 0a 72 etMessage($name.=.'message').{.r
dfd20 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a eturn.$this->messages[$name];.}.
dfd40 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 72 74 54 69 ......public.function.getStartTi
dfd60 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 3b 0a me().{.return.$this->startTime;.
dfd80 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 4d 61 78 53 74 }.......public.function.getMaxSt
dfda0 65 70 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 3b 0a 7d 0a 0a 0a 0a eps().{.return.$this->max;.}....
dfdc0 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 65 70 28 29 0a 7b .....public.function.getStep().{
dfde0 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 4f 44 5f .@trigger_error('The.'.__METHOD_
dfe00 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 65 20 76 _.'.method.is.deprecated.since.v
dfe20 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 64 20 69 ersion.2.6.and.will.be.removed.i
dfe40 6e 20 33 2e 30 2e 20 55 73 65 20 74 68 65 20 67 65 74 50 72 6f 67 72 65 73 73 28 29 20 6d 65 74 n.3.0..Use.the.getProgress().met
dfe60 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 54 45 44 hod.instead.',.E_USER_DEPRECATED
dfe80 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 28 29 3b );..return.$this->getProgress();
dfea0 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 72 6f 67 .}.......public.function.getProg
dfec0 72 65 73 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 65 70 3b 0a 7d 0a 0a ress().{.return.$this->step;.}..
dfee0 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 65 70 57 69 .......public.function.getStepWi
dff00 64 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 65 70 57 69 64 74 68 3b dth().{.return.$this->stepWidth;
dff20 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 72 6f 67 .}.......public.function.getProg
dff40 72 65 73 73 50 65 72 63 65 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 65 ressPercent().{.return.$this->pe
dff60 72 63 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 73 rcent;.}.......public.function.s
dff80 65 74 42 61 72 57 69 64 74 68 28 24 73 69 7a 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 61 72 57 69 etBarWidth($size).{.$this->barWi
dffa0 64 74 68 20 3d 20 28 69 6e 74 29 20 24 73 69 7a 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 dth.=.(int).$size;.}.......publi
dffc0 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 61 72 57 69 64 74 68 28 29 0a 7b 0a 72 65 74 75 72 c.function.getBarWidth().{.retur
dffe0 6e 20 24 74 68 69 73 2d 3e 62 61 72 57 69 64 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 n.$this->barWidth;.}.......publi
e0000 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 42 61 72 43 68 61 72 61 63 74 65 72 28 24 63 68 61 72 c.function.setBarCharacter($char
e0020 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 20 3d 20 24 63 68 61 72 3b 0a 7d 0a 0a 0a ).{.$this->barChar.=.$char;.}...
e0040 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 61 72 43 68 61 72 61 63 ....public.function.getBarCharac
e0060 74 65 72 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 61 72 43 ter().{.if.(null.===.$this->barC
e0080 68 61 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 20 3f 20 27 3d 27 20 3a har).{.return.$this->max.?.'='.:
e00a0 20 24 74 68 69 73 2d 3e 65 6d 70 74 79 42 61 72 43 68 61 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 .$this->emptyBarChar;.}..return.
e00c0 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 $this->barChar;.}.......public.f
e00e0 75 6e 63 74 69 6f 6e 20 73 65 74 45 6d 70 74 79 42 61 72 43 68 61 72 61 63 74 65 72 28 24 63 68 unction.setEmptyBarCharacter($ch
e0100 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6d 70 74 79 42 61 72 43 68 61 72 20 3d 20 24 63 68 61 ar).{.$this->emptyBarChar.=.$cha
e0120 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 67 65 74 45 6d r;.}.......public.function.getEm
e0140 70 74 79 42 61 72 43 68 61 72 61 63 74 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ptyBarCharacter().{.return.$this
e0160 2d 3e 65 6d 70 74 79 42 61 72 43 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ->emptyBarChar;.}.......public.f
e0180 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 6f 67 72 65 73 73 43 68 61 72 61 63 74 65 72 28 24 63 68 unction.setProgressCharacter($ch
e01a0 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 43 68 61 72 20 3d 20 24 63 68 61 ar).{.$this->progressChar.=.$cha
e01c0 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 67 65 74 50 72 r;.}.......public.function.getPr
e01e0 6f 67 72 65 73 73 43 68 61 72 61 63 74 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ogressCharacter().{.return.$this
e0200 2d 3e 70 72 6f 67 72 65 73 73 43 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ->progressChar;.}.......public.f
e0220 75 6e 63 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 unction.setFormat($format).{.$th
e0240 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 74 65 72 6e is->format.=.null;.$this->intern
e0260 61 6c 46 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 alFormat.=.$format;.}.......publ
e0280 69 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 ic.function.setRedrawFrequency($
e02a0 66 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 6d 61 78 28 freq).{.$this->redrawFreq.=.max(
e02c0 28 69 6e 74 29 20 24 66 72 65 71 2c 20 31 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 (int).$freq,.1);.}.......public.
e02e0 66 75 6e 63 74 69 6f 6e 20 73 74 61 72 74 28 24 6d 61 78 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 function.start($max.=.null).{.$t
e0300 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 24 74 68 69 73 2d 3e his->startTime.=.time();.$this->
e0320 73 74 65 70 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 70 65 72 63 65 6e 74 20 3d 20 30 2e 30 3b 0a step.=.0;.$this->percent.=.0.0;.
e0340 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 6d 61 78 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 .if.(null.!==.$max).{.$this->set
e0360 4d 61 78 53 74 65 70 73 28 24 6d 61 78 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 MaxSteps($max);.}..$this->displa
e0380 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 69 6f 6e 20 61 y();.}.........public.function.a
e03a0 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 73 65 74 50 72 dvance($step.=.1).{.$this->setPr
e03c0 6f 67 72 65 73 73 28 24 74 68 69 73 2d 3e 73 74 65 70 20 2b 20 24 73 74 65 70 29 3b 0a 7d 0a 0a ogress($this->step.+.$step);.}..
e03e0 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 75 72 72 .........public.function.setCurr
e0400 65 6e 74 28 24 73 74 65 70 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 ent($step).{.@trigger_error('The
e0420 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
e0440 61 74 65 64 20 73 69 6e 63 65 20 76 65 72 73 69 6f 6e 20 32 2e 36 20 61 6e 64 20 77 69 6c 6c 20 ated.since.version.2.6.and.will.
e0460 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 73 65 74 50 72 be.removed.in.3.0..Use.the.setPr
e0480 6f 67 72 65 73 73 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 ogress().method.instead.',.E_USE
e04a0 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 65 74 50 72 6f 67 72 65 R_DEPRECATED);..$this->setProgre
e04c0 73 73 28 24 73 74 65 70 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 ss($step);.}.......public.functi
e04e0 6f 6e 20 73 65 74 4f 76 65 72 77 72 69 74 65 28 24 6f 76 65 72 77 72 69 74 65 29 0a 7b 0a 24 74 on.setOverwrite($overwrite).{.$t
e0500 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 20 3d 20 28 62 6f 6f 6c 29 20 24 6f 76 65 72 77 72 69 his->overwrite.=.(bool).$overwri
e0520 74 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 65 te;.}.........public.function.se
e0540 74 50 72 6f 67 72 65 73 73 28 24 73 74 65 70 29 0a 7b 0a 24 73 74 65 70 20 3d 20 28 69 6e 74 29 tProgress($step).{.$step.=.(int)
e0560 20 24 73 74 65 70 3b 0a 69 66 20 28 24 73 74 65 70 20 3c 20 24 74 68 69 73 2d 3e 73 74 65 70 29 .$step;.if.($step.<.$this->step)
e0580 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 6f 75 .{.throw.new.LogicException('You
e05a0 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 61 72 .can\'t.regress.the.progress.bar
e05c0 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 61 78 20 26 26 20 24 73 74 65 70 20 .');.}..if.($this->max.&&.$step.
e05e0 3e 20 24 74 68 69 73 2d 3e 6d 61 78 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 61 78 20 3d 20 24 73 74 >.$this->max).{.$this->max.=.$st
e0600 65 70 3b 0a 7d 0a 0a 24 70 72 65 76 50 65 72 69 6f 64 20 3d 20 28 69 6e 74 29 20 28 24 74 68 69 ep;.}..$prevPeriod.=.(int).($thi
e0620 73 2d 3e 73 74 65 70 20 2f 20 24 74 68 69 73 2d 3e 72 65 64 72 61 77 46 72 65 71 29 3b 0a 24 63 s->step./.$this->redrawFreq);.$c
e0640 75 72 72 50 65 72 69 6f 64 20 3d 20 28 69 6e 74 29 20 28 24 73 74 65 70 20 2f 20 24 74 68 69 73 urrPeriod.=.(int).($step./.$this
e0660 2d 3e 72 65 64 72 61 77 46 72 65 71 29 3b 0a 24 74 68 69 73 2d 3e 73 74 65 70 20 3d 20 24 73 74 ->redrawFreq);.$this->step.=.$st
e0680 65 70 3b 0a 24 74 68 69 73 2d 3e 70 65 72 63 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 6d 61 78 20 ep;.$this->percent.=.$this->max.
e06a0 3f 20 28 66 6c 6f 61 74 29 20 24 74 68 69 73 2d 3e 73 74 65 70 20 2f 20 24 74 68 69 73 2d 3e 6d ?.(float).$this->step./.$this->m
e06c0 61 78 20 3a 20 30 3b 0a 69 66 20 28 24 70 72 65 76 50 65 72 69 6f 64 20 21 3d 3d 20 24 63 75 72 ax.:.0;.if.($prevPeriod.!==.$cur
e06e0 72 50 65 72 69 6f 64 20 7c 7c 20 24 74 68 69 73 2d 3e 6d 61 78 20 3d 3d 3d 20 24 73 74 65 70 29 rPeriod.||.$this->max.===.$step)
e0700 20 7b 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 .{.$this->display();.}.}.....pub
e0720 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 21 24 74 68 lic.function.finish().{.if.(!$th
e0740 69 73 2d 3e 6d 61 78 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 61 78 20 3d 20 24 74 68 69 73 2d 3e 73 is->max).{.$this->max.=.$this->s
e0760 74 65 70 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 74 65 70 20 3d 3d 3d 20 24 74 68 69 tep;.}..if.($this->step.===.$thi
e0780 73 2d 3e 6d 61 78 20 26 26 20 21 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 29 20 7b 0a 0a s->max.&&.!$this->overwrite).{..
e07a0 20 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 50 72 6f 67 72 65 73 73 28 24 .return;.}..$this->setProgress($
e07c0 74 68 69 73 2d 3e 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 this->max);.}.....public.functio
e07e0 6e 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 n.display().{.if.(OutputInterfac
e0800 65 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 e::VERBOSITY_QUIET.===.$this->ou
e0820 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 74 75 72 6e 3b 0a tput->getVerbosity()).{.return;.
e0840 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 74 29 20 7b }..if.(null.===.$this->format).{
e0860 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 3e 69 6e 74 .$this->setRealFormat($this->int
e0880 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 69 6e 65 42 ernalFormat.?:.$this->determineB
e08a0 65 73 74 46 6f 72 6d 61 74 28 29 29 3b 0a 7d 0a 0a 0a 20 24 73 65 6c 66 20 3d 20 24 74 68 69 73 estFormat());.}....$self.=.$this
e08c0 3b 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 24 6d 65 73 73 ;.$output.=.$this->output;.$mess
e08e0 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 73 3b 0a 24 74 68 69 73 2d 3e 6f ages.=.$this->messages;.$this->o
e0900 76 65 72 77 72 69 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 verwrite(preg_replace_callback("
e0920 7b 25 28 5b 61 2d 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 {%([a-z\-_]+)(?:\:([^%]+))?%}i",
e0940 20 66 75 6e 63 74 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 2c .function.($matches).use.($self,
e0960 20 24 6f 75 74 70 75 74 2c 20 24 6d 65 73 73 61 67 65 73 29 20 7b 0a 69 66 20 28 24 66 6f 72 6d .$output,.$messages).{.if.($form
e0980 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 64 65 72 46 6f 72 atter.=.$self::getPlaceholderFor
e09a0 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 31 5d 29 29 20 7b matterDefinition($matches[1])).{
e09c0 0a 24 74 65 78 74 20 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 66 6f 72 6d 61 74 74 .$text.=.call_user_func($formatt
e09e0 65 72 2c 20 24 73 65 6c 66 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 er,.$self,.$output);.}.elseif.(i
e0a00 73 73 65 74 28 24 6d 65 73 73 61 67 65 73 5b 24 6d 61 74 63 68 65 73 5b 31 5d 5d 29 29 20 7b 0a sset($messages[$matches[1]])).{.
e0a20 24 74 65 78 74 20 3d 20 24 6d 65 73 73 61 67 65 73 5b 24 6d 61 74 63 68 65 73 5b 31 5d 5d 3b 0a $text.=.$messages[$matches[1]];.
e0a40 7d 20 65 6c 73 65 20 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 5b 30 5d 3b 0a 7d 0a 0a }.else.{.return.$matches[0];.}..
e0a60 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 20 7b 0a 24 74 65 78 74 20 if.(isset($matches[2])).{.$text.
e0a80 3d 20 73 70 72 69 6e 74 66 28 27 25 27 2e 24 6d 61 74 63 68 65 73 5b 32 5d 2c 20 24 74 65 78 74 =.sprintf('%'.$matches[2],.$text
e0aa0 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 65 78 74 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 66 6f );.}..return.$text;.},.$this->fo
e0ac0 72 6d 61 74 29 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 rmat));.}.........public.functio
e0ae0 6e 20 63 6c 65 61 72 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 n.clear().{.if.(!$this->overwrit
e0b00 65 29 20 7b 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 74 68 e).{.return;.}..if.(null.===.$th
e0b20 69 73 2d 3e 66 6f 72 6d 61 74 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 52 65 61 6c 46 6f 72 6d is->format).{.$this->setRealForm
e0b40 61 74 28 24 74 68 69 73 2d 3e 69 6e 74 65 72 6e 61 6c 46 6f 72 6d 61 74 20 3f 3a 20 24 74 68 69 at($this->internalFormat.?:.$thi
e0b60 73 2d 3e 64 65 74 65 72 6d 69 6e 65 42 65 73 74 46 6f 72 6d 61 74 28 29 29 3b 0a 7d 0a 0a 24 74 s->determineBestFormat());.}..$t
e0b80 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 22 5c 6e 22 2c 20 his->overwrite(str_repeat("\n",.
e0ba0 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 0a 0a 0a 0a 0a $this->formatLineCount));.}.....
e0bc0 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 61 6c 46 6f 72 6d 61 74 ..private.function.setRealFormat
e0be0 28 24 66 6f 72 6d 61 74 29 0a 7b 0a 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 6d 61 78 20 26 26 ($format).{...if.(!$this->max.&&
e0c00 20 6e 75 6c 6c 20 21 3d 3d 20 73 65 6c 66 3a 3a 67 65 74 46 6f 72 6d 61 74 44 65 66 69 6e 69 74 .null.!==.self::getFormatDefinit
e0c20 69 6f 6e 28 24 66 6f 72 6d 61 74 2e 27 5f 6e 6f 6d 61 78 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e ion($format.'_nomax')).{.$this->
e0c40 66 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 format.=.self::getFormatDefiniti
e0c60 6f 6e 28 24 66 6f 72 6d 61 74 2e 27 5f 6e 6f 6d 61 78 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 on($format.'_nomax');.}.elseif.(
e0c80 6e 75 6c 6c 20 21 3d 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 null.!==.self::getFormatDefiniti
e0ca0 6f 6e 28 24 66 6f 72 6d 61 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 73 on($format)).{.$this->format.=.s
e0cc0 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 74 elf::getFormatDefinition($format
e0ce0 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 24 66 6f 72 );.}.else.{.$this->format.=.$for
e0d00 6d 61 74 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 4c 69 6e 65 43 6f 75 6e 74 20 3d mat;.}..$this->formatLineCount.=
e0d20 20 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 2c 20 22 5c 6e .substr_count($this->format,."\n
e0d40 22 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 73 65 74 ");.}.......private.function.set
e0d60 4d 61 78 53 74 65 70 73 28 24 6d 61 78 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 61 78 20 3d 20 6d 61 MaxSteps($max).{.$this->max.=.ma
e0d80 78 28 30 2c 20 28 69 6e 74 29 20 24 6d 61 78 29 3b 0a 24 74 68 69 73 2d 3e 73 74 65 70 57 69 64 x(0,.(int).$max);.$this->stepWid
e0da0 74 68 20 3d 20 24 74 68 69 73 2d 3e 6d 61 78 20 3f 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e th.=.$this->max.?.Helper::strlen
e0dc0 28 24 74 68 69 73 2d 3e 6d 61 78 29 20 3a 20 34 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 ($this->max).:.4;.}.......privat
e0de0 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 7b e.function.overwrite($message).{
e0e00 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 6d 65 73 73 61 67 65 .$lines.=.explode("\n",.$message
e0e20 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 6c 61 73 74 4d 65 );....if.(null.!==.$this->lastMe
e0e40 73 73 61 67 65 73 4c 65 6e 67 74 68 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 ssagesLength).{.foreach.($lines.
e0e60 61 73 20 24 69 20 3d 3e 20 24 6c 69 6e 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c 61 73 as.$i.=>.$line).{.if.($this->las
e0e80 74 4d 65 73 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 tMessagesLength.>.Helper::strlen
e0ea0 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 6f 75 74 70 75 74 2d WithoutDecoration($this->output-
e0ec0 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2c 20 24 6c 69 6e 65 29 29 20 7b 0a 24 6c 69 6e 65 >getFormatter(),.$line)).{.$line
e0ee0 73 5b 24 69 5d 20 3d 20 73 74 72 5f 70 61 64 28 24 6c 69 6e 65 2c 20 24 74 68 69 73 2d 3e 6c 61 s[$i].=.str_pad($line,.$this->la
e0f00 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
e0f20 44 5f 52 49 47 48 54 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6f 76 65 72 D_RIGHT);.}.}.}..if.($this->over
e0f40 77 72 69 74 65 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 write).{...$this->output->write(
e0f60 22 5c 78 30 44 22 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 73 74 65 70 20 3e "\x0D");.}.elseif.($this->step.>
e0f80 20 30 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 .0).{...$this->output->writeln('
e0fa0 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 4c 69 6e 65 43 6f 75 6e ');.}..if.($this->formatLineCoun
e0fc0 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 28 73 70 72 69 6e 74 t).{.$this->output->write(sprint
e0fe0 66 28 22 5c 30 33 33 5b 25 64 41 22 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 4c 69 6e 65 43 f("\033[%dA",.$this->formatLineC
e1000 6f 75 6e 74 29 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 28 69 ount));.}.$this->output->write(i
e1020 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 6c 69 6e 65 73 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 6c mplode("\n",.$lines));..$this->l
e1040 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 astMessagesLength.=.0;.foreach.(
e1060 24 6c 69 6e 65 73 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 24 6c 65 6e 20 3d 20 48 65 6c 70 65 72 $lines.as.$line).{.$len.=.Helper
e1080 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 73 2d ::strlenWithoutDecoration($this-
e10a0 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 6c 69 6e 65 29 3b >output->getFormatter(),.$line);
e10c0 0a 69 66 20 28 24 6c 65 6e 20 3e 20 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c .if.($len.>.$this->lastMessagesL
e10e0 65 6e 67 74 68 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 ength).{.$this->lastMessagesLeng
e1100 74 68 20 3d 20 24 6c 65 6e 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 th.=.$len;.}.}.}..private.functi
e1120 6f 6e 20 64 65 74 65 72 6d 69 6e 65 42 65 73 74 46 6f 72 6d 61 74 28 29 0a 7b 0a 73 77 69 74 63 on.determineBestFormat().{.switc
e1140 68 20 28 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 h.($this->output->getVerbosity()
e1160 29 20 7b 0a 0a 20 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 ).{...case.OutputInterface::VERB
e1180 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 OSITY_VERBOSE:.return.$this->max
e11a0 20 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 6d 61 78 27 3b 0a .?.'verbose'.:.'verbose_nomax';.
e11c0 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_
e11e0 56 45 52 59 5f 56 45 52 42 4f 53 45 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 20 VERY_VERBOSE:.return.$this->max.
e1200 3f 20 27 76 65 72 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 ?.'very_verbose'.:.'very_verbose
e1220 5f 6e 6f 6d 61 78 27 3b 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 _nomax';.case.OutputInterface::V
e1240 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 69 73 2d 3e 6d 61 ERBOSITY_DEBUG:.return.$this->ma
e1260 78 20 3f 20 27 64 65 62 75 67 27 20 3a 20 27 64 65 62 75 67 5f 6e 6f 6d 61 78 27 3b 0a 64 65 66 x.?.'debug'.:.'debug_nomax';.def
e1280 61 75 6c 74 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 78 20 3f 20 27 6e 6f 72 6d 61 ault:.return.$this->max.?.'norma
e12a0 6c 27 20 3a 20 27 6e 6f 72 6d 61 6c 5f 6e 6f 6d 61 78 27 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 l'.:.'normal_nomax';.}.}..privat
e12c0 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 65 e.static.function.initPlaceholde
e12e0 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 62 rFormatters().{.return.array(.'b
e1300 61 72 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 ar'.=>.function.(ProgressBar.$ba
e1320 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 29 20 7b 0a 24 63 r,.OutputInterface.$output).{.$c
e1340 6f 6d 70 6c 65 74 65 42 61 72 73 20 3d 20 66 6c 6f 6f 72 28 24 62 61 72 2d 3e 67 65 74 4d 61 78 ompleteBars.=.floor($bar->getMax
e1360 53 74 65 70 73 28 29 20 3e 20 30 20 3f 20 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 50 Steps().>.0.?.$bar->getProgressP
e1380 65 72 63 65 6e 74 28 29 20 2a 20 24 62 61 72 2d 3e 67 65 74 42 61 72 57 69 64 74 68 28 29 20 3a ercent().*.$bar->getBarWidth().:
e13a0 20 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 28 29 20 25 20 24 62 61 72 2d 3e 67 65 74 .$bar->getProgress().%.$bar->get
e13c0 42 61 72 57 69 64 74 68 28 29 29 3b 0a 24 64 69 73 70 6c 61 79 20 3d 20 73 74 72 5f 72 65 70 65 BarWidth());.$display.=.str_repe
e13e0 61 74 28 24 62 61 72 2d 3e 67 65 74 42 61 72 43 68 61 72 61 63 74 65 72 28 29 2c 20 24 63 6f 6d at($bar->getBarCharacter(),.$com
e1400 70 6c 65 74 65 42 61 72 73 29 3b 0a 69 66 20 28 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 3c 20 pleteBars);.if.($completeBars.<.
e1420 24 62 61 72 2d 3e 67 65 74 42 61 72 57 69 64 74 68 28 29 29 20 7b 0a 24 65 6d 70 74 79 42 61 72 $bar->getBarWidth()).{.$emptyBar
e1440 73 20 3d 20 24 62 61 72 2d 3e 67 65 74 42 61 72 57 69 64 74 68 28 29 20 2d 20 24 63 6f 6d 70 6c s.=.$bar->getBarWidth().-.$compl
e1460 65 74 65 42 61 72 73 20 2d 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 69 74 68 6f 75 74 44 eteBars.-.Helper::strlenWithoutD
e1480 65 63 6f 72 61 74 69 6f 6e 28 24 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 ecoration($output->getFormatter(
e14a0 29 2c 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 29 29 ),.$bar->getProgressCharacter())
e14c0 3b 0a 24 64 69 73 70 6c 61 79 20 2e 3d 20 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 43 ;.$display..=.$bar->getProgressC
e14e0 68 61 72 61 63 74 65 72 28 29 2e 73 74 72 5f 72 65 70 65 61 74 28 24 62 61 72 2d 3e 67 65 74 45 haracter().str_repeat($bar->getE
e1500 6d 70 74 79 42 61 72 43 68 61 72 61 63 74 65 72 28 29 2c 20 24 65 6d 70 74 79 42 61 72 73 29 3b mptyBarCharacter(),.$emptyBars);
e1520 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 69 73 70 6c 61 79 3b 0a 7d 2c 0a 27 65 6c 61 70 73 65 64 .}..return.$display;.},.'elapsed
e1540 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 29 '.=>.function.(ProgressBar.$bar)
e1560 20 7b 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 74 69 6d .{.return.Helper::formatTime(tim
e1580 65 28 29 20 2d 20 24 62 61 72 2d 3e 67 65 74 53 74 61 72 74 54 69 6d 65 28 29 29 3b 0a 7d 2c 0a e().-.$bar->getStartTime());.},.
e15a0 27 72 65 6d 61 69 6e 69 6e 67 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 28 50 72 6f 67 72 65 73 'remaining'.=>.function.(Progres
e15c0 73 42 61 72 20 24 62 61 72 29 20 7b 0a 69 66 20 28 21 24 62 61 72 2d 3e 67 65 74 4d 61 78 53 74 sBar.$bar).{.if.(!$bar->getMaxSt
e15e0 65 70 73 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 eps()).{.throw.new.LogicExceptio
e1600 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 64 69 73 70 6c 61 79 20 74 68 65 20 72 65 6d 61 69 6e 69 n('Unable.to.display.the.remaini
e1620 6e 67 20 74 69 6d 65 20 69 66 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 ng.time.if.the.maximum.number.of
e1640 20 73 74 65 70 73 20 69 73 20 6e 6f 74 20 73 65 74 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 62 .steps.is.not.set.');.}..if.(!$b
e1660 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 28 29 29 20 7b 0a 24 72 65 6d 61 69 6e 69 6e 67 20 ar->getProgress()).{.$remaining.
e1680 3d 20 30 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 6d 61 69 6e 69 6e 67 20 3d 20 72 6f 75 6e 64 =.0;.}.else.{.$remaining.=.round
e16a0 28 28 74 69 6d 65 28 29 20 2d 20 24 62 61 72 2d 3e 67 65 74 53 74 61 72 74 54 69 6d 65 28 29 29 ((time().-.$bar->getStartTime())
e16c0 20 2f 20 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 28 29 20 2a 20 28 24 62 61 72 2d 3e ./.$bar->getProgress().*.($bar->
e16e0 67 65 74 4d 61 78 53 74 65 70 73 28 29 20 2d 20 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 getMaxSteps().-.$bar->getProgres
e1700 73 28 29 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 48 65 6c 70 65 72 3a 3a 66 6f 72 6d 61 74 54 s()));.}..return.Helper::formatT
e1720 69 6d 65 28 24 72 65 6d 61 69 6e 69 6e 67 29 3b 0a 7d 2c 0a 27 65 73 74 69 6d 61 74 65 64 27 20 ime($remaining);.},.'estimated'.
e1740 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 29 20 7b =>.function.(ProgressBar.$bar).{
e1760 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 74 68 72 .if.(!$bar->getMaxSteps()).{.thr
e1780 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 20 74 6f ow.new.LogicException('Unable.to
e17a0 20 64 69 73 70 6c 61 79 20 74 68 65 20 65 73 74 69 6d 61 74 65 64 20 74 69 6d 65 20 69 66 20 74 .display.the.estimated.time.if.t
e17c0 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 20 6e 6f he.maximum.number.of.steps.is.no
e17e0 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 6f 67 72 t.set.');.}..if.(!$bar->getProgr
e1800 65 73 73 28 29 29 20 7b 0a 24 65 73 74 69 6d 61 74 65 64 20 3d 20 30 3b 0a 7d 20 65 6c 73 65 20 ess()).{.$estimated.=.0;.}.else.
e1820 7b 0a 24 65 73 74 69 6d 61 74 65 64 20 3d 20 72 6f 75 6e 64 28 28 74 69 6d 65 28 29 20 2d 20 24 {.$estimated.=.round((time().-.$
e1840 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 67 65 74 bar->getStartTime())./.$bar->get
e1860 50 72 6f 67 72 65 73 73 28 29 20 2a 20 24 62 61 72 2d 3e 67 65 74 4d 61 78 53 74 65 70 73 28 29 Progress().*.$bar->getMaxSteps()
e1880 29 3b 0a 7d 0a 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 );.}..return.Helper::formatTime(
e18a0 24 65 73 74 69 6d 61 74 65 64 29 3b 0a 7d 2c 0a 27 6d 65 6d 6f 72 79 27 20 3d 3e 20 66 75 6e 63 $estimated);.},.'memory'.=>.func
e18c0 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
e18e0 20 48 65 6c 70 65 72 3a 3a 66 6f 72 6d 61 74 4d 65 6d 6f 72 79 28 6d 65 6d 6f 72 79 5f 67 65 74 .Helper::formatMemory(memory_get
e1900 5f 75 73 61 67 65 28 74 72 75 65 29 29 3b 0a 7d 2c 0a 27 63 75 72 72 65 6e 74 27 20 3d 3e 20 66 _usage(true));.},.'current'.=>.f
e1920 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 29 20 7b 0a 72 65 74 unction.(ProgressBar.$bar).{.ret
e1940 75 72 6e 20 73 74 72 5f 70 61 64 28 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 28 29 2c urn.str_pad($bar->getProgress(),
e1960 20 24 62 61 72 2d 3e 67 65 74 53 74 65 70 57 69 64 74 68 28 29 2c 20 27 20 27 2c 20 53 54 52 5f .$bar->getStepWidth(),.'.',.STR_
e1980 50 41 44 5f 4c 45 46 54 29 3b 0a 7d 2c 0a 27 6d 61 78 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 PAD_LEFT);.},.'max'.=>.function.
e19a0 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 24 62 61 72 (ProgressBar.$bar).{.return.$bar
e19c0 2d 3e 67 65 74 4d 61 78 53 74 65 70 73 28 29 3b 0a 7d 2c 0a 27 70 65 72 63 65 6e 74 27 20 3d 3e ->getMaxSteps();.},.'percent'.=>
e19e0 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 29 20 7b 0a 72 .function.(ProgressBar.$bar).{.r
e1a00 65 74 75 72 6e 20 66 6c 6f 6f 72 28 24 62 61 72 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 50 65 72 eturn.floor($bar->getProgressPer
e1a20 63 65 6e 74 28 29 20 2a 20 31 30 30 29 3b 0a 7d 2c 0a 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 cent().*.100);.},.);.}..private.
e1a40 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 46 6f 72 6d 61 74 73 28 29 0a 7b 0a static.function.initFormats().{.
e1a60 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 6e 6f 72 6d 61 6c 27 20 3d 3e 20 27 20 25 63 75 72 return.array(.'normal'.=>.'.%cur
e1a80 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 3a 33 73 25 rent%/%max%.[%bar%].%percent:3s%
e1aa0 25 27 2c 0a 27 6e 6f 72 6d 61 6c 5f 6e 6f 6d 61 78 27 20 3d 3e 20 27 20 25 63 75 72 72 65 6e 74 %',.'normal_nomax'.=>.'.%current
e1ac0 25 20 5b 25 62 61 72 25 5d 27 2c 0a 0a 27 76 65 72 62 6f 73 65 27 20 3d 3e 20 27 20 25 63 75 72 %.[%bar%]',..'verbose'.=>.'.%cur
e1ae0 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 3a 33 73 25 rent%/%max%.[%bar%].%percent:3s%
e1b00 25 20 25 65 6c 61 70 73 65 64 3a 36 73 25 27 2c 0a 27 76 65 72 62 6f 73 65 5f 6e 6f 6d 61 78 27 %.%elapsed:6s%',.'verbose_nomax'
e1b20 20 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 .=>.'.%current%.[%bar%].%elapsed
e1b40 3a 36 73 25 27 2c 0a 0a 27 76 65 72 79 5f 76 65 72 62 6f 73 65 27 20 3d 3e 20 27 20 25 63 75 72 :6s%',..'very_verbose'.=>.'.%cur
e1b60 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 3a 33 73 25 rent%/%max%.[%bar%].%percent:3s%
e1b80 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 36 73 25 27 2c %.%elapsed:6s%/%estimated:-6s%',
e1ba0 0a 27 76 65 72 79 5f 76 65 72 62 6f 73 65 5f 6e 6f 6d 61 78 27 20 3d 3e 20 27 20 25 63 75 72 72 .'very_verbose_nomax'.=>.'.%curr
e1bc0 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 64 65 ent%.[%bar%].%elapsed:6s%',..'de
e1be0 62 75 67 27 20 3d 3e 20 27 20 25 63 75 72 72 65 6e 74 25 2f 25 6d 61 78 25 20 5b 25 62 61 72 25 bug'.=>.'.%current%/%max%.[%bar%
e1c00 5d 20 25 70 65 72 63 65 6e 74 3a 33 73 25 25 20 25 65 6c 61 70 73 65 64 3a 36 73 25 2f 25 65 73 ].%percent:3s%%.%elapsed:6s%/%es
e1c20 74 69 6d 61 74 65 64 3a 2d 36 73 25 20 25 6d 65 6d 6f 72 79 3a 36 73 25 27 2c 0a 27 64 65 62 75 timated:-6s%.%memory:6s%',.'debu
e1c40 67 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 20 g_nomax'.=>.'.%current%.[%bar%].
e1c60 25 65 6c 61 70 73 65 64 3a 36 73 25 20 25 6d 65 6d 6f 72 79 3a 36 73 25 27 2c 0a 29 3b 0a 7d 0a %elapsed:6s%.%memory:6s%',.);.}.
e1c80 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
e1ca0 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 75 ony\Component\Console\Helper;..u
e1cc0 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
e1ce0 70 75 74 5c 4e 75 6c 6c 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 put\NullOutput;.use.Symfony\Comp
e1d00 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
e1d20 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 73 face;.use.Symfony\Component\Cons
e1d40 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 6f 6e 3b 0a 0a 0a ole\Exception\LogicException;...
e1d60 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 67 72 65 73 73 48 65 6c 70 65 72 20 65 78 74 ........class.ProgressHelper.ext
e1d80 65 6e 64 73 20 48 65 6c 70 65 72 0a 7b 0a 63 6f 6e 73 74 20 46 4f 52 4d 41 54 5f 51 55 49 45 54 ends.Helper.{.const.FORMAT_QUIET
e1da0 20 3d 20 27 20 25 70 65 72 63 65 6e 74 25 25 27 3b 0a 63 6f 6e 73 74 20 46 4f 52 4d 41 54 5f 4e .=.'.%percent%%';.const.FORMAT_N
e1dc0 4f 52 4d 41 4c 20 3d 20 27 20 25 63 75 72 72 65 6e 74 25 2f 25 6d 61 78 25 20 5b 25 62 61 72 25 ORMAL.=.'.%current%/%max%.[%bar%
e1de0 5d 20 25 70 65 72 63 65 6e 74 25 25 27 3b 0a 63 6f 6e 73 74 20 46 4f 52 4d 41 54 5f 56 45 52 42 ].%percent%%';.const.FORMAT_VERB
e1e00 4f 53 45 20 3d 20 27 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 OSE.=.'.%current%/%max%.[%bar%].
e1e20 25 70 65 72 63 65 6e 74 25 25 20 45 6c 61 70 73 65 64 3a 20 25 65 6c 61 70 73 65 64 25 27 3b 0a %percent%%.Elapsed:.%elapsed%';.
e1e40 63 6f 6e 73 74 20 46 4f 52 4d 41 54 5f 51 55 49 45 54 5f 4e 4f 4d 41 58 20 3d 20 27 20 25 63 75 const.FORMAT_QUIET_NOMAX.=.'.%cu
e1e60 72 72 65 6e 74 25 27 3b 0a 63 6f 6e 73 74 20 46 4f 52 4d 41 54 5f 4e 4f 52 4d 41 4c 5f 4e 4f 4d rrent%';.const.FORMAT_NORMAL_NOM
e1e80 41 58 20 3d 20 27 20 25 63 75 72 72 65 6e 74 25 20 5b 25 62 61 72 25 5d 27 3b 0a 63 6f 6e 73 74 AX.=.'.%current%.[%bar%]';.const
e1ea0 20 46 4f 52 4d 41 54 5f 56 45 52 42 4f 53 45 5f 4e 4f 4d 41 58 20 3d 20 27 20 25 63 75 72 72 65 .FORMAT_VERBOSE_NOMAX.=.'.%curre
e1ec0 6e 74 25 20 5b 25 62 61 72 25 5d 20 45 6c 61 70 73 65 64 3a 20 25 65 6c 61 70 73 65 64 25 27 3b nt%.[%bar%].Elapsed:.%elapsed%';
e1ee0 0a 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 ....private.$barWidth.=.28;.priv
e1f00 61 74 65 20 24 62 61 72 43 68 61 72 20 3d 20 27 3d 27 3b 0a 70 72 69 76 61 74 65 20 24 65 6d 70 ate.$barChar.=.'=';.private.$emp
e1f20 74 79 42 61 72 43 68 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 tyBarChar.=.'-';.private.$progre
e1f40 73 73 43 68 61 72 20 3d 20 27 3e 27 3b 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 20 3d 20 ssChar.=.'>';.private.$format.=.
e1f60 6e 75 6c 6c 3b 0a 70 72 69 76 61 74 65 20 24 72 65 64 72 61 77 46 72 65 71 20 3d 20 31 3b 0a 0a null;.private.$redrawFreq.=.1;..
e1f80 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 69 private.$lastMessagesLength;.pri
e1fa0 76 61 74 65 20 24 62 61 72 43 68 61 72 4f 72 69 67 69 6e 61 6c 3b 0a 0a 0a 0a 0a 70 72 69 76 61 vate.$barCharOriginal;.....priva
e1fc0 74 65 20 24 6f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 75 72 72 65 te.$output;.......private.$curre
e1fe0 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6d 61 78 3b 0a 0a 0a 0a 0a 0a 0a 70 72 nt;.......private.$max;.......pr
e2000 69 76 61 74 65 20 24 73 74 61 72 74 54 69 6d 65 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 ivate.$startTime;.......private.
e2020 24 64 65 66 61 75 6c 74 46 6f 72 6d 61 74 56 61 72 73 20 3d 20 61 72 72 61 79 28 0a 27 63 75 72 $defaultFormatVars.=.array(.'cur
e2040 72 65 6e 74 27 2c 0a 27 6d 61 78 27 2c 0a 27 62 61 72 27 2c 0a 27 70 65 72 63 65 6e 74 27 2c 0a rent',.'max',.'bar',.'percent',.
e2060 27 65 6c 61 70 73 65 64 27 2c 0a 29 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 66 6f 72 'elapsed',.);.......private.$for
e2080 6d 61 74 56 61 72 73 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 77 69 64 74 68 73 20 3d matVars;.......private.$widths.=
e20a0 20 61 72 72 61 79 28 0a 27 63 75 72 72 65 6e 74 27 20 3d 3e 20 34 2c 0a 27 6d 61 78 27 20 3d 3e .array(.'current'.=>.4,.'max'.=>
e20c0 20 34 2c 0a 27 70 65 72 63 65 6e 74 27 20 3d 3e 20 33 2c 0a 27 65 6c 61 70 73 65 64 27 20 3d 3e .4,.'percent'.=>.3,.'elapsed'.=>
e20e0 20 36 2c 0a 29 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 74 69 6d 65 46 6f 72 6d 61 74 .6,.);.......private.$timeFormat
e2100 73 20 3d 20 61 72 72 61 79 28 0a 61 72 72 61 79 28 30 2c 20 27 3f 3f 3f 27 29 2c 0a 61 72 72 61 s.=.array(.array(0,.'???'),.arra
e2120 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 27 73 65 63 73 27 2c y(2,.'1.sec'),.array(59,.'secs',
e2140 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 61 72 72 61 79 28 33 .1),.array(60,.'1.min'),.array(3
e2160 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 34 30 30 2c 20 27 31 600,.'mins',.60),.array(5400,.'1
e2180 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 2c 20 33 36 30 30 29 .hr'),.array(86400,.'hrs',.3600)
e21a0 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 0a 61 72 72 61 79 28 ,.array(129600,.'1.day'),.array(
e21c0 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 3b 0a 0a 70 75 62 6c 604800,.'days',.86400),.);..publ
e21e0 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
e2200 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.($
e2220 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
e2240 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 27 2e 5f 5f 43 4c 41 53 53 5f 5f 2e 27 20 63 6c 61 ger_error('The.'.__CLASS__.'.cla
e2260 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 32 ss.is.deprecated.since.version.2
e2280 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 20 55 .5.and.will.be.removed.in.3.0..U
e22a0 73 65 20 74 68 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 se.the.Symfony\Component\Console
e22c0 5c 48 65 6c 70 65 72 5c 50 72 6f 67 72 65 73 73 42 61 72 20 63 6c 61 73 73 20 69 6e 73 74 65 61 \Helper\ProgressBar.class.instea
e22e0 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 7d 0a 7d 0a 0a 0a 0a d.',.E_USER_DEPRECATED);.}.}....
e2300 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 68 28 24 ...public.function.setBarWidth($
e2320 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 74 29 20 size).{.$this->barWidth.=.(int).
e2340 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 6e 20 73 $size;.}.......public.function.s
e2360 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 2d 3e 62 etBarCharacter($char).{.$this->b
e2380 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 63 20 66 arChar.=.$char;.}.......public.f
e23a0 75 6e 63 74 69 6f 6e 20 73 65 74 45 6d 70 74 79 42 61 72 43 68 61 72 61 63 74 65 72 28 24 63 68 unction.setEmptyBarCharacter($ch
e23c0 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6d 70 74 79 42 61 72 43 68 61 72 20 3d 20 24 63 68 61 ar).{.$this->emptyBarChar.=.$cha
e23e0 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 74 50 72 r;.}.......public.function.setPr
e2400 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 69 73 2d 3e ogressCharacter($char).{.$this->
e2420 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 0a 0a 70 75 progressChar.=.$char;.}.......pu
e2440 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 72 6d 61 74 28 24 66 6f 72 6d 61 74 29 blic.function.setFormat($format)
e2460 0a 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 0a .{.$this->format.=.$format;.}...
e2480 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 64 72 61 77 46 72 65 ....public.function.setRedrawFre
e24a0 71 75 65 6e 63 79 28 24 66 72 65 71 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 64 72 61 77 46 72 65 quency($freq).{.$this->redrawFre
e24c0 71 20 3d 20 28 69 6e 74 29 20 24 66 72 65 71 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 q.=.(int).$freq;.}........public
e24e0 20 66 75 6e 63 74 69 6f 6e 20 73 74 61 72 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 .function.start(OutputInterface.
e2500 24 6f 75 74 70 75 74 2c 20 24 6d 61 78 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 $output,.$max.=.null).{.$this->s
e2520 74 61 72 74 54 69 6d 65 20 3d 20 74 69 6d 65 28 29 3b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e tartTime.=.time();.$this->curren
e2540 74 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 6d 61 78 20 3d 20 28 69 6e 74 29 20 24 6d 61 78 3b 0a t.=.0;.$this->max.=.(int).$max;.
e2560 0a 0a 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 2d 3e 69 73 44 65 ...$this->output.=.$output->isDe
e2580 63 6f 72 61 74 65 64 28 29 20 3f 20 24 6f 75 74 70 75 74 20 3a 20 6e 65 77 20 4e 75 6c 6c 4f 75 corated().?.$output.:.new.NullOu
e25a0 74 70 75 74 28 29 3b 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 tput();.$this->lastMessagesLengt
e25c0 68 20 3d 20 30 3b 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 h.=.0;.$this->barCharOriginal.=.
e25e0 27 27 3b 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 74 29 '';..if.(null.===.$this->format)
e2600 20 7b 0a 73 77 69 74 63 68 20 28 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 .{.switch.($output->getVerbosity
e2620 28 29 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 56 45 52 42 ()).{.case.OutputInterface::VERB
e2640 4f 53 49 54 59 5f 51 55 49 45 54 3a 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 3d 20 73 65 6c OSITY_QUIET:.$this->format.=.sel
e2660 66 3a 3a 46 4f 52 4d 41 54 5f 51 55 49 45 54 5f 4e 4f 4d 41 58 3b 0a 69 66 20 28 24 74 68 69 73 f::FORMAT_QUIET_NOMAX;.if.($this
e2680 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 20 73 65 6c ->max.>.0).{.$this->format.=.sel
e26a0 66 3a 3a 46 4f 52 4d 41 54 5f 51 55 49 45 54 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4f f::FORMAT_QUIET;.}.break;.case.O
e26c0 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 42 4f 53 utputInterface::VERBOSITY_VERBOS
e26e0 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 52 42 4f 53 49 E:.case.OutputInterface::VERBOSI
e2700 54 59 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 TY_VERY_VERBOSE:.case.OutputInte
e2720 72 66 61 63 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 44 45 42 55 47 3a 0a 24 74 68 69 73 2d 3e 66 rface::VERBOSITY_DEBUG:.$this->f
e2740 6f 72 6d 61 74 20 3d 20 73 65 6c 66 3a 3a 46 4f 52 4d 41 54 5f 56 45 52 42 4f 53 45 5f 4e 4f 4d ormat.=.self::FORMAT_VERBOSE_NOM
e2760 41 58 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 74 68 69 73 2d AX;.if.($this->max.>.0).{.$this-
e2780 3e 66 6f 72 6d 61 74 20 3d 20 73 65 6c 66 3a 3a 46 4f 52 4d 41 54 5f 56 45 52 42 4f 53 45 3b 0a >format.=.self::FORMAT_VERBOSE;.
e27a0 7d 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 20 }.break;.default:.$this->format.
e27c0 3d 20 73 65 6c 66 3a 3a 46 4f 52 4d 41 54 5f 4e 4f 52 4d 41 4c 5f 4e 4f 4d 41 58 3b 0a 69 66 20 =.self::FORMAT_NORMAL_NOMAX;.if.
e27e0 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 66 6f 72 6d 61 74 ($this->max.>.0).{.$this->format
e2800 20 3d 20 73 65 6c 66 3a 3a 46 4f 52 4d 41 54 5f 4e 4f 52 4d 41 4c 3b 0a 7d 0a 62 72 65 61 6b 3b .=.self::FORMAT_NORMAL;.}.break;
e2820 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 7d 0a 0a 0a 0a .}.}..$this->initialize();.}....
e2840 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
e2860 74 65 70 20 3d 20 31 2c 20 24 72 65 64 72 61 77 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 tep.=.1,.$redraw.=.false).{.$thi
e2880 73 2d 3e 73 65 74 43 75 72 72 65 6e 74 28 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 20 2b 20 24 s->setCurrent($this->current.+.$
e28a0 73 74 65 70 2c 20 24 72 65 64 72 61 77 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 step,.$redraw);.}..........publi
e28c0 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 75 72 72 65 6e 74 28 24 63 75 72 72 65 6e 74 2c 20 c.function.setCurrent($current,.
e28e0 24 72 65 64 72 61 77 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 $redraw.=.false).{.if.(null.===.
e2900 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f $this->startTime).{.throw.new.Lo
e2920 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 73 74 61 72 74 20 74 68 65 gicException('You.must.start.the
e2940 20 70 72 6f 67 72 65 73 73 20 62 61 72 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 73 65 74 .progress.bar.before.calling.set
e2960 43 75 72 72 65 6e 74 28 29 2e 27 29 3b 0a 7d 0a 0a 24 63 75 72 72 65 6e 74 20 3d 20 28 69 6e 74 Current().');.}..$current.=.(int
e2980 29 20 24 63 75 72 72 65 6e 74 3b 0a 0a 69 66 20 28 24 63 75 72 72 65 6e 74 20 3c 20 24 74 68 69 ).$current;..if.($current.<.$thi
e29a0 73 2d 3e 63 75 72 72 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 s->current).{.throw.new.LogicExc
e29c0 65 70 74 69 6f 6e 28 27 59 6f 75 20 63 61 6e 5c 27 74 20 72 65 67 72 65 73 73 20 74 68 65 20 70 eption('You.can\'t.regress.the.p
e29e0 72 6f 67 72 65 73 73 20 62 61 72 27 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 rogress.bar');.}..if.(0.===.$thi
e2a00 73 2d 3e 63 75 72 72 65 6e 74 29 20 7b 0a 24 72 65 64 72 61 77 20 3d 20 74 72 75 65 3b 0a 7d 0a s->current).{.$redraw.=.true;.}.
e2a20 0a 24 70 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 63 75 72 .$prevPeriod.=.(int).($this->cur
e2a40 72 65 6e 74 20 2f 20 24 74 68 69 73 2d 3e 72 65 64 72 61 77 46 72 65 71 29 3b 0a 0a 24 74 68 69 rent./.$this->redrawFreq);..$thi
e2a60 73 2d 3e 63 75 72 72 65 6e 74 20 3d 20 24 63 75 72 72 65 6e 74 3b 0a 0a 24 63 75 72 72 50 65 72 s->current.=.$current;..$currPer
e2a80 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
e2aa0 68 69 73 2d 3e 72 65 64 72 61 77 46 72 65 71 29 3b 0a 69 66 20 28 24 72 65 64 72 61 77 20 7c 7c his->redrawFreq);.if.($redraw.||
e2ac0 20 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 7c 20 .$prevPeriod.!==.$currPeriod.||.
e2ae0 24 74 68 69 73 2d 3e 6d 61 78 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 29 20 7b $this->max.===.$this->current).{
e2b00 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 .$this->display();.}.}.........p
e2b20 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 70 6c 61 79 28 24 66 69 6e 69 73 68 20 3d ublic.function.display($finish.=
e2b40 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
e2b60 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
e2b80 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
e2ba0 20 62 61 72 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 64 69 73 70 6c 61 79 28 29 2e 27 29 .bar.before.calling.display().')
e2bc0 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 3b 0a 66 ;.}..$message.=.$this->format;.f
e2be0 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 28 24 66 69 6e 69 73 68 29 oreach.($this->generate($finish)
e2c00 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 .as.$name.=>.$value).{.$message.
e2c20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 22 25 7b 24 6e 61 6d 65 7d 25 22 2c 20 24 76 61 6c 75 =.str_replace("%{$name}%",.$valu
e2c40 65 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 e,.$message);.}.$this->overwrite
e2c60 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a ($this->output,.$message);.}....
e2c80 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 0a 7b 0a 24 .....public.function.clear().{.$
e2ca0 74 68 69 73 2d 3e 6f 76 65 72 77 72 69 74 65 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2c 20 27 this->overwrite($this->output,.'
e2cc0 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 66 69 6e 69 73 68 ');.}.....public.function.finish
e2ce0 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 73 74 61 72 74 54 69 ().{.if.(null.===.$this->startTi
e2d00 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 69 6f 6e 28 27 me).{.throw.new.LogicException('
e2d20 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 20 62 61 72 20 You.must.start.the.progress.bar.
e2d40 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 66 69 6e 69 73 68 28 29 2e 27 29 3b 0a 7d 0a 0a 69 before.calling.finish().');.}..i
e2d60 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 73 74 61 72 74 54 69 6d 65 29 20 7b 0a f.(null.!==.$this->startTime).{.
e2d80 69 66 20 28 21 24 74 68 69 73 2d 3e 6d 61 78 29 20 7b 0a 24 74 68 69 73 2d 3e 62 61 72 43 68 61 if.(!$this->max).{.$this->barCha
e2da0 72 20 3d 20 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 4f 72 69 67 69 6e 61 6c 3b 0a 24 74 68 69 r.=.$this->barCharOriginal;.$thi
e2dc0 73 2d 3e 64 69 73 70 6c 61 79 28 74 72 75 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 s->display(true);.}.$this->start
e2de0 54 69 6d 65 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 Time.=.null;.$this->output->writ
e2e00 65 6c 6e 28 27 27 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 6e 75 6c 6c 3b 0a 7d eln('');.$this->output.=.null;.}
e2e20 0a 7d 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 61 6c 69 .}.....private.function.initiali
e2e40 7a 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 61 72 73 20 3d 20 61 72 72 61 79 ze().{.$this->formatVars.=.array
e2e60 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 46 6f 72 6d 61 ();.foreach.($this->defaultForma
e2e80 74 56 61 72 73 20 61 73 20 24 76 61 72 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 tVars.as.$var).{.if.(false.!==.s
e2ea0 74 72 70 6f 73 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 2c 20 22 25 7b 24 76 61 72 7d 25 22 29 trpos($this->format,."%{$var}%")
e2ec0 29 20 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 61 72 73 5b 24 76 61 72 5d 20 3d 20 74 72 ).{.$this->formatVars[$var].=.tr
e2ee0 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 61 78 20 3e 20 30 29 20 7b 0a 24 ue;.}.}..if.($this->max.>.0).{.$
e2f00 74 68 69 73 2d 3e 77 69 64 74 68 73 5b 27 6d 61 78 27 5d 20 3d 20 24 74 68 69 73 2d 3e 73 74 72 this->widths['max'].=.$this->str
e2f20 6c 65 6e 28 24 74 68 69 73 2d 3e 6d 61 78 29 3b 0a 24 74 68 69 73 2d 3e 77 69 64 74 68 73 5b 27 len($this->max);.$this->widths['
e2f40 63 75 72 72 65 6e 74 27 5d 20 3d 20 24 74 68 69 73 2d 3e 77 69 64 74 68 73 5b 27 6d 61 78 27 5d current'].=.$this->widths['max']
e2f60 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 4f 72 69 67 69 6e 61 ;.}.else.{.$this->barCharOrigina
e2f80 6c 20 3d 20 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 3b 0a 24 74 68 69 73 2d 3e 62 61 72 43 68 l.=.$this->barChar;.$this->barCh
e2fa0 61 72 20 3d 20 24 74 68 69 73 2d 3e 65 6d 70 74 79 42 61 72 43 68 61 72 3b 0a 7d 0a 7d 0a 0a 0a ar.=.$this->emptyBarChar;.}.}...
e2fc0 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 6e 65 72 61 74 65 28 ......private.function.generate(
e2fe0 24 66 69 6e 69 73 68 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 76 61 72 73 20 3d 20 61 72 72 61 79 $finish.=.false).{.$vars.=.array
e3000 28 29 3b 0a 24 70 65 72 63 65 6e 74 20 3d 20 30 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 61 78 ();.$percent.=.0;.if.($this->max
e3020 20 3e 20 30 29 20 7b 0a 24 70 65 72 63 65 6e 74 20 3d 20 28 66 6c 6f 61 74 29 20 24 74 68 69 73 .>.0).{.$percent.=.(float).$this
e3040 2d 3e 63 75 72 72 65 6e 74 20 2f 20 24 74 68 69 73 2d 3e 6d 61 78 3b 0a 7d 0a 0a 69 66 20 28 69 ->current./.$this->max;.}..if.(i
e3060 73 73 65 74 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 61 72 73 5b 27 62 61 72 27 5d 29 29 20 sset($this->formatVars['bar'])).
e3080 7b 0a 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 3d 20 30 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d {.$completeBars.=.0;..if.($this-
e30a0 3e 6d 61 78 20 3e 20 30 29 20 7b 0a 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 3d 20 66 6c 6f 6f >max.>.0).{.$completeBars.=.floo
e30c0 72 28 24 70 65 72 63 65 6e 74 20 2a 20 24 74 68 69 73 2d 3e 62 61 72 57 69 64 74 68 29 3b 0a 7d r($percent.*.$this->barWidth);.}
e30e0 20 65 6c 73 65 20 7b 0a 69 66 20 28 21 24 66 69 6e 69 73 68 29 20 7b 0a 24 63 6f 6d 70 6c 65 74 .else.{.if.(!$finish).{.$complet
e3100 65 42 61 72 73 20 3d 20 66 6c 6f 6f 72 28 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 20 25 20 24 eBars.=.floor($this->current.%.$
e3120 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 24 63 6f 6d 70 6c this->barWidth);.}.else.{.$compl
e3140 65 74 65 42 61 72 73 20 3d 20 24 74 68 69 73 2d 3e 62 61 72 57 69 64 74 68 3b 0a 7d 0a 7d 0a 0a eteBars.=.$this->barWidth;.}.}..
e3160 24 65 6d 70 74 79 42 61 72 73 20 3d 20 24 74 68 69 73 2d 3e 62 61 72 57 69 64 74 68 20 2d 20 24 $emptyBars.=.$this->barWidth.-.$
e3180 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 2d 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 74 68 completeBars.-.$this->strlen($th
e31a0 69 73 2d 3e 70 72 6f 67 72 65 73 73 43 68 61 72 29 3b 0a 24 62 61 72 20 3d 20 73 74 72 5f 72 65 is->progressChar);.$bar.=.str_re
e31c0 70 65 61 74 28 24 74 68 69 73 2d 3e 62 61 72 43 68 61 72 2c 20 24 63 6f 6d 70 6c 65 74 65 42 61 peat($this->barChar,.$completeBa
e31e0 72 73 29 3b 0a 69 66 20 28 24 63 6f 6d 70 6c 65 74 65 42 61 72 73 20 3c 20 24 74 68 69 73 2d 3e rs);.if.($completeBars.<.$this->
e3200 62 61 72 57 69 64 74 68 29 20 7b 0a 24 62 61 72 20 2e 3d 20 24 74 68 69 73 2d 3e 70 72 6f 67 72 barWidth).{.$bar..=.$this->progr
e3220 65 73 73 43 68 61 72 3b 0a 24 62 61 72 20 2e 3d 20 73 74 72 5f 72 65 70 65 61 74 28 24 74 68 69 essChar;.$bar..=.str_repeat($thi
e3240 73 2d 3e 65 6d 70 74 79 42 61 72 43 68 61 72 2c 20 24 65 6d 70 74 79 42 61 72 73 29 3b 0a 7d 0a s->emptyBarChar,.$emptyBars);.}.
e3260 0a 24 76 61 72 73 5b 27 62 61 72 27 5d 20 3d 20 24 62 61 72 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 .$vars['bar'].=.$bar;.}..if.(iss
e3280 65 74 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 61 72 73 5b 27 65 6c 61 70 73 65 64 27 5d 29 et($this->formatVars['elapsed'])
e32a0 29 20 7b 0a 24 65 6c 61 70 73 65 64 20 3d 20 74 69 6d 65 28 29 20 2d 20 24 74 68 69 73 2d 3e 73 ).{.$elapsed.=.time().-.$this->s
e32c0 74 61 72 74 54 69 6d 65 3b 0a 24 76 61 72 73 5b 27 65 6c 61 70 73 65 64 27 5d 20 3d 20 73 74 72 tartTime;.$vars['elapsed'].=.str
e32e0 5f 70 61 64 28 24 74 68 69 73 2d 3e 68 75 6d 61 6e 65 54 69 6d 65 28 24 65 6c 61 70 73 65 64 29 _pad($this->humaneTime($elapsed)
e3300 2c 20 24 74 68 69 73 2d 3e 77 69 64 74 68 73 5b 27 65 6c 61 70 73 65 64 27 5d 2c 20 27 20 27 2c ,.$this->widths['elapsed'],.'.',
e3320 20 53 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 .STR_PAD_LEFT);.}..if.(isset($th
e3340 69 73 2d 3e 66 6f 72 6d 61 74 56 61 72 73 5b 27 63 75 72 72 65 6e 74 27 5d 29 29 20 7b 0a 24 76 is->formatVars['current'])).{.$v
e3360 61 72 73 5b 27 63 75 72 72 65 6e 74 27 5d 20 3d 20 73 74 72 5f 70 61 64 28 24 74 68 69 73 2d 3e ars['current'].=.str_pad($this->
e3380 63 75 72 72 65 6e 74 2c 20 24 74 68 69 73 2d 3e 77 69 64 74 68 73 5b 27 63 75 72 72 65 6e 74 27 current,.$this->widths['current'
e33a0 5d 2c 20 27 20 27 2c 20 53 54 52 5f 50 41 44 5f 4c 45 46 54 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 ],.'.',.STR_PAD_LEFT);.}..if.(is
e33c0 73 65 74 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 61 72 73 5b 27 6d 61 78 27 5d 29 29 20 7b set($this->formatVars['max'])).{
e33e0 0a 24 76 61 72 73 5b 27 6d 61 78 27 5d 20 3d 20 24 74 68 69 73 2d 3e 6d 61 78 3b 0a 7d 0a 0a 69 .$vars['max'].=.$this->max;.}..i
e3400 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 61 72 73 5b 27 70 65 72 63 f.(isset($this->formatVars['perc
e3420 65 6e 74 27 5d 29 29 20 7b 0a 24 76 61 72 73 5b 27 70 65 72 63 65 6e 74 27 5d 20 3d 20 73 74 72 ent'])).{.$vars['percent'].=.str
e3440 5f 70 61 64 28 66 6c 6f 6f 72 28 24 70 65 72 63 65 6e 74 20 2a 20 31 30 30 29 2c 20 24 74 68 69 _pad(floor($percent.*.100),.$thi
e3460 73 2d 3e 77 69 64 74 68 73 5b 27 70 65 72 63 65 6e 74 27 5d 2c 20 27 20 27 2c 20 53 54 52 5f 50 s->widths['percent'],.'.',.STR_P
e3480 41 44 5f 4c 45 46 54 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 72 73 3b 0a 7d 0a 0a 0a 0a AD_LEFT);.}..return.$vars;.}....
e34a0 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 68 75 6d 61 6e 65 54 69 6d 65 .....private.function.humaneTime
e34c0 28 24 73 65 63 73 29 0a 7b 0a 24 74 65 78 74 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 68 20 28 24 ($secs).{.$text.=.'';.foreach.($
e34e0 74 68 69 73 2d 3e 74 69 6d 65 46 6f 72 6d 61 74 73 20 61 73 20 24 66 6f 72 6d 61 74 29 20 7b 0a this->timeFormats.as.$format).{.
e3500 69 66 20 28 24 73 65 63 73 20 3c 20 24 66 6f 72 6d 61 74 5b 30 5d 29 20 7b 0a 69 66 20 28 63 6f if.($secs.<.$format[0]).{.if.(co
e3520 75 6e 74 28 24 66 6f 72 6d 61 74 29 20 3d 3d 20 32 29 20 7b 0a 24 74 65 78 74 20 3d 20 24 66 6f unt($format).==.2).{.$text.=.$fo
e3540 72 6d 61 74 5b 31 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 65 78 74 20 3d rmat[1];.break;.}.else.{.$text.=
e3560 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 27 20 27 2e 24 66 .ceil($secs./.$format[2]).'.'.$f
e3580 6f 72 6d 61 74 5b 31 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 ormat[1];.break;.}.}.}..return.$
e35a0 74 65 78 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 text;.}........private.function.
e35c0 6f 76 65 72 77 72 69 74 65 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 overwrite(OutputInterface.$outpu
e35e0 74 2c 20 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 6c 65 6e 67 74 68 20 3d 20 24 74 68 69 73 2d 3e t,.$message).{.$length.=.$this->
e3600 73 74 72 6c 65 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 21 3d strlen($message);....if.(null.!=
e3620 3d 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 20 26 26 20 24 =.$this->lastMessagesLength.&&.$
e3640 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 3e 20 24 6c 65 6e 67 this->lastMessagesLength.>.$leng
e3660 74 68 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 74 72 5f 70 61 64 28 24 6d 65 73 73 61 67 th).{.$message.=.str_pad($messag
e3680 65 2c 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 2c 20 22 5c e,.$this->lastMessagesLength,."\
e36a0 78 32 30 22 2c 20 53 54 52 5f 50 41 44 5f 52 49 47 48 54 29 3b 0a 7d 0a 0a 0a 20 24 6f 75 74 70 x20",.STR_PAD_RIGHT);.}....$outp
e36c0 75 74 2d 3e 77 72 69 74 65 28 22 5c 78 30 44 22 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 ut->write("\x0D");.$output->writ
e36e0 65 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 e($message);..$this->lastMessage
e3700 73 4c 65 6e 67 74 68 20 3d 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e 28 24 6d 65 73 73 61 67 65 sLength.=.$this->strlen($message
e3720 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 61 6d 65 );.}.....public.function.getName
e3740 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 70 72 6f 67 72 65 73 73 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 ().{.return.'progress';.}.}.<?ph
e3760 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
e3780 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 79 6d mponent\Console\Helper;..use.Sym
e37a0 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
e37c0 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 50 72 6f 67 72 65 73 tputInterface;.....class.Progres
e37e0 73 49 6e 64 69 63 61 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 70 72 sIndicator.{.private.$output;.pr
e3800 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 66 6f 72 6d 61 ivate.$startTime;.private.$forma
e3820 74 3b 0a 70 72 69 76 61 74 65 20 24 6d 65 73 73 61 67 65 3b 0a 70 72 69 76 61 74 65 20 24 69 6e t;.private.$message;.private.$in
e3840 64 69 63 61 74 6f 72 56 61 6c 75 65 73 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 64 69 63 61 74 6f dicatorValues;.private.$indicato
e3860 72 43 75 72 72 65 6e 74 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 64 69 63 61 74 6f 72 43 68 61 6e rCurrent;.private.$indicatorChan
e3880 67 65 49 6e 74 65 72 76 61 6c 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 64 69 63 61 74 6f 72 55 70 geInterval;.private.$indicatorUp
e38a0 64 61 74 65 54 69 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 6c 61 73 74 4d 65 73 73 61 67 65 73 4c dateTime;.private.$lastMessagesL
e38c0 65 6e 67 74 68 3b 0a 70 72 69 76 61 74 65 20 24 73 74 61 72 74 65 64 20 3d 20 66 61 6c 73 65 3b ength;.private.$started.=.false;
e38e0 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 66 6f 72 6d 61 74 74 65 72 73 3b 0a 70 72 ..private.static.$formatters;.pr
e3900 69 76 61 74 65 20 73 74 61 74 69 63 20 24 66 6f 72 6d 61 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 ivate.static.$formats;........pu
e3920 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 4f 75 74 70 75 74 blic.function.__construct(Output
e3940 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 66 6f 72 6d 61 74 20 3d 20 6e 75 6c Interface.$output,.$format.=.nul
e3960 6c 2c 20 24 69 6e 64 69 63 61 74 6f 72 43 68 61 6e 67 65 49 6e 74 65 72 76 61 6c 20 3d 20 31 30 l,.$indicatorChangeInterval.=.10
e3980 30 2c 20 24 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 0,.$indicatorValues.=.null).{.$t
e39a0 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 3b 0a 0a 69 66 20 28 6e 75 6c 6c his->output.=.$output;..if.(null
e39c0 20 3d 3d 3d 20 24 66 6f 72 6d 61 74 29 20 7b 0a 24 66 6f 72 6d 61 74 20 3d 20 24 74 68 69 73 2d .===.$format).{.$format.=.$this-
e39e0 3e 64 65 74 65 72 6d 69 6e 65 42 65 73 74 46 6f 72 6d 61 74 28 29 3b 0a 7d 0a 0a 69 66 20 28 6e >determineBestFormat();.}..if.(n
e3a00 75 6c 6c 20 3d 3d 3d 20 24 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 29 20 7b 0a 24 69 6e 64 ull.===.$indicatorValues).{.$ind
e3a20 69 63 61 74 6f 72 56 61 6c 75 65 73 20 3d 20 61 72 72 61 79 28 27 2d 27 2c 20 27 5c 5c 27 2c 20 icatorValues.=.array('-',.'\\',.
e3a40 27 7c 27 2c 20 27 2f 27 29 3b 0a 7d 0a 0a 24 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 20 3d '|',.'/');.}..$indicatorValues.=
e3a60 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 29 3b .array_values($indicatorValues);
e3a80 0a 0a 69 66 20 28 32 20 3e 20 63 6f 75 6e 74 28 24 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 ..if.(2.>.count($indicatorValues
e3aa0 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
e3ac0 78 63 65 70 74 69 6f 6e 28 27 4d 75 73 74 20 68 61 76 65 20 61 74 20 6c 65 61 73 74 20 32 20 69 xception('Must.have.at.least.2.i
e3ae0 6e 64 69 63 61 74 6f 72 20 76 61 6c 75 65 20 63 68 61 72 61 63 74 65 72 73 2e 27 29 3b 0a 7d 0a ndicator.value.characters.');.}.
e3b00 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 6f 72 6d 61 74 .$this->format.=.self::getFormat
e3b20 44 65 66 69 6e 69 74 69 6f 6e 28 24 66 6f 72 6d 61 74 29 3b 0a 24 74 68 69 73 2d 3e 69 6e 64 69 Definition($format);.$this->indi
e3b40 63 61 74 6f 72 43 68 61 6e 67 65 49 6e 74 65 72 76 61 6c 20 3d 20 24 69 6e 64 69 63 61 74 6f 72 catorChangeInterval.=.$indicator
e3b60 43 68 61 6e 67 65 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 ChangeInterval;.$this->indicator
e3b80 56 61 6c 75 65 73 20 3d 20 24 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 3b 0a 24 74 68 69 73 Values.=.$indicatorValues;.$this
e3ba0 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 0a 0a 0a 0a 70 75 ->startTime.=.time();.}.......pu
e3bc0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4d 65 73 73 61 67 65 28 24 6d 65 73 73 61 67 blic.function.setMessage($messag
e3be0 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 20 3d 20 24 6d 65 73 73 61 67 65 3b 0a e).{.$this->message.=.$message;.
e3c00 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 0a 0a 0a 0a 70 75 62 .$this->display();.}.........pub
e3c20 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4d 65 73 73 61 67 65 28 29 0a 7b 0a 72 65 74 75 lic.function.getMessage().{.retu
e3c40 72 6e 20 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 rn.$this->message;.}.........pub
e3c60 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
e3c80 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 0a turn.$this->startTime;.}........
e3ca0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 75 72 72 65 6e 74 56 61 6c 75 65 .public.function.getCurrentValue
e3cc0 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 ().{.return.$this->indicatorValu
e3ce0 65 73 5b 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 43 75 72 72 65 6e 74 20 25 20 63 6f 75 es[$this->indicatorCurrent.%.cou
e3d00 6e 74 28 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 56 61 6c 75 65 73 29 5d 3b 0a 7d 0a 0a nt($this->indicatorValues)];.}..
e3d20 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 6d 65 73 73 .....public.function.start($mess
e3d40 61 67 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 29 20 7b 0a 74 68 72 age).{.if.($this->started).{.thr
e3d60 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 65 73 73 ow.new.\LogicException('Progress
e3d80 20 69 6e 64 69 63 61 74 6f 72 20 61 6c 72 65 61 64 79 20 73 74 61 72 74 65 64 2e 27 29 3b 0a 7d .indicator.already.started.');.}
e3da0 0a 0a 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 20 3d 20 24 6d 65 73 73 61 67 65 3b 0a 24 74 68 ..$this->message.=.$message;.$th
e3dc0 69 73 2d 3e 73 74 61 72 74 65 64 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d is->started.=.true;.$this->lastM
e3de0 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 54 essagesLength.=.0;.$this->startT
e3e00 69 6d 65 20 3d 20 74 69 6d 65 28 29 3b 0a 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 55 70 ime.=.time();.$this->indicatorUp
e3e20 64 61 74 65 54 69 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 75 72 72 65 6e 74 54 69 6d 65 dateTime.=.$this->getCurrentTime
e3e40 49 6e 4d 69 6c 6c 69 73 65 63 6f 6e 64 73 28 29 20 2b 20 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 InMilliseconds().+.$this->indica
e3e60 74 6f 72 43 68 61 6e 67 65 49 6e 74 65 72 76 61 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 torChangeInterval;.$this->indica
e3e80 74 6f 72 43 75 72 72 65 6e 74 20 3d 20 30 3b 0a 0a 24 74 68 69 73 2d 3e 64 69 73 70 6c 61 79 28 torCurrent.=.0;..$this->display(
e3ea0 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 76 61 6e 63 65 );.}.....public.function.advance
e3ec0 28 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 74 68 72 6f ().{.if.(!$this->started).{.thro
e3ee0 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 65 73 73 20 w.new.\LogicException('Progress.
e3f00 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 74 61 72 74 indicator.has.not.yet.been.start
e3f20 65 64 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 69 73 ed.');.}..if.(!$this->output->is
e3f40 44 65 63 6f 72 61 74 65 64 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 75 72 72 65 Decorated()).{.return;.}..$curre
e3f60 6e 74 54 69 6d 65 20 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 ntTime.=.$this->getCurrentTimeIn
e3f80 4d 69 6c 6c 69 73 65 63 6f 6e 64 73 28 29 3b 0a 0a 69 66 20 28 24 63 75 72 72 65 6e 74 54 69 6d Milliseconds();..if.($currentTim
e3fa0 65 20 3c 20 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 29 20 e.<.$this->indicatorUpdateTime).
e3fc0 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 64 69 63 61 74 6f 72 55 70 64 {.return;.}..$this->indicatorUpd
e3fe0 61 74 65 54 69 6d 65 20 3d 20 24 63 75 72 72 65 6e 74 54 69 6d 65 20 2b 20 24 74 68 69 73 2d 3e ateTime.=.$currentTime.+.$this->
e4000 69 6e 64 69 63 61 74 6f 72 43 68 61 6e 67 65 49 6e 74 65 72 76 61 6c 3b 0a 2b 2b 24 74 68 69 73 indicatorChangeInterval;.++$this
e4020 2d 3e 69 6e 64 69 63 61 74 6f 72 43 75 72 72 65 6e 74 3b 0a 0a 24 74 68 69 73 2d 3e 64 69 73 70 ->indicatorCurrent;..$this->disp
e4040 6c 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 20 66 lay();.}.......public.function.f
e4060 69 6e 69 73 68 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 73 74 inish($message).{.if.(!$this->st
e4080 61 72 74 65 64 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 arted).{.throw.new.\LogicExcepti
e40a0 6f 6e 28 27 50 72 6f 67 72 65 73 73 20 69 6e 64 69 63 61 74 6f 72 20 68 61 73 20 6e 6f 74 20 79 on('Progress.indicator.has.not.y
e40c0 65 74 20 62 65 65 6e 20 73 74 61 72 74 65 64 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6d 65 et.been.started.');.}..$this->me
e40e0 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 64 69 73 70 6c 61 79 ssage.=.$message;.$this->display
e4100 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 6e 28 27 27 29 3b 0a ();.$this->output->writeln('');.
e4120 24 74 68 69 73 2d 3e 73 74 61 72 74 65 64 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a $this->started.=.false;.}.......
e4140 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 46 6f 72 6d ..public.static.function.getForm
e4160 61 74 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 65 6c 66 3a atDefinition($name).{.if.(!self:
e4180 3a 24 66 6f 72 6d 61 74 73 29 20 7b 0a 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 20 3d 20 73 65 :$formats).{.self::$formats.=.se
e41a0 6c 66 3a 3a 69 6e 69 74 46 6f 72 6d 61 74 73 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 73 lf::initFormats();.}..return.iss
e41c0 65 74 28 73 65 6c 66 3a 3a 24 66 6f 72 6d 61 74 73 5b 24 6e 61 6d 65 5d 29 20 3f 20 73 65 6c 66 et(self::$formats[$name]).?.self
e41e0 3a 3a 24 66 6f 72 6d 61 74 73 5b 24 6e 61 6d 65 5d 20 3a 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a ::$formats[$name].:.null;.}.....
e4200 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 74 50 .....public.static.function.setP
e4220 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 24 6e laceholderFormatterDefinition($n
e4240 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 66 6f ame,.$callable).{.if.(!self::$fo
e4260 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 3d 20 rmatters).{.self::$formatters.=.
e4280 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 73 28 self::initPlaceholderFormatters(
e42a0 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 20 3d );.}..self::$formatters[$name].=
e42c0 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 74 61 .$callable;.}.........public.sta
e42e0 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 6d 61 tic.function.getPlaceholderForma
e4300 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 65 6c tterDefinition($name).{.if.(!sel
e4320 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 74 74 f::$formatters).{.self::$formatt
e4340 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 6d 61 ers.=.self::initPlaceholderForma
e4360 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 3a 24 tters();.}..return.isset(self::$
e4380 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 72 6d formatters[$name]).?.self::$form
e43a0 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 70 72 69 76 61 74 65 atters[$name].:.null;.}..private
e43c0 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 70 6c 61 79 28 29 0a 7b 0a 69 66 20 28 4f 75 74 70 75 74 .function.display().{.if.(Output
e43e0 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 20 3d 3d 3d 20 24 Interface::VERBOSITY_QUIET.===.$
e4400 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 29 20 7b 0a this->output->getVerbosity()).{.
e4420 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 73 65 6c 66 20 3d 20 24 74 68 69 73 3b 0a 0a 24 74 68 69 73 return;.}..$self.=.$this;..$this
e4440 2d 3e 6f 76 65 72 77 72 69 74 65 28 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 ->overwrite(preg_replace_callbac
e4460 6b 28 22 7b 25 28 5b 61 2d 7a 5c 2d 5f 5d 2b 29 28 3f 3a 5c 3a 28 5b 5e 25 5d 2b 29 29 3f 25 7d k("{%([a-z\-_]+)(?:\:([^%]+))?%}
e4480 69 22 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6d 61 74 63 68 65 73 29 20 75 73 65 20 28 24 73 65 i",.function.($matches).use.($se
e44a0 6c 66 29 20 7b 0a 69 66 20 28 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 73 65 6c 66 3a 3a 67 65 lf).{.if.($formatter.=.$self::ge
e44c0 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(
e44e0 24 6d 61 74 63 68 65 73 5b 31 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 $matches[1])).{.return.call_user
e4500 5f 66 75 6e 63 28 24 66 6f 72 6d 61 74 74 65 72 2c 20 24 73 65 6c 66 29 3b 0a 7d 0a 0a 72 65 74 _func($formatter,.$self);.}..ret
e4520 75 72 6e 20 24 6d 61 74 63 68 65 73 5b 30 5d 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 urn.$matches[0];.},.$this->forma
e4540 74 29 29 3b 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 69 t));.}..private.function.determi
e4560 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 3e neBestFormat().{.switch.($this->
e4580 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 65 output->getVerbosity()).{...case
e45a0 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 42 .OutputInterface::VERBOSITY_VERB
e45c0 4f 53 45 3a 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 OSE:.return.$this->output->isDec
e45e0 6f 72 61 74 65 64 28 29 20 3f 20 27 76 65 72 62 6f 73 65 27 20 3a 20 27 76 65 72 62 6f 73 65 5f orated().?.'verbose'.:.'verbose_
e4600 6e 6f 5f 61 6e 73 69 27 3b 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a no_ansi';.case.OutputInterface::
e4620 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 3a 0a 63 61 73 65 20 4f 75 74 VERBOSITY_VERY_VERBOSE:.case.Out
e4640 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 3a 0a 72 putInterface::VERBOSITY_DEBUG:.r
e4660 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 65 64 eturn.$this->output->isDecorated
e4680 28 29 20 3f 20 27 76 65 72 79 5f 76 65 72 62 6f 73 65 27 20 3a 20 27 76 65 72 79 5f 76 65 72 62 ().?.'very_verbose'.:.'very_verb
e46a0 6f 73 65 5f 6e 6f 5f 61 6e 73 69 27 3b 0a 64 65 66 61 75 6c 74 3a 0a 72 65 74 75 72 6e 20 24 74 ose_no_ansi';.default:.return.$t
e46c0 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 3f 20 27 6e 6f his->output->isDecorated().?.'no
e46e0 72 6d 61 6c 27 20 3a 20 27 6e 6f 72 6d 61 6c 5f 6e 6f 5f 61 6e 73 69 27 3b 0a 7d 0a 7d 0a 0a 0a rmal'.:.'normal_no_ansi';.}.}...
e4700 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 28 24 ....private.function.overwrite($
e4720 6d 65 73 73 61 67 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 message).{...if.(null.!==.$this-
e4740 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 29 20 7b 0a 69 66 20 28 24 74 68 69 73 >lastMessagesLength).{.if.($this
e4760 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 73 4c 65 6e 67 74 68 20 3e 20 48 65 6c 70 65 72 3a 3a 73 ->lastMessagesLength.>.Helper::s
e4780 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 73 2d 3e 6f 75 trlenWithoutDecoration($this->ou
e47a0 74 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2c 20 24 6d 65 73 73 61 67 65 29 29 tput->getFormatter(),.$message))
e47c0 20 7b 0a 24 6d 65 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 .{.$message.=.str_pad($message,.
e47e0 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 2c 20 22 5c 78 32 30 $this->lastMessagesLength,."\x20
e4800 22 2c 20 53 54 52 5f 50 41 44 5f 52 49 47 48 54 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 ",.STR_PAD_RIGHT);.}.}..if.($thi
e4820 73 2d 3e 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 24 74 68 69 s->output->isDecorated()).{.$thi
e4840 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 24 74 68 69 73 2d s->output->write("\x0D");.$this-
e4860 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 20 65 6c 73 65 >output->write($message);.}.else
e4880 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 24 6d 65 73 73 61 .{.$this->output->writeln($messa
e48a0 67 65 29 3b 0a 7d 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 ge);.}..$this->lastMessagesLengt
e48c0 68 20 3d 20 30 3b 0a 0a 24 6c 65 6e 20 3d 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 69 74 h.=.0;..$len.=.Helper::strlenWit
e48e0 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 65 houtDecoration($this->output->ge
e4900 74 46 6f 72 6d 61 74 74 65 72 28 29 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 0a 69 66 20 28 24 6c tFormatter(),.$message);..if.($l
e4920 65 6e 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 en.>.$this->lastMessagesLength).
e4940 7b 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 20 24 6c {.$this->lastMessagesLength.=.$l
e4960 65 6e 3b 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 43 75 72 en;.}.}..private.function.getCur
e4980 72 65 6e 74 54 69 6d 65 49 6e 4d 69 6c 6c 69 73 65 63 6f 6e 64 73 28 29 0a 7b 0a 72 65 74 75 72 rentTimeInMilliseconds().{.retur
e49a0 6e 20 72 6f 75 6e 64 28 6d 69 63 72 6f 74 69 6d 65 28 74 72 75 65 29 20 2a 20 31 30 30 30 29 3b n.round(microtime(true).*.1000);
e49c0 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 6e 69 74 .}..private.static.function.init
e49e0 50 6c 61 63 65 68 6f 6c 64 65 72 46 6f 72 6d 61 74 74 65 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e PlaceholderFormatters().{.return
e4a00 20 61 72 72 61 79 28 0a 27 69 6e 64 69 63 61 74 6f 72 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 .array(.'indicator'.=>.function.
e4a20 28 50 72 6f 67 72 65 73 73 49 6e 64 69 63 61 74 6f 72 20 24 69 6e 64 69 63 61 74 6f 72 29 20 7b (ProgressIndicator.$indicator).{
e4a40 0a 72 65 74 75 72 6e 20 24 69 6e 64 69 63 61 74 6f 72 2d 3e 67 65 74 43 75 72 72 65 6e 74 56 61 .return.$indicator->getCurrentVa
e4a60 6c 75 65 28 29 3b 0a 7d 2c 0a 27 6d 65 73 73 61 67 65 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 lue();.},.'message'.=>.function.
e4a80 28 50 72 6f 67 72 65 73 73 49 6e 64 69 63 61 74 6f 72 20 24 69 6e 64 69 63 61 74 6f 72 29 20 7b (ProgressIndicator.$indicator).{
e4aa0 0a 72 65 74 75 72 6e 20 24 69 6e 64 69 63 61 74 6f 72 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 .return.$indicator->getMessage()
e4ac0 3b 0a 7d 2c 0a 27 65 6c 61 70 73 65 64 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 28 50 72 6f 67 ;.},.'elapsed'.=>.function.(Prog
e4ae0 72 65 73 73 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 ressIndicator.$indicator).{.retu
e4b00 72 6e 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 rn.Helper::formatTime(time().-.$
e4b20 69 6e 64 69 63 61 74 6f 72 2d 3e 67 65 74 53 74 61 72 74 54 69 6d 65 28 29 29 3b 0a 7d 2c 0a 27 indicator->getStartTime());.},.'
e4b40 6d 65 6d 6f 72 79 27 20 3d 3e 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0a 72 65 74 75 72 6e 20 memory'.=>.function.().{.return.
e4b60 48 65 6c 70 65 72 3a 3a 66 6f 72 6d 61 74 4d 65 6d 6f 72 79 28 6d 65 6d 6f 72 79 5f 67 65 74 5f Helper::formatMemory(memory_get_
e4b80 75 73 61 67 65 28 74 72 75 65 29 29 3b 0a 7d 2c 0a 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 usage(true));.},.);.}..private.s
e4ba0 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 46 6f 72 6d 61 74 73 28 29 0a 7b 0a 72 tatic.function.initFormats().{.r
e4bc0 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 6e 6f 72 6d 61 6c 27 20 3d 3e 20 27 20 25 69 6e 64 69 eturn.array(.'normal'.=>.'.%indi
e4be0 63 61 74 6f 72 25 20 25 6d 65 73 73 61 67 65 25 27 2c 0a 27 6e 6f 72 6d 61 6c 5f 6e 6f 5f 61 6e cator%.%message%',.'normal_no_an
e4c00 73 69 27 20 3d 3e 20 27 20 25 6d 65 73 73 61 67 65 25 27 2c 0a 0a 27 76 65 72 62 6f 73 65 27 20 si'.=>.'.%message%',..'verbose'.
e4c20 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 28 25 65 6c 61 =>.'.%indicator%.%message%.(%ela
e4c40 70 73 65 64 3a 36 73 25 29 27 2c 0a 27 76 65 72 62 6f 73 65 5f 6e 6f 5f 61 6e 73 69 27 20 3d 3e psed:6s%)',.'verbose_no_ansi'.=>
e4c60 20 27 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 27 2c 0a 0a 27 .'.%message%.(%elapsed:6s%)',..'
e4c80 76 65 72 79 5f 76 65 72 62 6f 73 65 27 20 3d 3e 20 27 20 25 69 6e 64 69 63 61 74 6f 72 25 20 25 very_verbose'.=>.'.%indicator%.%
e4ca0 6d 65 73 73 61 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 message%.(%elapsed:6s%,.%memory:
e4cc0 36 73 25 29 27 2c 0a 27 76 65 72 79 5f 76 65 72 62 6f 73 65 5f 6e 6f 5f 61 6e 73 69 27 20 3d 3e 6s%)',.'very_verbose_no_ansi'.=>
e4ce0 20 27 20 25 6d 65 73 73 61 67 65 25 20 28 25 65 6c 61 70 73 65 64 3a 36 73 25 2c 20 25 6d 65 6d .'.%message%.(%elapsed:6s%,.%mem
e4d00 6f 72 79 3a 36 73 25 29 27 2c 0a 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a ory:6s%)',.);.}.}.<?php.........
e4d20 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 6f ..namespace.Symfony\Component\Co
e4d40 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 6f nsole\Helper;..use.Symfony\Compo
e4d60 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 72 nent\Console\Exception\InvalidAr
e4d80 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 6f 6d gumentException;.use.Symfony\Com
e4da0 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
e4dc0 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 74 Exception;.use.Symfony\Component
e4de0 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 0a 75 \Console\Input\InputInterface;.u
e4e00 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
e4e20 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 75 73 65 20 put\ConsoleOutputInterface;.use.
e4e40 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
e4e60 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
e4e80 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 74 mponent\Console\Formatter\Output
e4ea0 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 FormatterStyle;.use.Symfony\Comp
e4ec0 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 6e 3b onent\Console\Question\Question;
e4ee0 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 51 .use.Symfony\Component\Console\Q
e4f00 75 65 73 74 69 6f 6e 5c 43 68 6f 69 63 65 51 75 65 73 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c uestion\ChoiceQuestion;.......cl
e4f20 61 73 73 20 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 48 65 6c 70 65 ass.QuestionHelper.extends.Helpe
e4f40 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 6e 70 75 74 53 74 72 65 61 6d 3b 0a 70 72 69 76 61 74 r.{.private.$inputStream;.privat
e4f60 65 20 73 74 61 74 69 63 20 24 73 68 65 6c 6c 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 e.static.$shell;.private.static.
e4f80 24 73 74 74 79 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 74 69 $stty;.............public.functi
e4fa0 6f 6e 20 61 73 6b 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 on.ask(InputInterface.$input,.Ou
e4fc0 74 70 75 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 tputInterface.$output,.Question.
e4fe0 24 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 24 6f 75 74 70 75 74 20 69 6e 73 74 61 6e 63 $question).{.if.($output.instanc
e5000 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 20 7b 0a 24 6f eof.ConsoleOutputInterface).{.$o
e5020 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 74 70 75 74 28 utput.=.$output->getErrorOutput(
e5040 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 69 6e 70 75 74 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 );.}..if.(!$input->isInteractive
e5060 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 ()).{.return.$question->getDefau
e5080 6c 74 28 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 56 61 6c 69 lt();.}..if.(!$question->getVali
e50a0 64 61 74 6f 72 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f 41 73 6b 28 24 dator()).{.return.$this->doAsk($
e50c0 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 24 74 68 61 74 20 3d 20 24 output,.$question);.}..$that.=.$
e50e0 74 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 this;..$interviewer.=.function.(
e5100 29 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 74 68 61 74 ).use.($output,.$question,.$that
e5120 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 61 74 2d 3e 64 6f 41 73 6b 28 24 6f 75 74 70 75 74 2c ).{.return.$that->doAsk($output,
e5140 20 24 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 .$question);.};..return.$this->v
e5160 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 6f alidateAttempts($interviewer,.$o
e5180 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 utput,.$question);.}...........p
e51a0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 70 75 74 53 74 72 65 61 6d 28 24 73 ublic.function.setInputStream($s
e51c0 74 72 65 61 6d 29 0a 7b 0a 69 66 20 28 21 69 73 5f 72 65 73 6f 75 72 63 65 28 24 73 74 72 65 61 tream).{.if.(!is_resource($strea
e51e0 6d 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 m)).{.throw.new.InvalidArgumentE
e5200 78 63 65 70 74 69 6f 6e 28 27 49 6e 70 75 74 20 73 74 72 65 61 6d 20 6d 75 73 74 20 62 65 20 61 xception('Input.stream.must.be.a
e5220 20 76 61 6c 69 64 20 72 65 73 6f 75 72 63 65 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e .valid.resource.');.}..$this->in
e5240 70 75 74 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 putStream.=.$stream;.}.......pub
e5260 6c 69 63 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 lic.function.getInputStream().{.
e5280 72 65 74 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 return.$this->inputStream;.}....
e52a0 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 74 .public.function.getName().{.ret
e52c0 75 72 6e 20 27 71 75 65 73 74 69 6f 6e 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a urn.'question';.}...............
e52e0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 41 73 6b 28 4f 75 74 70 75 74 49 6e 74 65 public.function.doAsk(OutputInte
e5300 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 73 74 69 6f rface.$output,.Question.$questio
e5320 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 50 72 6f 6d 70 74 28 24 6f 75 74 70 75 74 2c n).{.$this->writePrompt($output,
e5340 20 24 71 75 65 73 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 .$question);..$inputStream.=.$th
e5360 69 73 2d 3e 69 6e 70 75 74 53 74 72 65 61 6d 20 3f 3a 20 53 54 44 49 4e 3b 0a 24 61 75 74 6f 63 is->inputStream.?:.STDIN;.$autoc
e5380 6f 6d 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 omplete.=.$question->getAutocomp
e53a0 6c 65 74 65 72 56 61 6c 75 65 73 28 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 61 75 leterValues();..if.(null.===.$au
e53c0 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 74 79 41 76 61 tocomplete.||.!$this->hasSttyAva
e53e0 69 6c 61 62 6c 65 28 29 29 20 7b 0a 24 72 65 74 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 24 71 ilable()).{.$ret.=.false;.if.($q
e5400 75 65 73 74 69 6f 6e 2d 3e 69 73 48 69 64 64 65 6e 28 29 29 20 7b 0a 74 72 79 20 7b 0a 24 72 65 uestion->isHidden()).{.try.{.$re
e5420 74 20 3d 20 74 72 69 6d 28 24 74 68 69 73 2d 3e 67 65 74 48 69 64 64 65 6e 52 65 73 70 6f 6e 73 t.=.trim($this->getHiddenRespons
e5440 65 28 24 6f 75 74 70 75 74 2c 20 24 69 6e 70 75 74 53 74 72 65 61 6d 29 29 3b 0a 7d 20 63 61 74 e($output,.$inputStream));.}.cat
e5460 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.(
e5480 21 24 71 75 65 73 74 69 6f 6e 2d 3e 69 73 48 69 64 64 65 6e 46 61 6c 6c 62 61 63 6b 28 29 29 20 !$question->isHiddenFallback()).
e54a0 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d {.throw.$e;.}.}.}..if.(false.===
e54c0 20 24 72 65 74 29 20 7b 0a 24 72 65 74 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 64 46 72 6f 6d 49 .$ret).{.$ret.=.$this->readFromI
e54e0 6e 70 75 74 28 24 69 6e 70 75 74 53 74 72 65 61 6d 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 nput($inputStream);.}.}.else.{.$
e5500 72 65 74 20 3d 20 74 72 69 6d 28 24 74 68 69 73 2d 3e 61 75 74 6f 63 6f 6d 70 6c 65 74 65 28 24 ret.=.trim($this->autocomplete($
e5520 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 69 6e 70 75 74 53 74 72 65 61 6d 29 output,.$question,.$inputStream)
e5540 29 3b 0a 7d 0a 0a 24 72 65 74 20 3d 20 73 74 72 6c 65 6e 28 24 72 65 74 29 20 3e 20 30 20 3f 20 );.}..$ret.=.strlen($ret).>.0.?.
e5560 24 72 65 74 20 3a 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 $ret.:.$question->getDefault();.
e5580 0a 69 66 20 28 24 6e 6f 72 6d 61 6c 69 7a 65 72 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 .if.($normalizer.=.$question->ge
e55a0 74 4e 6f 72 6d 61 6c 69 7a 65 72 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6e 6f 72 6d 61 6c 69 tNormalizer()).{.return.$normali
e55c0 7a 65 72 28 24 72 65 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 74 3b 0a 7d 0a 0a 0a 0a zer($ret);.}..return.$ret;.}....
e55e0 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 50 72 6f 6d ....protected.function.writeProm
e5600 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 51 75 65 73 pt(OutputInterface.$output,.Ques
e5620 74 69 6f 6e 20 24 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 24 71 75 tion.$question).{.$message.=.$qu
e5640 65 73 74 69 6f 6e 2d 3e 67 65 74 51 75 65 73 74 69 6f 6e 28 29 3b 0a 0a 69 66 20 28 24 71 75 65 estion->getQuestion();..if.($que
e5660 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 69 6f 6e 29 stion.instanceof.ChoiceQuestion)
e5680 20 7b 0a 24 77 69 64 74 68 20 3d 20 6d 61 78 28 61 72 72 61 79 5f 6d 61 70 28 27 73 74 72 6c 65 .{.$width.=.max(array_map('strle
e56a0 6e 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 43 68 6f n',.array_keys($question->getCho
e56c0 69 63 65 73 28 29 29 29 29 3b 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 28 61 72 72 61 79 29 20 ices())));..$messages.=.(array).
e56e0 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 51 75 65 73 74 69 6f 6e 28 29 3b 0a 66 6f 72 65 61 63 $question->getQuestion();.foreac
e5700 68 20 28 24 71 75 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 h.($question->getChoices().as.$k
e5720 65 79 20 3d 3e 20 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 ey.=>.$value).{.$messages[].=.sp
e5740 72 69 6e 74 66 28 22 20 20 5b 3c 69 6e 66 6f 3e 25 2d 24 7b 77 69 64 74 68 7d 73 3c 2f 69 6e 66 rintf("..[<info>%-${width}s</inf
e5760 6f 3e 5d 20 25 73 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 o>].%s",.$key,.$value);.}..$outp
e5780 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 29 3b 0a 0a 24 6d 65 73 73 61 67 ut->writeln($messages);..$messag
e57a0 65 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 50 72 6f 6d 70 74 28 29 3b 0a 7d 0a 0a 24 e.=.$question->getPrompt();.}..$
e57c0 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a output->write($message);.}......
e57e0 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 45 72 72 6f 72 28 ..protected.function.writeError(
e5800 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 5c 45 78 63 65 70 74 OutputInterface.$output,.\Except
e5820 69 6f 6e 20 24 65 72 72 6f 72 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 ion.$error).{.if.(null.!==.$this
e5840 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 20 26 26 20 24 74 68 69 73 2d 3e 67 65 74 48 65 ->getHelperSet().&&.$this->getHe
e5860 6c 70 65 72 53 65 74 28 29 2d 3e 68 61 73 28 27 66 6f 72 6d 61 74 74 65 72 27 29 29 20 7b 0a 24 lperSet()->has('formatter')).{.$
e5880 6d 65 73 73 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d message.=.$this->getHelperSet()-
e58a0 3e 67 65 74 28 27 66 6f 72 6d 61 74 74 65 72 27 29 2d 3e 66 6f 72 6d 61 74 42 6c 6f 63 6b 28 24 >get('formatter')->formatBlock($
e58c0 65 72 72 6f 72 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 27 65 72 72 6f 72 27 29 3b 0a 7d error->getMessage(),.'error');.}
e58e0 20 65 6c 73 65 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 3c 65 72 72 6f 72 3e 27 2e 24 65 72 .else.{.$message.=.'<error>'.$er
e5900 72 6f 72 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 65 72 72 6f 72 3e 27 3b 0a 7d 0a ror->getMessage().'</error>';.}.
e5920 0a 24 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 .$output->writeln($message);.}..
e5940 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 75 74 6f 63 6f 6d ........private.function.autocom
e5960 70 6c 65 74 65 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 51 plete(OutputInterface.$output,.Q
e5980 75 65 73 74 69 6f 6e 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 69 6e 70 75 74 53 74 72 65 61 6d 29 uestion.$question,.$inputStream)
e59a0 0a 7b 0a 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 .{.$autocomplete.=.$question->ge
e59c0 74 41 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 28 29 3b 0a 24 72 65 74 20 3d 20 27 tAutocompleterValues();.$ret.=.'
e59e0 27 3b 0a 0a 24 69 20 3d 20 30 3b 0a 24 6f 66 73 20 3d 20 2d 31 3b 0a 24 6d 61 74 63 68 65 73 20 ';..$i.=.0;.$ofs.=.-1;.$matches.
e5a00 3d 20 24 61 75 74 6f 63 6f 6d 70 6c 65 74 65 3b 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 63 =.$autocomplete;.$numMatches.=.c
e5a20 6f 75 6e 74 28 24 6d 61 74 63 68 65 73 29 3b 0a 0a 24 73 74 74 79 4d 6f 64 65 20 3d 20 73 68 65 ount($matches);..$sttyMode.=.she
e5a40 6c 6c 5f 65 78 65 63 28 27 73 74 74 79 20 2d 67 27 29 3b 0a 0a 0a 20 73 68 65 6c 6c 5f 65 78 65 ll_exec('stty.-g');....shell_exe
e5a60 63 28 27 73 74 74 79 20 2d 69 63 61 6e 6f 6e 20 2d 65 63 68 6f 27 29 3b 0a 0a 0a 20 24 6f 75 74 c('stty.-icanon.-echo');....$out
e5a80 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2d 3e 73 65 74 53 74 79 6c 65 28 27 68 put->getFormatter()->setStyle('h
e5aa0 6c 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 28 27 62 6c l',.new.OutputFormatterStyle('bl
e5ac0 61 63 6b 27 2c 20 27 77 68 69 74 65 27 29 29 3b 0a 0a 0a 20 77 68 69 6c 65 20 28 21 66 65 6f 66 ack',.'white'));....while.(!feof
e5ae0 28 24 69 6e 70 75 74 53 74 72 65 61 6d 29 29 20 7b 0a 24 63 20 3d 20 66 72 65 61 64 28 24 69 6e ($inputStream)).{.$c.=.fread($in
e5b00 70 75 74 53 74 72 65 61 6d 2c 20 31 29 3b 0a 0a 0a 20 69 66 20 28 22 5c 31 37 37 22 20 3d 3d 3d putStream,.1);....if.("\177".===
e5b20 20 24 63 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 6e 75 6d 4d 61 74 63 68 65 73 20 26 26 20 .$c).{.if.(0.===.$numMatches.&&.
e5b40 30 20 21 3d 3d 20 24 69 29 20 7b 0a 2d 2d 24 69 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 0.!==.$i).{.--$i;...$output->wri
e5b60 74 65 28 22 5c 30 33 33 5b 31 44 22 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 20 3d 3d 3d 20 30 29 20 te("\033[1D");.}..if.($i.===.0).
e5b80 7b 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
e5ba0 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
e5bc0 68 65 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 30 3b 0a hes);.}.else.{.$numMatches.=.0;.
e5be0 7d 0a 0a 0a 20 24 72 65 74 20 3d 20 73 75 62 73 74 72 28 24 72 65 74 2c 20 30 2c 20 24 69 29 3b }....$ret.=.substr($ret,.0,.$i);
e5c00 0a 7d 20 65 6c 73 65 69 66 20 28 22 5c 30 33 33 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 0a 20 24 63 .}.elseif.("\033".===.$c).{...$c
e5c20 20 2e 3d 20 66 72 65 61 64 28 24 69 6e 70 75 74 53 74 72 65 61 6d 2c 20 32 29 3b 0a 0a 0a 20 69 ..=.fread($inputStream,.2);....i
e5c40 66 20 28 69 73 73 65 74 28 24 63 5b 32 5d 29 20 26 26 20 28 27 41 27 20 3d 3d 3d 20 24 63 5b 32 f.(isset($c[2]).&&.('A'.===.$c[2
e5c60 5d 20 7c 7c 20 27 42 27 20 3d 3d 3d 20 24 63 5b 32 5d 29 29 20 7b 0a 69 66 20 28 27 41 27 20 3d ].||.'B'.===.$c[2])).{.if.('A'.=
e5c80 3d 3d 20 24 63 5b 32 5d 20 26 26 20 2d 31 20 3d 3d 3d 20 24 6f 66 73 29 20 7b 0a 24 6f 66 73 20 ==.$c[2].&&.-1.===.$ofs).{.$ofs.
e5ca0 3d 20 30 3b 0a 7d 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 6e 75 6d 4d 61 74 63 68 65 73 29 20 7b =.0;.}..if.(0.===.$numMatches).{
e5cc0 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6f 66 73 20 2b 3d 20 28 27 41 27 20 3d 3d 3d 20 24 .continue;.}..$ofs.+=.('A'.===.$
e5ce0 63 5b 32 5d 29 20 3f 20 2d 31 20 3a 20 31 3b 0a 24 6f 66 73 20 3d 20 28 24 6e 75 6d 4d 61 74 63 c[2]).?.-1.:.1;.$ofs.=.($numMatc
e5d00 68 65 73 20 2b 20 24 6f 66 73 29 20 25 20 24 6e 75 6d 4d 61 74 63 68 65 73 3b 0a 7d 0a 7d 20 65 hes.+.$ofs).%.$numMatches;.}.}.e
e5d20 6c 73 65 69 66 20 28 6f 72 64 28 24 63 29 20 3c 20 33 32 29 20 7b 0a 69 66 20 28 22 5c 74 22 20 lseif.(ord($c).<.32).{.if.("\t".
e5d40 3d 3d 3d 20 24 63 20 7c 7c 20 22 5c 6e 22 20 3d 3d 3d 20 24 63 29 20 7b 0a 69 66 20 28 24 6e 75 ===.$c.||."\n".===.$c).{.if.($nu
e5d60 6d 4d 61 74 63 68 65 73 20 3e 20 30 20 26 26 20 2d 31 20 21 3d 3d 20 24 6f 66 73 29 20 7b 0a 24 mMatches.>.0.&&.-1.!==.$ofs).{.$
e5d80 72 65 74 20 3d 20 24 6d 61 74 63 68 65 73 5b 24 6f 66 73 5d 3b 0a 0a 20 24 6f 75 74 70 75 74 2d ret.=.$matches[$ofs];...$output-
e5da0 3e 77 72 69 74 65 28 73 75 62 73 74 72 28 24 72 65 74 2c 20 24 69 29 29 3b 0a 24 69 20 3d 20 73 >write(substr($ret,.$i));.$i.=.s
e5dc0 74 72 6c 65 6e 28 24 72 65 74 29 3b 0a 7d 0a 0a 69 66 20 28 22 5c 6e 22 20 3d 3d 3d 20 24 63 29 trlen($ret);.}..if.("\n".===.$c)
e5de0 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 63 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a .{.$output->write($c);.break;.}.
e5e00 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 30 3b 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d .$numMatches.=.0;.}..continue;.}
e5e20 20 65 6c 73 65 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 63 29 3b 0a 24 72 65 74 .else.{.$output->write($c);.$ret
e5e40 20 2e 3d 20 24 63 3b 0a 2b 2b 24 69 3b 0a 0a 24 6e 75 6d 4d 61 74 63 68 65 73 20 3d 20 30 3b 0a ..=.$c;.++$i;..$numMatches.=.0;.
e5e60 24 6f 66 73 20 3d 20 30 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 63 6f 6d 70 6c 65 74 $ofs.=.0;..foreach.($autocomplet
e5e80 65 20 61 73 20 24 76 61 6c 75 65 29 20 7b 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f e.as.$value).{...if.(0.===.strpo
e5ea0 73 28 24 76 61 6c 75 65 2c 20 24 72 65 74 29 20 26 26 20 24 69 20 21 3d 3d 20 73 74 72 6c 65 6e s($value,.$ret).&&.$i.!==.strlen
e5ec0 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 6d 61 74 63 68 65 73 5b 24 6e 75 6d 4d 61 74 63 68 65 73 ($value)).{.$matches[$numMatches
e5ee0 2b 2b 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 24 6f 75 74 70 75 74 2d 3e ++].=.$value;.}.}.}....$output->
e5f00 77 72 69 74 65 28 22 5c 30 33 33 5b 4b 22 29 3b 0a 0a 69 66 20 28 24 6e 75 6d 4d 61 74 63 68 65 write("\033[K");..if.($numMatche
e5f20 73 20 3e 20 30 20 26 26 20 2d 31 20 21 3d 3d 20 24 6f 66 73 29 20 7b 0a 0a 20 24 6f 75 74 70 75 s.>.0.&&.-1.!==.$ofs).{...$outpu
e5f40 74 2d 3e 77 72 69 74 65 28 22 5c 30 33 33 37 22 29 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 t->write("\0337");...$output->wr
e5f60 69 74 65 28 27 3c 68 6c 3e 27 2e 73 75 62 73 74 72 28 24 6d 61 74 63 68 65 73 5b 24 6f 66 73 5d ite('<hl>'.substr($matches[$ofs]
e5f80 2c 20 24 69 29 2e 27 3c 2f 68 6c 3e 27 29 3b 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 ,.$i).'</hl>');...$output->write
e5fa0 28 22 5c 30 33 33 38 22 29 3b 0a 7d 0a 7d 0a 0a 0a 20 73 68 65 6c 6c 5f 65 78 65 63 28 73 70 72 ("\0338");.}.}....shell_exec(spr
e5fc0 69 6e 74 66 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 72 65 intf('stty.%s',.$sttyMode));..re
e5fe0 74 75 72 6e 20 24 72 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 turn.$ret;.}...........private.f
e6000 75 6e 63 74 69 6f 6e 20 67 65 74 48 69 64 64 65 6e 52 65 73 70 6f 6e 73 65 28 4f 75 74 70 75 74 unction.getHiddenResponse(Output
e6020 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 69 6e 70 75 74 53 74 72 65 61 6d 29 Interface.$output,.$inputStream)
e6040 0a 7b 0a 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 .{.if.('\\'.===.DIRECTORY_SEPARA
e6060 54 4f 52 29 20 7b 0a 24 65 78 65 20 3d 20 5f 5f 44 49 52 5f 5f 2e 27 2f 2e 2e 2f 52 65 73 6f 75 TOR).{.$exe.=.__DIR__.'/../Resou
e6080 72 63 65 73 2f 62 69 6e 2f 68 69 64 64 65 6e 69 6e 70 75 74 2e 65 78 65 27 3b 0a 0a 0a 20 69 66 rces/bin/hiddeninput.exe';....if
e60a0 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 20 30 .('phar:'.===.substr(__FILE__,.0
e60c0 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 5f 64 ,.5)).{.$tmpExe.=.sys_get_temp_d
e60e0 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 63 6f 70 79 28 24 65 ir().'/hiddeninput.exe';.copy($e
e6100 78 65 2c 20 24 74 6d 70 45 78 65 29 3b 0a 24 65 78 65 20 3d 20 24 74 6d 70 45 78 65 3b 0a 7d 0a xe,.$tmpExe);.$exe.=.$tmpExe;.}.
e6120 0a 24 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 65 78 65 29 .$value.=.rtrim(shell_exec($exe)
e6140 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 69 66 20 28 69 73 );.$output->writeln('');..if.(is
e6160 73 65 74 28 24 74 6d 70 45 78 65 29 29 20 7b 0a 75 6e 6c 69 6e 6b 28 24 74 6d 70 45 78 65 29 3b set($tmpExe)).{.unlink($tmpExe);
e6180 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d .}..return.$value;.}..if.($this-
e61a0 3e 68 61 73 53 74 74 79 41 76 61 69 6c 61 62 6c 65 28 29 29 20 7b 0a 24 73 74 74 79 4d 6f 64 65 >hasSttyAvailable()).{.$sttyMode
e61c0 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 0a 73 68 65 6c 6c .=.shell_exec('stty.-g');..shell
e61e0 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 65 20 3d 20 66 67 _exec('stty.-echo');.$value.=.fg
e6200 65 74 73 28 24 69 6e 70 75 74 53 74 72 65 61 6d 2c 20 34 30 39 36 29 3b 0a 73 68 65 6c 6c 5f 65 ets($inputStream,.4096);.shell_e
e6220 78 65 63 28 73 70 72 69 6e 74 66 28 27 73 74 74 79 20 25 73 27 2c 20 24 73 74 74 79 4d 6f 64 65 xec(sprintf('stty.%s',.$sttyMode
e6240 29 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 74 68 72 ));..if.(false.===.$value).{.thr
e6260 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 41 62 6f 72 74 65 64 ow.new.RuntimeException('Aborted
e6280 27 29 3b 0a 7d 0a 0a 24 76 61 6c 75 65 20 3d 20 74 72 69 6d 28 24 76 61 6c 75 65 29 3b 0a 24 6f ');.}..$value.=.trim($value);.$o
e62a0 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 61 6c utput->writeln('');..return.$val
e62c0 75 65 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 73 68 65 6c 6c 20 3d 20 24 74 ue;.}..if.(false.!==.$shell.=.$t
e62e0 68 69 73 2d 3e 67 65 74 53 68 65 6c 6c 28 29 29 20 7b 0a 24 72 65 61 64 43 6d 64 20 3d 20 24 73 his->getShell()).{.$readCmd.=.$s
e6300 68 65 6c 6c 20 3d 3d 3d 20 27 63 73 68 27 20 3f 20 27 73 65 74 20 6d 79 70 61 73 73 77 6f 72 64 hell.===.'csh'.?.'set.mypassword
e6320 20 3d 20 24 3c 27 20 3a 20 27 72 65 61 64 20 2d 72 20 6d 79 70 61 73 73 77 6f 72 64 27 3b 0a 24 .=.$<'.:.'read.-r.mypassword';.$
e6340 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 22 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 command.=.sprintf("/usr/bin/env.
e6360 25 73 20 2d 63 20 27 73 74 74 79 20 2d 65 63 68 6f 3b 20 25 73 3b 20 73 74 74 79 20 65 63 68 6f %s.-c.'stty.-echo;.%s;.stty.echo
e6380 3b 20 65 63 68 6f 20 5c 24 6d 79 70 61 73 73 77 6f 72 64 27 22 2c 20 24 73 68 65 6c 6c 2c 20 24 ;.echo.\$mypassword'",.$shell,.$
e63a0 72 65 61 64 43 6d 64 29 3b 0a 24 76 61 6c 75 65 20 3d 20 72 74 72 69 6d 28 73 68 65 6c 6c 5f 65 readCmd);.$value.=.rtrim(shell_e
e63c0 78 65 63 28 24 63 6f 6d 6d 61 6e 64 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e xec($command));.$output->writeln
e63e0 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 74 68 72 6f 77 20 6e ('');..return.$value;.}..throw.n
e6400 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 6c 65 20 74 6f 20 68 ew.RuntimeException('Unable.to.h
e6420 69 64 65 20 74 68 65 20 72 65 73 70 6f 6e 73 65 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ide.the.response.');.}..........
e6440 0a 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 41 74 74 65 ...private.function.validateAtte
e6460 6d 70 74 73 28 24 69 6e 74 65 72 76 69 65 77 65 72 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 mpts($interviewer,.OutputInterfa
e6480 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).
e64a0 7b 0a 24 65 72 72 6f 72 20 3d 20 6e 75 6c 6c 3b 0a 24 61 74 74 65 6d 70 74 73 20 3d 20 24 71 75 {.$error.=.null;.$attempts.=.$qu
e64c0 65 73 74 69 6f 6e 2d 3e 67 65 74 4d 61 78 41 74 74 65 6d 70 74 73 28 29 3b 0a 77 68 69 6c 65 20 estion->getMaxAttempts();.while.
e64e0 28 6e 75 6c 6c 20 3d 3d 3d 20 24 61 74 74 65 6d 70 74 73 20 7c 7c 20 24 61 74 74 65 6d 70 74 73 (null.===.$attempts.||.$attempts
e6500 2d 2d 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 65 72 72 6f 72 29 20 7b 0a 24 74 68 --).{.if.(null.!==.$error).{.$th
e6520 69 73 2d 3e 77 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 is->writeError($output,.$error);
e6540 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 6e 63 28 .}..try.{.return.call_user_func(
e6560 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 2c 20 24 69 6e 74 65 $question->getValidator(),.$inte
e6580 72 76 69 65 77 65 72 28 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 rviewer());.}.catch.(\Exception.
e65a0 24 65 72 72 6f 72 29 20 7b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 72 72 6f 72 3b 0a 7d 0a 0a $error).{.}.}..throw.$error;.}..
e65c0 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 68 65 6c 6c 28 29 .....private.function.getShell()
e65e0 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 73 65 6c 66 3a 3a 24 73 68 65 6c 6c 29 20 7b 0a .{.if.(null.!==.self::$shell).{.
e6600 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 73 68 65 6c 6c 3b 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 73 return.self::$shell;.}..self::$s
e6620 68 65 6c 6c 20 3d 20 66 61 6c 73 65 3b 0a 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 27 hell.=.false;..if.(file_exists('
e6640 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 22 2f 75 73 /usr/bin/env')).{...$test.=."/us
e6660 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 20 2f 64 65 r/bin/env.%s.-c.'echo.OK'.2>./de
e6680 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 68 27 2c 20 v/null";.foreach.(array('bash',.
e66a0 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 20 7b 0a 69 'zsh',.'ksh',.'csh').as.$sh).{.i
e66c0 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 28 73 70 72 f.('OK'.===.rtrim(shell_exec(spr
e66e0 69 6e 74 66 28 24 74 65 73 74 2c 20 24 73 68 29 29 29 29 20 7b 0a 73 65 6c 66 3a 3a 24 73 68 65 intf($test,.$sh)))).{.self::$she
e6700 6c 6c 20 3d 20 24 73 68 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 ll.=.$sh;.break;.}.}.}..return.s
e6720 65 6c 66 3a 3a 24 73 68 65 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 elf::$shell;.}...........private
e6740 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 46 72 6f 6d 49 6e 70 75 74 28 24 73 74 72 65 61 6d 29 .function.readFromInput($stream)
e6760 0a 7b 0a 69 66 20 28 53 54 44 49 4e 20 3d 3d 3d 20 24 73 74 72 65 61 6d 20 26 26 20 66 75 6e 63 .{.if.(STDIN.===.$stream.&&.func
e6780 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 72 65 61 64 6c 69 6e 65 27 29 29 20 7b 0a 24 72 65 74 20 tion_exists('readline')).{.$ret.
e67a0 3d 20 72 65 61 64 6c 69 6e 65 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 74 20 3d 20 66 67 =.readline();.}.else.{.$ret.=.fg
e67c0 65 74 73 28 24 73 74 72 65 61 6d 2c 20 34 30 39 36 29 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 ets($stream,.4096);.}..if.(false
e67e0 20 3d 3d 3d 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 .===.$ret).{.throw.new.RuntimeEx
e6800 63 65 70 74 69 6f 6e 28 27 41 62 6f 72 74 65 64 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 ception('Aborted');.}..return.tr
e6820 69 6d 28 24 72 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 im($ret);.}.......private.functi
e6840 6f 6e 20 68 61 73 53 74 74 79 41 76 61 69 6c 61 62 6c 65 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c on.hasSttyAvailable().{.if.(null
e6860 20 21 3d 3d 20 73 65 6c 66 3a 3a 24 73 74 74 79 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a .!==.self::$stty).{.return.self:
e6880 3a 24 73 74 74 79 3b 0a 7d 0a 0a 65 78 65 63 28 27 73 74 74 79 20 32 3e 26 31 27 2c 20 24 6f 75 :$stty;.}..exec('stty.2>&1',.$ou
e68a0 74 70 75 74 2c 20 24 65 78 69 74 63 6f 64 65 29 3b 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a tput,.$exitcode);..return.self::
e68c0 24 73 74 74 79 20 3d 20 24 65 78 69 74 63 6f 64 65 20 3d 3d 3d 20 30 3b 0a 7d 0a 7d 0a 3c 3f 70 $stty.=.$exitcode.===.0;.}.}.<?p
e68e0 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
e6900 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 79 omponent\Console\Helper;..use.Sy
e6920 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
e6940 6e 5c 4c 6f 67 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 n\LogicException;.use.Symfony\Co
e6960 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 72 mponent\Console\Input\InputInter
e6980 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 73 face;.use.Symfony\Component\Cons
e69a0 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 20 ole\Output\OutputInterface;.use.
e69c0 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 69 Symfony\Component\Console\Questi
e69e0 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 5c 43 on\ChoiceQuestion;.use.Symfony\C
e6a00 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 69 72 omponent\Console\Question\Confir
e6a20 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 6d 70 mationQuestion;.use.Symfony\Comp
e6a40 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 6e 3b onent\Console\Question\Question;
e6a60 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 53 .use.Symfony\Component\Console\S
e6a80 74 79 6c 65 5c 53 79 6d 66 6f 6e 79 53 74 79 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 tyle\SymfonyStyle;.......class.S
e6aa0 79 6d 66 6f 6e 79 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 51 75 65 ymfonyQuestionHelper.extends.Que
e6ac0 73 74 69 6f 6e 48 65 6c 70 65 72 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e stionHelper.{....public.function
e6ae0 20 61 73 6b 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 .ask(InputInterface.$input,.Outp
e6b00 75 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 utInterface.$output,.Question.$q
e6b20 75 65 73 74 69 6f 6e 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 24 71 75 65 73 74 69 6f uestion).{.$validator.=.$questio
e6b40 6e 2d 3e 67 65 74 56 61 6c 69 64 61 74 6f 72 28 29 3b 0a 24 71 75 65 73 74 69 6f 6e 2d 3e 73 65 n->getValidator();.$question->se
e6b60 74 56 61 6c 69 64 61 74 6f 72 28 66 75 6e 63 74 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 75 73 65 tValidator(function.($value).use
e6b80 20 28 24 76 61 6c 69 64 61 74 6f 72 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 76 61 .($validator).{.if.(null.!==.$va
e6ba0 6c 69 64 61 74 6f 72 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 24 76 61 6c 69 64 61 74 6f 72 28 24 lidator).{.$value.=.$validator($
e6bc0 76 61 6c 75 65 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 value);.}....if.(!is_array($valu
e6be0 65 29 20 26 26 20 21 69 73 5f 62 6f 6f 6c 28 24 76 61 6c 75 65 29 20 26 26 20 30 20 3d 3d 3d 20 e).&&.!is_bool($value).&&.0.===.
e6c00 73 74 72 6c 65 6e 28 24 76 61 6c 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 strlen($value)).{.throw.new.Logi
e6c20 63 45 78 63 65 70 74 69 6f 6e 28 27 41 20 76 61 6c 75 65 20 69 73 20 72 65 71 75 69 72 65 64 2e cException('A.value.is.required.
e6c40 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 29 3b 0a 0a 72 65 74 75 72 ');.}..return.$value;.});..retur
e6c60 6e 20 70 61 72 65 6e 74 3a 3a 61 73 6b 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 n.parent::ask($input,.$output,.$
e6c80 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 question);.}.....protected.funct
e6ca0 69 6f 6e 20 77 72 69 74 65 50 72 6f 6d 70 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 ion.writePrompt(OutputInterface.
e6cc0 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 7b 0a 24 $output,.Question.$question).{.$
e6ce0 74 65 78 74 20 3d 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 3b text.=.$question->getQuestion();
e6d00 0a 24 64 65 66 61 75 6c 74 20 3d 20 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c .$default.=.$question->getDefaul
e6d20 74 28 29 3b 0a 0a 73 77 69 74 63 68 20 28 74 72 75 65 29 20 7b 0a 63 61 73 65 20 6e 75 6c 6c 20 t();..switch.(true).{.case.null.
e6d40 3d 3d 3d 20 24 64 65 66 61 75 6c 74 3a 0a 24 74 65 78 74 20 3d 20 73 70 72 69 6e 74 66 28 27 20 ===.$default:.$text.=.sprintf('.
e6d60 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 3a 27 2c 20 24 74 65 78 74 29 3b 0a 0a 62 72 65 61 <info>%s</info>:',.$text);..brea
e6d80 6b 3b 0a 0a 63 61 73 65 20 24 71 75 65 73 74 69 6f 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f k;..case.$question.instanceof.Co
e6da0 6e 66 69 72 6d 61 74 69 6f 6e 51 75 65 73 74 69 6f 6e 3a 0a 24 74 65 78 74 20 3d 20 73 70 72 69 nfirmationQuestion:.$text.=.spri
e6dc0 6e 74 66 28 27 20 3c 69 6e 66 6f 3e 25 73 20 28 79 65 73 2f 6e 6f 29 3c 2f 69 6e 66 6f 3e 20 5b ntf('.<info>%s.(yes/no)</info>.[
e6de0 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 27 2c 20 24 74 65 78 74 2c <comment>%s</comment>]:',.$text,
e6e00 20 24 64 65 66 61 75 6c 74 20 3f 20 27 79 65 73 27 20 3a 20 27 6e 6f 27 29 3b 0a 0a 62 72 65 61 .$default.?.'yes'.:.'no');..brea
e6e20 6b 3b 0a 0a 63 61 73 65 20 24 71 75 65 73 74 69 6f 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 68 k;..case.$question.instanceof.Ch
e6e40 6f 69 63 65 51 75 65 73 74 69 6f 6e 3a 0a 24 63 68 6f 69 63 65 73 20 3d 20 24 71 75 65 73 74 69 oiceQuestion:.$choices.=.$questi
e6e60 6f 6e 2d 3e 67 65 74 43 68 6f 69 63 65 73 28 29 3b 0a 24 74 65 78 74 20 3d 20 73 70 72 69 6e 74 on->getChoices();.$text.=.sprint
e6e80 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 25 73 f('.<info>%s</info>.[<comment>%s
e6ea0 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 27 2c 20 24 74 65 78 74 2c 20 24 63 68 6f 69 63 65 73 5b 24 </comment>]:',.$text,.$choices[$
e6ec0 64 65 66 61 75 6c 74 5d 29 3b 0a 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a 24 74 65 default]);..break;..default:.$te
e6ee0 78 74 20 3d 20 73 70 72 69 6e 74 66 28 27 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 20 5b xt.=.sprintf('.<info>%s</info>.[
e6f00 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 3a 27 2c 20 24 74 65 78 74 2c <comment>%s</comment>]:',.$text,
e6f20 20 24 64 65 66 61 75 6c 74 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 .$default);.}..$output->writeln(
e6f40 24 74 65 78 74 29 3b 0a 0a 69 66 20 28 24 71 75 65 73 74 69 6f 6e 20 69 6e 73 74 61 6e 63 65 6f $text);..if.($question.instanceo
e6f60 66 20 43 68 6f 69 63 65 51 75 65 73 74 69 6f 6e 29 20 7b 0a 24 77 69 64 74 68 20 3d 20 6d 61 78 f.ChoiceQuestion).{.$width.=.max
e6f80 28 61 72 72 61 79 5f 6d 61 70 28 27 73 74 72 6c 65 6e 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 (array_map('strlen',.array_keys(
e6fa0 24 71 75 65 73 74 69 6f 6e 2d 3e 67 65 74 43 68 6f 69 63 65 73 28 29 29 29 29 3b 0a 0a 66 6f 72 $question->getChoices())));..for
e6fc0 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 28 29 20 61 73 each.($question->getChoices().as
e6fe0 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 .$key.=>.$value).{.$output->writ
e7000 65 6c 6e 28 73 70 72 69 6e 74 66 28 22 20 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 25 2d 24 7b 77 69 64 eln(sprintf("..[<comment>%-${wid
e7020 74 68 7d 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 20 25 73 22 2c 20 24 6b 65 79 2c 20 24 76 61 6c 75 th}s</comment>].%s",.$key,.$valu
e7040 65 29 29 3b 0a 7d 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 27 20 3e 20 27 29 3b e));.}.}..$output->write('.>.');
e7060 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 45 .}.....protected.function.writeE
e7080 72 72 6f 72 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 5c 45 rror(OutputInterface.$output,.\E
e70a0 78 63 65 70 74 69 6f 6e 20 24 65 72 72 6f 72 29 0a 7b 0a 69 66 20 28 24 6f 75 74 70 75 74 20 69 xception.$error).{.if.($output.i
e70c0 6e 73 74 61 6e 63 65 6f 66 20 53 79 6d 66 6f 6e 79 53 74 79 6c 65 29 20 7b 0a 24 6f 75 74 70 75 nstanceof.SymfonyStyle).{.$outpu
e70e0 74 2d 3e 6e 65 77 4c 69 6e 65 28 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 65 72 72 6f 72 28 24 65 72 t->newLine();.$output->error($er
e7100 72 6f 72 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a ror->getMessage());..return;.}..
e7120 70 61 72 65 6e 74 3a 3a 77 72 69 74 65 45 72 72 6f 72 28 24 6f 75 74 70 75 74 2c 20 24 65 72 72 parent::writeError($output,.$err
e7140 6f 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 73 70 61 or);.}.}.<?php...........namespa
e7160 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
e7180 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
e71a0 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 20 ole\Output\OutputInterface;.use.
e71c0 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
e71e0 69 6f 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 ion\InvalidArgumentException;...
e7200 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 61 62 6c 65 0a 7b 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 .......class.Table.{......privat
e7220 65 20 24 68 65 61 64 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 e.$headers.=.array();.......priv
e7240 61 74 65 20 24 72 6f 77 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 ate.$rows.=.array();.......priva
e7260 74 65 20 24 63 6f 6c 75 6d 6e 57 69 64 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a te.$columnWidths.=.array();.....
e7280 0a 0a 70 72 69 76 61 74 65 20 24 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 3b 0a 0a 0a 0a 0a ..private.$numberOfColumns;.....
e72a0 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 74 private.$output;.....private.$st
e72c0 79 6c 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6c 75 6d 6e 53 74 79 6c 65 73 20 3d yle;.....private.$columnStyles.=
e72e0 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 73 74 79 6c 65 .array();..private.static.$style
e7300 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 73 74 72 75 63 74 28 s;..public.function.__construct(
e7320 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 73 OutputInterface.$output).{.$this
e7340 2d 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 3b 0a 0a 69 66 20 28 21 73 65 6c 66 3a 3a ->output.=.$output;..if.(!self::
e7360 24 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 $styles).{.self::$styles.=.self:
e7380 3a 69 6e 69 74 53 74 79 6c 65 73 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 53 74 79 6c :initStyles();.}..$this->setStyl
e73a0 65 28 27 64 65 66 61 75 6c 74 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 e('default');.}........public.st
e73c0 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 79 6c 65 44 65 66 69 6e 69 74 69 6f 6e atic.function.setStyleDefinition
e73e0 28 24 6e 61 6d 65 2c 20 54 61 62 6c 65 53 74 79 6c 65 20 24 73 74 79 6c 65 29 0a 7b 0a 69 66 20 ($name,.TableStyle.$style).{.if.
e7400 28 21 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 29 20 7b 0a 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 (!self::$styles).{.self::$styles
e7420 20 3d 20 73 65 6c 66 3a 3a 69 6e 69 74 53 74 79 6c 65 73 28 29 3b 0a 7d 0a 0a 73 65 6c 66 3a 3a .=.self::initStyles();.}..self::
e7440 24 73 74 79 6c 65 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 73 74 79 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a $styles[$name].=.$style;.}......
e7460 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 65 74 53 74 79 ...public.static.function.getSty
e7480 6c 65 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 65 6c 66 3a leDefinition($name).{.if.(!self:
e74a0 3a 24 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 :$styles).{.self::$styles.=.self
e74c0 3a 3a 69 6e 69 74 53 74 79 6c 65 73 28 29 3b 0a 7d 0a 0a 69 66 20 28 21 73 65 6c 66 3a 3a 24 73 ::initStyles();.}..if.(!self::$s
e74e0 74 79 6c 65 73 5b 24 6e 61 6d 65 5d 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 tyles[$name]).{.throw.new.Invali
e7500 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 53 74 79 6c dArgumentException(sprintf('Styl
e7520 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 6d 65 29 29 e."%s".is.not.defined.',.$name))
e7540 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 5b 24 6e 61 6d 65 5d ;.}..return.self::$styles[$name]
e7560 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 53 ;.}.........public.function.setS
e7580 74 79 6c 65 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 24 6e 61 6d 65 20 69 6e 73 74 61 6e 63 65 tyle($name).{.if.($name.instance
e75a0 6f 66 20 54 61 62 6c 65 53 74 79 6c 65 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 20 3d 20 of.TableStyle).{.$this->style.=.
e75c0 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
e75e0 79 6c 65 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 20 3d 20 73 yles[$name])).{.$this->style.=.s
e7600 65 6c 66 3a 3a 24 73 74 79 6c 65 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 elf::$styles[$name];.}.else.{.th
e7620 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
e7640 28 73 70 72 69 6e 74 66 28 27 53 74 79 6c 65 20 22 25 73 22 20 69 73 20 6e 6f 74 20 64 65 66 69 (sprintf('Style."%s".is.not.defi
e7660 6e 65 64 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b ned.',.$name));.}..return.$this;
e7680 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 53 74 79 6c .}.......public.function.getStyl
e76a0 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 3b 0a 7d 0a 0a 0a 0a e().{.return.$this->style;.}....
e76c0 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 6c 75 6d 6e 53 ......public.function.setColumnS
e76e0 74 79 6c 65 28 24 63 6f 6c 75 6d 6e 49 6e 64 65 78 2c 20 24 6e 61 6d 65 29 0a 7b 0a 24 63 6f 6c tyle($columnIndex,.$name).{.$col
e7700 75 6d 6e 49 6e 64 65 78 20 3d 20 69 6e 74 76 61 6c 28 24 63 6f 6c 75 6d 6e 49 6e 64 65 78 29 3b umnIndex.=.intval($columnIndex);
e7720 0a 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 74 79 6c ..if.($name.instanceof.TableStyl
e7740 65 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 53 74 79 6c 65 73 5b 24 63 6f 6c 75 6d 6e e).{.$this->columnStyles[$column
e7760 49 6e 64 65 78 5d 20 3d 20 24 6e 61 6d 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 Index].=.$name;.}.elseif.(isset(
e7780 73 65 6c 66 3a 3a 24 73 74 79 6c 65 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e self::$styles[$name])).{.$this->
e77a0 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 73 65 6c columnStyles[$columnIndex].=.sel
e77c0 66 3a 3a 24 73 74 79 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 f::$styles[$name];.}.else.{.thro
e77e0 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(
e7800 73 70 72 69 6e 74 66 28 27 53 74 79 6c 65 20 22 25 73 22 20 69 73 20 6e 6f 74 20 64 65 66 69 6e sprintf('Style."%s".is.not.defin
e7820 65 64 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a ed.',.$name));.}..return.$this;.
e7840 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 74 43 }...........public.function.getC
e7860 6f 6c 75 6d 6e 53 74 79 6c 65 28 24 63 6f 6c 75 6d 6e 49 6e 64 65 78 29 0a 7b 0a 69 66 20 28 69 olumnStyle($columnIndex).{.if.(i
e7880 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 53 74 79 6c 65 73 5b 24 63 6f 6c 75 6d 6e sset($this->columnStyles[$column
e78a0 49 6e 64 65 78 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 53 Index])).{.return.$this->columnS
e78c0 74 79 6c 65 73 5b 24 63 6f 6c 75 6d 6e 49 6e 64 65 78 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 tyles[$columnIndex];.}..return.$
e78e0 74 68 69 73 2d 3e 67 65 74 53 74 79 6c 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 this->getStyle();.}..public.func
e7900 74 69 6f 6e 20 73 65 74 48 65 61 64 65 72 73 28 61 72 72 61 79 20 24 68 65 61 64 65 72 73 29 0a tion.setHeaders(array.$headers).
e7920 7b 0a 24 68 65 61 64 65 72 73 20 3d 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 68 65 61 64 65 {.$headers.=.array_values($heade
e7940 72 73 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 68 65 61 64 65 72 73 29 20 26 26 20 21 69 73 rs);.if.(!empty($headers).&&.!is
e7960 5f 61 72 72 61 79 28 24 68 65 61 64 65 72 73 5b 30 5d 29 29 20 7b 0a 24 68 65 61 64 65 72 73 20 _array($headers[0])).{.$headers.
e7980 3d 20 61 72 72 61 79 28 24 68 65 61 64 65 72 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 68 65 61 =.array($headers);.}..$this->hea
e79a0 64 65 72 73 20 3d 20 24 68 65 61 64 65 72 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a ders.=.$headers;..return.$this;.
e79c0 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 79 }..public.function.setRows(array
e79e0 20 24 72 6f 77 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 6f 77 73 20 3d 20 61 72 72 61 79 28 29 3b .$rows).{.$this->rows.=.array();
e7a00 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 64 64 52 6f 77 73 28 24 72 6f 77 73 29 3b 0a ..return.$this->addRows($rows);.
e7a20 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 73 28 61 72 72 61 79 }..public.function.addRows(array
e7a40 20 24 72 6f 77 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 6f 77 73 20 61 73 20 24 72 6f 77 .$rows).{.foreach.($rows.as.$row
e7a60 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 6f 77 28 24 72 6f 77 29 3b 0a 7d 0a 0a 72 65 74 75 ).{.$this->addRow($row);.}..retu
e7a80 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 6e 20 61 64 64 rn.$this;.}..public.function.add
e7aa0 52 6f 77 28 24 72 6f 77 29 0a 7b 0a 69 66 20 28 24 72 6f 77 20 69 6e 73 74 61 6e 63 65 6f 66 20 Row($row).{.if.($row.instanceof.
e7ac0 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 6f 77 73 5b 5d 20 TableSeparator).{.$this->rows[].
e7ae0 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 69 66 20 28 21 69 =.$row;..return.$this;.}..if.(!i
e7b00 73 5f 61 72 72 61 79 28 24 72 6f 77 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c s_array($row)).{.throw.new.Inval
e7b20 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 41 20 72 6f 77 20 6d 75 73 74 20 idArgumentException('A.row.must.
e7b40 62 65 20 61 6e 20 61 72 72 61 79 20 6f 72 20 61 20 54 61 62 6c 65 53 65 70 61 72 61 74 6f 72 20 be.an.array.or.a.TableSeparator.
e7b60 69 6e 73 74 61 6e 63 65 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 6f 77 73 5b 5d 20 3d 20 instance.');.}..$this->rows[].=.
e7b80 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 72 6f 77 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 array_values($row);..return.$thi
e7ba0 73 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 s;.}..public.function.setRow($co
e7bc0 6c 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 72 6f 77 73 5b lumn,.array.$row).{.$this->rows[
e7be0 24 63 6f 6c 75 6d 6e 5d 20 3d 20 24 72 6f 77 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a $column].=.$row;..return.$this;.
e7c00 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 72 }..............public.function.r
e7c20 65 6e 64 65 72 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 61 6c 63 75 6c 61 74 65 4e 75 6d 62 65 72 ender().{.$this->calculateNumber
e7c40 4f 66 43 6f 6c 75 6d 6e 73 28 29 3b 0a 24 72 6f 77 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c OfColumns();.$rows.=.$this->buil
e7c60 64 54 61 62 6c 65 52 6f 77 73 28 24 74 68 69 73 2d 3e 72 6f 77 73 29 3b 0a 24 68 65 61 64 65 72 dTableRows($this->rows);.$header
e7c80 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 54 61 62 6c 65 52 6f 77 73 28 24 74 68 69 73 2d s.=.$this->buildTableRows($this-
e7ca0 3e 68 65 61 64 65 72 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 63 61 6c 63 75 6c 61 74 65 43 6f 6c 75 >headers);..$this->calculateColu
e7cc0 6d 6e 73 57 69 64 74 68 28 61 72 72 61 79 5f 6d 65 72 67 65 28 24 68 65 61 64 65 72 73 2c 20 24 mnsWidth(array_merge($headers,.$
e7ce0 72 6f 77 73 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 52 6f 77 53 65 70 61 72 61 74 rows));..$this->renderRowSeparat
e7d00 6f 72 28 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 68 65 61 64 65 72 73 29 29 20 7b 0a 66 6f or();.if.(!empty($headers)).{.fo
e7d20 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 0a 24 74 reach.($headers.as.$header).{.$t
e7d40 68 69 73 2d 3e 72 65 6e 64 65 72 52 6f 77 28 24 68 65 61 64 65 72 2c 20 24 74 68 69 73 2d 3e 73 his->renderRow($header,.$this->s
e7d60 74 79 6c 65 2d 3e 67 65 74 43 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 28 29 29 3b 0a 24 74 tyle->getCellHeaderFormat());.$t
e7d80 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 7d 0a 7d 0a 66 his->renderRowSeparator();.}.}.f
e7da0 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 69 66 20 28 24 72 6f oreach.($rows.as.$row).{.if.($ro
e7dc0 77 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 24 w.instanceof.TableSeparator).{.$
e7de0 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 7d 20 65 6c this->renderRowSeparator();.}.el
e7e00 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 52 6f 77 28 24 72 6f 77 2c 20 24 74 68 69 se.{.$this->renderRow($row,.$thi
e7e20 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 43 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 28 29 29 3b 0a 7d s->style->getCellRowFormat());.}
e7e40 0a 7d 0a 69 66 20 28 21 65 6d 70 74 79 28 24 72 6f 77 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 .}.if.(!empty($rows)).{.$this->r
e7e60 65 6e 64 65 72 52 6f 77 53 65 70 61 72 61 74 6f 72 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 enderRowSeparator();.}..$this->c
e7e80 6c 65 61 6e 75 70 28 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 leanup();.}.......private.functi
e7ea0 6f 6e 20 72 65 6e 64 65 72 52 6f 77 53 65 70 61 72 61 74 6f 72 28 29 0a 7b 0a 69 66 20 28 30 20 on.renderRowSeparator().{.if.(0.
e7ec0 3d 3d 3d 20 24 63 6f 75 6e 74 20 3d 20 24 74 68 69 73 2d 3e 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 ===.$count.=.$this->numberOfColu
e7ee0 6d 6e 73 29 20 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 73 74 mns).{.return;.}..if.(!$this->st
e7f00 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 29 20 26 yle->getHorizontalBorderChar().&
e7f20 26 20 21 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 &.!$this->style->getCrossingChar
e7f40 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 6d 61 72 6b 75 70 20 3d 20 24 74 68 69 73 ()).{.return;.}..$markup.=.$this
e7f60 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 3b 0a 66 6f 72 20 ->style->getCrossingChar();.for.
e7f80 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 63 6f 75 6e 74 3b 20 ($column.=.0;.$column.<.$count;.
e7fa0 2b 2b 24 63 6f 6c 75 6d 6e 29 20 7b 0a 24 6d 61 72 6b 75 70 20 2e 3d 20 73 74 72 5f 72 65 70 65 ++$column).{.$markup..=.str_repe
e7fc0 61 74 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f at($this->style->getHorizontalBo
e7fe0 72 64 65 72 43 68 61 72 28 29 2c 20 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 57 69 64 74 68 73 5b rderChar(),.$this->columnWidths[
e8000 24 63 6f 6c 75 6d 6e 5d 29 2e 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 43 72 6f 73 73 $column]).$this->style->getCross
e8020 69 6e 67 43 68 61 72 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 ingChar();.}..$this->output->wri
e8040 74 65 6c 6e 28 73 70 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 teln(sprintf($this->style->getBo
e8060 72 64 65 72 46 6f 72 6d 61 74 28 29 2c 20 24 6d 61 72 6b 75 70 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 rderFormat(),.$markup));.}.....p
e8080 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 43 6f 6c 75 6d 6e 53 65 70 61 rivate.function.renderColumnSepa
e80a0 72 61 74 6f 72 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 rator().{.$this->output->write(s
e80c0 70 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 printf($this->style->getBorderFo
e80e0 72 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 rmat(),.$this->style->getVertica
e8100 6c 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 lBorderChar()));.}..........priv
e8120 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 52 6f 77 28 61 72 72 61 79 20 24 72 6f ate.function.renderRow(array.$ro
e8140 77 2c 20 24 63 65 6c 6c 46 6f 72 6d 61 74 29 0a 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 72 6f 77 w,.$cellFormat).{.if.(empty($row
e8160 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 6e 64 65 72 43 6f 6c )).{.return;.}..$this->renderCol
e8180 75 6d 6e 53 65 70 61 72 61 74 6f 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e umnSeparator();.foreach.($this->
e81a0 67 65 74 52 6f 77 43 6f 6c 75 6d 6e 73 28 24 72 6f 77 29 20 61 73 20 24 63 6f 6c 75 6d 6e 29 20 getRowColumns($row).as.$column).
e81c0 7b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 43 65 6c 6c 28 24 72 6f 77 2c 20 24 63 6f 6c 75 6d {.$this->renderCell($row,.$colum
e81e0 6e 2c 20 24 63 65 6c 6c 46 6f 72 6d 61 74 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 43 6f n,.$cellFormat);.$this->renderCo
e8200 6c 75 6d 6e 53 65 70 61 72 61 74 6f 72 28 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 lumnSeparator();.}.$this->output
e8220 2d 3e 77 72 69 74 65 6c 6e 28 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 ->writeln('');.}.........private
e8240 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 43 65 6c 6c 28 61 72 72 61 79 20 24 72 6f 77 2c .function.renderCell(array.$row,
e8260 20 24 63 6f 6c 75 6d 6e 2c 20 24 63 65 6c 6c 46 6f 72 6d 61 74 29 0a 7b 0a 24 63 65 6c 6c 20 3d .$column,.$cellFormat).{.$cell.=
e8280 20 69 73 73 65 74 28 24 72 6f 77 5b 24 63 6f 6c 75 6d 6e 5d 29 20 3f 20 24 72 6f 77 5b 24 63 6f .isset($row[$column]).?.$row[$co
e82a0 6c 75 6d 6e 5d 20 3a 20 27 27 3b 0a 24 77 69 64 74 68 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6c 75 lumn].:.'';.$width.=.$this->colu
e82c0 6d 6e 57 69 64 74 68 73 5b 24 63 6f 6c 75 6d 6e 5d 3b 0a 69 66 20 28 24 63 65 6c 6c 20 69 6e 73 mnWidths[$column];.if.($cell.ins
e82e0 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 67 65 74 43 tanceof.TableCell.&&.$cell->getC
e8300 6f 6c 73 70 61 6e 28 29 20 3e 20 31 29 20 7b 0a 0a 20 66 6f 72 65 61 63 68 20 28 72 61 6e 67 65 olspan().>.1).{...foreach.(range
e8320 28 24 63 6f 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 ($column.+.1,.$column.+.$cell->g
e8340 65 74 43 6f 6c 73 70 61 6e 28 29 20 2d 20 31 29 20 61 73 20 24 6e 65 78 74 43 6f 6c 75 6d 6e 29 etColspan().-.1).as.$nextColumn)
e8360 20 7b 0a 24 77 69 64 74 68 20 2b 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6c 75 6d 6e 53 65 70 .{.$width.+=.$this->getColumnSep
e8380 61 72 61 74 6f 72 57 69 64 74 68 28 29 20 2b 20 24 74 68 69 73 2d 3e 63 6f 6c 75 6d 6e 57 69 64 aratorWidth().+.$this->columnWid
e83a0 74 68 73 5b 24 6e 65 78 74 43 6f 6c 75 6d 6e 5d 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c ths[$nextColumn];.}.}....if.(fal
e83c0 73 65 20 21 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 6e 63 se.!==.$encoding.=.mb_detect_enc
e83e0 6f 64 69 6e 67 28 24 63 65 6c 6c 2c 20 6e 75 6c 6c 2c 20 74 72 75 65 29 29 20 7b 0a 24 77 69 64 oding($cell,.null,.true)).{.$wid
e8400 74 68 20 2b 3d 20 73 74 72 6c 65 6e 28 24 63 65 6c 6c 29 20 2d 20 6d 62 5f 73 74 72 77 69 64 74 th.+=.strlen($cell).-.mb_strwidt
e8420 68 28 24 63 65 6c 6c 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 24 73 74 79 6c 65 20 3d h($cell,.$encoding);.}..$style.=
e8440 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6c 75 6d 6e 53 74 79 6c 65 28 24 63 6f 6c 75 6d 6e 29 3b .$this->getColumnStyle($column);
e8460 0a 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 6c 65 53 65 70 61 ..if.($cell.instanceof.TableSepa
e8480 72 61 74 6f 72 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 70 rator).{.$this->output->write(sp
e84a0 72 69 6e 74 66 28 24 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 rintf($style->getBorderFormat(),
e84c0 20 73 74 72 5f 72 65 70 65 61 74 28 24 73 74 79 6c 65 2d 3e 67 65 74 48 6f 72 69 7a 6f 6e 74 61 .str_repeat($style->getHorizonta
e84e0 6c 42 6f 72 64 65 72 43 68 61 72 28 29 2c 20 24 77 69 64 74 68 29 29 29 3b 0a 7d 20 65 6c 73 65 lBorderChar(),.$width)));.}.else
e8500 20 7b 0a 24 77 69 64 74 68 20 2b 3d 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 28 24 63 65 6c .{.$width.+=.Helper::strlen($cel
e8520 6c 29 20 2d 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 l).-.Helper::strlenWithoutDecora
e8540 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 72 tion($this->output->getFormatter
e8560 28 29 2c 20 24 63 65 6c 6c 29 3b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 73 70 72 69 6e 74 66 28 24 (),.$cell);.$content.=.sprintf($
e8580 73 74 79 6c 65 2d 3e 67 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 28 29 style->getCellRowContentFormat()
e85a0 2c 20 24 63 65 6c 6c 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 ,.$cell);.$this->output->write(s
e85c0 70 72 69 6e 74 66 28 24 63 65 6c 6c 46 6f 72 6d 61 74 2c 20 73 74 72 5f 70 61 64 28 24 63 6f 6e printf($cellFormat,.str_pad($con
e85e0 74 65 6e 74 2c 20 24 77 69 64 74 68 2c 20 24 73 74 79 6c 65 2d 3e 67 65 74 50 61 64 64 69 6e 67 tent,.$width,.$style->getPadding
e8600 43 68 61 72 28 29 2c 20 24 73 74 79 6c 65 2d 3e 67 65 74 50 61 64 54 79 70 65 28 29 29 29 29 3b Char(),.$style->getPadType())));
e8620 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 63 61 6c 63 75 6c .}.}.....private.function.calcul
e8640 61 74 65 4e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 ateNumberOfColumns().{.if.(null.
e8660 21 3d 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 !==.$this->numberOfColumns).{.re
e8680 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6c 75 6d 6e 73 20 3d 20 61 72 72 61 79 28 30 29 3b 0a 66 6f turn;.}..$columns.=.array(0);.fo
e86a0 72 65 61 63 68 20 28 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 68 65 61 64 65 72 reach.(array_merge($this->header
e86c0 73 2c 20 24 74 68 69 73 2d 3e 72 6f 77 73 29 20 61 73 20 24 72 6f 77 29 20 7b 0a 69 66 20 28 24 s,.$this->rows).as.$row).{.if.($
e86e0 72 6f 77 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 row.instanceof.TableSeparator).{
e8700 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6f 6c 75 6d 6e 73 5b 5d 20 3d 20 24 74 68 69 73 .continue;.}..$columns[].=.$this
e8720 2d 3e 67 65 74 4e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 28 24 72 6f 77 29 3b 0a 7d 0a 0a 24 ->getNumberOfColumns($row);.}..$
e8740 74 68 69 73 2d 3e 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 20 3d 20 6d 61 78 28 24 63 6f 6c this->numberOfColumns.=.max($col
e8760 75 6d 6e 73 29 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 umns);.}..private.function.build
e8780 54 61 62 6c 65 52 6f 77 73 28 24 72 6f 77 73 29 0a 7b 0a 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 TableRows($rows).{.$unmergedRows
e87a0 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 20 28 24 72 6f 77 4b 65 79 20 3d 20 30 3b 20 24 72 .=.array();.for.($rowKey.=.0;.$r
e87c0 6f 77 4b 65 79 20 3c 20 63 6f 75 6e 74 28 24 72 6f 77 73 29 3b 20 2b 2b 24 72 6f 77 4b 65 79 29 owKey.<.count($rows);.++$rowKey)
e87e0 20 7b 0a 24 72 6f 77 73 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 6c 4e 65 78 74 52 6f 77 73 28 24 .{.$rows.=.$this->fillNextRows($
e8800 72 6f 77 73 2c 20 24 72 6f 77 4b 65 79 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 72 6f 77 rows,.$rowKey);....foreach.($row
e8820 73 5b 24 72 6f 77 4b 65 79 5d 20 61 73 20 24 63 6f 6c 75 6d 6e 20 3d 3e 20 24 63 65 6c 6c 29 20 s[$rowKey].as.$column.=>.$cell).
e8840 7b 0a 69 66 20 28 21 73 74 72 73 74 72 28 24 63 65 6c 6c 2c 20 22 5c 6e 22 29 29 20 7b 0a 63 6f {.if.(!strstr($cell,."\n")).{.co
e8860 6e 74 69 6e 75 65 3b 0a 7d 0a 24 6c 69 6e 65 73 20 3d 20 65 78 70 6c 6f 64 65 28 22 5c 6e 22 2c ntinue;.}.$lines.=.explode("\n",
e8880 20 24 63 65 6c 6c 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 61 73 20 24 6c 69 6e .$cell);.foreach.($lines.as.$lin
e88a0 65 4b 65 79 20 3d 3e 20 24 6c 69 6e 65 29 20 7b 0a 69 66 20 28 24 63 65 6c 6c 20 69 6e 73 74 61 eKey.=>.$line).{.if.($cell.insta
e88c0 6e 63 65 6f 66 20 54 61 62 6c 65 43 65 6c 6c 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 6e 65 77 20 54 nceof.TableCell).{.$line.=.new.T
e88e0 61 62 6c 65 43 65 6c 6c 28 24 6c 69 6e 65 2c 20 61 72 72 61 79 28 27 63 6f 6c 73 70 61 6e 27 20 ableCell($line,.array('colspan'.
e8900 3d 3e 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 69 66 20 28 =>.$cell->getColspan()));.}.if.(
e8920 30 20 3d 3d 3d 20 24 6c 69 6e 65 4b 65 79 29 20 7b 0a 24 72 6f 77 73 5b 24 72 6f 77 4b 65 79 5d 0.===.$lineKey).{.$rows[$rowKey]
e8940 5b 24 63 6f 6c 75 6d 6e 5d 20 3d 20 24 6c 69 6e 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 75 6e 6d [$column].=.$line;.}.else.{.$unm
e8960 65 72 67 65 64 52 6f 77 73 5b 24 72 6f 77 4b 65 79 5d 5b 24 6c 69 6e 65 4b 65 79 5d 5b 24 63 6f ergedRows[$rowKey][$lineKey][$co
e8980 6c 75 6d 6e 5d 20 3d 20 24 6c 69 6e 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 24 74 61 62 6c 65 52 6f lumn].=.$line;.}.}.}.}..$tableRo
e89a0 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 6f 77 73 20 61 73 20 ws.=.array();.foreach.($rows.as.
e89c0 24 72 6f 77 4b 65 79 20 3d 3e 20 24 72 6f 77 29 20 7b 0a 24 74 61 62 6c 65 52 6f 77 73 5b 5d 20 $rowKey.=>.$row).{.$tableRows[].
e89e0 3d 20 24 74 68 69 73 2d 3e 66 69 6c 6c 43 65 6c 6c 73 28 24 72 6f 77 29 3b 0a 69 66 20 28 69 73 =.$this->fillCells($row);.if.(is
e8a00 73 65 74 28 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 5b 24 72 6f 77 4b 65 79 5d 29 29 20 7b 0a 24 set($unmergedRows[$rowKey])).{.$
e8a20 74 61 62 6c 65 52 6f 77 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 61 62 6c 65 52 6f tableRows.=.array_merge($tableRo
e8a40 77 73 2c 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 5b 24 72 6f 77 4b 65 79 5d 29 3b 0a 7d 0a 7d ws,.$unmergedRows[$rowKey]);.}.}
e8a60 0a 0a 72 65 74 75 72 6e 20 24 74 61 62 6c 65 52 6f 77 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ..return.$tableRows;.}..........
e8a80 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 69 6c 6c 4e 65 78 74 52 6f 77 73 28 24 72 private.function.fillNextRows($r
e8aa0 6f 77 73 2c 20 24 6c 69 6e 65 29 0a 7b 0a 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 20 3d 20 61 72 ows,.$line).{.$unmergedRows.=.ar
e8ac0 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 6f 77 73 5b 24 6c 69 6e 65 5d 20 61 73 20 ray();.foreach.($rows[$line].as.
e8ae0 24 63 6f 6c 75 6d 6e 20 3d 3e 20 24 63 65 6c 6c 29 20 7b 0a 69 66 20 28 24 63 65 6c 6c 20 69 6e $column.=>.$cell).{.if.($cell.in
e8b00 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 67 65 74 stanceof.TableCell.&&.$cell->get
e8b20 52 6f 77 73 70 61 6e 28 29 20 3e 20 31 29 20 7b 0a 24 6e 62 4c 69 6e 65 73 20 3d 20 24 63 65 6c Rowspan().>.1).{.$nbLines.=.$cel
e8b40 6c 2d 3e 67 65 74 52 6f 77 73 70 61 6e 28 29 20 2d 20 31 3b 0a 24 6c 69 6e 65 73 20 3d 20 61 72 l->getRowspan().-.1;.$lines.=.ar
e8b60 72 61 79 28 24 63 65 6c 6c 29 3b 0a 69 66 20 28 73 74 72 73 74 72 28 24 63 65 6c 6c 2c 20 22 5c ray($cell);.if.(strstr($cell,."\
e8b80 6e 22 29 29 20 7b 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 n")).{.$lines.=.explode("\n",.$c
e8ba0 65 6c 6c 29 3b 0a 24 6e 62 4c 69 6e 65 73 20 3d 20 63 6f 75 6e 74 28 24 6c 69 6e 65 73 29 20 3e ell);.$nbLines.=.count($lines).>
e8bc0 20 24 6e 62 4c 69 6e 65 73 20 3f 20 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 63 65 6c 6c 2c 20 .$nbLines.?.substr_count($cell,.
e8be0 22 5c 6e 22 29 20 3a 20 24 6e 62 4c 69 6e 65 73 3b 0a 0a 24 72 6f 77 73 5b 24 6c 69 6e 65 5d 5b "\n").:.$nbLines;..$rows[$line][
e8c00 24 63 6f 6c 75 6d 6e 5d 20 3d 20 6e 65 77 20 54 61 62 6c 65 43 65 6c 6c 28 24 6c 69 6e 65 73 5b $column].=.new.TableCell($lines[
e8c20 30 5d 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 3e 67 65 0],.array('colspan'.=>.$cell->ge
e8c40 74 43 6f 6c 73 70 61 6e 28 29 29 29 3b 0a 75 6e 73 65 74 28 24 6c 69 6e 65 73 5b 30 5d 29 3b 0a tColspan()));.unset($lines[0]);.
e8c60 7d 0a 0a 0a 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 20 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 }....$unmergedRows.=.array_repla
e8c80 63 65 5f 72 65 63 75 72 73 69 76 65 28 61 72 72 61 79 5f 66 69 6c 6c 28 24 6c 69 6e 65 20 2b 20 ce_recursive(array_fill($line.+.
e8ca0 31 2c 20 24 6e 62 4c 69 6e 65 73 2c 20 27 27 29 2c 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 29 1,.$nbLines,.''),.$unmergedRows)
e8cc0 3b 0a 66 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 ;.foreach.($unmergedRows.as.$unm
e8ce0 65 72 67 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 24 ergedRowKey.=>.$unmergedRow).{.$
e8d00 76 61 6c 75 65 20 3d 20 69 73 73 65 74 28 24 6c 69 6e 65 73 5b 24 75 6e 6d 65 72 67 65 64 52 6f value.=.isset($lines[$unmergedRo
e8d20 77 4b 65 79 20 2d 20 24 6c 69 6e 65 5d 29 20 3f 20 24 6c 69 6e 65 73 5b 24 75 6e 6d 65 72 67 65 wKey.-.$line]).?.$lines[$unmerge
e8d40 64 52 6f 77 4b 65 79 20 2d 20 24 6c 69 6e 65 5d 20 3a 20 27 27 3b 0a 24 75 6e 6d 65 72 67 65 64 dRowKey.-.$line].:.'';.$unmerged
e8d60 52 6f 77 73 5b 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 5d 5b 24 63 6f 6c 75 6d 6e 5d 20 3d Rows[$unmergedRowKey][$column].=
e8d80 20 6e 65 77 20 54 61 62 6c 65 43 65 6c 6c 28 24 76 61 6c 75 65 2c 20 61 72 72 61 79 28 27 63 6f .new.TableCell($value,.array('co
e8da0 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 29 29 29 3b lspan'.=>.$cell->getColspan()));
e8dc0 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 75 6e 6d 65 72 67 65 64 52 6f 77 73 20 61 .}.}.}..foreach.($unmergedRows.a
e8de0 73 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 20 3d 3e 20 24 75 6e 6d 65 72 67 65 64 52 6f s.$unmergedRowKey.=>.$unmergedRo
e8e00 77 29 20 7b 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 72 6f 77 73 5b 24 75 6e 6d 65 72 67 65 64 w).{...if.(isset($rows[$unmerged
e8e20 52 6f 77 4b 65 79 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 72 6f 77 73 5b 24 75 6e 6d 65 RowKey]).&&.is_array($rows[$unme
e8e40 72 67 65 64 52 6f 77 4b 65 79 5d 29 20 26 26 20 28 24 74 68 69 73 2d 3e 67 65 74 4e 75 6d 62 65 rgedRowKey]).&&.($this->getNumbe
e8e60 72 4f 66 43 6f 6c 75 6d 6e 73 28 24 72 6f 77 73 5b 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 rOfColumns($rows[$unmergedRowKey
e8e80 5d 29 20 2b 20 24 74 68 69 73 2d 3e 67 65 74 4e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 28 24 ]).+.$this->getNumberOfColumns($
e8ea0 75 6e 6d 65 72 67 65 64 52 6f 77 73 5b 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 5d 29 20 3c unmergedRows[$unmergedRowKey]).<
e8ec0 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 29 20 7b 0a 66 6f 72 =.$this->numberOfColumns)).{.for
e8ee0 65 61 63 68 20 28 24 75 6e 6d 65 72 67 65 64 52 6f 77 20 61 73 20 24 63 65 6c 6c 4b 65 79 20 3d each.($unmergedRow.as.$cellKey.=
e8f00 3e 20 24 63 65 6c 6c 29 20 7b 0a 0a 20 61 72 72 61 79 5f 73 70 6c 69 63 65 28 24 72 6f 77 73 5b >.$cell).{...array_splice($rows[
e8f20 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 5d 2c 20 24 63 65 6c 6c 4b 65 79 2c 20 30 2c 20 61 $unmergedRowKey],.$cellKey,.0,.a
e8f40 72 72 61 79 28 24 63 65 6c 6c 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 6f 77 20 3d 20 rray($cell));.}.}.else.{.$row.=.
e8f60 24 74 68 69 73 2d 3e 63 6f 70 79 52 6f 77 28 24 72 6f 77 73 2c 20 24 75 6e 6d 65 72 67 65 64 52 $this->copyRow($rows,.$unmergedR
e8f80 6f 77 4b 65 79 20 2d 20 31 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 75 6e 6d 65 72 67 65 64 52 6f owKey.-.1);.foreach.($unmergedRo
e8fa0 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 69 66 20 28 21 65 6d w.as.$column.=>.$cell).{.if.(!em
e8fc0 70 74 79 28 24 63 65 6c 6c 29 29 20 7b 0a 24 72 6f 77 5b 24 63 6f 6c 75 6d 6e 5d 20 3d 20 24 75 pty($cell)).{.$row[$column].=.$u
e8fe0 6e 6d 65 72 67 65 64 52 6f 77 5b 24 63 6f 6c 75 6d 6e 5d 3b 0a 7d 0a 7d 0a 61 72 72 61 79 5f 73 nmergedRow[$column];.}.}.array_s
e9000 70 6c 69 63 65 28 24 72 6f 77 73 2c 20 24 75 6e 6d 65 72 67 65 64 52 6f 77 4b 65 79 2c 20 30 2c plice($rows,.$unmergedRowKey,.0,
e9020 20 61 72 72 61 79 28 24 72 6f 77 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 6f 77 73 .array($row));.}.}..return.$rows
e9040 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 66 69 6c ;.}.........private.function.fil
e9060 6c 43 65 6c 6c 73 28 24 72 6f 77 29 0a 7b 0a 24 6e 65 77 52 6f 77 20 3d 20 61 72 72 61 79 28 29 lCells($row).{.$newRow.=.array()
e9080 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 6f 77 20 61 73 20 24 63 6f 6c 75 6d 6e 20 3d 3e 20 24 63 ;.foreach.($row.as.$column.=>.$c
e90a0 65 6c 6c 29 20 7b 0a 24 6e 65 77 52 6f 77 5b 5d 20 3d 20 24 63 65 6c 6c 3b 0a 69 66 20 28 24 63 ell).{.$newRow[].=.$cell;.if.($c
e90c0 65 6c 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 ell.instanceof.TableCell.&&.$cel
e90e0 6c 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 20 3e 20 31 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 l->getColspan().>.1).{.foreach.(
e9100 72 61 6e 67 65 28 24 63 6f 6c 75 6d 6e 20 2b 20 31 2c 20 24 63 6f 6c 75 6d 6e 20 2b 20 24 63 65 range($column.+.1,.$column.+.$ce
e9120 6c 6c 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 20 2d 20 31 29 20 61 73 20 24 70 6f 73 69 74 69 ll->getColspan().-.1).as.$positi
e9140 6f 6e 29 20 7b 0a 0a 20 24 6e 65 77 52 6f 77 5b 5d 20 3d 20 27 27 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 on).{...$newRow[].=.'';.}.}.}..r
e9160 65 74 75 72 6e 20 24 6e 65 77 52 6f 77 20 3f 3a 20 24 72 6f 77 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a eturn.$newRow.?:.$row;.}........
e9180 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 52 6f 77 28 24 72 6f 77 73 2c 20 private.function.copyRow($rows,.
e91a0 24 6c 69 6e 65 29 0a 7b 0a 24 72 6f 77 20 3d 20 24 72 6f 77 73 5b 24 6c 69 6e 65 5d 3b 0a 66 6f $line).{.$row.=.$rows[$line];.fo
e91c0 72 65 61 63 68 20 28 24 72 6f 77 20 61 73 20 24 63 65 6c 6c 4b 65 79 20 3d 3e 20 24 63 65 6c 6c reach.($row.as.$cellKey.=>.$cell
e91e0 56 61 6c 75 65 29 20 7b 0a 24 72 6f 77 5b 24 63 65 6c 6c 4b 65 79 5d 20 3d 20 27 27 3b 0a 69 66 Value).{.$row[$cellKey].=.'';.if
e9200 20 28 24 63 65 6c 6c 56 61 6c 75 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 43 65 6c .($cellValue.instanceof.TableCel
e9220 6c 29 20 7b 0a 24 72 6f 77 5b 24 63 65 6c 6c 4b 65 79 5d 20 3d 20 6e 65 77 20 54 61 62 6c 65 43 l).{.$row[$cellKey].=.new.TableC
e9240 65 6c 6c 28 27 27 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 ell('',.array('colspan'.=>.$cell
e9260 56 61 6c 75 65 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 Value->getColspan()));.}.}..retu
e9280 72 6e 20 24 72 6f 77 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 rn.$row;.}.........private.funct
e92a0 69 6f 6e 20 67 65 74 4e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 28 61 72 72 61 79 20 24 72 6f ion.getNumberOfColumns(array.$ro
e92c0 77 29 0a 7b 0a 24 63 6f 6c 75 6d 6e 73 20 3d 20 63 6f 75 6e 74 28 24 72 6f 77 29 3b 0a 66 6f 72 w).{.$columns.=.count($row);.for
e92e0 65 61 63 68 20 28 24 72 6f 77 20 61 73 20 24 63 6f 6c 75 6d 6e 29 20 7b 0a 24 63 6f 6c 75 6d 6e each.($row.as.$column).{.$column
e9300 73 20 2b 3d 20 24 63 6f 6c 75 6d 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 43 65 6c s.+=.$column.instanceof.TableCel
e9320 6c 20 3f 20 28 24 63 6f 6c 75 6d 6e 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 20 2d 20 31 29 20 l.?.($column->getColspan().-.1).
e9340 3a 20 30 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6c 75 6d 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a :.0;.}..return.$columns;.}......
e9360 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 77 43 6f 6c 75 6d 6e ...private.function.getRowColumn
e9380 73 28 24 72 6f 77 29 0a 7b 0a 24 63 6f 6c 75 6d 6e 73 20 3d 20 72 61 6e 67 65 28 30 2c 20 24 74 s($row).{.$columns.=.range(0,.$t
e93a0 68 69 73 2d 3e 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 20 2d 20 31 29 3b 0a 66 6f 72 65 61 his->numberOfColumns.-.1);.forea
e93c0 63 68 20 28 24 72 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 7b ch.($row.as.$cellKey.=>.$cell).{
e93e0 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 6c 65 43 65 6c 6c 20 .if.($cell.instanceof.TableCell.
e9400 26 26 20 24 63 65 6c 6c 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 20 3e 20 31 29 20 7b 0a 0a 20 &&.$cell->getColspan().>.1).{...
e9420 24 63 6f 6c 75 6d 6e 73 20 3d 20 61 72 72 61 79 5f 64 69 66 66 28 24 63 6f 6c 75 6d 6e 73 2c 20 $columns.=.array_diff($columns,.
e9440 72 61 6e 67 65 28 24 63 65 6c 6c 4b 65 79 20 2b 20 31 2c 20 24 63 65 6c 6c 4b 65 79 20 2b 20 24 range($cellKey.+.1,.$cellKey.+.$
e9460 63 65 6c 6c 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 20 2d 20 31 29 29 3b 0a 7d 0a 7d 0a 0a 72 cell->getColspan().-.1));.}.}..r
e9480 65 74 75 72 6e 20 24 63 6f 6c 75 6d 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 eturn.$columns;.}.......private.
e94a0 66 75 6e 63 74 69 6f 6e 20 63 61 6c 63 75 6c 61 74 65 43 6f 6c 75 6d 6e 73 57 69 64 74 68 28 24 function.calculateColumnsWidth($
e94c0 72 6f 77 73 29 0a 7b 0a 66 6f 72 20 28 24 63 6f 6c 75 6d 6e 20 3d 20 30 3b 20 24 63 6f 6c 75 6d rows).{.for.($column.=.0;.$colum
e94e0 6e 20 3c 20 24 74 68 69 73 2d 3e 6e 75 6d 62 65 72 4f 66 43 6f 6c 75 6d 6e 73 3b 20 2b 2b 24 63 n.<.$this->numberOfColumns;.++$c
e9500 6f 6c 75 6d 6e 29 20 7b 0a 24 6c 65 6e 67 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 olumn).{.$lengths.=.array();.for
e9520 65 61 63 68 20 28 24 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 each.($rows.as.$row).{.if.($row.
e9540 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 63 6f 6e instanceof.TableSeparator).{.con
e9560 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6c 65 6e 67 74 68 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 tinue;.}..$lengths[].=.$this->ge
e9580 74 43 65 6c 6c 57 69 64 74 68 28 24 72 6f 77 2c 20 24 63 6f 6c 75 6d 6e 29 3b 0a 7d 0a 0a 24 74 tCellWidth($row,.$column);.}..$t
e95a0 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 20 3d 20 6d 61 78 his->columnWidths[$column].=.max
e95c0 28 24 6c 65 6e 67 74 68 73 29 20 2b 20 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 ($lengths).+.strlen($this->style
e95e0 2d 3e 67 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 28 29 29 20 2d 20 32 ->getCellRowContentFormat()).-.2
e9600 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 74 ;.}.}.......private.function.get
e9620 43 6f 6c 75 6d 6e 53 65 70 61 72 61 74 6f 72 57 69 64 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 ColumnSeparatorWidth().{.return.
e9640 73 74 72 6c 65 6e 28 73 70 72 69 6e 74 66 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 74 strlen(sprintf($this->style->get
e9660 42 6f 72 64 65 72 46 6f 72 6d 61 74 28 29 2c 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 2d 3e 67 65 BorderFormat(),.$this->style->ge
e9680 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 28 29 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a tVerticalBorderChar()));.}......
e96a0 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 65 6c 6c 57 69 64 74 ....private.function.getCellWidt
e96c0 68 28 61 72 72 61 79 20 24 72 6f 77 2c 20 24 63 6f 6c 75 6d 6e 29 0a 7b 0a 69 66 20 28 69 73 73 h(array.$row,.$column).{.if.(iss
e96e0 65 74 28 24 72 6f 77 5b 24 63 6f 6c 75 6d 6e 5d 29 29 20 7b 0a 24 63 65 6c 6c 20 3d 20 24 72 6f et($row[$column])).{.$cell.=.$ro
e9700 77 5b 24 63 6f 6c 75 6d 6e 5d 3b 0a 24 63 65 6c 6c 57 69 64 74 68 20 3d 20 48 65 6c 70 65 72 3a w[$column];.$cellWidth.=.Helper:
e9720 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 73 2d 3e :strlenWithoutDecoration($this->
e9740 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 29 3b 0a output->getFormatter(),.$cell);.
e9760 69 66 20 28 24 63 65 6c 6c 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 61 62 6c 65 43 65 6c 6c 20 26 if.($cell.instanceof.TableCell.&
e9780 26 20 24 63 65 6c 6c 2d 3e 67 65 74 43 6f 6c 73 70 61 6e 28 29 20 3e 20 31 29 20 7b 0a 0a 20 24 &.$cell->getColspan().>.1).{...$
e97a0 63 65 6c 6c 57 69 64 74 68 20 3d 20 24 63 65 6c 6c 57 69 64 74 68 20 2f 20 24 63 65 6c 6c 2d 3e cellWidth.=.$cellWidth./.$cell->
e97c0 67 65 74 43 6f 6c 73 70 61 6e 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 65 6c 6c 57 69 64 getColspan();.}..return.$cellWid
e97e0 74 68 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 th;.}..return.0;.}.....private.f
e9800 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 3e 63 6f 6c 75 6d unction.cleanup().{.$this->colum
e9820 6e 57 69 64 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 6e 75 6d 62 65 72 nWidths.=.array();.$this->number
e9840 4f 66 43 6f 6c 75 6d 6e 73 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 OfColumns.=.null;.}..private.sta
e9860 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 53 74 79 6c 65 73 28 29 0a 7b 0a 24 62 6f 72 tic.function.initStyles().{.$bor
e9880 64 65 72 6c 65 73 73 20 3d 20 6e 65 77 20 54 61 62 6c 65 53 74 79 6c 65 28 29 3b 0a 24 62 6f 72 derless.=.new.TableStyle();.$bor
e98a0 64 65 72 6c 65 73 73 0a 2d 3e 73 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 derless.->setHorizontalBorderCha
e98c0 72 28 27 3d 27 29 0a 2d 3e 73 65 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 28 27 r('=').->setVerticalBorderChar('
e98e0 20 27 29 0a 2d 3e 73 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 27 20 27 29 0a 3b 0a 0a 24 63 .').->setCrossingChar('.').;..$c
e9900 6f 6d 70 61 63 74 20 3d 20 6e 65 77 20 54 61 62 6c 65 53 74 79 6c 65 28 29 3b 0a 24 63 6f 6d 70 ompact.=.new.TableStyle();.$comp
e9920 61 63 74 0a 2d 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 27 act.->setHorizontalBorderChar(''
e9940 29 0a 2d 3e 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 ).->setVerticalBorderChar('.').-
e9960 3e 73 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 27 27 29 0a 2d 3e 73 65 74 43 65 6c 6c 52 6f >setCrossingChar('').->setCellRo
e9980 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 28 27 25 73 27 29 0a 3b 0a 0a 24 73 74 79 6c 65 47 75 wContentFormat('%s').;..$styleGu
e99a0 69 64 65 20 3d 20 6e 65 77 20 54 61 62 6c 65 53 74 79 6c 65 28 29 3b 0a 24 73 74 79 6c 65 47 75 ide.=.new.TableStyle();.$styleGu
e99c0 69 64 65 0a 2d 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 2d ide.->setHorizontalBorderChar('-
e99e0 27 29 0a 2d 3e 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 ').->setVerticalBorderChar('.').
e9a00 2d 3e 73 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 27 20 27 29 0a 2d 3e 73 65 74 43 65 6c 6c ->setCrossingChar('.').->setCell
e9a20 48 65 61 64 65 72 46 6f 72 6d 61 74 28 27 25 73 27 29 0a 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 HeaderFormat('%s').;..return.arr
e9a40 61 79 28 0a 27 64 65 66 61 75 6c 74 27 20 3d 3e 20 6e 65 77 20 54 61 62 6c 65 53 74 79 6c 65 28 ay(.'default'.=>.new.TableStyle(
e9a60 29 2c 0a 27 62 6f 72 64 65 72 6c 65 73 73 27 20 3d 3e 20 24 62 6f 72 64 65 72 6c 65 73 73 2c 0a ),.'borderless'.=>.$borderless,.
e9a80 27 63 6f 6d 70 61 63 74 27 20 3d 3e 20 24 63 6f 6d 70 61 63 74 2c 0a 27 73 79 6d 66 6f 6e 79 2d 'compact'.=>.$compact,.'symfony-
e9aa0 73 74 79 6c 65 2d 67 75 69 64 65 27 20 3d 3e 20 24 73 74 79 6c 65 47 75 69 64 65 2c 0a 29 3b 0a style-guide'.=>.$styleGuide,.);.
e9ac0 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
e9ae0 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 3b 0a mfony\Component\Console\Helper;.
e9b00 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 45 .use.Symfony\Component\Console\E
e9b20 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 74 69 6f xception\InvalidArgumentExceptio
e9b40 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 61 62 6c 65 43 65 6c 6c 0a 7b 0a 0a 0a 0a 70 72 69 76 n;.....class.TableCell.{....priv
e9b60 61 74 65 20 24 76 61 6c 75 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 ate.$value;.....private.$options
e9b80 20 3d 20 61 72 72 61 79 28 0a 27 72 6f 77 73 70 61 6e 27 20 3d 3e 20 31 2c 0a 27 63 6f 6c 73 70 .=.array(.'rowspan'.=>.1,.'colsp
e9ba0 61 6e 27 20 3d 3e 20 31 2c 0a 29 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f an'.=>.1,.);......public.functio
e9bc0 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 76 61 6c 75 65 20 3d 20 27 27 2c 20 61 72 72 61 79 n.__construct($value.=.'',.array
e9be0 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 2d 3e 76 61 .$options.=.array()).{.$this->va
e9c00 6c 75 65 20 3d 20 24 76 61 6c 75 65 3b 0a 0a 0a 20 69 66 20 28 24 64 69 66 66 20 3d 20 61 72 72 lue.=.$value;....if.($diff.=.arr
e9c20 61 79 5f 64 69 66 66 28 61 72 72 61 79 5f 6b 65 79 73 28 24 6f 70 74 69 6f 6e 73 29 2c 20 61 72 ay_diff(array_keys($options),.ar
e9c40 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 29 29 20 7b 0a 74 68 72 ray_keys($this->options))).{.thr
e9c60 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(
e9c80 73 70 72 69 6e 74 66 28 27 54 68 65 20 54 61 62 6c 65 43 65 6c 6c 20 64 6f 65 73 20 6e 6f 74 20 sprintf('The.TableCell.does.not.
e9ca0 73 75 70 70 6f 72 74 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6f 70 74 69 6f 6e 73 3a 20 5c support.the.following.options:.\
e9cc0 27 25 73 5c 27 2e 27 2c 20 69 6d 70 6c 6f 64 65 28 27 5c 27 2c 20 5c 27 27 2c 20 24 64 69 66 66 '%s\'.',.implode('\',.\'',.$diff
e9ce0 29 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 6d )));.}..$this->options.=.array_m
e9d00 65 72 67 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 29 3b 0a erge($this->options,.$options);.
e9d20 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 74 72 69 }.......public.function.__toStri
e9d40 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 3b 0a 7d 0a 0a 0a ng().{.return.$this->value;.}...
e9d60 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 6c 73 70 61 6e 28 29 ....public.function.getColspan()
e9d80 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 69 6f 6e 73 5b 27 .{.return.(int).$this->options['
e9da0 63 6f 6c 73 70 61 6e 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 colspan'];.}.......public.functi
e9dc0 6f 6e 20 67 65 74 52 6f 77 73 70 61 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 69 6e 74 29 20 24 on.getRowspan().{.return.(int).$
e9de0 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 27 72 6f 77 73 70 61 6e 27 5d 3b 0a 7d 0a 7d 0a 3c 3f this->options['rowspan'];.}.}.<?
e9e00 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\
e9e20 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
e9e40 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\
e9e60 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 6d OutputInterface;.use.Symfony\Com
e9e80 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 75 74 70 75 74 ponent\Console\Output\NullOutput
e9ea0 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\
e9ec0 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 74 69 Exception\InvalidArgumentExcepti
e9ee0 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 61 62 6c 65 48 65 6c 70 65 72 20 on;...........class.TableHelper.
e9f00 65 78 74 65 6e 64 73 20 48 65 6c 70 65 72 0a 7b 0a 63 6f 6e 73 74 20 4c 41 59 4f 55 54 5f 44 45 extends.Helper.{.const.LAYOUT_DE
e9f20 46 41 55 4c 54 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 4c 41 59 4f 55 54 5f 42 4f 52 44 45 52 4c 45 FAULT.=.0;.const.LAYOUT_BORDERLE
e9f40 53 53 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 4c 41 59 4f 55 54 5f 43 4f 4d 50 41 43 54 20 3d 20 32 SS.=.1;.const.LAYOUT_COMPACT.=.2
e9f60 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 74 61 62 6c 65 3b 0a 0a 70 75 62 6c 69 63 20 66 75 ;.....private.$table;..public.fu
e9f80 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 44 65 70 72 65 nction.__construct($triggerDepre
e9fa0 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 74 72 69 67 67 cationError.=.true).{.if.($trigg
e9fc0 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 67 65 72 5f 65 erDeprecationError).{.@trigger_e
e9fe0 72 72 6f 72 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 rror('The.'.__CLASS__.'.class.is
ea000 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
ea020 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
ea040 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
ea060 65 72 5c 54 61 62 6c 65 20 63 6c 61 73 73 20 69 6e 73 74 65 61 64 2e 27 2c 20 45 5f 55 53 45 52 er\Table.class.instead.',.E_USER
ea080 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 20 3d 20 _DEPRECATED);.}..$this->table.=.
ea0a0 6e 65 77 20 54 61 62 6c 65 28 6e 65 77 20 4e 75 6c 6c 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a new.Table(new.NullOutput());.}..
ea0c0 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 4c 61 79 6f .........public.function.setLayo
ea0e0 75 74 28 24 6c 61 79 6f 75 74 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 6c 61 79 6f 75 74 29 20 7b ut($layout).{.switch.($layout).{
ea100 0a 63 61 73 65 20 73 65 6c 66 3a 3a 4c 41 59 4f 55 54 5f 42 4f 52 44 45 52 4c 45 53 53 3a 0a 24 .case.self::LAYOUT_BORDERLESS:.$
ea120 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 73 65 74 53 74 79 6c 65 28 27 62 6f 72 64 65 72 6c 65 73 this->table->setStyle('borderles
ea140 73 27 29 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 43 s');.break;..case.self::LAYOUT_C
ea160 4f 4d 50 41 43 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 OMPACT:.$this->table->setStyle('
ea180 63 6f 6d 70 61 63 74 27 29 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 4c 41 compact');.break;..case.self::LA
ea1a0 59 4f 55 54 5f 44 45 46 41 55 4c 54 3a 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 73 65 74 53 YOUT_DEFAULT:.$this->table->setS
ea1c0 74 79 6c 65 28 27 64 65 66 61 75 6c 74 27 29 3b 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 75 6c 74 tyle('default');.break;..default
ea1e0 3a 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 65 70 :.throw.new.InvalidArgumentExcep
ea200 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 49 6e 76 61 6c 69 64 20 74 61 62 6c 65 20 6c 61 79 6f tion(sprintf('Invalid.table.layo
ea220 75 74 20 22 25 73 22 2e 27 2c 20 24 6c 61 79 6f 75 74 29 29 3b 0a 7d 3b 0a 0a 72 65 74 75 72 6e ut."%s".',.$layout));.};..return
ea240 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 6e 20 73 65 74 48 65 .$this;.}..public.function.setHe
ea260 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 74 68 69 73 2d 3e 74 aders(array.$headers).{.$this->t
ea280 61 62 6c 65 2d 3e 73 65 74 48 65 61 64 65 72 73 28 24 68 65 61 64 65 72 73 29 3b 0a 0a 72 65 74 able->setHeaders($headers);..ret
ea2a0 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 6e 20 73 65 urn.$this;.}..public.function.se
ea2c0 74 52 6f 77 73 28 61 72 72 61 79 20 24 72 6f 77 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c tRows(array.$rows).{.$this->tabl
ea2e0 65 2d 3e 73 65 74 52 6f 77 73 28 24 72 6f 77 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 e->setRows($rows);..return.$this
ea300 3b 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 73 28 61 72 72 ;.}..public.function.addRows(arr
ea320 61 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 61 64 64 52 6f 77 ay.$rows).{.$this->table->addRow
ea340 73 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 s($rows);..return.$this;.}..publ
ea360 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 6f 77 28 61 72 72 61 79 20 24 72 6f 77 29 0a 7b ic.function.addRow(array.$row).{
ea380 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 61 64 64 52 6f 77 28 24 72 6f 77 29 3b 0a 0a 72 65 .$this->table->addRow($row);..re
ea3a0 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 6e 20 73 turn.$this;.}..public.function.s
ea3c0 65 74 52 6f 77 28 24 63 6f 6c 75 6d 6e 2c 20 61 72 72 61 79 20 24 72 6f 77 29 0a 7b 0a 24 74 68 etRow($column,.array.$row).{.$th
ea3e0 69 73 2d 3e 74 61 62 6c 65 2d 3e 73 65 74 52 6f 77 28 24 63 6f 6c 75 6d 6e 2c 20 24 72 6f 77 29 is->table->setRow($column,.$row)
ea400 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 69 ;..return.$this;.}.........publi
ea420 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 61 64 64 69 6e 67 43 68 61 72 28 24 70 61 64 64 69 c.function.setPaddingChar($paddi
ea440 6e 67 43 68 61 72 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 ngChar).{.$this->table->getStyle
ea460 28 29 2d 3e 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 ()->setPaddingChar($paddingChar)
ea480 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 69 ;..return.$this;.}.........publi
ea4a0 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 c.function.setHorizontalBorderCh
ea4c0 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 0a 7b 0a 24 74 68 69 ar($horizontalBorderChar).{.$thi
ea4e0 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 48 6f 72 69 7a 6f 6e s->table->getStyle()->setHorizon
ea500 74 61 6c 42 6f 72 64 65 72 43 68 61 72 28 24 68 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 talBorderChar($horizontalBorderC
ea520 68 61 72 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 har);..return.$this;.}.........p
ea540 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 72 ublic.function.setVerticalBorder
ea560 43 68 61 72 28 24 76 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 29 0a 7b 0a 24 74 68 69 Char($verticalBorderChar).{.$thi
ea580 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 56 65 72 74 69 63 61 s->table->getStyle()->setVertica
ea5a0 6c 42 6f 72 64 65 72 43 68 61 72 28 24 76 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 29 lBorderChar($verticalBorderChar)
ea5c0 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 69 ;..return.$this;.}.........publi
ea5e0 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 24 63 72 6f 73 c.function.setCrossingChar($cros
ea600 73 69 6e 67 43 68 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 67 65 74 53 74 79 singChar).{.$this->table->getSty
ea620 6c 65 28 29 2d 3e 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 le()->setCrossingChar($crossingC
ea640 68 61 72 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 har);..return.$this;.}.........p
ea660 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d ublic.function.setCellHeaderForm
ea680 61 74 28 24 63 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 at($cellHeaderFormat).{.$this->t
ea6a0 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 64 65 72 46 able->getStyle()->setCellHeaderF
ea6c0 6f 72 6d 61 74 28 24 63 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 29 3b 0a 0a 72 65 74 75 72 ormat($cellHeaderFormat);..retur
ea6e0 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
ea700 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 46 6f 72 6d on.setCellRowFormat($cellRowForm
ea720 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 29 2d 3e at).{.$this->table->getStyle()->
ea740 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 52 6f 77 46 6f 72 6d setCellHeaderFormat($cellRowForm
ea760 61 74 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 at);..return.$this;.}.........pu
ea780 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 blic.function.setCellRowContentF
ea7a0 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 0a 7b 0a 24 ormat($cellRowContentFormat).{.$
ea7c0 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 65 6c 6c this->table->getStyle()->setCell
ea7e0 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 28 24 63 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 RowContentFormat($cellRowContent
ea800 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 0a 0a 0a 0a 0a 0a 0a Format);..return.$this;.}.......
ea820 0a 0a 70 75 62 6c 69 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 ..public.function.setBorderForma
ea840 74 28 24 62 6f 72 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 t($borderFormat).{.$this->table-
ea860 3e 67 65 74 53 74 79 6c 65 28 29 2d 3e 73 65 74 42 6f 72 64 65 72 46 6f 72 6d 61 74 28 24 62 6f >getStyle()->setBorderFormat($bo
ea880 72 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 0a 0a 0a rderFormat);..return.$this;.}...
ea8a0 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 54 79 70 65 ......public.function.setPadType
ea8c0 28 24 70 61 64 54 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 67 65 74 53 74 ($padType).{.$this->table->getSt
ea8e0 79 6c 65 28 29 2d 3e 73 65 74 50 61 64 54 79 70 65 28 24 70 61 64 54 79 70 65 29 3b 0a 0a 72 65 yle()->setPadType($padType);..re
ea900 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 70 75 62 turn.$this;.}................pub
ea920 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 28 4f 75 74 70 75 74 49 6e 74 65 72 66 lic.function.render(OutputInterf
ea940 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 70 20 3d 20 6e 65 77 20 5c 52 65 66 6c 65 63 74 ace.$output).{.$p.=.new.\Reflect
ea960 69 6f 6e 50 72 6f 70 65 72 74 79 28 24 74 68 69 73 2d 3e 74 61 62 6c 65 2c 20 27 6f 75 74 70 75 ionProperty($this->table,.'outpu
ea980 74 27 29 3b 0a 24 70 2d 3e 73 65 74 41 63 63 65 73 73 69 62 6c 65 28 74 72 75 65 29 3b 0a 24 70 t');.$p->setAccessible(true);.$p
ea9a0 2d 3e 73 65 74 56 61 6c 75 65 28 24 74 68 69 73 2d 3e 74 61 62 6c 65 2c 20 24 6f 75 74 70 75 74 ->setValue($this->table,.$output
ea9c0 29 3b 0a 0a 24 74 68 69 73 2d 3e 74 61 62 6c 65 2d 3e 72 65 6e 64 65 72 28 29 3b 0a 7d 0a 0a 0a );..$this->table->render();.}...
ea9e0 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
eaa00 74 75 72 6e 20 27 74 61 62 6c 65 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a turn.'table';.}.}.<?php.........
eaa20 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 6f ..namespace.Symfony\Component\Co
eaa40 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 61 62 6c 65 53 nsole\Helper;.......class.TableS
eaa60 65 70 61 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 54 61 62 6c 65 43 65 6c 6c 0a 7b 0a 0a 0a 0a eparator.extends.TableCell.{....
eaa80 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
eaaa0 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 70 61 72 65 6e 74 3a ay.$options.=.array()).{.parent:
eaac0 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 27 27 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 7d 0a :__construct('',.$options);.}.}.
eaae0 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
eab00 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
eab20 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
eab40 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 74 69 6f 6e 3b 0a 75 tion\InvalidArgumentException;.u
eab60 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 78 63 se.Symfony\Component\Console\Exc
eab80 65 70 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 63 6c eption\LogicException;........cl
eaba0 61 73 73 20 54 61 62 6c 65 53 74 79 6c 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 61 64 64 69 6e ass.TableStyle.{.private.$paddin
eabc0 67 43 68 61 72 20 3d 20 27 20 27 3b 0a 70 72 69 76 61 74 65 20 24 68 6f 72 69 7a 6f 6e 74 61 6c gChar.=.'.';.private.$horizontal
eabe0 42 6f 72 64 65 72 43 68 61 72 20 3d 20 27 2d 27 3b 0a 70 72 69 76 61 74 65 20 24 76 65 72 74 69 BorderChar.=.'-';.private.$verti
eac00 63 61 6c 42 6f 72 64 65 72 43 68 61 72 20 3d 20 27 7c 27 3b 0a 70 72 69 76 61 74 65 20 24 63 72 calBorderChar.=.'|';.private.$cr
eac20 6f 73 73 69 6e 67 43 68 61 72 20 3d 20 27 2b 27 3b 0a 70 72 69 76 61 74 65 20 24 63 65 6c 6c 48 ossingChar.=.'+';.private.$cellH
eac40 65 61 64 65 72 46 6f 72 6d 61 74 20 3d 20 27 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 3b eaderFormat.=.'<info>%s</info>';
eac60 0a 70 72 69 76 61 74 65 20 24 63 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 20 3d 20 27 25 73 27 3b 0a .private.$cellRowFormat.=.'%s';.
eac80 70 72 69 76 61 74 65 20 24 63 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 20 3d 20 private.$cellRowContentFormat.=.
eaca0 27 20 25 73 20 27 3b 0a 70 72 69 76 61 74 65 20 24 62 6f 72 64 65 72 46 6f 72 6d 61 74 20 3d 20 '.%s.';.private.$borderFormat.=.
eacc0 27 25 73 27 3b 0a 70 72 69 76 61 74 65 20 24 70 61 64 54 79 70 65 20 3d 20 53 54 52 5f 50 41 44 '%s';.private.$padType.=.STR_PAD
eace0 5f 52 49 47 48 54 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 _RIGHT;.........public.function.
ead00 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 69 setPaddingChar($paddingChar).{.i
ead20 66 20 28 21 24 70 61 64 64 69 6e 67 43 68 61 72 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f f.(!$paddingChar).{.throw.new.Lo
ead40 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 70 61 64 64 69 6e 67 20 63 68 61 72 20 6d gicException('The.padding.char.m
ead60 75 73 74 20 6e 6f 74 20 62 65 20 65 6d 70 74 79 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 61 ust.not.be.empty');.}..$this->pa
ead80 64 64 69 6e 67 43 68 61 72 20 3d 20 24 70 61 64 64 69 6e 67 43 68 61 72 3b 0a 0a 72 65 74 75 72 ddingChar.=.$paddingChar;..retur
eada0 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
eadc0 20 67 65 74 50 61 64 64 69 6e 67 43 68 61 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 .getPaddingChar().{.return.$this
eade0 2d 3e 70 61 64 64 69 6e 67 43 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ->paddingChar;.}.........public.
eae00 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 function.setHorizontalBorderChar
eae20 28 24 68 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 29 0a 7b 0a 24 74 68 69 73 2d ($horizontalBorderChar).{.$this-
eae40 3e 68 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 20 3d 20 24 68 6f 72 69 7a 6f 6e >horizontalBorderChar.=.$horizon
eae60 74 61 6c 42 6f 72 64 65 72 43 68 61 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a talBorderChar;..return.$this;.}.
eae80 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 48 6f 72 69 7a 6f 6e ......public.function.getHorizon
eaea0 74 61 6c 42 6f 72 64 65 72 43 68 61 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e talBorderChar().{.return.$this->
eaec0 68 6f 72 69 7a 6f 6e 74 61 6c 42 6f 72 64 65 72 43 68 61 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a horizontalBorderChar;.}.........
eaee0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 74 69 63 61 6c 42 6f 72 64 65 public.function.setVerticalBorde
eaf00 72 43 68 61 72 28 24 76 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 29 0a 7b 0a 24 74 68 rChar($verticalBorderChar).{.$th
eaf20 69 73 2d 3e 76 65 72 74 69 63 61 6c 42 6f 72 64 65 72 43 68 61 72 20 3d 20 24 76 65 72 74 69 63 is->verticalBorderChar.=.$vertic
eaf40 61 6c 42 6f 72 64 65 72 43 68 61 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a alBorderChar;..return.$this;.}..
eaf60 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 74 69 63 61 6c .....public.function.getVertical
eaf80 42 6f 72 64 65 72 43 68 61 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 65 72 BorderChar().{.return.$this->ver
eafa0 74 69 63 61 6c 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 ticalBorderChar;.}.........publi
eafc0 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 72 6f 73 73 69 6e 67 43 68 61 72 28 24 63 72 6f 73 c.function.setCrossingChar($cros
eafe0 73 69 6e 67 43 68 61 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 72 6f 73 73 69 6e 67 43 68 61 72 20 singChar).{.$this->crossingChar.
eb000 3d 20 24 63 72 6f 73 73 69 6e 67 43 68 61 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a =.$crossingChar;..return.$this;.
eb020 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 72 6f 73 73 }.......public.function.getCross
eb040 69 6e 67 43 68 61 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 72 6f 73 73 69 ingChar().{.return.$this->crossi
eb060 6e 67 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 ngChar;.}.........public.functio
eb080 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 61 64 65 n.setCellHeaderFormat($cellHeade
eb0a0 72 46 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d rFormat).{.$this->cellHeaderForm
eb0c0 61 74 20 3d 20 24 63 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 3b 0a 0a 72 65 74 75 72 6e 20 at.=.$cellHeaderFormat;..return.
eb0e0 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 67 $this;.}.......public.function.g
eb100 65 74 43 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 etCellHeaderFormat().{.return.$t
eb120 68 69 73 2d 3e 63 65 6c 6c 48 65 61 64 65 72 46 6f 72 6d 61 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a his->cellHeaderFormat;.}........
eb140 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 65 6c 6c 52 6f 77 46 6f 72 6d 61 .public.function.setCellRowForma
eb160 74 28 24 63 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 65 6c 6c 52 t($cellRowFormat).{.$this->cellR
eb180 6f 77 46 6f 72 6d 61 74 20 3d 20 24 63 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 3b 0a 0a 72 65 74 75 owFormat.=.$cellRowFormat;..retu
eb1a0 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
eb1c0 6e 20 67 65 74 43 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 n.getCellRowFormat().{.return.$t
eb1e0 68 69 73 2d 3e 63 65 6c 6c 52 6f 77 46 6f 72 6d 61 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 his->cellRowFormat;.}.........pu
eb200 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 blic.function.setCellRowContentF
eb220 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 0a 7b 0a 24 ormat($cellRowContentFormat).{.$
eb240 74 68 69 73 2d 3e 63 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 20 3d 20 24 63 65 this->cellRowContentFormat.=.$ce
eb260 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 llRowContentFormat;..return.$thi
eb280 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 43 65 s;.}.......public.function.getCe
eb2a0 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 llRowContentFormat().{.return.$t
eb2c0 68 69 73 2d 3e 63 65 6c 6c 52 6f 77 43 6f 6e 74 65 6e 74 46 6f 72 6d 61 74 3b 0a 7d 0a 0a 0a 0a his->cellRowContentFormat;.}....
eb2e0 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 6f 72 64 65 72 46 6f .....public.function.setBorderFo
eb300 72 6d 61 74 28 24 62 6f 72 64 65 72 46 6f 72 6d 61 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 6f 72 rmat($borderFormat).{.$this->bor
eb320 64 65 72 46 6f 72 6d 61 74 20 3d 20 24 62 6f 72 64 65 72 46 6f 72 6d 61 74 3b 0a 0a 72 65 74 75 derFormat.=.$borderFormat;..retu
eb340 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
eb360 6e 20 67 65 74 42 6f 72 64 65 72 46 6f 72 6d 61 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 n.getBorderFormat().{.return.$th
eb380 69 73 2d 3e 62 6f 72 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 is->borderFormat;.}.........publ
eb3a0 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)
eb3c0 0a 7b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 70 61 64 54 79 70 65 2c 20 61 72 72 61 79 .{.if.(!in_array($padType,.array
eb3e0 28 53 54 52 5f 50 41 44 5f 4c 45 46 54 2c 20 53 54 52 5f 50 41 44 5f 52 49 47 48 54 2c 20 53 54 (STR_PAD_LEFT,.STR_PAD_RIGHT,.ST
eb400 52 5f 50 41 44 5f 42 4f 54 48 29 2c 20 74 72 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 R_PAD_BOTH),.true)).{.throw.new.
eb420 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 6c 69 InvalidArgumentException('Invali
eb440 64 20 70 61 64 64 69 6e 67 20 74 79 70 65 2e 20 45 78 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 20 d.padding.type..Expected.one.of.
eb460 28 53 54 52 5f 50 41 44 5f 4c 45 46 54 2c 20 53 54 52 5f 50 41 44 5f 52 49 47 48 54 2c 20 53 54 (STR_PAD_LEFT,.STR_PAD_RIGHT,.ST
eb480 52 5f 50 41 44 5f 42 4f 54 48 29 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 61 64 54 79 70 R_PAD_BOTH).');.}..$this->padTyp
eb4a0 65 20 3d 20 24 70 61 64 54 79 70 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a e.=.$padType;..return.$this;.}..
eb4c0 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 54 79 70 65 28 .....public.function.getPadType(
eb4e0 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 64 54 79 70 65 3b 0a 7d 0a 7d 0a 3c ).{.return.$this->padType;.}.}.<
eb500 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
eb520 5c 43 6f 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 \Component\Console\Input;..use.S
eb540 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 69 ymfony\Component\Console\Excepti
eb560 6f 6e 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a on\RuntimeException;............
eb580 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 67 76 49 6e 70 75 74 20 65 ...............class.ArgvInput.e
eb5a0 78 74 65 6e 64 73 20 49 6e 70 75 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 74 6f 6b 65 6e 73 3b 0a xtends.Input.{.private.$tokens;.
eb5c0 70 72 69 76 61 74 65 20 24 70 61 72 73 65 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 private.$parsed;........public.f
eb5e0 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 61 72 67 76 20 unction.__construct(array.$argv.
eb600 3d 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 =.null,.InputDefinition.$definit
eb620 69 6f 6e 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 61 72 67 76 ion.=.null).{.if.(null.===.$argv
eb640 29 20 7b 0a 24 61 72 67 76 20 3d 20 24 5f 53 45 52 56 45 52 5b 27 61 72 67 76 27 5d 3b 0a 7d 0a ).{.$argv.=.$_SERVER['argv'];.}.
eb660 0a 0a 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 61 72 67 76 29 3b 0a 0a 24 74 68 69 73 2d 3e 74 ...array_shift($argv);..$this->t
eb680 6f 6b 65 6e 73 20 3d 20 24 61 72 67 76 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 okens.=.$argv;..parent::__constr
eb6a0 75 63 74 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 uct($definition);.}..protected.f
eb6c0 75 6e 63 74 69 6f 6e 20 73 65 74 54 6f 6b 65 6e 73 28 61 72 72 61 79 20 24 74 6f 6b 65 6e 73 29 unction.setTokens(array.$tokens)
eb6e0 0a 7b 0a 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 20 3d 20 24 74 6f 6b 65 6e 73 3b 0a 7d 0a 0a 0a .{.$this->tokens.=.$tokens;.}...
eb700 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 28 29 0a 7b 0a 24 ..protected.function.parse().{.$
eb720 70 61 72 73 65 4f 70 74 69 6f 6e 73 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 70 61 72 73 parseOptions.=.true;.$this->pars
eb740 65 64 20 3d 20 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 3b 0a 77 68 69 6c 65 20 28 6e 75 6c 6c 20 ed.=.$this->tokens;.while.(null.
eb760 21 3d 3d 20 24 74 6f 6b 65 6e 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 74 68 69 73 2d 3e !==.$token.=.array_shift($this->
eb780 70 61 72 73 65 64 29 29 20 7b 0a 69 66 20 28 24 70 61 72 73 65 4f 70 74 69 6f 6e 73 20 26 26 20 parsed)).{.if.($parseOptions.&&.
eb7a0 27 27 20 3d 3d 20 24 74 6f 6b 65 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 41 72 67 75 ''.==.$token).{.$this->parseArgu
eb7c0 6d 65 6e 74 28 24 74 6f 6b 65 6e 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 72 73 65 4f 70 ment($token);.}.elseif.($parseOp
eb7e0 74 69 6f 6e 73 20 26 26 20 27 2d 2d 27 20 3d 3d 20 24 74 6f 6b 65 6e 29 20 7b 0a 24 70 61 72 73 tions.&&.'--'.==.$token).{.$pars
eb800 65 4f 70 74 69 6f 6e 73 20 3d 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 72 eOptions.=.false;.}.elseif.($par
eb820 73 65 4f 70 74 69 6f 6e 73 20 26 26 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 74 6f 6b 65 6e seOptions.&&.0.===.strpos($token
eb840 2c 20 27 2d 2d 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 4c 6f 6e 67 4f 70 74 69 6f ,.'--')).{.$this->parseLongOptio
eb860 6e 28 24 74 6f 6b 65 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 n($token);.}.elseif.($parseOptio
eb880 6e 73 20 26 26 20 27 2d 27 20 3d 3d 3d 20 24 74 6f 6b 65 6e 5b 30 5d 20 26 26 20 27 2d 27 20 21 ns.&&.'-'.===.$token[0].&&.'-'.!
eb8a0 3d 3d 20 24 74 6f 6b 65 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 53 68 6f 72 74 4f 70 ==.$token).{.$this->parseShortOp
eb8c0 74 69 6f 6e 28 24 74 6f 6b 65 6e 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 61 tion($token);.}.else.{.$this->pa
eb8e0 72 73 65 41 72 67 75 6d 65 6e 74 28 24 74 6f 6b 65 6e 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a rseArgument($token);.}.}.}......
eb900 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 6f 72 74 4f 70 74 69 .private.function.parseShortOpti
eb920 6f 6e 28 24 74 6f 6b 65 6e 29 0a 7b 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 74 6f 6b on($token).{.$name.=.substr($tok
eb940 65 6e 2c 20 31 29 3b 0a 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 6e 61 6d 65 29 20 3e 20 31 29 20 en,.1);..if.(strlen($name).>.1).
eb960 7b 0a 69 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 53 68 6f 72 {.if.($this->definition->hasShor
eb980 74 63 75 74 28 24 6e 61 6d 65 5b 30 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 tcut($name[0]).&&.$this->definit
eb9a0 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 46 6f 72 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 5b ion->getOptionForShortcut($name[
eb9c0 30 5d 29 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 61 0])->acceptValue()).{...$this->a
eb9e0 64 64 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 5b 30 5d 2c 20 73 75 62 73 74 72 28 24 ddShortOption($name[0],.substr($
eba00 6e 61 6d 65 2c 20 31 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 name,.1));.}.else.{.$this->parse
eba20 53 68 6f 72 74 4f 70 74 69 6f 6e 53 65 74 28 24 6e 61 6d 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 ShortOptionSet($name);.}.}.else.
eba40 7b 0a 24 74 68 69 73 2d 3e 61 64 64 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 6e {.$this->addShortOption($name,.n
eba60 75 6c 6c 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 69 ull);.}.}.........private.functi
eba80 6f 6e 20 70 61 72 73 65 53 68 6f 72 74 4f 70 74 69 6f 6e 53 65 74 28 24 6e 61 6d 65 29 0a 7b 0a on.parseShortOptionSet($name).{.
ebaa0 24 6c 65 6e 20 3d 20 73 74 72 6c 65 6e 28 24 6e 61 6d 65 29 3b 0a 66 6f 72 20 28 24 69 20 3d 20 $len.=.strlen($name);.for.($i.=.
ebac0 30 3b 20 24 69 20 3c 20 24 6c 65 6e 3b 20 2b 2b 24 69 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 0;.$i.<.$len;.++$i).{.if.(!$this
ebae0 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 5b ->definition->hasShortcut($name[
ebb00 24 69 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 74 69 $i])).{.throw.new.RuntimeExcepti
ebb20 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 69 6f 6e 20 64 6f 65 on(sprintf('The."-%s".option.doe
ebb40 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 5b 24 69 5d 29 29 3b 0a 7d 0a 0a 24 s.not.exist.',.$name[$i]));.}..$
ebb60 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 74 4f option.=.$this->definition->getO
ebb80 70 74 69 6f 6e 46 6f 72 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 5b 24 69 5d 29 3b 0a 69 66 20 ptionForShortcut($name[$i]);.if.
ebba0 28 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 74 68 69 73 ($option->acceptValue()).{.$this
ebbc0 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 65 ->addLongOption($option->getName
ebbe0 28 29 2c 20 24 69 20 3d 3d 3d 20 24 6c 65 6e 20 2d 20 31 20 3f 20 6e 75 6c 6c 20 3a 20 73 75 62 (),.$i.===.$len.-.1.?.null.:.sub
ebc00 73 74 72 28 24 6e 61 6d 65 2c 20 24 69 20 2b 20 31 29 29 3b 0a 0a 62 72 65 61 6b 3b 0a 7d 20 65 str($name,.$i.+.1));..break;.}.e
ebc20 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 6f 70 74 69 lse.{.$this->addLongOption($opti
ebc40 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 6e 75 6c 6c 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a on->getName(),.null);.}.}.}.....
ebc60 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 4c 6f 6e 67 4f 70 74 69 ..private.function.parseLongOpti
ebc80 6f 6e 28 24 74 6f 6b 65 6e 29 0a 7b 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 74 6f 6b on($token).{.$name.=.substr($tok
ebca0 65 6e 2c 20 32 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 3d 20 73 74 en,.2);..if.(false.!==.$pos.=.st
ebcc0 72 70 6f 73 28 24 6e 61 6d 65 2c 20 27 3d 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4c 6f rpos($name,.'=')).{.$this->addLo
ebce0 6e 67 4f 70 74 69 6f 6e 28 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 30 2c 20 24 70 6f 73 29 2c ngOption(substr($name,.0,.$pos),
ebd00 20 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 24 70 6f 73 20 2b 20 31 29 29 3b 0a 7d 20 65 6c 73 .substr($name,.$pos.+.1));.}.els
ebd20 65 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 e.{.$this->addLongOption($name,.
ebd40 6e 75 6c 6c 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 null);.}.}.........private.funct
ebd60 69 6f 6e 20 70 61 72 73 65 41 72 67 75 6d 65 6e 74 28 24 74 6f 6b 65 6e 29 0a 7b 0a 24 63 20 3d ion.parseArgument($token).{.$c.=
ebd80 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 3b 0a 0a 0a 20 69 66 20 .count($this->arguments);....if.
ebda0 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 74 28 ($this->definition->hasArgument(
ebdc0 24 63 29 29 20 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 $c)).{.$arg.=.$this->definition-
ebde0 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 24 63 29 3b 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e >getArgument($c);.$this->argumen
ebe00 74 73 5b 24 61 72 67 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 61 72 67 2d 3e 69 73 41 72 ts[$arg->getName()].=.$arg->isAr
ebe20 72 61 79 28 29 20 3f 20 61 72 72 61 79 28 24 74 6f 6b 65 6e 29 20 3a 20 24 74 6f 6b 65 6e 3b 0a ray().?.array($token).:.$token;.
ebe40 0a 0a 20 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e ...}.elseif.($this->definition->
ebe60 68 61 73 41 72 67 75 6d 65 6e 74 28 24 63 20 2d 20 31 29 20 26 26 20 24 74 68 69 73 2d 3e 64 65 hasArgument($c.-.1).&&.$this->de
ebe80 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 24 63 20 2d 20 31 29 2d 3e 69 finition->getArgument($c.-.1)->i
ebea0 73 41 72 72 61 79 28 29 29 20 7b 0a 24 61 72 67 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 sArray()).{.$arg.=.$this->defini
ebec0 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 24 63 20 2d 20 31 29 3b 0a 24 74 68 69 73 tion->getArgument($c.-.1);.$this
ebee0 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 61 72 67 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 5d 20 3d ->arguments[$arg->getName()][].=
ebf00 20 24 74 6f 6b 65 6e 3b 0a 0a 0a 20 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 .$token;....}.else.{.throw.new.R
ebf20 75 6e 74 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 untimeException('Too.many.argume
ebf40 6e 74 73 2e 27 29 3b 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 nts.');.}.}..........private.fun
ebf60 63 74 69 6f 6e 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 ction.addShortOption($shortcut,.
ebf80 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 69 6f 6e $value).{.if.(!$this->definition
ebfa0 2d 3e 68 61 73 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 ->hasShortcut($shortcut)).{.thro
ebfc0 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 28 27 w.new.RuntimeException(sprintf('
ebfe0 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 2e The."-%s".option.does.not.exist.
ec000 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 6e ',.$shortcut));.}..$this->addLon
ec020 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 70 gOption($this->definition->getOp
ec040 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 4e tionForShortcut($shortcut)->getN
ec060 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 70 72 69 76 61 ame(),.$value);.}..........priva
ec080 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 65 2c te.function.addLongOption($name,
ec0a0 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 69 6f .$value).{.if.(!$this->definitio
ec0c0 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 65 77 n->hasOption($name)).{.throw.new
ec0e0 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 28 27 54 68 65 20 22 .RuntimeException(sprintf('The."
ec100 2d 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 2e 27 2c 20 24 --%s".option.does.not.exist.',.$
ec120 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 name));.}..$option.=.$this->defi
ec140 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 3b 0a 0a 0a 20 69 66 20 nition->getOption($name);....if.
ec160 28 21 69 73 73 65 74 28 24 76 61 6c 75 65 5b 30 5d 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 6e (!isset($value[0])).{.$value.=.n
ec180 75 6c 6c 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 76 61 6c 75 65 20 26 26 20 21 ull;.}..if.(null.!==.$value.&&.!
ec1a0 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 74 68 72 6f 77 20 $option->acceptValue()).{.throw.
ec1c0 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 28 27 54 68 new.RuntimeException(sprintf('Th
ec1e0 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 61 63 63 65 70 74 20 e."--%s".option.does.not.accept.
ec200 61 20 76 61 6c 75 65 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 a.value.',.$name));.}..if.(null.
ec220 3d 3d 3d 20 24 76 61 6c 75 65 20 26 26 20 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c ===.$value.&&.$option->acceptVal
ec240 75 65 28 29 20 26 26 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 70 61 72 73 65 64 29 29 20 7b 0a ue().&&.count($this->parsed)).{.
ec260 0a 20 0a 20 24 6e 65 78 74 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 74 68 69 73 2d 3e 70 ....$next.=.array_shift($this->p
ec280 61 72 73 65 64 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6e 65 78 74 5b 30 5d 29 20 26 26 20 27 arsed);.if.(isset($next[0]).&&.'
ec2a0 2d 27 20 21 3d 3d 20 24 6e 65 78 74 5b 30 5d 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 24 6e 65 78 -'.!==.$next[0]).{.$value.=.$nex
ec2c0 74 3b 0a 7d 20 65 6c 73 65 69 66 20 28 65 6d 70 74 79 28 24 6e 65 78 74 29 29 20 7b 0a 24 76 61 t;.}.elseif.(empty($next)).{.$va
ec2e0 6c 75 65 20 3d 20 27 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 lue.=.'';.}.else.{.array_unshift
ec300 28 24 74 68 69 73 2d 3e 70 61 72 73 65 64 2c 20 24 6e 65 78 74 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 ($this->parsed,.$next);.}.}..if.
ec320 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 70 74 69 6f 6e 2d (null.===.$value).{.if.($option-
ec340 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 77 20 6e 65 77 20 >isValueRequired()).{.throw.new.
ec360 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 54 68 65 20 22 2d RuntimeException(sprintf('The."-
ec380 2d 25 73 22 20 6f 70 74 69 6f 6e 20 72 65 71 75 69 72 65 73 20 61 20 76 61 6c 75 65 2e 27 2c 20 -%s".option.requires.a.value.',.
ec3a0 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 $name));.}..if.(!$option->isArra
ec3c0 79 28 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 y()).{.$value.=.$option->isValue
ec3e0 4f 70 74 69 6f 6e 61 6c 28 29 20 3f 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 Optional().?.$option->getDefault
ec400 28 29 20 3a 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 ().:.true;.}.}..if.($option->isA
ec420 72 72 61 79 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 5b rray()).{.$this->options[$name][
ec440 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 ].=.$value;.}.else.{.$this->opti
ec460 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 ons[$name].=.$value;.}.}.......p
ec480 75 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 ublic.function.getFirstArgument(
ec4a0 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 20 61 73 20 24 74 ).{.foreach.($this->tokens.as.$t
ec4c0 6f 6b 65 6e 29 20 7b 0a 69 66 20 28 24 74 6f 6b 65 6e 20 26 26 20 27 2d 27 20 3d 3d 3d 20 24 74 oken).{.if.($token.&&.'-'.===.$t
ec4e0 6f 6b 65 6e 5b 30 5d 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 oken[0]).{.continue;.}..return.$
ec500 74 6f 6b 65 6e 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e token;.}.}............public.fun
ec520 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 24 76 61 6c 75 65 73 ction.hasParameterOption($values
ec540 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 0a ).{.$values.=.(array).$values;..
ec560 66 6f 72 65 61 63 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 foreach.($this->tokens.as.$token
ec580 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 76 61 6c 75 65 73 20 61 73 20 24 76 61 6c 75 65 29 20 ).{.foreach.($values.as.$value).
ec5a0 7b 0a 69 66 20 28 24 74 6f 6b 65 6e 20 3d 3d 3d 20 24 76 61 6c 75 65 20 7c 7c 20 30 20 3d 3d 3d {.if.($token.===.$value.||.0.===
ec5c0 20 73 74 72 70 6f 73 28 24 74 6f 6b 65 6e 2c 20 24 76 61 6c 75 65 2e 27 3d 27 29 29 20 7b 0a 72 .strpos($token,.$value.'=')).{.r
ec5e0 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b eturn.true;.}.}.}..return.false;
ec600 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 67 .}.............public.function.g
ec620 65 74 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 2c 20 24 64 65 66 61 etParameterOption($values,.$defa
ec640 75 6c 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 76 61 6c 75 65 73 20 3d 20 28 61 72 72 61 79 29 ult.=.false).{.$values.=.(array)
ec660 20 24 76 61 6c 75 65 73 3b 0a 24 74 6f 6b 65 6e 73 20 3d 20 24 74 68 69 73 2d 3e 74 6f 6b 65 6e .$values;.$tokens.=.$this->token
ec680 73 3b 0a 0a 77 68 69 6c 65 20 28 30 20 3c 20 63 6f 75 6e 74 28 24 74 6f 6b 65 6e 73 29 29 20 7b s;..while.(0.<.count($tokens)).{
ec6a0 0a 24 74 6f 6b 65 6e 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 74 6f 6b 65 6e 73 29 3b 0a .$token.=.array_shift($tokens);.
ec6c0 0a 66 6f 72 65 61 63 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 .foreach.($values.as.$value).{.i
ec6e0 66 20 28 24 74 6f 6b 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 f.($token.===.$value.||.0.===.st
ec700 72 70 6f 73 28 24 74 6f 6b 65 6e 2c 20 24 76 61 6c 75 65 2e 27 3d 27 29 29 20 7b 0a 69 66 20 28 rpos($token,.$value.'=')).{.if.(
ec720 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 74 6f 6b 65 6e 2c 20 false.!==.$pos.=.strpos($token,.
ec740 27 3d 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 75 62 73 74 72 28 24 74 6f 6b 65 6e 2c 20 24 70 '=')).{.return.substr($token,.$p
ec760 6f 73 20 2b 20 31 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 os.+.1);.}..return.array_shift($
ec780 74 6f 6b 65 6e 73 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b tokens);.}.}.}..return.$default;
ec7a0 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 74 72 .}.......public.function.__toStr
ec7c0 69 6e 67 28 29 0a 7b 0a 24 73 65 6c 66 20 3d 20 24 74 68 69 73 3b 0a 24 74 6f 6b 65 6e 73 20 3d ing().{.$self.=.$this;.$tokens.=
ec7e0 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 74 6f 6b 65 6e 29 20 75 73 65 .array_map(function.($token).use
ec800 20 28 24 73 65 6c 66 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 2d 5b .($self).{.if.(preg_match('{^(-[
ec820 5e 3d 5d 2b 3d 29 28 2e 2b 29 7d 27 2c 20 24 74 6f 6b 65 6e 2c 20 24 6d 61 74 63 68 29 29 20 7b ^=]+=)(.+)}',.$token,.$match)).{
ec840 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 5b 31 5d 2e 24 73 65 6c 66 2d 3e 65 73 63 61 70 65 54 .return.$match[1].$self->escapeT
ec860 6f 6b 65 6e 28 24 6d 61 74 63 68 5b 32 5d 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 6f 6b 65 6e 20 26 oken($match[2]);.}..if.($token.&
ec880 26 20 24 74 6f 6b 65 6e 5b 30 5d 20 21 3d 3d 20 27 2d 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 73 &.$token[0].!==.'-').{.return.$s
ec8a0 65 6c 66 2d 3e 65 73 63 61 70 65 54 6f 6b 65 6e 28 24 74 6f 6b 65 6e 29 3b 0a 7d 0a 0a 72 65 74 elf->escapeToken($token);.}..ret
ec8c0 75 72 6e 20 24 74 6f 6b 65 6e 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 29 3b 0a 0a urn.$token;.},.$this->tokens);..
ec8e0 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 24 74 6f 6b 65 6e 73 29 3b 0a 7d 0a return.implode('.',.$tokens);.}.
ec900 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
ec920 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 3b 0a 0a 75 73 ony\Component\Console\Input;..us
ec940 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 78 63 65 e.Symfony\Component\Console\Exce
ec960 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 74 69 6f 6e 3b 0a ption\InvalidArgumentException;.
ec980 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 45 78 use.Symfony\Component\Console\Ex
ec9a0 63 65 70 74 69 6f 6e 5c 49 6e 76 61 6c 69 64 4f 70 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 3b 0a ception\InvalidOptionException;.
ec9c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 72 61 79 49 6e 70 75 74 20 65 78 74 65 6e ..........class.ArrayInput.exten
ec9e0 64 73 20 49 6e 70 75 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 61 72 61 6d 65 74 65 72 73 3b 0a ds.Input.{.private.$parameters;.
eca00 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
eca20 63 74 28 61 72 72 61 79 20 24 70 61 72 61 6d 65 74 65 72 73 2c 20 49 6e 70 75 74 44 65 66 69 6e ct(array.$parameters,.InputDefin
eca40 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 24 74 68 69 ition.$definition.=.null).{.$thi
eca60 73 2d 3e 70 61 72 61 6d 65 74 65 72 73 20 3d 20 24 70 61 72 61 6d 65 74 65 72 73 3b 0a 0a 70 61 s->parameters.=.$parameters;..pa
eca80 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a rent::__construct($definition);.
ecaa0 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 46 69 72 73 74 }.......public.function.getFirst
ecac0 41 72 67 75 6d 65 6e 74 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 61 72 Argument().{.foreach.($this->par
ecae0 61 6d 65 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 ameters.as.$key.=>.$value).{.if.
ecb00 28 24 6b 65 79 20 26 26 20 27 2d 27 20 3d 3d 3d 20 24 6b 65 79 5b 30 5d 29 20 7b 0a 63 6f 6e 74 ($key.&&.'-'.===.$key[0]).{.cont
ecb20 69 6e 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a inue;.}..return.$value;.}.}.....
ecb40 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 72 61 6d 65 .......public.function.hasParame
ecb60 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 73 20 3d 20 28 terOption($values).{.$values.=.(
ecb80 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 74 68 69 73 2d array).$values;..foreach.($this-
ecba0 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 0a 69 66 20 28 21 >parameters.as.$k.=>.$v).{.if.(!
ecbc0 69 73 5f 69 6e 74 28 24 6b 29 29 20 7b 0a 24 76 20 3d 20 24 6b 3b 0a 7d 0a 0a 69 66 20 28 69 6e is_int($k)).{.$v.=.$k;.}..if.(in
ecbe0 5f 61 72 72 61 79 28 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 _array($v,.$values)).{.return.tr
ecc00 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 0a 0a ue;.}.}..return.false;.}........
ecc20 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
ecc40 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
ecc60 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;.
ecc80 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 20 24 .foreach.($this->parameters.as.$
ecca0 6b 20 3d 3e 20 24 76 29 20 7b 0a 69 66 20 28 69 73 5f 69 6e 74 28 24 6b 29 29 20 7b 0a 69 66 20 k.=>.$v).{.if.(is_int($k)).{.if.
eccc0 28 69 6e 5f 61 72 72 61 79 28 24 76 2c 20 24 76 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e (in_array($v,.$values)).{.return
ecce0 20 74 72 75 65 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 6b 2c 20 .true;.}.}.elseif.(in_array($k,.
ecd00 24 76 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 $values)).{.return.$v;.}.}..retu
ecd20 72 6e 20 24 64 65 66 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 rn.$default;.}.......public.func
ecd40 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 24 70 61 72 61 6d 73 20 3d 20 61 72 tion.__toString().{.$params.=.ar
ecd60 72 61 79 28 29 3b 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 ray();.foreach.($this->parameter
ecd80 73 20 61 73 20 24 70 61 72 61 6d 20 3d 3e 20 24 76 61 6c 29 20 7b 0a 69 66 20 28 24 70 61 72 61 s.as.$param.=>.$val).{.if.($para
ecda0 6d 20 26 26 20 27 2d 27 20 3d 3d 3d 20 24 70 61 72 61 6d 5b 30 5d 29 20 7b 0a 24 70 61 72 61 6d m.&&.'-'.===.$param[0]).{.$param
ecdc0 73 5b 5d 20 3d 20 24 70 61 72 61 6d 2e 28 27 27 20 21 3d 20 24 76 61 6c 20 3f 20 27 3d 27 2e 24 s[].=.$param.(''.!=.$val.?.'='.$
ecde0 74 68 69 73 2d 3e 65 73 63 61 70 65 54 6f 6b 65 6e 28 24 76 61 6c 29 20 3a 20 27 27 29 3b 0a 7d this->escapeToken($val).:.'');.}
ece00 20 65 6c 73 65 20 7b 0a 24 70 61 72 61 6d 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 65 73 63 61 70 .else.{.$params[].=.$this->escap
ece20 65 54 6f 6b 65 6e 28 24 76 61 6c 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 eToken($val);.}.}..return.implod
ece40 65 28 27 20 27 2c 20 24 70 61 72 61 6d 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 e('.',.$params);.}.....protected
ece60 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 .function.parse().{.foreach.($th
ece80 69 73 2d 3e 70 61 72 61 6d 65 74 65 72 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 is->parameters.as.$key.=>.$value
ecea0 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 6b 65 79 2c 20 27 2d 2d 27 29 ).{.if.(0.===.strpos($key,.'--')
ecec0 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 75 62 73 74 72 28 ).{.$this->addLongOption(substr(
ecee0 24 6b 65 79 2c 20 32 29 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 2d 27 $key,.2),.$value);.}.elseif.('-'
ecf00 20 3d 3d 3d 20 24 6b 65 79 5b 30 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 53 68 6f 72 74 4f .===.$key[0]).{.$this->addShortO
ecf20 70 74 69 6f 6e 28 73 75 62 73 74 72 28 24 6b 65 79 2c 20 31 29 2c 20 24 76 61 6c 75 65 29 3b 0a ption(substr($key,.1),.$value);.
ecf40 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 41 72 67 75 6d 65 6e 74 28 24 6b 65 79 }.else.{.$this->addArgument($key
ecf60 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 ,.$value);.}.}.}..........privat
ecf80 65 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 73 68 6f 72 74 e.function.addShortOption($short
ecfa0 63 75 74 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 cut,.$value).{.if.(!$this->defin
ecfc0 69 74 69 6f 6e 2d 3e 68 61 73 53 68 6f 72 74 63 75 74 28 24 73 68 6f 72 74 63 75 74 29 29 20 7b ition->hasShortcut($shortcut)).{
ecfe0 0a 74 68 72 6f 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 .throw.new.InvalidOptionExceptio
ed000 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 n(sprintf('The."-%s".option.does
ed020 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 73 68 6f 72 74 63 75 74 29 29 3b 0a 7d 0a 0a 24 74 .not.exist.',.$shortcut));.}..$t
ed040 68 69 73 2d 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 his->addLongOption($this->defini
ed060 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 46 6f 72 53 68 6f 72 74 63 75 74 28 24 73 68 6f 72 tion->getOptionForShortcut($shor
ed080 74 63 75 74 29 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 0a 0a tcut)->getName(),.$value);.}....
ed0a0 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 4c 6f 6e 67 4f .......private.function.addLongO
ed0c0 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 20 28 21 24 74 68 69 ption($name,.$value).{.if.(!$thi
ed0e0 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 24 6e 61 6d 65 29 29 s->definition->hasOption($name))
ed100 20 7b 0a 74 68 72 6f 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 .{.throw.new.InvalidOptionExcept
ed120 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 6e 20 64 ion(sprintf('The."--%s".option.d
ed140 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 6f 70 oes.not.exist.',.$name));.}..$op
ed160 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 74 4f 70 74 tion.=.$this->definition->getOpt
ed180 69 6f 6e 28 24 6e 61 6d 65 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 6c 75 65 ion($name);..if.(null.===.$value
ed1a0 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 71 75 69 72 65 64 ).{.if.($option->isValueRequired
ed1c0 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 4f 70 74 69 6f 6e 45 78 63 ()).{.throw.new.InvalidOptionExc
ed1e0 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
ed200 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));.}
ed220 0a 0a 24 76 61 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 ..$value.=.$option->isValueOptio
ed240 6e 61 6c 28 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 nal().?.$option->getDefault().:.
ed260 74 72 75 65 3b 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 true;.}..$this->options[$name].=
ed280 20 24 76 61 6c 75 65 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 .$value;.}..........private.func
ed2a0 74 69 6f 6e 20 61 64 64 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a tion.addArgument($name,.$value).
ed2c0 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 41 72 67 {.if.(!$this->definition->hasArg
ed2e0 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 76 61 6c 69 ument($name)).{.throw.new.Invali
ed300 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 68 65 20 dArgumentException(sprintf('The.
ed320 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 2e 27 2c 20 "%s".argument.does.not.exist.',.
ed340 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 5b 24 6e 61 $name));.}..$this->arguments[$na
ed360 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a me].=.$value;.}.}.<?php.........
ed380 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 6f ..namespace.Symfony\Component\Co
ed3a0 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 70 6f 6e nsole\Input;..use.Symfony\Compon
ed3c0 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 72 67 ent\Console\Exception\InvalidArg
ed3e0 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 6f 6d 70 umentException;.use.Symfony\Comp
ed400 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 45 onent\Console\Exception\RuntimeE
ed420 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 xception;.............abstract.c
ed440 6c 61 73 73 20 49 6e 70 75 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 70 75 74 49 6e 74 65 72 lass.Input.implements.InputInter
ed460 66 61 63 65 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b face.{....protected.$definition;
ed480 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 .protected.$options.=.array();.p
ed4a0 72 6f 74 65 63 74 65 64 20 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 rotected.$arguments.=.array();.p
ed4c0 72 6f 74 65 63 74 65 64 20 24 69 6e 74 65 72 61 63 74 69 76 65 20 3d 20 74 72 75 65 3b 0a 0a 0a rotected.$interactive.=.true;...
ed4e0 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(
ed500 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 20 3d 20 6e 75 InputDefinition.$definition.=.nu
ed520 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 ll).{.if.(null.===.$definition).
ed540 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 65 77 20 49 6e 70 75 74 44 {.$this->definition.=.new.InputD
ed560 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 62 69 6e efinition();.}.else.{.$this->bin
ed580 64 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 28 d($definition);.$this->validate(
ed5a0 29 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 62 69 6e );.}.}.......public.function.bin
ed5c0 64 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 29 0a 7b d(InputDefinition.$definition).{
ed5e0 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 .$this->arguments.=.array();.$th
ed600 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 64 65 is->options.=.array();.$this->de
ed620 66 69 6e 69 74 69 6f 6e 20 3d 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 0a 24 74 68 69 73 2d 3e finition.=.$definition;..$this->
ed640 70 61 72 73 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 parse();.}.....abstract.protecte
ed660 64 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 d.function.parse();.......public
ed680 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 28 29 0a 7b 0a 24 64 65 66 69 6e 69 74 69 .function.validate().{.$definiti
ed6a0 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 24 67 69 76 65 6e 41 72 on.=.$this->definition;.$givenAr
ed6c0 67 75 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 3b 0a 0a 24 6d 69 guments.=.$this->arguments;..$mi
ed6e0 73 73 69 6e 67 41 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 61 72 ssingArguments.=.array_filter(ar
ed700 72 61 79 5f 6b 65 79 73 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e ray_keys($definition->getArgumen
ed720 74 73 28 29 29 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 72 67 75 6d 65 6e 74 29 20 75 73 65 20 ts()),.function.($argument).use.
ed740 28 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 24 67 69 76 65 6e 41 72 67 75 6d 65 6e 74 73 29 20 7b ($definition,.$givenArguments).{
ed760 0a 72 65 74 75 72 6e 20 21 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 61 72 67 75 6d .return.!array_key_exists($argum
ed780 65 6e 74 2c 20 24 67 69 76 65 6e 41 72 67 75 6d 65 6e 74 73 29 20 26 26 20 24 64 65 66 69 6e 69 ent,.$givenArguments).&&.$defini
ed7a0 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 2d 3e 69 73 tion->getArgument($argument)->is
ed7c0 52 65 71 75 69 72 65 64 28 29 3b 0a 7d 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 6d 69 73 73 Required();.});..if.(count($miss
ed7e0 69 6e 67 41 72 67 75 6d 65 6e 74 73 29 20 3e 20 30 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 ingArguments).>.0).{.throw.new.R
ed800 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 4e 6f 74 20 65 6e 6f untimeException(sprintf('Not.eno
ed820 75 67 68 20 61 72 67 75 6d 65 6e 74 73 20 28 6d 69 73 73 69 6e 67 3a 20 22 25 73 22 29 2e 27 2c ugh.arguments.(missing:."%s").',
ed840 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 6d 69 73 73 69 6e 67 41 72 67 75 6d 65 6e 74 73 .implode(',.',.$missingArguments
ed860 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 63 74 69 6f 6e 20 69 )));.}.}.......public.function.i
ed880 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 sInteractive().{.return.$this->i
ed8a0 6e 74 65 72 61 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 63 74 nteractive;.}.......public.funct
ed8c0 69 6f 6e 20 73 65 74 49 6e 74 65 72 61 63 74 69 76 65 28 24 69 6e 74 65 72 61 63 74 69 76 65 29 ion.setInteractive($interactive)
ed8e0 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 74 65 72 61 63 74 69 76 65 20 3d 20 28 62 6f 6f 6c 29 20 24 .{.$this->interactive.=.(bool).$
ed900 69 6e 74 65 72 61 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 63 interactive;.}.......public.func
ed920 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 6e 20 61 72 72 tion.getArguments().{.return.arr
ed940 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 41 ay_merge($this->definition->getA
ed960 72 67 75 6d 65 6e 74 44 65 66 61 75 6c 74 73 28 29 2c 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 rgumentDefaults(),.$this->argume
ed980 6e 74 73 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 nts);.}...........public.functio
ed9a0 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 n.getArgument($name).{.if.(!$thi
ed9c0 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 65 s->definition->hasArgument($name
ed9e0 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
eda00 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 65 ception(sprintf('The."%s".argume
eda20 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 0a nt.does.not.exist.',.$name));.}.
eda40 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 .return.isset($this->arguments[$
eda60 6e 61 6d 65 5d 29 20 3f 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d name]).?.$this->arguments[$name]
eda80 20 3a 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 6e .:.$this->definition->getArgumen
edaa0 74 28 24 6e 61 6d 65 29 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a t($name)->getDefault();.}.......
edac0 0a 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 28 24 ...public.function.setArgument($
edae0 6e 61 6d 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 name,.$value).{.if.(!$this->defi
edb00 6e 69 74 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 nition->hasArgument($name)).{.th
edb20 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
edb40 28 73 70 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 (sprintf('The."%s".argument.does
edb60 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 74 68 69 73 2d .not.exist.',.$name));.}..$this-
edb80 3e 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 0a >arguments[$name].=.$value;.}...
edba0 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 72 67 75 6d 65 6e ......public.function.hasArgumen
edbc0 74 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 65 66 69 6e 69 74 t($name).{.return.$this->definit
edbe0 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a ion->hasArgument($name);.}......
edc00 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 73 28 29 0a 7b 0a .public.function.getOptions().{.
edc20 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 return.array_merge($this->defini
edc40 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 44 65 66 61 75 6c 74 73 28 29 2c 20 24 74 68 69 73 tion->getOptionDefaults(),.$this
edc60 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ->options);.}...........public.f
edc80 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 28 21 unction.getOption($name).{.if.(!
edca0 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 24 6e 61 $this->definition->hasOption($na
edcc0 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 65 6e 74 me)).{.throw.new.InvalidArgument
edce0 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 70 74 69 Exception(sprintf('The."%s".opti
edd00 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));.}.
edd20 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 24 6e 61 .return.isset($this->options[$na
edd40 6d 65 5d 29 20 3f 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3a 20 24 me]).?.$this->options[$name].:.$
edd60 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 28 24 6e 61 6d this->definition->getOption($nam
edd80 65 29 2d 3e 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 e)->getDefault();.}..........pub
edda0 6c 69 63 20 66 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 lic.function.setOption($name,.$v
eddc0 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 69 6f 6e 2d 3e alue).{.if.(!$this->definition->
edde0 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 65 77 20 49 6e hasOption($name)).{.throw.new.In
ede00 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('
ede20 54 68 65 20 22 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 2e 27 The."%s".option.does.not.exist.'
ede40 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 ,.$name));.}..$this->options[$na
ede60 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 69 63 20 66 me].=.$value;.}.........public.f
ede80 75 6e 63 74 69 6f 6e 20 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 unction.hasOption($name).{.retur
edea0 6e 20 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 24 n.$this->definition->hasOption($
edec0 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 6e name);.}.........public.function
edee0 20 65 73 63 61 70 65 54 6f 6b 65 6e 28 24 74 6f 6b 65 6e 29 0a 7b 0a 72 65 74 75 72 6e 20 70 72 .escapeToken($token).{.return.pr
edf00 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 5c 77 2d 5d 2b 24 7d 27 2c 20 24 74 6f 6b 65 6e 29 20 3f eg_match('{^[\w-]+$}',.$token).?
edf20 20 24 74 6f 6b 65 6e 20 3a 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 6f 6b 65 6e 29 .$token.:.escapeshellarg($token)
edf40 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.
edf60 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 3b Symfony\Component\Console\Input;
edf80 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 5c ..use.Symfony\Component\Console\
edfa0 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 74 69 Exception\InvalidArgumentExcepti
edfc0 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
edfe0 65 5c 45 78 63 65 70 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 e\Exception\LogicException;.....
ee000 0a 0a 63 6c 61 73 73 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 0a 7b 0a 63 6f 6e 73 74 20 52 45 ..class.InputArgument.{.const.RE
ee020 51 55 49 52 45 44 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 4f 50 54 49 4f 4e 41 4c 20 3d 20 32 3b 0a QUIRED.=.1;.const.OPTIONAL.=.2;.
ee040 63 6f 6e 73 74 20 49 53 5f 41 52 52 41 59 20 3d 20 34 3b 0a 0a 70 72 69 76 61 74 65 20 24 6e 61 const.IS_ARRAY.=.4;..private.$na
ee060 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 6d 6f 64 65 3b 0a 70 72 69 76 61 74 65 20 24 64 65 66 61 me;.private.$mode;.private.$defa
ee080 75 6c 74 3b 0a 70 72 69 76 61 74 65 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a ult;.private.$description;......
ee0a0 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
ee0c0 74 28 24 6e 61 6d 65 2c 20 24 6d 6f 64 65 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 73 63 72 69 70 74 t($name,.$mode.=.null,.$descript
ee0e0 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 20 ion.=.'',.$default.=.null).{.if.
ee100 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6d 6f 64 65 29 20 7b 0a 24 6d 6f 64 65 20 3d 20 73 65 6c 66 3a (null.===.$mode).{.$mode.=.self:
ee120 3a 4f 50 54 49 4f 4e 41 4c 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 69 6e 74 28 24 6d 6f :OPTIONAL;.}.elseif.(!is_int($mo
ee140 64 65 29 20 7c 7c 20 24 6d 6f 64 65 20 3e 20 37 20 7c 7c 20 24 6d 6f 64 65 20 3c 20 31 29 20 7b de).||.$mode.>.7.||.$mode.<.1).{
ee160 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 65 70 74 .throw.new.InvalidArgumentExcept
ee180 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 41 72 67 75 6d 65 6e 74 20 6d 6f 64 65 20 22 25 73 22 20 ion(sprintf('Argument.mode."%s".
ee1a0 69 73 20 6e 6f 74 20 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 is.not.valid.',.$mode));.}..$thi
ee1c0 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 s->name.=.$name;.$this->mode.=.$
ee1e0 6d 6f 64 65 3b 0a 24 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 mode;.$this->description.=.$desc
ee200 72 69 70 74 69 6f 6e 3b 0a 0a 24 74 68 69 73 2d 3e 73 65 74 44 65 66 61 75 6c 74 28 24 64 65 66 ription;..$this->setDefault($def
ee220 61 75 6c 74 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 67 ault);.}.......public.function.g
ee240 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 6d 65 3b 0a 7d etName().{.return.$this->name;.}
ee260 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 52 65 71 75 69 72 65 .......public.function.isRequire
ee280 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 52 45 51 55 49 52 45 44 20 3d 3d 3d 20 d().{.return.self::REQUIRED.===.
ee2a0 28 73 65 6c 66 3a 3a 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 (self::REQUIRED.&.$this->mode);.
ee2c0 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 41 72 72 61 79 28 }.......public.function.isArray(
ee2e0 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 49 53 5f 41 52 52 41 59 20 3d 3d 3d 20 28 73 ).{.return.self::IS_ARRAY.===.(s
ee300 65 6c 66 3a 3a 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 elf::IS_ARRAY.&.$this->mode);.}.
ee320 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 65 66 61 75 ........public.function.setDefau
ee340 6c 74 28 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 lt($default.=.null).{.if.(self::
ee360 52 45 51 55 49 52 45 44 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6d 6f 64 65 20 26 26 20 6e 75 6c 6c REQUIRED.===.$this->mode.&&.null
ee380 20 21 3d 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 .!==.$default).{.throw.new.Logic
ee3a0 45 78 63 65 70 74 69 6f 6e 28 27 43 61 6e 6e 6f 74 20 73 65 74 20 61 20 64 65 66 61 75 6c 74 20 Exception('Cannot.set.a.default.
ee3c0 76 61 6c 75 65 20 65 78 63 65 70 74 20 66 6f 72 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a value.except.for.InputArgument::
ee3e0 4f 50 54 49 4f 4e 41 4c 20 6d 6f 64 65 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e OPTIONAL.mode.');.}..if.($this->
ee400 69 73 41 72 72 61 79 28 29 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 66 61 75 isArray()).{.if.(null.===.$defau
ee420 6c 74 29 20 7b 0a 24 64 65 66 61 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 20 65 6c 73 65 lt).{.$default.=.array();.}.else
ee440 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 64 65 66 61 75 6c 74 29 29 20 7b 0a 74 68 72 6f 77 if.(!is_array($default)).{.throw
ee460 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 41 20 64 65 66 61 75 6c 74 20 76 .new.LogicException('A.default.v
ee480 61 6c 75 65 20 66 6f 72 20 61 6e 20 61 72 72 61 79 20 61 72 67 75 6d 65 6e 74 20 6d 75 73 74 20 alue.for.an.array.argument.must.
ee4a0 62 65 20 61 6e 20 61 72 72 61 79 2e 27 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 65 66 61 be.an.array.');.}.}..$this->defa
ee4c0 75 6c 74 20 3d 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ult.=.$default;.}.......public.f
ee4e0 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 unction.getDefault().{.return.$t
ee500 68 69 73 2d 3e 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e his->default;.}.......public.fun
ee520 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 6e 20 ction.getDescription().{.return.
ee540 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a $this->description;.}.}.<?php...
ee560 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
ee580 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 0a 69 6e 74 65 72 66 ent\Console\Input;........interf
ee5a0 61 63 65 20 49 6e 70 75 74 41 77 61 72 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 ace.InputAwareInterface.{......p
ee5c0 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 74 ublic.function.setInput(InputInt
ee5e0 65 72 66 61 63 65 20 24 69 6e 70 75 74 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a erface.$input);.}.<?php.........
ee600 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 6f ..namespace.Symfony\Component\Co
ee620 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 70 6f 6e nsole\Input;..use.Symfony\Compon
ee640 65 6e 74 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 ent\Console\Descriptor\TextDescr
ee660 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 6f 6e iptor;.use.Symfony\Component\Con
ee680 73 6f 6c 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 sole\Descriptor\XmlDescriptor;.u
ee6a0 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
ee6c0 70 75 74 5c 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c put\BufferedOutput;.use.Symfony\
ee6e0 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
ee700 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
ee720 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 4c 6f y\Component\Console\Exception\Lo
ee740 67 69 63 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 gicException;..............class
ee760 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 61 72 67 75 .InputDefinition.{.private.$argu
ee780 6d 65 6e 74 73 3b 0a 70 72 69 76 61 74 65 20 24 72 65 71 75 69 72 65 64 43 6f 75 6e 74 3b 0a 70 ments;.private.$requiredCount;.p
ee7a0 72 69 76 61 74 65 20 24 68 61 73 41 6e 41 72 72 61 79 41 72 67 75 6d 65 6e 74 20 3d 20 66 61 6c rivate.$hasAnArrayArgument.=.fal
ee7c0 73 65 3b 0a 70 72 69 76 61 74 65 20 24 68 61 73 4f 70 74 69 6f 6e 61 6c 3b 0a 70 72 69 76 61 74 se;.private.$hasOptional;.privat
ee7e0 65 20 24 6f 70 74 69 6f 6e 73 3b 0a 70 72 69 76 61 74 65 20 24 73 68 6f 72 74 63 75 74 73 3b 0a e.$options;.private.$shortcuts;.
ee800 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
ee820 74 28 61 72 72 61 79 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 61 72 72 61 79 28 29 29 0a 7b t(array.$definition.=.array()).{
ee840 0a 24 74 68 69 73 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 64 65 66 69 6e 69 74 69 6f .$this->setDefinition($definitio
ee860 6e 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 73 65 74 44 n);.}.......public.function.setD
ee880 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 0a 7b 0a 24 efinition(array.$definition).{.$
ee8a0 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 arguments.=.array();.$options.=.
ee8c0 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 20 61 73 array();.foreach.($definition.as
ee8e0 20 24 69 74 65 6d 29 20 7b 0a 69 66 20 28 24 69 74 65 6d 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 .$item).{.if.($item.instanceof.I
ee900 6e 70 75 74 4f 70 74 69 6f 6e 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 5d 20 3d 20 24 69 74 65 6d nputOption).{.$options[].=.$item
ee920 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 61 72 67 75 6d 65 6e 74 73 5b 5d 20 3d 20 24 69 74 65 6d 3b ;.}.else.{.$arguments[].=.$item;
ee940 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 41 72 67 75 6d 65 6e 74 73 28 24 61 72 67 75 6d .}.}..$this->setArguments($argum
ee960 65 6e 74 73 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 6f 6e ents);.$this->setOptions($option
ee980 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 73 65 74 41 s);.}.......public.function.setA
ee9a0 72 67 75 6d 65 6e 74 73 28 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b rguments($arguments.=.array()).{
ee9c0 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 .$this->arguments.=.array();.$th
ee9e0 69 73 2d 3e 72 65 71 75 69 72 65 64 43 6f 75 6e 74 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 68 61 is->requiredCount.=.0;.$this->ha
eea00 73 4f 70 74 69 6f 6e 61 6c 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 68 61 73 41 6e 41 sOptional.=.false;.$this->hasAnA
eea20 72 72 61 79 41 72 67 75 6d 65 6e 74 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 61 64 64 rrayArgument.=.false;.$this->add
eea40 41 72 67 75 6d 65 6e 74 73 28 24 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 Arguments($arguments);.}.......p
eea60 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 41 72 67 75 6d 65 6e 74 73 28 24 61 72 67 ublic.function.addArguments($arg
eea80 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d uments.=.array()).{.if.(null.!==
eeaa0 20 24 61 72 67 75 6d 65 6e 74 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 72 67 75 6d 65 6e .$arguments).{.foreach.($argumen
eeac0 74 73 20 61 73 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 41 72 67 ts.as.$argument).{.$this->addArg
eeae0 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a ument($argument);.}.}.}.........
eeb00 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 41 72 67 75 6d 65 6e 74 28 49 6e 70 75 public.function.addArgument(Inpu
eeb20 74 41 72 67 75 6d 65 6e 74 20 24 61 72 67 75 6d 65 6e 74 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 tArgument.$argument).{.if.(isset
eeb40 28 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 74 2d 3e 67 65 74 ($this->arguments[$argument->get
eeb60 4e 61 6d 65 28 29 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 Name()])).{.throw.new.LogicExcep
eeb80 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 41 6e 20 61 72 67 75 6d 65 6e 74 20 77 69 74 68 20 6e tion(sprintf('An.argument.with.n
eeba0 61 6d 65 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 61 72 67 75 ame."%s".already.exists.',.$argu
eebc0 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 24 74 68 69 73 2d ment->getName()));.}..if.($this-
eebe0 3e 68 61 73 41 6e 41 72 72 61 79 41 72 67 75 6d 65 6e 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 >hasAnArrayArgument).{.throw.new
eec00 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 43 61 6e 6e 6f 74 20 61 64 64 20 61 6e 20 61 .LogicException('Cannot.add.an.a
eec20 72 67 75 6d 65 6e 74 20 61 66 74 65 72 20 61 6e 20 61 72 72 61 79 20 61 72 67 75 6d 65 6e 74 2e rgument.after.an.array.argument.
eec40 27 29 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 65 64 ');.}..if.($argument->isRequired
eec60 28 29 20 26 26 20 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 61 6c 29 20 7b 0a 74 68 72 6f ().&&.$this->hasOptional).{.thro
eec80 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 43 61 6e 6e 6f 74 20 61 64 64 w.new.LogicException('Cannot.add
eeca0 20 61 20 72 65 71 75 69 72 65 64 20 61 72 67 75 6d 65 6e 74 20 61 66 74 65 72 20 61 6e 20 6f 70 .a.required.argument.after.an.op
eecc0 74 69 6f 6e 61 6c 20 6f 6e 65 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 61 72 67 75 6d 65 6e 74 2d tional.one.');.}..if.($argument-
eece0 3e 69 73 41 72 72 61 79 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 68 61 73 41 6e 41 72 72 61 79 41 >isArray()).{.$this->hasAnArrayA
eed00 72 67 75 6d 65 6e 74 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 61 72 67 75 6d 65 6e 74 rgument.=.true;.}..if.($argument
eed20 2d 3e 69 73 52 65 71 75 69 72 65 64 28 29 29 20 7b 0a 2b 2b 24 74 68 69 73 2d 3e 72 65 71 75 69 ->isRequired()).{.++$this->requi
eed40 72 65 64 43 6f 75 6e 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 redCount;.}.else.{.$this->hasOpt
eed60 69 6f 6e 61 6c 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 ional.=.true;.}..$this->argument
eed80 73 5b 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 61 72 67 75 6d s[$argument->getName()].=.$argum
eeda0 65 6e 74 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 ent;.}...........public.function
eedc0 20 67 65 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 .getArgument($name).{.if.(!$this
eede0 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 20 6e 65 ->hasArgument($name)).{.throw.ne
eee00 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 6e w.InvalidArgumentException(sprin
eee20 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 74 20 65 tf('The."%s".argument.does.not.e
eee40 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 61 72 67 75 6d 65 6e 74 73 20 3d xist.',.$name));.}..$arguments.=
eee60 20 69 73 5f 69 6e 74 28 24 6e 61 6d 65 29 20 3f 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 74 .is_int($name).?.array_values($t
eee80 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 20 3a 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e his->arguments).:.$this->argumen
eeea0 74 73 3b 0a 0a 72 65 74 75 72 6e 20 24 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 3b 0a 7d ts;..return.$arguments[$name];.}
eeec0 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 41 72 67 75 .........public.function.hasArgu
eeee0 6d 65 6e 74 28 24 6e 61 6d 65 29 0a 7b 0a 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 69 73 5f 69 6e ment($name).{.$arguments.=.is_in
eef00 74 28 24 6e 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 t($name).?.array_values($this->a
eef20 72 67 75 6d 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 rguments).:.$this->arguments;..r
eef40 65 74 75 72 6e 20 69 73 73 65 74 28 24 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 29 3b 0a eturn.isset($arguments[$name]);.
eef60 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 6d }.......public.function.getArgum
eef80 65 6e 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 ents().{.return.$this->arguments
eefa0 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 67 ;.}.......public.function.getArg
eefc0 75 6d 65 6e 74 43 6f 75 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 umentCount().{.return.$this->has
eefe0 41 6e 41 72 72 61 79 41 72 67 75 6d 65 6e 74 20 3f 20 50 48 50 5f 49 4e 54 5f 4d 41 58 20 3a 20 AnArrayArgument.?.PHP_INT_MAX.:.
ef000 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a count($this->arguments);.}......
ef020 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 74 52 65 71 75 .public.function.getArgumentRequ
ef040 69 72 65 64 43 6f 75 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 71 75 iredCount().{.return.$this->requ
ef060 69 72 65 64 43 6f 75 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 iredCount;.}.......public.functi
ef080 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 44 65 66 61 75 6c 74 73 28 29 0a 7b 0a 24 76 61 6c 75 on.getArgumentDefaults().{.$valu
ef0a0 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 3e 61 72 es.=.array();.foreach.($this->ar
ef0c0 67 75 6d 65 6e 74 73 20 61 73 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 76 61 6c 75 65 73 5b guments.as.$argument).{.$values[
ef0e0 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 61 72 67 75 6d 65 6e $argument->getName()].=.$argumen
ef100 74 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 t->getDefault();.}..return.$valu
ef120 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 73 65 74 4f es;.}.......public.function.setO
ef140 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 24 74 68 ptions($options.=.array()).{.$th
ef160 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 73 68 is->options.=.array();.$this->sh
ef180 6f 72 74 63 75 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 4f 70 74 ortcuts.=.array();.$this->addOpt
ef1a0 69 6f 6e 73 28 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 ions($options);.}.......public.f
ef1c0 75 6e 63 74 69 6f 6e 20 61 64 64 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 unction.addOptions($options.=.ar
ef1e0 72 61 79 28 29 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 6f 70 74 69 6f 6e 73 20 61 73 20 24 6f ray()).{.foreach.($options.as.$o
ef200 70 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f ption).{.$this->addOption($optio
ef220 6e 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 63 74 69 6f 6e 20 n);.}.}.........public.function.
ef240 61 64 64 4f 70 74 69 6f 6e 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 29 0a 7b addOption(InputOption.$option).{
ef260 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f .if.(isset($this->options[$optio
ef280 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 20 26 26 20 21 24 6f 70 74 69 6f 6e 2d 3e 65 71 75 61 n->getName()]).&&.!$option->equa
ef2a0 6c 73 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 ls($this->options[$option->getNa
ef2c0 6d 65 28 29 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 me()])).{.throw.new.LogicExcepti
ef2e0 6f 6e 28 73 70 72 69 6e 74 66 28 27 41 6e 20 6f 70 74 69 6f 6e 20 6e 61 6d 65 64 20 22 25 73 22 on(sprintf('An.option.named."%s"
ef300 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e .already.exists.',.$option->getN
ef320 61 6d 65 28 29 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 ame()));.}..if.($option->getShor
ef340 74 63 75 74 28 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 65 78 70 6c 6f 64 65 28 27 7c 27 2c 20 tcut()).{.foreach.(explode('|',.
ef360 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 20 61 73 20 24 73 68 6f 72 $option->getShortcut()).as.$shor
ef380 74 63 75 74 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 tcut).{.if.(isset($this->shortcu
ef3a0 74 73 5b 24 73 68 6f 72 74 63 75 74 5d 29 20 26 26 20 21 24 6f 70 74 69 6f 6e 2d 3e 65 71 75 61 ts[$shortcut]).&&.!$option->equa
ef3c0 6c 73 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 ls($this->options[$this->shortcu
ef3e0 74 73 5b 24 73 68 6f 72 74 63 75 74 5d 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 ts[$shortcut]])).{.throw.new.Log
ef400 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 41 6e 20 6f 70 74 69 6f 6e 20 77 icException(sprintf('An.option.w
ef420 69 74 68 20 73 68 6f 72 74 63 75 74 20 22 25 73 22 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 ith.shortcut."%s".already.exists
ef440 2e 27 2c 20 24 73 68 6f 72 74 63 75 74 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f .',.$shortcut));.}.}.}..$this->o
ef460 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 20 3d 20 24 6f 70 ptions[$option->getName()].=.$op
ef480 74 69 6f 6e 3b 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 tion;.if.($option->getShortcut()
ef4a0 29 20 7b 0a 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 ).{.foreach.(explode('|',.$optio
ef4c0 6e 2d 3e 67 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 n->getShortcut()).as.$shortcut).
ef4e0 7b 0a 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 74 5d 20 3d 20 {.$this->shortcuts[$shortcut].=.
ef500 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a $option->getName();.}.}.}.......
ef520 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 28 24 6e ....public.function.getOption($n
ef540 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 ame).{.if.(!$this->hasOption($na
ef560 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 65 6e 74 me)).{.throw.new.InvalidArgument
ef580 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 70 Exception(sprintf('The."--%s".op
ef5a0 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 0a tion.does.not.exist.',.$name));.
ef5c0 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 3b }..return.$this->options[$name];
ef5e0 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 73 4f 70 .}.........public.function.hasOp
ef600 74 69 6f 6e 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 tion($name).{.return.isset($this
ef620 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ->options[$name]);.}.......publi
ef640 63 20 66 75 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 c.function.getOptions().{.return
ef660 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 .$this->options;.}.........publi
ef680 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 29 0a 7b 0a c.function.hasShortcut($name).{.
ef6a0 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 5b 24 6e return.isset($this->shortcuts[$n
ef6c0 61 6d 65 5d 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 ame]);.}.........public.function
ef6e0 20 67 65 74 4f 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 .getOptionForShortcut($shortcut)
ef700 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 24 74 68 69 73 .{.return.$this->getOption($this
ef720 2d 3e 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 29 3b 0a 7d 0a ->shortcutToName($shortcut));.}.
ef740 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 44 ......public.function.getOptionD
ef760 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 28 29 3b 0a 66 efaults().{.$values.=.array();.f
ef780 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 61 73 20 24 6f 70 74 69 6f oreach.($this->options.as.$optio
ef7a0 6e 29 20 7b 0a 24 76 61 6c 75 65 73 5b 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 5d n).{.$values[$option->getName()]
ef7c0 20 3d 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 7d 0a 0a 72 65 74 .=.$option->getDefault();.}..ret
ef7e0 75 72 6e 20 24 76 61 6c 75 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 urn.$values;.}...........private
ef800 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 72 74 63 75 74 54 6f 4e 61 6d 65 28 24 73 68 6f 72 74 63 .function.shortcutToName($shortc
ef820 75 74 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 ut).{.if.(!isset($this->shortcut
ef840 73 5b 24 73 68 6f 72 74 63 75 74 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c s[$shortcut])).{.throw.new.Inval
ef860 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 68 65 idArgumentException(sprintf('The
ef880 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 2e 27 2c 20 ."-%s".option.does.not.exist.',.
ef8a0 24 73 68 6f 72 74 63 75 74 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 68 $shortcut));.}..return.$this->sh
ef8c0 6f 72 74 63 75 74 73 5b 24 73 68 6f 72 74 63 75 74 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 ortcuts[$shortcut];.}.........pu
ef8e0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 79 6e 6f 70 73 69 73 28 24 73 68 6f 72 74 blic.function.getSynopsis($short
ef900 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 65 6c 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b .=.false).{.$elements.=.array();
ef920 0a 0a 69 66 20 28 24 73 68 6f 72 74 20 26 26 20 24 74 68 69 73 2d 3e 67 65 74 4f 70 74 69 6f 6e ..if.($short.&&.$this->getOption
ef940 73 28 29 29 20 7b 0a 24 65 6c 65 6d 65 6e 74 73 5b 5d 20 3d 20 27 5b 6f 70 74 69 6f 6e 73 5d 27 s()).{.$elements[].=.'[options]'
ef960 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 73 68 6f 72 74 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 ;.}.elseif.(!$short).{.foreach.(
ef980 24 74 68 69 73 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 $this->getOptions().as.$option).
ef9a0 7b 0a 24 76 61 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 {.$value.=.'';.if.($option->acce
ef9c0 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 24 76 61 6c 75 65 20 3d 20 73 70 72 69 6e 74 66 28 0a 27 ptValue()).{.$value.=.sprintf(.'
ef9e0 20 25 73 25 73 25 73 27 2c 0a 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e .%s%s%s',.$option->isValueOption
efa00 61 6c 28 29 20 3f 20 27 5b 27 20 3a 20 27 27 2c 0a 73 74 72 74 6f 75 70 70 65 72 28 24 6f 70 74 al().?.'['.:.'',.strtoupper($opt
efa20 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 2c 0a 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 ion->getName()),.$option->isValu
efa40 65 4f 70 74 69 6f 6e 61 6c 28 29 20 3f 20 27 5d 27 20 3a 20 27 27 0a 29 3b 0a 7d 0a 0a 24 73 68 eOptional().?.']'.:.''.);.}..$sh
efa60 6f 72 74 63 75 74 20 3d 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 ortcut.=.$option->getShortcut().
efa80 3f 20 73 70 72 69 6e 74 66 28 27 2d 25 73 7c 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 ?.sprintf('-%s|',.$option->getSh
efaa0 6f 72 74 63 75 74 28 29 29 20 3a 20 27 27 3b 0a 24 65 6c 65 6d 65 6e 74 73 5b 5d 20 3d 20 73 70 ortcut()).:.'';.$elements[].=.sp
efac0 72 69 6e 74 66 28 27 5b 25 73 2d 2d 25 73 25 73 5d 27 2c 20 24 73 68 6f 72 74 63 75 74 2c 20 24 rintf('[%s--%s%s]',.$shortcut,.$
efae0 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 7d 0a option->getName(),.$value);.}.}.
efb00 0a 69 66 20 28 63 6f 75 6e 74 28 24 65 6c 65 6d 65 6e 74 73 29 20 26 26 20 24 74 68 69 73 2d 3e .if.(count($elements).&&.$this->
efb20 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 29 20 7b 0a 24 65 6c 65 6d 65 6e 74 73 5b 5d 20 3d 20 getArguments()).{.$elements[].=.
efb40 27 5b 2d 2d 5d 27 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 41 72 '[--]';.}..foreach.($this->getAr
efb60 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 65 6c 65 6d 65 guments().as.$argument).{.$eleme
efb80 6e 74 20 3d 20 27 3c 27 2e 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 3e nt.=.'<'.$argument->getName().'>
efba0 27 3b 0a 69 66 20 28 21 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 65 64 28 29 29 ';.if.(!$argument->isRequired())
efbc0 20 7b 0a 24 65 6c 65 6d 65 6e 74 20 3d 20 27 5b 27 2e 24 65 6c 65 6d 65 6e 74 2e 27 5d 27 3b 0a .{.$element.=.'['.$element.']';.
efbe0 7d 20 65 6c 73 65 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 }.elseif.($argument->isArray()).
efc00 7b 0a 24 65 6c 65 6d 65 6e 74 20 3d 20 24 65 6c 65 6d 65 6e 74 2e 27 20 28 27 2e 24 65 6c 65 6d {.$element.=.$element.'.('.$elem
efc20 65 6e 74 2e 27 29 27 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 ent.')';.}..if.($argument->isArr
efc40 61 79 28 29 29 20 7b 0a 24 65 6c 65 6d 65 6e 74 20 2e 3d 20 27 2e 2e 2e 27 3b 0a 7d 0a 0a 24 65 ay()).{.$element..=.'...';.}..$e
efc60 6c 65 6d 65 6e 74 73 5b 5d 20 3d 20 24 65 6c 65 6d 65 6e 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 lements[].=.$element;.}..return.
efc80 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 24 65 6c 65 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a implode('.',.$elements);.}......
efca0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 54 65 78 74 28 29 0a 7b 0a 40 74 ...public.function.asText().{.@t
efcc0 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 4f 44 5f 5f 2e 27 rigger_error('The.'.__METHOD__.'
efce0 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 65 20 76 65 72 73 .method.is.deprecated.since.vers
efd00 69 6f 6e 20 32 2e 33 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 ion.2.3.and.will.be.removed.in.3
efd20 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 24 64 65 73 63 .0.',.E_USER_DEPRECATED);..$desc
efd40 72 69 70 74 6f 72 20 3d 20 6e 65 77 20 54 65 78 74 44 65 73 63 72 69 70 74 6f 72 28 29 3b 0a 24 riptor.=.new.TextDescriptor();.$
efd60 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 42 75 66 66 output.=.new.BufferedOutput(Buff
efd80 65 72 65 64 4f 75 74 70 75 74 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 20 74 72 eredOutput::VERBOSITY_NORMAL,.tr
efda0 75 65 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 ue);.$descriptor->describe($outp
efdc0 75 74 2c 20 24 74 68 69 73 2c 20 61 72 72 61 79 28 27 72 61 77 5f 6f 75 74 70 75 74 27 20 3d 3e ut,.$this,.array('raw_output'.=>
efde0 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 3e 66 65 74 63 68 28 .true));..return.$output->fetch(
efe00 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 61 );.}...........public.function.a
efe20 73 58 6d 6c 28 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 sXml($asDom.=.false).{.@trigger_
efe40 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 64 error('The.'.__METHOD__.'.method
efe60 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 33 .is.deprecated.since.version.2.3
efe80 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
efea0 5f 55 53 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 _USER_DEPRECATED);..$descriptor.
efec0 3d 20 6e 65 77 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 =.new.XmlDescriptor();..if.($asD
efee0 6f 6d 29 20 7b 0a 72 65 74 75 72 6e 20 24 64 65 73 63 72 69 70 74 6f 72 2d 3e 67 65 74 49 6e 70 om).{.return.$descriptor->getInp
eff00 75 74 44 65 66 69 6e 69 74 69 6f 6e 44 6f 63 75 6d 65 6e 74 28 24 74 68 69 73 29 3b 0a 7d 0a 0a utDefinitionDocument($this);.}..
eff20 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 29 3b 0a $output.=.new.BufferedOutput();.
eff40 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 2c 20 24 $descriptor->describe($output,.$
eff60 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 65 74 63 68 28 29 3b this);..return.$output->fetch();
eff80 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
effa0 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 3b 0a ymfony\Component\Console\Input;.
effc0 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b ......interface.InputInterface.{
effe0 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 46 69 72 73 74 41 72 ......public.function.getFirstAr
f0000 67 75 6d 65 6e 74 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 gument();............public.func
f0020 74 69 6f 6e 20 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 29 tion.hasParameterOption($values)
f0040 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 74 69 6f 6e 20 67 65 ;.............public.function.ge
f0060 74 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 2c 20 24 64 65 66 61 75 tParameterOption($values,.$defau
f0080 6c 74 20 3d 20 66 61 6c 73 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 lt.=.false);.......public.functi
f00a0 6f 6e 20 62 69 6e 64 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 on.bind(InputDefinition.$definit
f00c0 69 6f 6e 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 76 61 ion);.........public.function.va
f00e0 6c 69 64 61 74 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 lidate();.......public.function.
f0100 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 getArguments();.........public.f
f0120 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a unction.getArgument($name);.....
f0140 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 67 75 6d 65 6e 74 .....public.function.setArgument
f0160 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 69 63 20 ($name,.$value);.........public.
f0180 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 3b 0a 0a 0a 0a function.hasArgument($name);....
f01a0 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 73 28 29 3b ...public.function.getOptions();
f01c0 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 4f 70 74 69 .........public.function.getOpti
f01e0 6f 6e 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 on($name);..........public.funct
f0200 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 3b 0a 0a 0a ion.setOption($name,.$value);...
f0220 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 4f 70 74 69 6f 6e 28 ......public.function.hasOption(
f0240 24 6e 61 6d 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 69 73 $name);.......public.function.is
f0260 49 6e 74 65 72 61 63 74 69 76 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 Interactive();.......public.func
f0280 74 69 6f 6e 20 73 65 74 49 6e 74 65 72 61 63 74 69 76 65 28 24 69 6e 74 65 72 61 63 74 69 76 65 tion.setInteractive($interactive
f02a0 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 65 20 53 );.}.<?php...........namespace.S
f02c0 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 3b 0a ymfony\Component\Console\Input;.
f02e0 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 45 .use.Symfony\Component\Console\E
f0300 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 74 69 6f xception\InvalidArgumentExceptio
f0320 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
f0340 5c 45 78 63 65 70 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 \Exception\LogicException;......
f0360 0a 63 6c 61 73 73 20 49 6e 70 75 74 4f 70 74 69 6f 6e 0a 7b 0a 63 6f 6e 73 74 20 56 41 4c 55 45 .class.InputOption.{.const.VALUE
f0380 5f 4e 4f 4e 45 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 20 _NONE.=.1;.const.VALUE_REQUIRED.
f03a0 3d 20 32 3b 0a 63 6f 6e 73 74 20 56 41 4c 55 45 5f 4f 50 54 49 4f 4e 41 4c 20 3d 20 34 3b 0a 63 =.2;.const.VALUE_OPTIONAL.=.4;.c
f03c0 6f 6e 73 74 20 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 3d 20 38 3b 0a 0a 70 72 69 76 61 74 onst.VALUE_IS_ARRAY.=.8;..privat
f03e0 65 20 24 6e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 73 68 6f 72 74 63 75 74 3b 0a 70 72 69 76 e.$name;.private.$shortcut;.priv
f0400 61 74 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 ate.$mode;.private.$default;.pri
f0420 76 61 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 0a 70 vate.$description;.............p
f0440 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
f0460 2c 20 24 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 ,.$shortcut.=.null,.$mode.=.null
f0480 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.=.
f04a0 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 6e 61 6d 65 2c 20 null).{.if.(0.===.strpos($name,.
f04c0 27 2d 2d 27 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 32 '--')).{.$name.=.substr($name,.2
f04e0 29 3b 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 );.}..if.(empty($name)).{.throw.
f0500 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 27 41 6e new.InvalidArgumentException('An
f0520 20 6f 70 74 69 6f 6e 20 6e 61 6d 65 20 63 61 6e 6e 6f 74 20 62 65 20 65 6d 70 74 79 2e 27 29 3b .option.name.cannot.be.empty.');
f0540 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 73 68 6f 72 74 63 75 74 29 29 20 7b 0a 24 73 68 6f .}..if.(empty($shortcut)).{.$sho
f0560 72 74 63 75 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 73 rtcut.=.null;.}..if.(null.!==.$s
f0580 68 6f 72 74 63 75 74 29 20 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 73 68 6f 72 74 63 75 hortcut).{.if.(is_array($shortcu
f05a0 74 29 29 20 7b 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 t)).{.$shortcut.=.implode('|',.$
f05c0 73 68 6f 72 74 63 75 74 29 3b 0a 7d 0a 24 73 68 6f 72 74 63 75 74 73 20 3d 20 70 72 65 67 5f 73 shortcut);.}.$shortcuts.=.preg_s
f05e0 70 6c 69 74 28 27 7b 28 5c 7c 29 2d 3f 7d 27 2c 20 6c 74 72 69 6d 28 24 73 68 6f 72 74 63 75 74 plit('{(\|)-?}',.ltrim($shortcut
f0600 2c 20 27 2d 27 29 29 3b 0a 24 73 68 6f 72 74 63 75 74 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 ,.'-'));.$shortcuts.=.array_filt
f0620 65 72 28 24 73 68 6f 72 74 63 75 74 73 29 3b 0a 24 73 68 6f 72 74 63 75 74 20 3d 20 69 6d 70 6c er($shortcuts);.$shortcut.=.impl
f0640 6f 64 65 28 27 7c 27 2c 20 24 73 68 6f 72 74 63 75 74 73 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 ode('|',.$shortcuts);..if.(empty
f0660 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 49 6e 76 61 6c 69 64 ($shortcut)).{.throw.new.Invalid
f0680 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 73 68 6f ArgumentException('An.option.sho
f06a0 72 74 63 75 74 20 63 61 6e 6e 6f 74 20 62 65 20 65 6d 70 74 79 2e 27 29 3b 0a 7d 0a 7d 0a 0a 69 rtcut.cannot.be.empty.');.}.}..i
f06c0 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6d 6f 64 65 29 20 7b 0a 24 6d 6f 64 65 20 3d 20 73 65 6c f.(null.===.$mode).{.$mode.=.sel
f06e0 66 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 69 6e 74 f::VALUE_NONE;.}.elseif.(!is_int
f0700 28 24 6d 6f 64 65 29 20 7c 7c 20 24 6d 6f 64 65 20 3e 20 31 35 20 7c 7c 20 24 6d 6f 64 65 20 3c ($mode).||.$mode.>.15.||.$mode.<
f0720 20 31 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 .1).{.throw.new.InvalidArgumentE
f0740 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4f 70 74 69 6f 6e 20 6d 6f 64 65 20 22 25 xception(sprintf('Option.mode."%
f0760 73 22 20 69 73 20 6e 6f 74 20 76 61 6c 69 64 2e 27 2c 20 24 6d 6f 64 65 29 29 3b 0a 7d 0a 0a 24 s".is.not.valid.',.$mode));.}..$
f0780 74 68 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 73 68 6f 72 74 this->name.=.$name;.$this->short
f07a0 63 75 74 20 3d 20 24 73 68 6f 72 74 63 75 74 3b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 cut.=.$shortcut;.$this->mode.=.$
f07c0 6d 6f 64 65 3b 0a 24 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 mode;.$this->description.=.$desc
f07e0 72 69 70 74 69 6f 6e 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 41 72 72 61 79 28 29 20 26 ription;..if.($this->isArray().&
f0800 26 20 21 24 74 68 69 73 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 74 68 72 6f 77 &.!$this->acceptValue()).{.throw
f0820 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 27 49 .new.InvalidArgumentException('I
f0840 6d 70 6f 73 73 69 62 6c 65 20 74 6f 20 68 61 76 65 20 61 6e 20 6f 70 74 69 6f 6e 20 6d 6f 64 65 mpossible.to.have.an.option.mode
f0860 20 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 69 66 20 74 68 65 20 6f 70 74 69 6f 6e 20 64 6f .VALUE_IS_ARRAY.if.the.option.do
f0880 65 73 20 6e 6f 74 20 61 63 63 65 70 74 20 61 20 76 61 6c 75 65 2e 27 29 3b 0a 7d 0a 0a 24 74 68 es.not.accept.a.value.');.}..$th
f08a0 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 0a 0a 0a is->setDefault($default);.}.....
f08c0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 68 6f 72 74 63 75 74 28 29 0a ..public.function.getShortcut().
f08e0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 3b 0a 7d 0a 0a 0a 0a 0a {.return.$this->shortcut;.}.....
f0900 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
f0920 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
f0940 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 56 61 6c 75 65 28 29 0a 7b 0a 72 65 74 75 72 6e .function.acceptValue().{.return
f0960 20 24 74 68 69 73 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 20 7c 7c 20 24 74 68 .$this->isValueRequired().||.$th
f0980 69 73 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 is->isValueOptional();.}.......p
f09a0 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 ublic.function.isValueRequired()
f09c0 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 20 3d .{.return.self::VALUE_REQUIRED.=
f09e0 3d 3d 20 28 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 20 26 20 24 74 68 69 73 ==.(self::VALUE_REQUIRED.&.$this
f0a00 2d 3e 6d 6f 64 65 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 ->mode);.}.......public.function
f0a20 20 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 .isValueOptional().{.return.self
f0a40 3a 3a 56 41 4c 55 45 5f 4f 50 54 49 4f 4e 41 4c 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 56 41 4c 55 ::VALUE_OPTIONAL.===.(self::VALU
f0a60 45 5f 4f 50 54 49 4f 4e 41 4c 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 0a 0a E_OPTIONAL.&.$this->mode);.}....
f0a80 0a 0a 0a 70 75 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 ...public.function.isArray().{.r
f0aa0 65 74 75 72 6e 20 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 3d 3d 3d 20 28 eturn.self::VALUE_IS_ARRAY.===.(
f0ac0 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 26 20 24 74 68 69 73 2d 3e 6d 6f self::VALUE_IS_ARRAY.&.$this->mo
f0ae0 64 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 20 73 de);.}.........public.function.s
f0b00 65 74 44 65 66 61 75 6c 74 28 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 etDefault($default.=.null).{.if.
f0b20 28 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 56 41 4c (self::VALUE_NONE.===.(self::VAL
f0b40 55 45 5f 4e 4f 4e 45 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 26 26 20 6e 75 6c 6c 20 21 UE_NONE.&.$this->mode).&&.null.!
f0b60 3d 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 ==.$default).{.throw.new.LogicEx
f0b80 63 65 70 74 69 6f 6e 28 27 43 61 6e 6e 6f 74 20 73 65 74 20 61 20 64 65 66 61 75 6c 74 20 76 61 ception('Cannot.set.a.default.va
f0ba0 6c 75 65 20 77 68 65 6e 20 75 73 69 6e 67 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 lue.when.using.InputOption::VALU
f0bc0 45 5f 4e 4f 4e 45 20 6d 6f 64 65 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 E_NONE.mode.');.}..if.($this->is
f0be0 41 72 72 61 79 28 29 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 66 61 75 6c 74 Array()).{.if.(null.===.$default
f0c00 29 20 7b 0a 24 64 65 66 61 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 20 65 6c 73 65 69 66 ).{.$default.=.array();.}.elseif
f0c20 20 28 21 69 73 5f 61 72 72 61 79 28 24 64 65 66 61 75 6c 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e .(!is_array($default)).{.throw.n
f0c40 65 77 20 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 41 20 64 65 66 61 75 6c 74 20 76 61 6c ew.LogicException('A.default.val
f0c60 75 65 20 66 6f 72 20 61 6e 20 61 72 72 61 79 20 6f 70 74 69 6f 6e 20 6d 75 73 74 20 62 65 20 61 ue.for.an.array.option.must.be.a
f0c80 6e 20 61 72 72 61 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 n.array.');.}.}..$this->default.
f0ca0 3d 20 24 74 68 69 73 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 20 3f 20 24 64 65 66 61 75 6c =.$this->acceptValue().?.$defaul
f0cc0 74 20 3a 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 t.:.false;.}.......public.functi
f0ce0 6f 6e 20 67 65 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 on.getDefault().{.return.$this->
f0d00 64 65 66 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 default;.}.......public.function
f0d20 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 74 68 69 73 .getDescription().{.return.$this
f0d40 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 70 75 62 6c 69 63 20 ->description;.}.........public.
f0d60 66 75 6e 63 74 69 6f 6e 20 65 71 75 61 6c 73 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 function.equals(InputOption.$opt
f0d80 69 6f 6e 29 0a 7b 0a 72 65 74 75 72 6e 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 ion).{.return.$option->getName()
f0da0 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 0a 26 26 20 24 6f 70 74 69 6f 6e .===.$this->getName().&&.$option
f0dc0 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 68 ->getShortcut().===.$this->getSh
f0de0 6f 72 74 63 75 74 28 29 0a 26 26 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 ortcut().&&.$option->getDefault(
f0e00 29 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 0a 26 26 20 24 6f 70 ).===.$this->getDefault().&&.$op
f0e20 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 73 41 72 72 tion->isArray().===.$this->isArr
f0e40 61 79 28 29 0a 26 26 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 ay().&&.$option->isValueRequired
f0e60 28 29 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 0a ().===.$this->isValueRequired().
f0e80 26 26 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 3d 3d &&.$option->isValueOptional().==
f0ea0 3d 20 24 74 68 69 73 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 0a 3b 0a 7d 0a 7d =.$this->isValueOptional().;.}.}
f0ec0 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
f0ee0 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 3b 0a 0a 75 73 65 ny\Component\Console\Input;..use
f0f00 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
f0f20 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 74 69 6f 6e 3b 0a 0a tion\InvalidArgumentException;..
f0f40 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 74 72 69 6e 67 49 6e 70 75 74 20 65 78 74 65 6e .........class.StringInput.exten
f0f60 64 73 20 41 72 67 76 49 6e 70 75 74 0a 7b 0a 63 6f 6e 73 74 20 52 45 47 45 58 5f 53 54 52 49 4e ds.ArgvInput.{.const.REGEX_STRIN
f0f80 47 20 3d 20 27 28 5b 5e 5c 73 5d 2b 3f 29 28 3f 3a 5c 73 7c 28 3f 3c 21 5c 5c 5c 5c 29 22 7c 28 G.=.'([^\s]+?)(?:\s|(?<!\\\\)"|(
f0fa0 3f 3c 21 5c 5c 5c 5c 29 5c 27 7c 24 29 27 3b 0a 63 6f 6e 73 74 20 52 45 47 45 58 5f 51 55 4f 54 ?<!\\\\)\'|$)';.const.REGEX_QUOT
f0fc0 45 44 5f 53 54 52 49 4e 47 20 3d 20 27 28 3f 3a 22 28 5b 5e 22 5c 5c 5c 5c 5d 2a 28 3f 3a 5c 5c ED_STRING.=.'(?:"([^"\\\\]*(?:\\
f0fe0 5c 5c 2e 5b 5e 22 5c 5c 5c 5c 5d 2a 29 2a 29 22 7c 5c 27 28 5b 5e 5c 27 5c 5c 5c 5c 5d 2a 28 3f \\.[^"\\\\]*)*)"|\'([^\'\\\\]*(?
f1000 3a 5c 5c 5c 5c 2e 5b 5e 5c 27 5c 5c 5c 5c 5d 2a 29 2a 29 5c 27 29 27 3b 0a 0a 0a 0a 0a 0a 0a 0a :\\\\.[^\'\\\\]*)*)\')';........
f1020 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 69 ..public.function.__construct($i
f1040 6e 70 75 74 2c 20 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 nput,.InputDefinition.$definitio
f1060 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 40 n.=.null).{.if.($definition).{.@
f1080 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 68 65 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 61 trigger_error('The.$definition.a
f10a0 72 67 75 6d 65 6e 74 20 6f 66 20 74 68 65 20 27 2e 5f 5f 4d 45 54 48 4f 44 5f 5f 2e 27 20 6d 65 rgument.of.the.'.__METHOD__.'.me
f10c0 74 68 6f 64 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 72 thod.is.deprecated.and.will.be.r
f10e0 65 6d 6f 76 65 64 20 69 6e 20 33 2e 30 2e 20 53 65 74 20 74 68 69 73 20 70 61 72 61 6d 65 74 65 emoved.in.3.0..Set.this.paramete
f1100 72 20 77 69 74 68 20 74 68 65 20 62 69 6e 64 28 29 20 6d 65 74 68 6f 64 20 69 6e 73 74 65 61 64 r.with.the.bind().method.instead
f1120 2e 27 2c 20 45 5f 55 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 7d 0a 0a 70 61 72 65 6e .',.E_USER_DEPRECATED);.}..paren
f1140 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 28 29 2c 20 6e 75 6c 6c 29 3b 0a 0a t::__construct(array(),.null);..
f1160 24 74 68 69 73 2d 3e 73 65 74 54 6f 6b 65 6e 73 28 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 69 7a 65 $this->setTokens($this->tokenize
f1180 28 24 69 6e 70 75 74 29 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 66 69 6e 69 ($input));..if.(null.!==.$defini
f11a0 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 62 69 6e 64 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 tion).{.$this->bind($definition)
f11c0 3b 0a 7d 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 ;.}.}...........private.function
f11e0 20 74 6f 6b 65 6e 69 7a 65 28 24 69 6e 70 75 74 29 0a 7b 0a 24 74 6f 6b 65 6e 73 20 3d 20 61 72 .tokenize($input).{.$tokens.=.ar
f1200 72 61 79 28 29 3b 0a 24 6c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 69 6e 70 75 74 29 3b ray();.$length.=.strlen($input);
f1220 0a 24 63 75 72 73 6f 72 20 3d 20 30 3b 0a 77 68 69 6c 65 20 28 24 63 75 72 73 6f 72 20 3c 20 24 .$cursor.=.0;.while.($cursor.<.$
f1240 6c 65 6e 67 74 68 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5c 73 2b 2f 41 length).{.if.(preg_match('/\s+/A
f1260 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 75 72 73 6f 72 ',.$input,.$match,.null,.$cursor
f1280 29 29 20 7b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 28 5b 5e 3d )).{.}.elseif.(preg_match('/([^=
f12a0 22 5c 27 5c 73 5d 2b 3f 29 28 3d 3f 29 28 27 2e 73 65 6c 66 3a 3a 52 45 47 45 58 5f 51 55 4f 54 "\'\s]+?)(=?)('.self::REGEX_QUOT
f12c0 45 44 5f 53 54 52 49 4e 47 2e 27 2b 29 2f 41 27 2c 20 24 69 6e 70 75 74 2c 20 24 6d 61 74 63 68 ED_STRING.'+)/A',.$input,.$match
f12e0 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 20 ,.null,.$cursor)).{.$tokens[].=.
f1300 24 6d 61 74 63 68 5b 31 5d 2e 24 6d 61 74 63 68 5b 32 5d 2e 73 74 72 69 70 63 73 6c 61 73 68 65 $match[1].$match[2].stripcslashe
f1320 73 28 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 22 5c 27 27 2c 20 27 5c 27 22 27 s(str_replace(array('"\'',.'\'"'
f1340 2c 20 27 5c 27 5c 27 27 2c 20 27 22 22 27 29 2c 20 27 27 2c 20 73 75 62 73 74 72 28 24 6d 61 74 ,.'\'\'',.'""'),.'',.substr($mat
f1360 63 68 5b 33 5d 2c 20 31 2c 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 33 5d 29 20 2d 20 32 29 ch[3],.1,.strlen($match[3]).-.2)
f1380 29 29 3b 0a 7d 20 65 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 ));.}.elseif.(preg_match('/'.sel
f13a0 66 3a 3a 52 45 47 45 58 5f 51 55 4f 54 45 44 5f 53 54 52 49 4e 47 2e 27 2f 41 27 2c 20 24 69 6e f::REGEX_QUOTED_STRING.'/A',.$in
f13c0 70 75 74 2c 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 24 put,.$match,.null,.$cursor)).{.$
f13e0 74 6f 6b 65 6e 73 5b 5d 20 3d 20 73 74 72 69 70 63 73 6c 61 73 68 65 73 28 73 75 62 73 74 72 28 tokens[].=.stripcslashes(substr(
f1400 24 6d 61 74 63 68 5b 30 5d 2c 20 31 2c 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 30 5d 29 20 $match[0],.1,.strlen($match[0]).
f1420 2d 20 32 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 27 2e -.2));.}.elseif.(preg_match('/'.
f1440 73 65 6c 66 3a 3a 52 45 47 45 58 5f 53 54 52 49 4e 47 2e 27 2f 41 27 2c 20 24 69 6e 70 75 74 2c self::REGEX_STRING.'/A',.$input,
f1460 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 24 74 6f 6b 65 .$match,.null,.$cursor)).{.$toke
f1480 6e 73 5b 5d 20 3d 20 73 74 72 69 70 63 73 6c 61 73 68 65 73 28 24 6d 61 74 63 68 5b 31 5d 29 3b ns[].=.stripcslashes($match[1]);
f14a0 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 41 72 67 .}.else.{...throw.new.InvalidArg
f14c0 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 61 62 6c 65 20 74 umentException(sprintf('Unable.t
f14e0 6f 20 70 61 72 73 65 20 69 6e 70 75 74 20 6e 65 61 72 20 22 2e 2e 2e 20 25 73 20 2e 2e 2e 22 27 o.parse.input.near."....%s...."'
f1500 2c 20 73 75 62 73 74 72 28 24 69 6e 70 75 74 2c 20 24 63 75 72 73 6f 72 2c 20 31 30 29 29 29 3b ,.substr($input,.$cursor,.10)));
f1520 0a 7d 0a 0a 24 63 75 72 73 6f 72 20 2b 3d 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 30 5d 29 .}..$cursor.+=.strlen($match[0])
f1540 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6f 6b 65 6e 73 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 ;.}..return.$tokens;.}.}.Copyrig
f1560 68 74 20 28 63 29 20 32 30 30 34 2d 32 30 31 35 20 46 61 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 ht.(c).2004-2015.Fabien.Potencie
f1580 72 0a 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 r..Permission.is.hereby.granted,
f15a0 20 66 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 .free.of.charge,.to.any.person.o
f15c0 62 74 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 btaining.a.copy.of.this.software
f15e0 20 61 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 .and.associated.documentation.fi
f1600 6c 65 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 les.(the."Software"),.to.deal.in
f1620 20 74 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 .the.Software.without.restrictio
f1640 6e 2c 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 n,.including.without.limitation.
f1660 74 68 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 the.rights.to.use,.copy,.modify,
f1680 20 6d 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 .merge,.publish,.distribute,.sub
f16a0 6c 69 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 license,.and/or.sell.copies.of.t
f16c0 68 65 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 he.Software,.and.to.permit.perso
f16e0 6e 73 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 ns.to.whom.the.Software.is.furni
f1700 73 68 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 shed.to.do.so,.subject.to.the.fo
f1720 6c 6c 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 llowing.conditions:..The.above.c
f1740 6f 70 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 opyright.notice.and.this.permiss
f1760 69 6f 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 ion.notice.shall.be.included.in.
f1780 61 6c 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 all.copies.or.substantial.portio
f17a0 6e 73 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 ns.of.the.Software...THE.SOFTWAR
f17c0 45 20 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 E.IS.PROVIDED."AS.IS",.WITHOUT.W
f17e0 41 52 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 ARRANTY.OF.ANY.KIND,.EXPRESS.OR.
f1800 49 4d 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 IMPLIED,.INCLUDING.BUT.NOT.LIMIT
f1820 45 44 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 ED.TO.THE.WARRANTIES.OF.MERCHANT
f1840 41 42 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 ABILITY,.FITNESS.FOR.A.PARTICULA
f1860 52 20 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 R.PURPOSE.AND.NONINFRINGEMENT..I
f1880 4e 20 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 N.NO.EVENT.SHALL.THE.AUTHORS.OR.
f18a0 43 4f 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 COPYRIGHT.HOLDERS.BE.LIABLE.FOR.
f18c0 41 4e 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 ANY.CLAIM,.DAMAGES.OR.OTHER.LIAB
f18e0 49 4c 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 ILITY,.WHETHER.IN.AN.ACTION.OF.C
f1900 4f 4e 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 ONTRACT,.TORT.OR.OTHERWISE,.ARIS
f1920 49 4e 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 ING.FROM,.OUT.OF.OR.IN.CONNECTIO
f1940 4e 20 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 N.WITH.THE.SOFTWARE.OR.THE.USE.O
f1960 52 20 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 R.OTHER.DEALINGS.IN.THE.SOFTWARE
f1980 2e 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
f19a0 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4c 6f 67 67 65 72 3b 0a 0a 75 ony\Component\Console\Logger;..u
f19c0 73 65 20 50 73 72 5c 4c 6f 67 5c 41 62 73 74 72 61 63 74 4c 6f 67 67 65 72 3b 0a 75 73 65 20 50 se.Psr\Log\AbstractLogger;.use.P
f19e0 73 72 5c 4c 6f 67 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 sr\Log\InvalidArgumentException;
f1a00 0a 75 73 65 20 50 73 72 5c 4c 6f 67 5c 4c 6f 67 4c 65 76 65 6c 3b 0a 75 73 65 20 53 79 6d 66 6f .use.Psr\Log\LogLevel;.use.Symfo
f1a20 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
f1a40 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
f1a60 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
f1a80 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 4c nterface;.........class.ConsoleL
f1aa0 6f 67 67 65 72 20 65 78 74 65 6e 64 73 20 41 62 73 74 72 61 63 74 4c 6f 67 67 65 72 0a 7b 0a 63 ogger.extends.AbstractLogger.{.c
f1ac0 6f 6e 73 74 20 49 4e 46 4f 20 3d 20 27 69 6e 66 6f 27 3b 0a 63 6f 6e 73 74 20 45 52 52 4f 52 20 onst.INFO.=.'info';.const.ERROR.
f1ae0 3d 20 27 65 72 72 6f 72 27 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a =.'error';.....private.$output;.
f1b00 0a 0a 0a 70 72 69 76 61 74 65 20 24 76 65 72 62 6f 73 69 74 79 4c 65 76 65 6c 4d 61 70 20 3d 20 ...private.$verbosityLevelMap.=.
f1b20 61 72 72 61 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 4f 75 array(.LogLevel::EMERGENCY.=>.Ou
f1b40 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 52 4d 41 4c 2c tputInterface::VERBOSITY_NORMAL,
f1b60 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 41 4c 45 52 54 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 .LogLevel::ALERT.=>.OutputInterf
f1b80 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:
f1ba0 3a 43 52 49 54 49 43 41 4c 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 45 :CRITICAL.=>.OutputInterface::VE
f1bc0 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 45 52 52 4f 52 20 RBOSITY_NORMAL,.LogLevel::ERROR.
f1be0 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
f1c00 52 4d 41 4c 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 57 41 52 4e 49 4e 47 20 3d 3e 20 4f 75 74 70 75 RMAL,.LogLevel::WARNING.=>.Outpu
f1c20 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 2c 0a 4c 6f tInterface::VERBOSITY_NORMAL,.Lo
f1c40 67 4c 65 76 65 6c 3a 3a 4e 4f 54 49 43 45 20 3d 3e 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 gLevel::NOTICE.=>.OutputInterfac
f1c60 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a e::VERBOSITY_VERBOSE,.LogLevel::
f1c80 49 4e 46 4f 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 INFO.=>.OutputInterface::VERBOSI
f1ca0 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 44 45 42 55 47 TY_VERY_VERBOSE,.LogLevel::DEBUG
f1cc0 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 44 .=>.OutputInterface::VERBOSITY_D
f1ce0 45 42 55 47 2c 0a 29 3b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 4c 65 76 65 6c EBUG,.);....private.$formatLevel
f1d00 4d 61 70 20 3d 20 61 72 72 61 79 28 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 45 4d 45 52 47 45 4e 43 59 Map.=.array(.LogLevel::EMERGENCY
f1d20 20 3d 3e 20 73 65 6c 66 3a 3a 45 52 52 4f 52 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 41 4c 45 52 54 .=>.self::ERROR,.LogLevel::ALERT
f1d40 20 3d 3e 20 73 65 6c 66 3a 3a 45 52 52 4f 52 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 43 52 49 54 49 .=>.self::ERROR,.LogLevel::CRITI
f1d60 43 41 4c 20 3d 3e 20 73 65 6c 66 3a 3a 45 52 52 4f 52 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 45 52 CAL.=>.self::ERROR,.LogLevel::ER
f1d80 52 4f 52 20 3d 3e 20 73 65 6c 66 3a 3a 45 52 52 4f 52 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 57 41 ROR.=>.self::ERROR,.LogLevel::WA
f1da0 52 4e 49 4e 47 20 3d 3e 20 73 65 6c 66 3a 3a 49 4e 46 4f 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 4e RNING.=>.self::INFO,.LogLevel::N
f1dc0 4f 54 49 43 45 20 3d 3e 20 73 65 6c 66 3a 3a 49 4e 46 4f 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 49 OTICE.=>.self::INFO,.LogLevel::I
f1de0 4e 46 4f 20 3d 3e 20 73 65 6c 66 3a 3a 49 4e 46 4f 2c 0a 4c 6f 67 4c 65 76 65 6c 3a 3a 44 45 42 NFO.=>.self::INFO,.LogLevel::DEB
f1e00 55 47 20 3d 3e 20 73 65 6c 66 3a 3a 49 4e 46 4f 2c 0a 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 UG.=>.self::INFO,.);.......publi
f1e20 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
f1e40 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 61 72 72 61 79 20 24 76 65 72 62 6f 73 69 74 79 erface.$output,.array.$verbosity
f1e60 4c 65 76 65 6c 4d 61 70 20 3d 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 20 24 66 6f 72 6d 61 LevelMap.=.array(),.array.$forma
f1e80 74 4c 65 76 65 6c 4d 61 70 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 tLevelMap.=.array()).{.$this->ou
f1ea0 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 3b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 tput.=.$output;.$this->verbosity
f1ec0 4c 65 76 65 6c 4d 61 70 20 3d 20 24 76 65 72 62 6f 73 69 74 79 4c 65 76 65 6c 4d 61 70 20 2b 20 LevelMap.=.$verbosityLevelMap.+.
f1ee0 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 4c 65 76 65 6c 4d 61 70 3b 0a 24 74 68 69 73 2d $this->verbosityLevelMap;.$this-
f1f00 3e 66 6f 72 6d 61 74 4c 65 76 65 6c 4d 61 70 20 3d 20 24 66 6f 72 6d 61 74 4c 65 76 65 6c 4d 61 >formatLevelMap.=.$formatLevelMa
f1f20 70 20 2b 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 4c 65 76 65 6c 4d 61 70 3b 0a 7d 0a 0a 0a 0a p.+.$this->formatLevelMap;.}....
f1f40 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 67 28 24 6c 65 76 65 6c 2c 20 24 6d 65 .public.function.log($level,.$me
f1f60 73 73 61 67 65 2c 20 61 72 72 61 79 20 24 63 6f 6e 74 65 78 74 20 3d 20 61 72 72 61 79 28 29 29 ssage,.array.$context.=.array())
f1f80 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 4c 65 .{.if.(!isset($this->verbosityLe
f1fa0 76 65 6c 4d 61 70 5b 24 6c 65 76 65 6c 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 velMap[$level])).{.throw.new.Inv
f1fc0 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
f1fe0 68 65 20 6c 6f 67 20 6c 65 76 65 6c 20 22 25 73 22 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 he.log.level."%s".does.not.exist
f2000 2e 27 2c 20 24 6c 65 76 65 6c 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 66 6f .',.$level));.}....if.($this->fo
f2020 72 6d 61 74 4c 65 76 65 6c 4d 61 70 5b 24 6c 65 76 65 6c 5d 20 3d 3d 3d 20 73 65 6c 66 3a 3a 45 rmatLevelMap[$level].===.self::E
f2040 52 52 4f 52 20 26 26 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 69 6e 73 74 61 6e 63 65 6f 66 RROR.&&.$this->output.instanceof
f2060 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 24 6f 75 74 70 .ConsoleOutputInterface).{.$outp
f2080 75 74 20 3d 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 ut.=.$this->output->getErrorOutp
f20a0 75 74 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e ut();.}.else.{.$output.=.$this->
f20c0 6f 75 74 70 75 74 3b 0a 7d 0a 0a 69 66 20 28 24 6f 75 74 70 75 74 2d 3e 67 65 74 56 65 72 62 6f output;.}..if.($output->getVerbo
f20e0 73 69 74 79 28 29 20 3e 3d 20 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 4c 65 76 65 6c 4d sity().>=.$this->verbosityLevelM
f2100 61 70 5b 24 6c 65 76 65 6c 5d 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 ap[$level]).{.$output->writeln(s
f2120 70 72 69 6e 74 66 28 27 3c 25 31 24 73 3e 5b 25 32 24 73 5d 20 25 33 24 73 3c 2f 25 31 24 73 3e printf('<%1$s>[%2$s].%3$s</%1$s>
f2140 27 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 4c 65 76 65 6c 4d 61 70 5b 24 6c 65 76 65 6c 5d ',.$this->formatLevelMap[$level]
f2160 2c 20 24 6c 65 76 65 6c 2c 20 24 74 68 69 73 2d 3e 69 6e 74 65 72 70 6f 6c 61 74 65 28 24 6d 65 ,.$level,.$this->interpolate($me
f2180 73 73 61 67 65 2c 20 24 63 6f 6e 74 65 78 74 29 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a ssage,.$context)));.}.}.........
f21a0 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 74 65 72 70 6f 6c 61 74 65 28 ...private.function.interpolate(
f21c0 24 6d 65 73 73 61 67 65 2c 20 61 72 72 61 79 20 24 63 6f 6e 74 65 78 74 29 0a 7b 0a 0a 20 24 72 $message,.array.$context).{...$r
f21e0 65 70 6c 61 63 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 74 eplace.=.array();.foreach.($cont
f2200 65 78 74 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 ext.as.$key.=>.$val).{.if.(!is_a
f2220 72 72 61 79 28 24 76 61 6c 29 20 26 26 20 28 21 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 29 20 rray($val).&&.(!is_object($val).
f2240 7c 7c 20 6d 65 74 68 6f 64 5f 65 78 69 73 74 73 28 24 76 61 6c 2c 20 27 5f 5f 74 6f 53 74 72 69 ||.method_exists($val,.'__toStri
f2260 6e 67 27 29 29 29 20 7b 0a 24 72 65 70 6c 61 63 65 5b 73 70 72 69 6e 74 66 28 27 7b 25 73 7d 27 ng'))).{.$replace[sprintf('{%s}'
f2280 2c 20 24 6b 65 79 29 5d 20 3d 20 24 76 61 6c 3b 0a 7d 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 73 ,.$key)].=.$val;.}.}....return.s
f22a0 74 72 74 72 28 24 6d 65 73 73 61 67 65 2c 20 24 72 65 70 6c 61 63 65 29 3b 0a 7d 0a 7d 0a 3c 3f trtr($message,.$replace);.}.}.<?
f22c0 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\
f22e0 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 0a 0a 0a 63 6c Component\Console\Output;.....cl
f2300 61 73 73 20 42 75 66 66 65 72 65 64 4f 75 74 70 75 74 20 65 78 74 65 6e 64 73 20 4f 75 74 70 75 ass.BufferedOutput.extends.Outpu
f2320 74 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 62 75 66 66 65 72 20 3d 20 27 27 3b 0a 0a 0a 0a t.{....private.$buffer.=.'';....
f2340 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 65 74 63 68 28 29 0a 7b 0a 24 63 6f ...public.function.fetch().{.$co
f2360 6e 74 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 62 75 66 66 65 72 3b 0a 24 74 68 69 73 2d 3e 62 75 ntent.=.$this->buffer;.$this->bu
f2380 66 66 65 72 20 3d 20 27 27 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6e 74 65 6e 74 3b 0a 7d 0a 0a ffer.=.'';..return.$content;.}..
f23a0 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 57 72 69 74 65 28 24 6d ...protected.function.doWrite($m
f23c0 65 73 73 61 67 65 2c 20 24 6e 65 77 6c 69 6e 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 essage,.$newline).{.$this->buffe
f23e0 72 20 2e 3d 20 24 6d 65 73 73 61 67 65 3b 0a 0a 69 66 20 28 24 6e 65 77 6c 69 6e 65 29 20 7b 0a r..=.$message;..if.($newline).{.
f2400 24 74 68 69 73 2d 3e 62 75 66 66 65 72 20 2e 3d 20 22 5c 6e 22 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 $this->buffer..=."\n";.}.}.}.<?p
f2420 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
f2440 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 79 omponent\Console\Output;..use.Sy
f2460 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
f2480 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 0a r\OutputFormatterInterface;.....
f24a0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 20 65 78 ..........class.ConsoleOutput.ex
f24c0 74 65 6e 64 73 20 53 74 72 65 61 6d 4f 75 74 70 75 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f tends.StreamOutput.implements.Co
f24e0 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 nsoleOutputInterface.{....privat
f2500 65 20 24 73 74 64 65 72 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 e.$stderr;.........public.functi
f2520 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 3d 20 73 65 6c 66 on.__construct($verbosity.=.self
f2540 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 61 74 65 64 20 3d ::VERBOSITY_NORMAL,.$decorated.=
f2560 20 6e 75 6c 6c 2c 20 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 .null,.OutputFormatterInterface.
f2580 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 $formatter.=.null).{.parent::__c
f25a0 6f 6e 73 74 72 75 63 74 28 24 74 68 69 73 2d 3e 6f 70 65 6e 4f 75 74 70 75 74 53 74 72 65 61 6d onstruct($this->openOutputStream
f25c0 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 66 6f 72 (),.$verbosity,.$decorated,.$for
f25e0 6d 61 74 74 65 72 29 3b 0a 0a 24 61 63 74 75 61 6c 44 65 63 6f 72 61 74 65 64 20 3d 20 24 74 68 matter);..$actualDecorated.=.$th
f2600 69 73 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 3b 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 is->isDecorated();.$this->stderr
f2620 20 3d 20 6e 65 77 20 53 74 72 65 61 6d 4f 75 74 70 75 74 28 24 74 68 69 73 2d 3e 6f 70 65 6e 45 .=.new.StreamOutput($this->openE
f2640 72 72 6f 72 53 74 72 65 61 6d 28 29 2c 20 24 76 65 72 62 6f 73 69 74 79 2c 20 24 64 65 63 6f 72 rrorStream(),.$verbosity,.$decor
f2660 61 74 65 64 2c 20 24 74 68 69 73 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 29 3b 0a 0a 69 ated,.$this->getFormatter());..i
f2680 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 63 6f 72 61 74 65 64 29 20 7b 0a 24 74 68 69 73 2d f.(null.===.$decorated).{.$this-
f26a0 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 61 63 74 75 61 6c 44 65 63 6f 72 61 74 65 64 20 26 >setDecorated($actualDecorated.&
f26c0 26 20 24 74 68 69 73 2d 3e 73 74 64 65 72 72 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 29 3b &.$this->stderr->isDecorated());
f26e0 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 73 65 74 44 65 63 6f .}.}.....public.function.setDeco
f2700 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 73 65 74 44 rated($decorated).{.parent::setD
f2720 65 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 3b 0a 24 74 68 69 73 2d 3e 73 74 64 ecorated($decorated);.$this->std
f2740 65 72 72 2d 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 err->setDecorated($decorated);.}
f2760 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 72 6d 61 74 74 65 .....public.function.setFormatte
f2780 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 65 20 24 66 6f 72 6d r(OutputFormatterInterface.$form
f27a0 61 74 74 65 72 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 73 65 74 46 6f 72 6d 61 74 74 65 72 28 24 66 atter).{.parent::setFormatter($f
f27c0 6f 72 6d 61 74 74 65 72 29 3b 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 2d 3e 73 65 74 46 6f 72 ormatter);.$this->stderr->setFor
f27e0 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 75 62 6c 69 63 matter($formatter);.}.....public
f2800 20 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 .function.setVerbosity($level).{
f2820 0a 70 61 72 65 6e 74 3a 3a 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c 29 3b 0a 24 .parent::setVerbosity($level);.$
f2840 74 68 69 73 2d 3e 73 74 64 65 72 72 2d 3e 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 this->stderr->setVerbosity($leve
f2860 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 67 65 74 45 72 72 l);.}.....public.function.getErr
f2880 6f 72 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 73 74 64 65 72 orOutput().{.return.$this->stder
f28a0 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 45 72 72 6f r;.}.....public.function.setErro
f28c0 72 4f 75 74 70 75 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 65 72 72 6f 72 29 0a rOutput(OutputInterface.$error).
f28e0 7b 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 20 3d 20 24 65 72 72 6f 72 3b 0a 7d 0a 0a 0a 0a 0a {.$this->stderr.=.$error;.}.....
f2900 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 53 74 64 6f 75 74 53 ...protected.function.hasStdoutS
f2920 75 70 70 6f 72 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 3d 3d 3d 20 24 74 68 69 upport().{.return.false.===.$thi
f2940 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 4f 53 34 30 30 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 s->isRunningOS400();.}........pr
f2960 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 74 64 65 72 72 53 75 70 70 6f 72 otected.function.hasStderrSuppor
f2980 74 28 29 0a 7b 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 t().{.return.false.===.$this->is
f29a0 52 75 6e 6e 69 6e 67 4f 53 34 30 30 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 RunningOS400();.}........private
f29c0 20 66 75 6e 63 74 69 6f 6e 20 69 73 52 75 6e 6e 69 6e 67 4f 53 34 30 30 28 29 0a 7b 0a 24 63 68 .function.isRunningOS400().{.$ch
f29e0 65 63 6b 73 20 3d 20 61 72 72 61 79 28 0a 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 ecks.=.array(.function_exists('p
f2a00 68 70 5f 75 6e 61 6d 65 27 29 20 3f 20 70 68 70 5f 75 6e 61 6d 65 28 27 73 27 29 20 3a 20 27 27 hp_uname').?.php_uname('s').:.''
f2a20 2c 0a 67 65 74 65 6e 76 28 27 4f 53 54 59 50 45 27 29 2c 0a 50 48 50 5f 4f 53 2c 0a 29 3b 0a 0a ,.getenv('OSTYPE'),.PHP_OS,.);..
f2a40 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 69 73 74 72 28 69 6d 70 6c 6f 64 65 return.false.!==.stristr(implode
f2a60 28 27 3b 27 2c 20 24 63 68 65 63 6b 73 29 2c 20 27 4f 53 34 30 30 27 29 3b 0a 7d 0a 0a 0a 0a 0a (';',.$checks),.'OS400');.}.....
f2a80 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6f 70 65 6e 4f 75 74 70 75 74 53 74 72 65 61 private.function.openOutputStrea
f2aa0 6d 28 29 0a 7b 0a 24 6f 75 74 70 75 74 53 74 72 65 61 6d 20 3d 20 24 74 68 69 73 2d 3e 68 61 73 m().{.$outputStream.=.$this->has
f2ac0 53 74 64 6f 75 74 53 75 70 70 6f 72 74 28 29 20 3f 20 27 70 68 70 3a 2f 2f 73 74 64 6f 75 74 27 StdoutSupport().?.'php://stdout'
f2ae0 20 3a 20 27 70 68 70 3a 2f 2f 6f 75 74 70 75 74 27 3b 0a 0a 72 65 74 75 72 6e 20 40 66 6f 70 65 .:.'php://output';..return.@fope
f2b00 6e 28 24 6f 75 74 70 75 74 53 74 72 65 61 6d 2c 20 27 77 27 29 20 3f 3a 20 66 6f 70 65 6e 28 27 n($outputStream,.'w').?:.fopen('
f2b20 70 68 70 3a 2f 2f 6f 75 74 70 75 74 27 2c 20 27 77 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 php://output',.'w');.}.....priva
f2b40 74 65 20 66 75 6e 63 74 69 6f 6e 20 6f 70 65 6e 45 72 72 6f 72 53 74 72 65 61 6d 28 29 0a 7b 0a te.function.openErrorStream().{.
f2b60 24 65 72 72 6f 72 53 74 72 65 61 6d 20 3d 20 24 74 68 69 73 2d 3e 68 61 73 53 74 64 65 72 72 53 $errorStream.=.$this->hasStderrS
f2b80 75 70 70 6f 72 74 28 29 20 3f 20 27 70 68 70 3a 2f 2f 73 74 64 65 72 72 27 20 3a 20 27 70 68 70 upport().?.'php://stderr'.:.'php
f2ba0 3a 2f 2f 6f 75 74 70 75 74 27 3b 0a 0a 72 65 74 75 72 6e 20 66 6f 70 65 6e 28 24 65 72 72 6f 72 ://output';..return.fopen($error
f2bc0 53 74 72 65 61 6d 2c 20 27 77 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a Stream,.'w');.}.}.<?php.........
f2be0 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 6f ..namespace.Symfony\Component\Co
f2c00 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 nsole\Output;........interface.C
f2c20 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 4f 75 onsoleOutputInterface.extends.Ou
f2c40 74 70 75 74 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 tputInterface.{......public.func
f2c60 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 tion.getErrorOutput();.......pub
f2c80 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 74 70 lic.function.setErrorOutput(Outp
f2ca0 75 74 49 6e 74 65 72 66 61 63 65 20 24 65 72 72 6f 72 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a utInterface.$error);.}.<?php....
f2cc0 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
f2ce0 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 6e 79 5c nt\Console\Output;..use.Symfony\
f2d00 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 4f 75 74 70 Component\Console\Formatter\Outp
f2d20 75 74 46 6f 72 6d 61 74 74 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 utFormatter;.use.Symfony\Compone
f2d40 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
f2d60 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4e 75 tterInterface;..........class.Nu
f2d80 6c 6c 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 65 72 66 llOutput.implements.OutputInterf
f2da0 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 65 74 46 6f 72 6d ace.{....public.function.setForm
f2dc0 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 65 20 24 atter(OutputFormatterInterface.$
f2de0 66 6f 72 6d 61 74 74 65 72 29 0a 7b 0a 0a 20 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 formatter).{...}.....public.func
f2e00 74 69 6f 6e 20 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 0a 7b 0a 0a 20 72 65 74 75 72 6e 20 6e tion.getFormatter().{...return.n
f2e20 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c ew.OutputFormatter();.}.....publ
f2e40 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 61 ic.function.setDecorated($decora
f2e60 74 65 64 29 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 69 ted).{...}.....public.function.i
f2e80 73 44 65 63 6f 72 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 sDecorated().{.return.false;.}..
f2ea0 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 73 69 74 79 28 ...public.function.setVerbosity(
f2ec0 24 6c 65 76 65 6c 29 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 $level).{...}.....public.functio
f2ee0 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 73 65 6c 66 3a 3a n.getVerbosity().{.return.self::
f2f00 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 VERBOSITY_QUIET;.}..public.funct
f2f20 69 6f 6e 20 69 73 51 75 69 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a ion.isQuiet().{.return.true;.}..
f2f40 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 0a 7b 0a 72 65 public.function.isVerbose().{.re
f2f60 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 69 turn.false;.}..public.function.i
f2f80 73 56 65 72 79 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 sVeryVerbose().{.return.false;.}
f2fa0 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 29 0a 7b 0a 72 65 ..public.function.isDebug().{.re
f2fc0 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 75 6e 63 74 69 6f turn.false;.}.....public.functio
f2fe0 6e 20 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 n.writeln($messages,.$options.=.
f3000 73 65 6c 66 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 29 0a 7b 0a 0a 20 7d 0a 0a 0a 0a 0a 70 self::OUTPUT_NORMAL).{...}.....p
f3020 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 20 ublic.function.write($messages,.
f3040 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 6c $newline.=.false,.$options.=.sel
f3060 66 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 29 0a 7b 0a 0a 20 7d 0a 7d 0a 3c 3f 70 68 70 0a f::OUTPUT_NORMAL).{...}.}.<?php.
f3080 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
f30a0 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
f30c0 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 4f ny\Component\Console\Formatter\O
f30e0 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 75 73 65 20 53 79 6d utputFormatterInterface;.use.Sym
f3100 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 72 fony\Component\Console\Formatter
f3120 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a \OutputFormatter;...............
f3140 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 4f 75 74 70 75 74 20 69 6d 70 6c 65 6d 65 6e 74 73 abstract.class.Output.implements
f3160 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 76 65 72 62 .OutputInterface.{.private.$verb
f3180 6f 73 69 74 79 3b 0a 70 72 69 76 61 74 65 20 24 66 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a osity;.private.$formatter;......
f31a0 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($
f31c0 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 59 5f 4e 4f 52 4d verbosity.=.self::VERBOSITY_NORM
f31e0 41 4c 2c 20 24 64 65 63 6f 72 61 74 65 64 20 3d 20 66 61 6c 73 65 2c 20 4f 75 74 70 75 74 46 6f AL,.$decorated.=.false,.OutputFo
f3200 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 20 3d 20 6e 75 rmatterInterface.$formatter.=.nu
f3220 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 20 3d 20 6e 75 6c 6c 20 3d 3d ll).{.$this->verbosity.=.null.==
f3240 3d 20 24 76 65 72 62 6f 73 69 74 79 20 3f 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e =.$verbosity.?.self::VERBOSITY_N
f3260 4f 52 4d 41 4c 20 3a 20 24 76 65 72 62 6f 73 69 74 79 3b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 ORMAL.:.$verbosity;.$this->forma
f3280 74 74 65 72 20 3d 20 24 66 6f 72 6d 61 74 74 65 72 20 3f 3a 20 6e 65 77 20 4f 75 74 70 75 74 46 tter.=.$formatter.?:.new.OutputF
f32a0 6f 72 6d 61 74 74 65 72 28 29 3b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 2d 3e 73 65 ormatter();.$this->formatter->se
f32c0 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 0a 70 75 tDecorated($decorated);.}.....pu
f32e0 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 75 blic.function.setFormatter(Outpu
f3300 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 0a tFormatterInterface.$formatter).
f3320 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 66 6f 72 6d 61 74 74 65 72 3b {.$this->formatter.=.$formatter;
f3340 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 6f 72 6d 61 74 .}.....public.function.getFormat
f3360 74 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 3b ter().{.return.$this->formatter;
f3380 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
f33a0 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 66 6f 72 6d 61 74 74 ted($decorated).{.$this->formatt
f33c0 65 72 2d 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 er->setDecorated($decorated);.}.
f33e0 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 28 ....public.function.isDecorated(
f3400 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 2d 3e 69 73 44 ).{.return.$this->formatter->isD
f3420 65 63 6f 72 61 74 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 ecorated();.}.....public.functio
f3440 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 24 74 68 69 73 2d 3e n.setVerbosity($level).{.$this->
f3460 76 65 72 62 6f 73 69 74 79 20 3d 20 28 69 6e 74 29 20 24 6c 65 76 65 6c 3b 0a 7d 0a 0a 0a 0a 0a verbosity.=.(int).$level;.}.....
f3480 70 75 62 6c 69 63 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 public.function.getVerbosity().{
f34a0 0a 72 65 74 75 72 6e 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 .return.$this->verbosity;.}..pub
f34c0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 51 75 69 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 lic.function.isQuiet().{.return.
f34e0 73 65 6c 66 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 self::VERBOSITY_QUIET.===.$this-
f3500 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 6f 6e 20 69 >verbosity;.}..public.function.i
f3520 73 56 65 72 62 6f 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 sVerbose().{.return.self::VERBOS
f3540 49 54 59 5f 56 45 52 42 4f 53 45 20 3c 3d 20 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 3b ITY_VERBOSE.<=.$this->verbosity;
f3560 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 73 .}..public.function.isVeryVerbos
f3580 65 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 56 45 52 e().{.return.self::VERBOSITY_VER
f35a0 59 5f 56 45 52 42 4f 53 45 20 3c 3d 20 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 3b 0a 7d Y_VERBOSE.<=.$this->verbosity;.}
f35c0 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 29 0a 7b 0a 72 65 ..public.function.isDebug().{.re
f35e0 74 75 72 6e 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 44 45 42 55 47 20 3c 3d 20 24 74 turn.self::VERBOSITY_DEBUG.<=.$t
f3600 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e his->verbosity;.}.....public.fun
f3620 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 6f 70 74 69 6f 6e ction.writeln($messages,.$option
f3640 73 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 68 69 73 s.=.self::OUTPUT_NORMAL).{.$this
f3660 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 74 72 75 65 2c 20 24 6f 70 74 69 6f 6e ->write($messages,.true,.$option
f3680 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 77 72 69 74 65 28 s);.}.....public.function.write(
f36a0 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 6f 70 $messages,.$newline.=.false,.$op
f36c0 74 69 6f 6e 73 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 tions.=.self::OUTPUT_NORMAL).{.$
f36e0 6d 65 73 73 61 67 65 73 20 3d 20 28 61 72 72 61 79 29 20 24 6d 65 73 73 61 67 65 73 3b 0a 0a 24 messages.=.(array).$messages;..$
f3700 74 79 70 65 73 20 3d 20 73 65 6c 66 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 20 7c 20 73 65 types.=.self::OUTPUT_NORMAL.|.se
f3720 6c 66 3a 3a 4f 55 54 50 55 54 5f 52 41 57 20 7c 20 73 65 6c 66 3a 3a 4f 55 54 50 55 54 5f 50 4c lf::OUTPUT_RAW.|.self::OUTPUT_PL
f3740 41 49 4e 3b 0a 24 74 79 70 65 20 3d 20 24 74 79 70 65 73 20 26 20 24 6f 70 74 69 6f 6e 73 20 3f AIN;.$type.=.$types.&.$options.?
f3760 3a 20 73 65 6c 66 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 3b 0a 0a 24 76 65 72 62 6f 73 69 :.self::OUTPUT_NORMAL;..$verbosi
f3780 74 69 65 73 20 3d 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 20 7c 20 73 ties.=.self::VERBOSITY_QUIET.|.s
f37a0 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 20 7c 20 73 65 6c 66 3a 3a 56 45 elf::VERBOSITY_NORMAL.|.self::VE
f37c0 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 20 7c 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 RBOSITY_VERBOSE.|.self::VERBOSIT
f37e0 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 20 7c 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 Y_VERY_VERBOSE.|.self::VERBOSITY
f3800 5f 44 45 42 55 47 3b 0a 24 76 65 72 62 6f 73 69 74 79 20 3d 20 24 76 65 72 62 6f 73 69 74 69 65 _DEBUG;.$verbosity.=.$verbositie
f3820 73 20 26 20 24 6f 70 74 69 6f 6e 73 20 3f 3a 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f s.&.$options.?:.self::VERBOSITY_
f3840 4e 4f 52 4d 41 4c 3b 0a 0a 69 66 20 28 24 76 65 72 62 6f 73 69 74 79 20 3e 20 24 74 68 69 73 2d NORMAL;..if.($verbosity.>.$this-
f3860 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 0a 0a 66 6f >getVerbosity()).{.return;.}..fo
f3880 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 20 24 6d 65 73 73 61 67 65 29 20 7b 0a reach.($messages.as.$message).{.
f38a0 73 77 69 74 63 68 20 28 24 74 79 70 65 29 20 7b 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 switch.($type).{.case.OutputInte
f38c0 72 66 61 63 65 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 3a 0a 24 6d 65 73 73 61 67 65 20 3d rface::OUTPUT_NORMAL:.$message.=
f38e0 20 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 65 73 73 61 .$this->formatter->format($messa
f3900 67 65 29 3b 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 ge);.break;.case.OutputInterface
f3920 3a 3a 4f 55 54 50 55 54 5f 52 41 57 3a 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4f 75 74 70 75 74 ::OUTPUT_RAW:.break;.case.Output
f3940 49 6e 74 65 72 66 61 63 65 3a 3a 4f 55 54 50 55 54 5f 50 4c 41 49 4e 3a 0a 24 6d 65 73 73 61 67 Interface::OUTPUT_PLAIN:.$messag
f3960 65 20 3d 20 73 74 72 69 70 5f 74 61 67 73 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 2d e.=.strip_tags($this->formatter-
f3980 3e 66 6f 72 6d 61 74 28 24 6d 65 73 73 61 67 65 29 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 74 >format($message));.break;.}..$t
f39a0 68 69 73 2d 3e 64 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 his->doWrite($message,.$newline)
f39c0 3b 0a 7d 0a 7d 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 64 20 ;.}.}........abstract.protected.
f39e0 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 6c function.doWrite($message,.$newl
f3a00 69 6e 65 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 ine);.}.<?php...........namespac
f3a20 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
f3a40 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 43 6f 6e 73 6f ut;..use.Symfony\Component\Conso
f3a60 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 74 65 le\Formatter\OutputFormatterInte
f3a80 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4f 75 74 70 75 74 49 6e 74 rface;.......interface.OutputInt
f3aa0 65 72 66 61 63 65 0a 7b 0a 63 6f 6e 73 74 20 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 20 3d erface.{.const.VERBOSITY_QUIET.=
f3ac0 20 31 36 3b 0a 63 6f 6e 73 74 20 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 20 3d 20 33 32 .16;.const.VERBOSITY_NORMAL.=.32
f3ae0 3b 0a 63 6f 6e 73 74 20 56 45 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 20 3d 20 36 34 3b 0a ;.const.VERBOSITY_VERBOSE.=.64;.
f3b00 63 6f 6e 73 74 20 56 45 52 42 4f 53 49 54 59 5f 56 45 52 59 5f 56 45 52 42 4f 53 45 20 3d 20 31 const.VERBOSITY_VERY_VERBOSE.=.1
f3b20 32 38 3b 0a 63 6f 6e 73 74 20 56 45 52 42 4f 53 49 54 59 5f 44 45 42 55 47 20 3d 20 32 35 36 3b 28;.const.VERBOSITY_DEBUG.=.256;
f3b40 0a 0a 63 6f 6e 73 74 20 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 20 3d 20 31 3b 0a 63 6f 6e 73 74 ..const.OUTPUT_NORMAL.=.1;.const
f3b60 20 4f 55 54 50 55 54 5f 52 41 57 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 4f 55 54 50 55 54 5f 50 4c .OUTPUT_RAW.=.2;.const.OUTPUT_PL
f3b80 41 49 4e 20 3d 20 34 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 AIN.=.4;.........public.function
f3ba0 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 66 61 6c .write($messages,.$newline.=.fal
f3bc0 73 65 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 30 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 se,.$options.=.0);........public
f3be0 20 66 75 6e 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 6f 70 .function.writeln($messages,.$op
f3c00 74 69 6f 6e 73 20 3d 20 30 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f tions.=.0);.......public.functio
f3c20 6e 20 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 n.setVerbosity($level);.......pu
f3c40 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 3b 0a 0a 0a blic.function.getVerbosity();...
f3c60 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 74 65 64 ....public.function.setDecorated
f3c80 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 66 75 6e 63 74 ($decorated);.......public.funct
f3ca0 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 70 75 62 6c 69 63 20 ion.isDecorated();.......public.
f3cc0 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 72 6d function.setFormatter(OutputForm
f3ce0 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 3b 0a 0a 0a 0a 0a atterInterface.$formatter);.....
f3d00 0a 0a 70 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 ..public.function.getFormatter()
f3d20 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
f3d40 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 3b 0a mfony\Component\Console\Output;.
f3d60 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 45 .use.Symfony\Component\Console\E
f3d80 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 74 69 6f xception\InvalidArgumentExceptio
f3da0 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
f3dc0 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 73 65 \Exception\RuntimeException;.use
f3de0 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
f3e00 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 61 63 65 3b 0a 0a tter\OutputFormatterInterface;..
f3e20 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 74 72 65 61 6d 4f 75 74 70 75 74 20 .............class.StreamOutput.
f3e40 65 78 74 65 6e 64 73 20 4f 75 74 70 75 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 73 74 72 65 61 6d extends.Output.{.private.$stream
f3e60 3b 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 5f 5f 63 ;............public.function.__c
f3e80 6f 6e 73 74 72 75 63 74 28 24 73 74 72 65 61 6d 2c 20 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 onstruct($stream,.$verbosity.=.s
f3ea0 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 61 74 65 elf::VERBOSITY_NORMAL,.$decorate
f3ec0 64 20 3d 20 6e 75 6c 6c 2c 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 d.=.null,.OutputFormatterInterfa
f3ee0 63 65 20 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 69 73 5f ce.$formatter.=.null).{.if.(!is_
f3f00 72 65 73 6f 75 72 63 65 28 24 73 74 72 65 61 6d 29 20 7c 7c 20 27 73 74 72 65 61 6d 27 20 21 3d resource($stream).||.'stream'.!=
f3f20 3d 20 67 65 74 5f 72 65 73 6f 75 72 63 65 5f 74 79 70 65 28 24 73 74 72 65 61 6d 29 29 20 7b 0a =.get_resource_type($stream)).{.
f3f40 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 74 69 throw.new.InvalidArgumentExcepti
f3f60 6f 6e 28 27 54 68 65 20 53 74 72 65 61 6d 4f 75 74 70 75 74 20 63 6c 61 73 73 20 6e 65 65 64 73 on('The.StreamOutput.class.needs
f3f80 20 61 20 73 74 72 65 61 6d 20 61 73 20 69 74 73 20 66 69 72 73 74 20 61 72 67 75 6d 65 6e 74 2e .a.stream.as.its.first.argument.
f3fa0 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 74 72 65 61 6d 20 3d 20 24 73 74 72 65 61 6d 3b 0a ');.}..$this->stream.=.$stream;.
f3fc0 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 63 6f 72 61 74 65 64 29 20 7b 0a 24 64 65 63 .if.(null.===.$decorated).{.$dec
f3fe0 6f 72 61 74 65 64 20 3d 20 24 74 68 69 73 2d 3e 68 61 73 43 6f 6c 6f 72 53 75 70 70 6f 72 74 28 orated.=.$this->hasColorSupport(
f4000 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 28 24 76 65 72 62 6f );.}..parent::__construct($verbo
f4020 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 7d sity,.$decorated,.$formatter);.}
f4040 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 72 65 61 6d .......public.function.getStream
f4060 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 72 65 61 6d 3b 0a 7d 0a 0a 0a 0a ().{.return.$this->stream;.}....
f4080 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 57 72 69 74 65 28 24 6d 65 73 .protected.function.doWrite($mes
f40a0 73 61 67 65 2c 20 24 6e 65 77 6c 69 6e 65 29 0a 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 sage,.$newline).{.if.(false.===.
f40c0 40 66 77 72 69 74 65 28 24 74 68 69 73 2d 3e 73 74 72 65 61 6d 2c 20 24 6d 65 73 73 61 67 65 2e @fwrite($this->stream,.$message.
f40e0 28 24 6e 65 77 6c 69 6e 65 20 3f 20 50 48 50 5f 45 4f 4c 20 3a 20 27 27 29 29 29 20 7b 0a 0a 20 ($newline.?.PHP_EOL.:.''))).{...
f4100 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
f4120 6c 65 20 74 6f 20 77 72 69 74 65 20 6f 75 74 70 75 74 2e 27 29 3b 0a 7d 0a 0a 66 66 6c 75 73 68 le.to.write.output.');.}..fflush
f4140 28 24 74 68 69 73 2d 3e 73 74 72 65 61 6d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 ($this->stream);.}............pr
f4160 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 43 6f 6c 6f 72 53 75 70 70 6f 72 74 otected.function.hasColorSupport
f4180 28 29 0a 7b 0a 69 66 20 28 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 3d 3d 3d ().{.if.(DIRECTORY_SEPARATOR.===
f41a0 20 27 5c 5c 27 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d 20 67 65 74 65 6e 76 .'\\').{.return.false.!==.getenv
f41c0 28 27 41 4e 53 49 43 4f 4e 27 29 20 7c 7c 20 27 4f 4e 27 20 3d 3d 3d 20 67 65 74 65 6e 76 28 27 ('ANSICON').||.'ON'.===.getenv('
f41e0 43 6f 6e 45 6d 75 41 4e 53 49 27 29 20 7c 7c 20 27 78 74 65 72 6d 27 20 3d 3d 3d 20 67 65 74 65 ConEmuANSI').||.'xterm'.===.gete
f4200 6e 76 28 27 54 45 52 4d 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 5f 65 nv('TERM');.}..return.function_e
f4220 78 69 73 74 73 28 27 70 6f 73 69 78 5f 69 73 61 74 74 79 27 29 20 26 26 20 40 70 6f 73 69 78 5f xists('posix_isatty').&&.@posix_
f4240 69 73 61 74 74 79 28 24 74 68 69 73 2d 3e 73 74 72 65 61 6d 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 isatty($this->stream);.}.}.<?php
f4260 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
f4280 70 6f 6e 65 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 ponent\Console\Question;..use.Sy
f42a0 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
f42c0 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;.....
f42e0 0a 0a 63 6c 61 73 73 20 43 68 6f 69 63 65 51 75 65 73 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 51 ..class.ChoiceQuestion.extends.Q
f4300 75 65 73 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 68 6f 69 63 65 73 3b 0a 70 72 69 76 uestion.{.private.$choices;.priv
f4320 61 74 65 20 24 6d 75 6c 74 69 73 65 6c 65 63 74 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 ate.$multiselect.=.false;.privat
f4340 65 20 24 70 72 6f 6d 70 74 20 3d 20 27 20 3e 20 27 3b 0a 70 72 69 76 61 74 65 20 24 65 72 72 6f e.$prompt.=.'.>.';.private.$erro
f4360 72 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 rMessage.=.'Value."%s".is.invali
f4380 64 27 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 d';.........public.function.__co
f43a0 6e 73 74 72 75 63 74 28 24 71 75 65 73 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 63 68 6f 69 63 65 nstruct($question,.array.$choice
f43c0 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f s,.$default.=.null).{.parent::__
f43e0 63 6f 6e 73 74 72 75 63 74 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 29 3b 0a construct($question,.$default);.
f4400 0a 24 74 68 69 73 2d 3e 63 68 6f 69 63 65 73 20 3d 20 24 63 68 6f 69 63 65 73 3b 0a 24 74 68 69 .$this->choices.=.$choices;.$thi
f4420 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 65 66 61 75 6c s->setValidator($this->getDefaul
f4440 74 56 61 6c 69 64 61 74 6f 72 28 29 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 41 75 74 6f 63 6f 6d tValidator());.$this->setAutocom
f4460 70 6c 65 74 65 72 56 61 6c 75 65 73 28 24 63 68 6f 69 63 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a pleterValues($choices);.}.......
f4480 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 68 6f 69 63 65 73 28 29 0a 7b 0a 72 public.function.getChoices().{.r
f44a0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 68 6f 69 63 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a eturn.$this->choices;.}.........
f44c0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4d 75 6c 74 69 73 65 6c 65 63 74 ..public.function.setMultiselect
f44e0 28 24 6d 75 6c 74 69 73 65 6c 65 63 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 75 6c 74 69 73 65 6c ($multiselect).{.$this->multisel
f4500 65 63 74 20 3d 20 24 6d 75 6c 74 69 73 65 6c 65 63 74 3b 0a 24 74 68 69 73 2d 3e 73 65 74 56 61 ect.=.$multiselect;.$this->setVa
f4520 6c 69 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 lidator($this->getDefaultValidat
f4540 6f 72 28 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 70 75 or());..return.$this;.}.......pu
f4560 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 6d 70 74 28 29 0a 7b 0a 72 65 74 75 blic.function.getPrompt().{.retu
f4580 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 6d 70 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c rn.$this->prompt;.}.........publ
f45a0 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 6f 6d 70 74 28 24 70 72 6f 6d 70 74 29 0a 7b ic.function.setPrompt($prompt).{
f45c0 0a 24 74 68 69 73 2d 3e 70 72 6f 6d 70 74 20 3d 20 24 70 72 6f 6d 70 74 3b 0a 0a 72 65 74 75 72 .$this->prompt.=.$prompt;..retur
f45e0 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
f4600 74 69 6f 6e 20 73 65 74 45 72 72 6f 72 4d 65 73 73 61 67 65 28 24 65 72 72 6f 72 4d 65 73 73 61 tion.setErrorMessage($errorMessa
f4620 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 4d 65 73 73 61 67 65 20 3d 20 24 65 72 72 ge).{.$this->errorMessage.=.$err
f4640 6f 72 4d 65 73 73 61 67 65 3b 0a 24 74 68 69 73 2d 3e 73 65 74 56 61 6c 69 64 61 74 6f 72 28 24 orMessage;.$this->setValidator($
f4660 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 28 29 29 3b 0a 0a 72 this->getDefaultValidator());..r
f4680 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e eturn.$this;.}.......private.fun
f46a0 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 56 61 6c 69 64 61 74 6f 72 28 29 0a 7b 0a 24 63 ction.getDefaultValidator().{.$c
f46c0 68 6f 69 63 65 73 20 3d 20 24 74 68 69 73 2d 3e 63 68 6f 69 63 65 73 3b 0a 24 65 72 72 6f 72 4d hoices.=.$this->choices;.$errorM
f46e0 65 73 73 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 65 72 72 6f 72 4d 65 73 73 61 67 65 3b 0a 24 6d essage.=.$this->errorMessage;.$m
f4700 75 6c 74 69 73 65 6c 65 63 74 20 3d 20 24 74 68 69 73 2d 3e 6d 75 6c 74 69 73 65 6c 65 63 74 3b ultiselect.=.$this->multiselect;
f4720 0a 24 69 73 41 73 73 6f 63 20 3d 20 24 74 68 69 73 2d 3e 69 73 41 73 73 6f 63 28 24 63 68 6f 69 .$isAssoc.=.$this->isAssoc($choi
f4740 63 65 73 29 3b 0a 0a 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 28 24 73 65 6c 65 63 74 65 ces);..return.function.($selecte
f4760 64 29 20 75 73 65 20 28 24 63 68 6f 69 63 65 73 2c 20 24 65 72 72 6f 72 4d 65 73 73 61 67 65 2c d).use.($choices,.$errorMessage,
f4780 20 24 6d 75 6c 74 69 73 65 6c 65 63 74 2c 20 24 69 73 41 73 73 6f 63 29 20 7b 0a 0a 20 24 73 65 .$multiselect,.$isAssoc).{...$se
f47a0 6c 65 63 74 65 64 43 68 6f 69 63 65 73 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 20 27 2c lectedChoices.=.str_replace('.',
f47c0 20 27 27 2c 20 24 73 65 6c 65 63 74 65 64 29 3b 0a 0a 69 66 20 28 24 6d 75 6c 74 69 73 65 6c 65 .'',.$selected);..if.($multisele
f47e0 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 5e 5b 61 2d 7a 41 ct).{...if.(!preg_match('/^[a-zA
f4800 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 2b 29 2a 24 2f 27 -Z0-9_-]+(?:,[a-zA-Z0-9_-]+)*$/'
f4820 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 65 73 29 29 20 7b ,.$selectedChoices,.$matches)).{
f4840 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 65 70 74 .throw.new.InvalidArgumentExcept
f4860 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 20 24 73 65 6c 65 ion(sprintf($errorMessage,.$sele
f4880 63 74 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 20 65 78 70 cted));.}.$selectedChoices.=.exp
f48a0 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 0a 7d 20 65 lode(',',.$selectedChoices);.}.e
f48c0 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 61 79 28 24 lse.{.$selectedChoices.=.array($
f48e0 73 65 6c 65 63 74 65 64 29 3b 0a 7d 0a 0a 24 6d 75 6c 74 69 73 65 6c 65 63 74 43 68 6f 69 63 65 selected);.}..$multiselectChoice
f4900 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 73 65 6c 65 63 74 65 64 43 s.=.array();.foreach.($selectedC
f4920 68 6f 69 63 65 73 20 61 73 20 24 76 61 6c 75 65 29 20 7b 0a 24 72 65 73 75 6c 74 73 20 3d 20 61 hoices.as.$value).{.$results.=.a
f4940 72 72 61 79 28 29 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 rray();.foreach.($choices.as.$ke
f4960 79 20 3d 3e 20 24 63 68 6f 69 63 65 29 20 7b 0a 69 66 20 28 24 63 68 6f 69 63 65 20 3d 3d 3d 20 y.=>.$choice).{.if.($choice.===.
f4980 24 76 61 6c 75 65 29 20 7b 0a 24 72 65 73 75 6c 74 73 5b 5d 20 3d 20 24 6b 65 79 3b 0a 7d 0a 7d $value).{.$results[].=.$key;.}.}
f49a0 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 72 65 73 75 6c 74 73 29 20 3e 20 31 29 20 7b 0a 74 68 72 ..if.(count($results).>.1).{.thr
f49c0 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(
f49e0 73 70 72 69 6e 74 66 28 27 54 68 65 20 70 72 6f 76 69 64 65 64 20 61 6e 73 77 65 72 20 69 73 20 sprintf('The.provided.answer.is.
f4a00 61 6d 62 69 67 75 6f 75 73 2e 20 56 61 6c 75 65 20 73 68 6f 75 6c 64 20 62 65 20 6f 6e 65 20 6f ambiguous..Value.should.be.one.o
f4a20 66 20 25 73 2e 27 2c 20 69 6d 70 6c 6f 64 65 28 27 20 6f 72 20 27 2c 20 24 72 65 73 75 6c 74 73 f.%s.',.implode('.or.',.$results
f4a40 29 29 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 )));.}..$result.=.array_search($
f4a60 76 61 6c 75 65 2c 20 24 63 68 6f 69 63 65 73 29 3b 0a 0a 69 66 20 28 21 24 69 73 41 73 73 6f 63 value,.$choices);..if.(!$isAssoc
f4a80 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 72 65 73 75 6c 74 29 20 7b 0a 24 72 65 ).{.if.(false.!==.$result).{.$re
f4aa0 73 75 6c 74 20 3d 20 24 63 68 6f 69 63 65 73 5b 24 72 65 73 75 6c 74 5d 3b 0a 7d 20 65 6c 73 65 sult.=.$choices[$result];.}.else
f4ac0 69 66 20 28 69 73 73 65 74 28 24 63 68 6f 69 63 65 73 5b 24 76 61 6c 75 65 5d 29 29 20 7b 0a 24 if.(isset($choices[$value])).{.$
f4ae0 72 65 73 75 6c 74 20 3d 20 24 63 68 6f 69 63 65 73 5b 24 76 61 6c 75 65 5d 3b 0a 7d 0a 7d 20 65 result.=.$choices[$value];.}.}.e
f4b00 6c 73 65 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 69 73 73 65 lseif.(false.===.$result.&&.isse
f4b20 74 28 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 t($choices[$value])).{.$result.=
f4b40 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 73 75 6c .$value;.}..if.(false.===.$resul
f4b60 74 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 t).{.throw.new.InvalidArgumentEx
f4b80 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 20 24 ception(sprintf($errorMessage,.$
f4ba0 76 61 6c 75 65 29 29 3b 0a 7d 0a 0a 24 6d 75 6c 74 69 73 65 6c 65 63 74 43 68 6f 69 63 65 73 5b value));.}..$multiselectChoices[
f4bc0 5d 20 3d 20 28 73 74 72 69 6e 67 29 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 69 66 20 28 24 6d 75 ].=.(string).$result;.}..if.($mu
f4be0 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 73 65 6c 65 63 74 ltiselect).{.return.$multiselect
f4c00 43 68 6f 69 63 65 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 63 75 72 72 65 6e 74 28 24 6d 75 6c 74 Choices;.}..return.current($mult
f4c20 69 73 65 6c 65 63 74 43 68 6f 69 63 65 73 29 3b 0a 7d 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a iselectChoices);.};.}.}.<?php...
f4c40 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
f4c60 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 ent\Console\Question;.......clas
f4c80 73 20 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 51 75 65 73 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 51 s.ConfirmationQuestion.extends.Q
f4ca0 75 65 73 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 74 72 75 65 41 6e 73 77 65 72 52 65 67 uestion.{.private.$trueAnswerReg
f4cc0 65 78 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 ex;.........public.function.__co
f4ce0 6e 73 74 72 75 63 74 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 nstruct($question,.$default.=.tr
f4d00 75 65 2c 20 24 74 72 75 65 41 6e 73 77 65 72 52 65 67 65 78 20 3d 20 27 2f 5e 79 2f 69 27 29 0a ue,.$trueAnswerRegex.=.'/^y/i').
f4d20 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 71 75 65 73 74 69 6f 6e 2c {.parent::__construct($question,
f4d40 20 28 62 6f 6f 6c 29 20 24 64 65 66 61 75 6c 74 29 3b 0a 0a 24 74 68 69 73 2d 3e 74 72 75 65 41 .(bool).$default);..$this->trueA
f4d60 6e 73 77 65 72 52 65 67 65 78 20 3d 20 24 74 72 75 65 41 6e 73 77 65 72 52 65 67 65 78 3b 0a 24 nswerRegex.=.$trueAnswerRegex;.$
f4d80 74 68 69 73 2d 3e 73 65 74 4e 6f 72 6d 61 6c 69 7a 65 72 28 24 74 68 69 73 2d 3e 67 65 74 44 65 this->setNormalizer($this->getDe
f4da0 66 61 75 6c 74 4e 6f 72 6d 61 6c 69 7a 65 72 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 faultNormalizer());.}.......priv
f4dc0 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 4e 6f 72 6d 61 6c 69 7a 65 ate.function.getDefaultNormalize
f4de0 72 28 29 0a 7b 0a 24 64 65 66 61 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 r().{.$default.=.$this->getDefau
f4e00 6c 74 28 29 3b 0a 24 72 65 67 65 78 20 3d 20 24 74 68 69 73 2d 3e 74 72 75 65 41 6e 73 77 65 72 lt();.$regex.=.$this->trueAnswer
f4e20 52 65 67 65 78 3b 0a 0a 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 6e 73 77 65 72 Regex;..return.function.($answer
f4e40 29 20 75 73 65 20 28 24 64 65 66 61 75 6c 74 2c 20 24 72 65 67 65 78 29 20 7b 0a 69 66 20 28 69 ).use.($default,.$regex).{.if.(i
f4e60 73 5f 62 6f 6f 6c 28 24 61 6e 73 77 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 6e 73 77 65 s_bool($answer)).{.return.$answe
f4e80 72 3b 0a 7d 0a 0a 24 61 6e 73 77 65 72 49 73 54 72 75 65 20 3d 20 28 62 6f 6f 6c 29 20 70 72 65 r;.}..$answerIsTrue.=.(bool).pre
f4ea0 67 5f 6d 61 74 63 68 28 24 72 65 67 65 78 2c 20 24 61 6e 73 77 65 72 29 3b 0a 69 66 20 28 66 61 g_match($regex,.$answer);.if.(fa
f4ec0 6c 73 65 20 3d 3d 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 6e 73 77 lse.===.$default).{.return.$answ
f4ee0 65 72 20 26 26 20 24 61 6e 73 77 65 72 49 73 54 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 21 er.&&.$answerIsTrue;.}..return.!
f4f00 24 61 6e 73 77 65 72 20 7c 7c 20 24 61 6e 73 77 65 72 49 73 54 72 75 65 3b 0a 7d 3b 0a 7d 0a 7d $answer.||.$answerIsTrue;.};.}.}
f4f20 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
f4f40 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 3b 0a 0a ny\Component\Console\Question;..
f4f60 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 45 78 use.Symfony\Component\Console\Ex
f4f80 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 74 69 6f 6e ception\InvalidArgumentException
f4fa0 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\
f4fc0 45 78 63 65 70 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 Exception\LogicException;.......
f4fe0 63 6c 61 73 73 20 51 75 65 73 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 71 75 65 73 74 69 class.Question.{.private.$questi
f5000 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 61 74 74 65 6d 70 74 73 3b 0a 70 72 69 76 61 74 65 20 24 on;.private.$attempts;.private.$
f5020 68 69 64 64 65 6e 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 68 69 64 64 65 6e 46 hidden.=.false;.private.$hiddenF
f5040 61 6c 6c 62 61 63 6b 20 3d 20 74 72 75 65 3b 0a 70 72 69 76 61 74 65 20 24 61 75 74 6f 63 6f 6d allback.=.true;.private.$autocom
f5060 70 6c 65 74 65 72 56 61 6c 75 65 73 3b 0a 70 72 69 76 61 74 65 20 24 76 61 6c 69 64 61 74 6f 72 pleterValues;.private.$validator
f5080 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 74 65 20 24 6e 6f 72 ;.private.$default;.private.$nor
f50a0 6d 61 6c 69 7a 65 72 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 malizer;........public.function.
f50c0 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 __construct($question,.$default.
f50e0 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 71 75 65 73 74 69 6f 6e 20 3d 20 24 71 75 65 =.null).{.$this->question.=.$que
f5100 73 74 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 20 3d 20 24 64 65 66 61 75 6c 74 stion;.$this->default.=.$default
f5120 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 51 75 65 ;.}.......public.function.getQue
f5140 73 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 71 75 65 73 74 69 6f 6e stion().{.return.$this->question
f5160 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 65 66 ;.}.......public.function.getDef
f5180 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 6c 74 3b 0a ault().{.return.$this->default;.
f51a0 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 64 65 6e }.......public.function.isHidden
f51c0 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 69 64 64 65 6e 3b 0a 7d 0a 0a 0a 0a ().{.return.$this->hidden;.}....
f51e0 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 69 64 64 65 6e .......public.function.setHidden
f5200 28 24 68 69 64 64 65 6e 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 75 74 6f 63 6f 6d 70 6c ($hidden).{.if.($this->autocompl
f5220 65 74 65 72 56 61 6c 75 65 73 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 eterValues).{.throw.new.LogicExc
f5240 65 70 74 69 6f 6e 28 27 41 20 68 69 64 64 65 6e 20 71 75 65 73 74 69 6f 6e 20 63 61 6e 6e 6f 74 eption('A.hidden.question.cannot
f5260 20 75 73 65 20 74 68 65 20 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 2e 27 29 3b 0a 7d 0a 0a 24 74 .use.the.autocompleter.');.}..$t
f5280 68 69 73 2d 3e 68 69 64 64 65 6e 20 3d 20 28 62 6f 6f 6c 29 20 24 68 69 64 64 65 6e 3b 0a 0a 72 his->hidden.=.(bool).$hidden;..r
f52a0 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
f52c0 74 69 6f 6e 20 69 73 48 69 64 64 65 6e 46 61 6c 6c 62 61 63 6b 28 29 0a 7b 0a 72 65 74 75 72 6e tion.isHiddenFallback().{.return
f52e0 20 24 74 68 69 73 2d 3e 68 69 64 64 65 6e 46 61 6c 6c 62 61 63 6b 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a .$this->hiddenFallback;.}.......
f5300 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 69 64 64 65 6e 46 61 6c 6c 62 ..public.function.setHiddenFallb
f5320 61 63 6b 28 24 66 61 6c 6c 62 61 63 6b 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 69 64 64 65 6e 46 61 ack($fallback).{.$this->hiddenFa
f5340 6c 6c 62 61 63 6b 20 3d 20 28 62 6f 6f 6c 29 20 24 66 61 6c 6c 62 61 63 6b 3b 0a 0a 72 65 74 75 llback.=.(bool).$fallback;..retu
f5360 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
f5380 6e 20 67 65 74 41 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 28 29 0a 7b 0a 72 65 74 n.getAutocompleterValues().{.ret
f53a0 75 72 6e 20 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 3b 0a urn.$this->autocompleterValues;.
f53c0 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 73 65 74 }............public.function.set
f53e0 41 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 28 24 76 61 6c 75 65 73 29 0a 7b 0a 69 AutocompleterValues($values).{.i
f5400 66 20 28 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 73 29 20 26 26 20 24 74 68 69 73 2d 3e 69 f.(is_array($values).&&.$this->i
f5420 73 41 73 73 6f 63 28 24 76 61 6c 75 65 73 29 29 20 7b 0a 24 76 61 6c 75 65 73 20 3d 20 61 72 72 sAssoc($values)).{.$values.=.arr
f5440 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 5f 6b 65 79 73 28 24 76 61 6c 75 65 73 29 2c 20 61 72 ay_merge(array_keys($values),.ar
f5460 72 61 79 5f 76 61 6c 75 65 73 28 24 76 61 6c 75 65 73 29 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c ray_values($values));.}..if.(nul
f5480 6c 20 21 3d 3d 20 24 76 61 6c 75 65 73 20 26 26 20 21 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 l.!==.$values.&&.!is_array($valu
f54a0 65 73 29 29 20 7b 0a 69 66 20 28 21 24 76 61 6c 75 65 73 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c es)).{.if.(!$values.instanceof.\
f54c0 54 72 61 76 65 72 73 61 62 6c 65 20 7c 7c 20 24 76 61 6c 75 65 73 20 69 6e 73 74 61 6e 63 65 6f Traversable.||.$values.instanceo
f54e0 66 20 5c 43 6f 75 6e 74 61 62 6c 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 f.\Countable).{.throw.new.Invali
f5500 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 41 75 74 6f 63 6f 6d 70 6c 65 74 65 dArgumentException('Autocomplete
f5520 72 20 76 61 6c 75 65 73 20 63 61 6e 20 62 65 20 65 69 74 68 65 72 20 61 6e 20 61 72 72 61 79 2c r.values.can.be.either.an.array,
f5540 20 60 6e 75 6c 6c 60 20 6f 72 20 61 6e 20 6f 62 6a 65 63 74 20 69 6d 70 6c 65 6d 65 6e 74 69 6e .`null`.or.an.object.implementin
f5560 67 20 62 6f 74 68 20 60 43 6f 75 6e 74 61 62 6c 65 60 20 61 6e 64 20 60 54 72 61 76 65 72 73 61 g.both.`Countable`.and.`Traversa
f5580 62 6c 65 60 20 69 6e 74 65 72 66 61 63 65 73 2e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 ble`.interfaces.');.}.}..if.($th
f55a0 69 73 2d 3e 68 69 64 64 65 6e 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4c 6f 67 69 63 45 78 63 is->hidden).{.throw.new.LogicExc
f55c0 65 70 74 69 6f 6e 28 27 41 20 68 69 64 64 65 6e 20 71 75 65 73 74 69 6f 6e 20 63 61 6e 6e 6f 74 eption('A.hidden.question.cannot
f55e0 20 75 73 65 20 74 68 65 20 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 2e 27 29 3b 0a 7d 0a 0a 24 74 .use.the.autocompleter.');.}..$t
f5600 68 69 73 2d 3e 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 56 61 6c 75 65 73 20 3d 20 24 76 61 6c 75 his->autocompleterValues.=.$valu
f5620 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 0a 0a 0a 0a 70 75 62 es;..return.$this;.}.........pub
f5640 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 61 6c 69 64 61 74 6f 72 28 24 76 61 6c 69 64 lic.function.setValidator($valid
f5660 61 74 6f 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 6f 72 20 3d 20 24 76 61 6c 69 ator).{.$this->validator.=.$vali
f5680 64 61 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 0a 0a 70 75 dator;..return.$this;.}.......pu
f56a0 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 56 61 6c 69 64 61 74 6f 72 28 29 0a 7b 0a 72 blic.function.getValidator().{.r
f56c0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a eturn.$this->validator;.}.......
f56e0 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 4d 61 78 41 74 74 65 ......public.function.setMaxAtte
f5700 6d 70 74 73 28 24 61 74 74 65 6d 70 74 73 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 mpts($attempts).{.if.(null.!==.$
f5720 61 74 74 65 6d 70 74 73 20 26 26 20 24 61 74 74 65 6d 70 74 73 20 3c 20 31 29 20 7b 0a 74 68 72 attempts.&&.$attempts.<.1).{.thr
f5740 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(
f5760 27 4d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 61 74 74 65 6d 70 74 73 20 6d 75 73 74 'Maximum.number.of.attempts.must
f5780 20 62 65 20 61 20 70 6f 73 69 74 69 76 65 20 76 61 6c 75 65 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 .be.a.positive.value.');.}..$thi
f57a0 73 2d 3e 61 74 74 65 6d 70 74 73 20 3d 20 24 61 74 74 65 6d 70 74 73 3b 0a 0a 72 65 74 75 72 6e s->attempts.=.$attempts;..return
f57c0 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
f57e0 6e 20 67 65 74 4d 61 78 41 74 74 65 6d 70 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 n.getMaxAttempts().{.return.$thi
f5800 73 2d 3e 61 74 74 65 6d 70 74 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 s->attempts;.}...........public.
f5820 66 75 6e 63 74 69 6f 6e 20 73 65 74 4e 6f 72 6d 61 6c 69 7a 65 72 28 24 6e 6f 72 6d 61 6c 69 7a function.setNormalizer($normaliz
f5840 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 72 20 3d 20 24 6e 6f 72 6d 61 er).{.$this->normalizer.=.$norma
f5860 6c 69 7a 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 0a lizer;..return.$this;.}.........
f5880 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 6f 72 6d 61 6c 69 7a 65 72 28 29 0a public.function.getNormalizer().
f58a0 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 72 3b 0a 7d 0a 0a 70 {.return.$this->normalizer;.}..p
f58c0 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 73 41 73 73 6f 63 28 24 61 72 72 61 79 rotected.function.isAssoc($array
f58e0 29 0a 7b 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 29 20 63 6f 75 6e 74 28 61 72 72 61 79 5f 66 69 ).{.return.(bool).count(array_fi
f5900 6c 74 65 72 28 61 72 72 61 79 5f 6b 65 79 73 28 24 61 72 72 61 79 29 2c 20 27 69 73 5f 73 74 72 lter(array_keys($array),.'is_str
f5920 69 6e 67 27 29 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 ing'));.}.}.<?php...........name
f5940 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 3b space.Symfony\Component\Console;
f5960 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 5c ..use.Symfony\Component\Console\
f5980 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 73 65 20 Exception\RuntimeException;.use.
f59a0 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\
f59c0 53 74 72 69 6e 67 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 StringInput;.use.Symfony\Compone
f59e0 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 3b nt\Console\Output\ConsoleOutput;
f5a00 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 5c 50 .use.Symfony\Component\Process\P
f5a20 72 6f 63 65 73 73 42 75 69 6c 64 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f rocessBuilder;.use.Symfony\Compo
f5a40 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 68 70 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 nent\Process\PhpExecutableFinder
f5a60 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 68 65 6c 6c 0a 7b 0a 70 72 69 76 ;.............class.Shell.{.priv
f5a80 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 68 69 73 74 6f ate.$application;.private.$histo
f5aa0 72 79 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 68 61 ry;.private.$output;.private.$ha
f5ac0 73 52 65 61 64 6c 69 6e 65 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 49 73 6f 6c 61 sReadline;.private.$processIsola
f5ae0 74 69 6f 6e 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 tion.=.false;..........public.fu
f5b00 6e 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 nction.__construct(Application.$
f5b20 61 70 70 6c 69 63 61 74 69 6f 6e 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 54 application).{.@trigger_error('T
f5b40 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 72 65 63 he.'.__CLASS__.'.class.is.deprec
f5b60 61 74 65 64 20 73 69 6e 63 65 20 53 79 6d 66 6f 6e 79 20 32 2e 38 20 61 6e 64 20 77 69 6c 6c 20 ated.since.Symfony.2.8.and.will.
f5b80 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
f5ba0 45 43 41 54 45 44 29 3b 0a 0a 24 74 68 69 73 2d 3e 68 61 73 52 65 61 64 6c 69 6e 65 20 3d 20 66 ECATED);..$this->hasReadline.=.f
f5bc0 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 72 65 61 64 6c 69 6e 65 27 29 3b 0a 24 74 68 69 unction_exists('readline');.$thi
f5be0 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 6f 6e 3b 0a 24 s->application.=.$application;.$
f5c00 74 68 69 73 2d 3e 68 69 73 74 6f 72 79 20 3d 20 67 65 74 65 6e 76 28 27 48 4f 4d 45 27 29 2e 27 this->history.=.getenv('HOME').'
f5c20 2f 2e 68 69 73 74 6f 72 79 5f 27 2e 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d /.history_'.$application->getNam
f5c40 65 28 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 e();.$this->output.=.new.Console
f5c60 4f 75 74 70 75 74 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 Output();.}.....public.function.
f5c80 72 75 6e 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 73 65 74 41 run().{.$this->application->setA
f5ca0 75 74 6f 45 78 69 74 28 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 utoExit(false);.$this->applicati
f5cc0 6f 6e 2d 3e 73 65 74 43 61 74 63 68 45 78 63 65 70 74 69 6f 6e 73 28 74 72 75 65 29 3b 0a 0a 69 on->setCatchExceptions(true);..i
f5ce0 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 72 65 61 64 6c 69 6e f.($this->hasReadline).{.readlin
f5d00 65 5f 72 65 61 64 5f 68 69 73 74 6f 72 79 28 24 74 68 69 73 2d 3e 68 69 73 74 6f 72 79 29 3b 0a e_read_history($this->history);.
f5d20 72 65 61 64 6c 69 6e 65 5f 63 6f 6d 70 6c 65 74 69 6f 6e 5f 66 75 6e 63 74 69 6f 6e 28 61 72 72 readline_completion_function(arr
f5d40 61 79 28 24 74 68 69 73 2c 20 27 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 27 29 29 3b 0a 7d 0a 0a ay($this,.'autocompleter'));.}..
f5d60 24 74 68 69 73 2d 3e 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 $this->output->writeln($this->ge
f5d80 74 48 65 61 64 65 72 28 29 29 3b 0a 24 70 68 70 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 24 74 68 tHeader());.$php.=.null;.if.($th
f5da0 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 66 69 6e 64 65 72 20 is->processIsolation).{.$finder.
f5dc0 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 0a 24 70 68 =.new.PhpExecutableFinder();.$ph
f5de0 70 20 3d 20 24 66 69 6e 64 65 72 2d 3e 66 69 6e 64 28 29 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 p.=.$finder->find();.$this->outp
f5e00 75 74 2d 3e 77 72 69 74 65 6c 6e 28 3c 3c 3c 45 4f 46 0a 3c 69 6e 66 6f 3e 52 75 6e 6e 69 6e 67 ut->writeln(<<<EOF.<info>Running
f5e20 20 77 69 74 68 20 70 72 6f 63 65 73 73 20 69 73 6f 6c 61 74 69 6f 6e 2c 20 79 6f 75 20 73 68 6f .with.process.isolation,.you.sho
f5e40 75 6c 64 20 63 6f 6e 73 69 64 65 72 20 74 68 69 73 3a 3c 2f 69 6e 66 6f 3e 0a 20 20 2a 20 65 61 uld.consider.this:</info>...*.ea
f5e60 63 68 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 20 61 73 20 73 65 70 61 72 61 ch.command.is.executed.as.separa
f5e80 74 65 20 70 72 6f 63 65 73 73 2c 0a 20 20 2a 20 63 6f 6d 6d 61 6e 64 73 20 64 6f 6e 27 74 20 73 te.process,...*.commands.don't.s
f5ea0 75 70 70 6f 72 74 20 69 6e 74 65 72 61 63 74 69 76 69 74 79 2c 20 61 6c 6c 20 70 61 72 61 6d 73 upport.interactivity,.all.params
f5ec0 20 6d 75 73 74 20 62 65 20 70 61 73 73 65 64 20 65 78 70 6c 69 63 69 74 6c 79 2c 0a 20 20 2a 20 .must.be.passed.explicitly,...*.
f5ee0 63 6f 6d 6d 61 6e 64 73 20 6f 75 74 70 75 74 20 69 73 20 6e 6f 74 20 63 6f 6c 6f 72 69 7a 65 64 commands.output.is.not.colorized
f5f00 2e 0a 0a 45 4f 46 0a 29 3b 0a 7d 0a 0a 77 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a 24 63 6f 6d ...EOF.);.}..while.(true).{.$com
f5f20 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 64 6c 69 6e 65 28 29 3b 0a 0a 69 66 20 28 66 mand.=.$this->readline();..if.(f
f5f40 61 6c 73 65 20 3d 3d 3d 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 alse.===.$command).{.$this->outp
f5f60 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 5c 6e 22 29 3b 0a 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 69 66 ut->writeln("\n");..break;.}..if
f5f80 20 28 24 74 68 69 73 2d 3e 68 61 73 52 65 61 64 6c 69 6e 65 29 20 7b 0a 72 65 61 64 6c 69 6e 65 .($this->hasReadline).{.readline
f5fa0 5f 61 64 64 5f 68 69 73 74 6f 72 79 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 72 65 61 64 6c 69 6e 65 _add_history($command);.readline
f5fc0 5f 77 72 69 74 65 5f 68 69 73 74 6f 72 79 28 24 74 68 69 73 2d 3e 68 69 73 74 6f 72 79 29 3b 0a _write_history($this->history);.
f5fe0 7d 0a 0a 69 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 29 20 }..if.($this->processIsolation).
f6000 7b 0a 24 70 62 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 42 75 69 6c 64 65 72 28 29 3b 0a 0a 24 {.$pb.=.new.ProcessBuilder();..$
f6020 70 72 6f 63 65 73 73 20 3d 20 24 70 62 0a 2d 3e 61 64 64 28 24 70 68 70 29 0a 2d 3e 61 64 64 28 process.=.$pb.->add($php).->add(
f6040 24 5f 53 45 52 56 45 52 5b 27 61 72 67 76 27 5d 5b 30 5d 29 0a 2d 3e 61 64 64 28 24 63 6f 6d 6d $_SERVER['argv'][0]).->add($comm
f6060 61 6e 64 29 0a 2d 3e 69 6e 68 65 72 69 74 45 6e 76 69 72 6f 6e 6d 65 6e 74 56 61 72 69 61 62 6c and).->inheritEnvironmentVariabl
f6080 65 73 28 74 72 75 65 29 0a 2d 3e 67 65 74 50 72 6f 63 65 73 73 28 29 0a 3b 0a 0a 24 6f 75 74 70 es(true).->getProcess().;..$outp
f60a0 75 74 20 3d 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 24 70 72 6f 63 65 73 73 2d 3e 72 75 ut.=.$this->output;.$process->ru
f60c0 6e 28 66 75 6e 63 74 69 6f 6e 20 28 24 74 79 70 65 2c 20 24 64 61 74 61 29 20 75 73 65 20 28 24 n(function.($type,.$data).use.($
f60e0 6f 75 74 70 75 74 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 64 61 74 61 output).{.$output->writeln($data
f6100 29 3b 0a 7d 29 3b 0a 0a 24 72 65 74 20 3d 20 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 78 69 74 );.});..$ret.=.$process->getExit
f6120 43 6f 64 65 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 74 20 3d 20 24 74 68 69 73 2d 3e 61 Code();.}.else.{.$ret.=.$this->a
f6140 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 72 75 6e 28 6e 65 77 20 53 74 72 69 6e 67 49 6e 70 75 74 28 pplication->run(new.StringInput(
f6160 24 63 6f 6d 6d 61 6e 64 29 2c 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 69 66 $command),.$this->output);.}..if
f6180 20 28 30 20 21 3d 3d 20 24 72 65 74 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 .(0.!==.$ret).{.$this->output->w
f61a0 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 3c 65 72 72 6f 72 3e 54 68 65 20 63 6f 6d 6d 61 riteln(sprintf('<error>The.comma
f61c0 6e 64 20 74 65 72 6d 69 6e 61 74 65 64 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 20 73 74 61 74 nd.terminated.with.an.error.stat
f61e0 75 73 20 28 25 73 29 3c 2f 65 72 72 6f 72 3e 27 2c 20 24 72 65 74 29 29 3b 0a 7d 0a 7d 0a 7d 0a us.(%s)</error>',.$ret));.}.}.}.
f6200 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 48 65 61 64 ......protected.function.getHead
f6220 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 3c 3c 3c 45 4f 46 0a 0a 57 65 6c 63 6f 6d 65 20 74 6f er().{.return.<<<EOF..Welcome.to
f6240 20 74 68 65 20 3c 69 6e 66 6f 3e 7b 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e .the.<info>{$this->application->
f6260 67 65 74 4e 61 6d 65 28 29 7d 3c 2f 69 6e 66 6f 3e 20 73 68 65 6c 6c 20 28 3c 63 6f 6d 6d 65 6e getName()}</info>.shell.(<commen
f6280 74 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 56 65 72 73 69 6f t>{$this->application->getVersio
f62a0 6e 28 29 7d 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 2e 0a 0a 41 74 20 74 68 65 20 70 72 6f 6d 70 74 2c n()}</comment>)...At.the.prompt,
f62c0 20 74 79 70 65 20 3c 63 6f 6d 6d 65 6e 74 3e 68 65 6c 70 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 66 6f .type.<comment>help</comment>.fo
f62e0 72 20 73 6f 6d 65 20 68 65 6c 70 2c 0a 6f 72 20 3c 63 6f 6d 6d 65 6e 74 3e 6c 69 73 74 3c 2f 63 r.some.help,.or.<comment>list</c
f6300 6f 6d 6d 65 6e 74 3e 20 74 6f 20 67 65 74 20 61 20 6c 69 73 74 20 6f 66 20 61 76 61 69 6c 61 62 omment>.to.get.a.list.of.availab
f6320 6c 65 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 54 6f 20 65 78 69 74 20 74 68 65 20 73 68 65 6c 6c 2c le.commands...To.exit.the.shell,
f6340 20 74 79 70 65 20 3c 63 6f 6d 6d 65 6e 74 3e 5e 44 3c 2f 63 6f 6d 6d 65 6e 74 3e 2e 0a 0a 45 4f .type.<comment>^D</comment>...EO
f6360 46 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 F;.}.......protected.function.ge
f6380 74 50 72 6f 6d 70 74 28 29 0a 7b 0a 0a 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 tPrompt().{...return.$this->outp
f63a0 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2d 3e 66 6f 72 6d 61 74 28 24 74 68 69 73 ut->getFormatter()->format($this
f63c0 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 20 3e 20 27 29 3b ->application->getName().'.>.');
f63e0 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 4f 75 74 70 75 74 .}..protected.function.getOutput
f6400 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 70 72 ().{.return.$this->output;.}..pr
f6420 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 otected.function.getApplication(
f6440 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 6e 3b 0a 7d ).{.return.$this->application;.}
f6460 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 75 74 6f 63 6f .........private.function.autoco
f6480 6d 70 6c 65 74 65 72 28 24 74 65 78 74 29 0a 7b 0a 24 69 6e 66 6f 20 3d 20 72 65 61 64 6c 69 6e mpleter($text).{.$info.=.readlin
f64a0 65 5f 69 6e 66 6f 28 29 3b 0a 24 74 65 78 74 20 3d 20 73 75 62 73 74 72 28 24 69 6e 66 6f 5b 27 e_info();.$text.=.substr($info['
f64c0 6c 69 6e 65 5f 62 75 66 66 65 72 27 5d 2c 20 30 2c 20 24 69 6e 66 6f 5b 27 65 6e 64 27 5d 29 3b line_buffer'],.0,.$info['end']);
f64e0 0a 0a 69 66 20 28 24 69 6e 66 6f 5b 27 70 6f 69 6e 74 27 5d 20 21 3d 3d 20 24 69 6e 66 6f 5b 27 ..if.($info['point'].!==.$info['
f6500 65 6e 64 27 5d 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 66 end']).{.return.true;.}....if.(f
f6520 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 74 65 78 74 2c 20 27 20 27 29 20 7c 7c 20 21 alse.===.strpos($text,.'.').||.!
f6540 24 74 65 78 74 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 $text).{.return.array_keys($this
f6560 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 61 6c 6c 28 29 29 3b 0a 7d 0a 0a 0a 20 74 72 79 20 ->application->all());.}....try.
f6580 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d {.$command.=.$this->application-
f65a0 3e 66 69 6e 64 28 73 75 62 73 74 72 28 24 74 65 78 74 2c 20 30 2c 20 73 74 72 70 6f 73 28 24 74 >find(substr($text,.0,.strpos($t
f65c0 65 78 74 2c 20 27 20 27 29 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e ext,.'.')));.}.catch.(\Exception
f65e0 20 24 65 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 6c 69 73 74 20 3d 20 61 .$e).{.return.true;.}..$list.=.a
f6600 72 72 61 79 28 27 2d 2d 68 65 6c 70 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e rray('--help');.foreach.($comman
f6620 64 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 d->getDefinition()->getOptions()
f6640 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 6c 69 73 74 5b 5d 20 3d 20 27 2d 2d 27 2e 24 6f .as.$option).{.$list[].=.'--'.$o
f6660 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6c 69 73 ption->getName();.}..return.$lis
f6680 74 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 72 65 61 64 t;.}.......private.function.read
f66a0 6c 69 6e 65 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 52 65 61 64 6c 69 6e 65 29 line().{.if.($this->hasReadline)
f66c0 20 7b 0a 24 6c 69 6e 65 20 3d 20 72 65 61 64 6c 69 6e 65 28 24 74 68 69 73 2d 3e 67 65 74 50 72 .{.$line.=.readline($this->getPr
f66e0 6f 6d 70 74 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d ompt());.}.else.{.$this->output-
f6700 3e 77 72 69 74 65 28 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 6d 70 74 28 29 29 3b 0a 24 6c 69 6e >write($this->getPrompt());.$lin
f6720 65 20 3d 20 66 67 65 74 73 28 53 54 44 49 4e 2c 20 31 30 32 34 29 3b 0a 24 6c 69 6e 65 20 3d 20 e.=.fgets(STDIN,.1024);.$line.=.
f6740 28 66 61 6c 73 65 20 3d 3d 3d 20 24 6c 69 6e 65 20 7c 7c 20 27 27 20 3d 3d 3d 20 24 6c 69 6e 65 (false.===.$line.||.''.===.$line
f6760 29 20 3f 20 66 61 6c 73 65 20 3a 20 72 74 72 69 6d 28 24 6c 69 6e 65 29 3b 0a 7d 0a 0a 72 65 74 ).?.false.:.rtrim($line);.}..ret
f6780 75 72 6e 20 24 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 67 65 urn.$line;.}..public.function.ge
f67a0 74 50 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 tProcessIsolation().{.return.$th
f67c0 69 73 2d 3e 70 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 is->processIsolation;.}..public.
f67e0 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 28 24 70 72 function.setProcessIsolation($pr
f6800 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 ocessIsolation).{.$this->process
f6820 49 73 6f 6c 61 74 69 6f 6e 20 3d 20 28 62 6f 6f 6c 29 20 24 70 72 6f 63 65 73 73 49 73 6f 6c 61 Isolation.=.(bool).$processIsola
f6840 74 69 6f 6e 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 tion;..if.($this->processIsolati
f6860 6f 6e 20 26 26 20 21 63 6c 61 73 73 5f 65 78 69 73 74 73 28 27 53 79 6d 66 6f 6e 79 5c 5c 43 6f on.&&.!class_exists('Symfony\\Co
f6880 6d 70 6f 6e 65 6e 74 5c 5c 50 72 6f 63 65 73 73 5c 5c 50 72 6f 63 65 73 73 27 29 29 20 7b 0a 74 mponent\\Process\\Process')).{.t
f68a0 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 6c hrow.new.RuntimeException('Unabl
f68c0 65 20 74 6f 20 69 73 6f 6c 61 74 65 20 70 72 6f 63 65 73 73 65 73 20 61 73 20 74 68 65 20 53 79 e.to.isolate.processes.as.the.Sy
f68e0 6d 66 6f 6e 79 20 50 72 6f 63 65 73 73 20 43 6f 6d 70 6f 6e 65 6e 74 20 69 73 20 6e 6f 74 20 69 mfony.Process.Component.is.not.i
f6900 6e 73 74 61 6c 6c 65 64 2e 27 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a nstalled.');.}.}.}.<?php........
f6920 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
f6940 6f 6e 73 6f 6c 65 5c 53 74 79 6c 65 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f onsole\Style;..use.Symfony\Compo
f6960 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
f6980 6d 61 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 matterInterface;.use.Symfony\Com
f69a0 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 67 72 65 73 73 42 61 ponent\Console\Helper\ProgressBa
f69c0 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
f69e0 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 61 \Output\OutputInterface;.......a
f6a00 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 4f 75 74 70 75 74 53 74 79 6c 65 20 69 6d 70 6c 65 6d bstract.class.OutputStyle.implem
f6a20 65 6e 74 73 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 2c 20 53 74 79 6c 65 49 6e 74 65 72 ents.OutputInterface,.StyleInter
f6a40 66 61 63 65 0a 7b 0a 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 face.{.private.$output;.....publ
f6a60 69 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 ic.function.__construct(OutputIn
f6a80 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 6f 75 74 70 75 74 terface.$output).{.$this->output
f6aa0 20 3d 20 24 6f 75 74 70 75 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f .=.$output;.}.....public.functio
f6ac0 6e 20 6e 65 77 4c 69 6e 65 28 24 63 6f 75 6e 74 20 3d 20 31 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f n.newLine($count.=.1).{.$this->o
f6ae0 75 74 70 75 74 2d 3e 77 72 69 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 50 48 50 5f 45 4f 4c 2c utput->write(str_repeat(PHP_EOL,
f6b00 20 24 63 6f 75 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 .$count));.}.......public.functi
f6b20 6f 6e 20 63 72 65 61 74 65 50 72 6f 67 72 65 73 73 42 61 72 28 24 6d 61 78 20 3d 20 30 29 0a 7b on.createProgressBar($max.=.0).{
f6b40 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 72 6f 67 72 65 73 73 42 61 72 28 24 74 68 69 73 2d 3e 6f .return.new.ProgressBar($this->o
f6b60 75 74 70 75 74 2c 20 24 6d 61 78 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 utput,.$max);.}.....public.funct
f6b80 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.=.
f6ba0 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 4d false,.$type.=.self::OUTPUT_NORM
f6bc0 41 4c 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 AL).{.$this->output->write($mess
f6be0 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 2c 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 ages,.$newline,.$type);.}.....pu
f6c00 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 61 67 65 73 2c blic.function.writeln($messages,
f6c20 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 4c 29 0a 7b 0a .$type.=.self::OUTPUT_NORMAL).{.
f6c40 24 74 68 69 73 2d 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 73 $this->output->writeln($messages
f6c60 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 74 69 6f 6e 20 ,.$type);.}.....public.function.
f6c80 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 setVerbosity($level).{.$this->ou
f6ca0 74 70 75 74 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 tput->setVerbosity($level);.}...
f6cc0 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 73 69 74 79 28 29 ..public.function.getVerbosity()
f6ce0 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 62 .{.return.$this->output->getVerb
f6d00 6f 73 69 74 79 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 osity();.}.....public.function.s
f6d20 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 24 74 68 69 73 2d etDecorated($decorated).{.$this-
f6d40 3e 6f 75 74 70 75 74 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 >output->setDecorated($decorated
f6d60 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 73 44 65 63 6f 72 );.}.....public.function.isDecor
f6d80 61 74 65 64 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 2d 3e 69 ated().{.return.$this->output->i
f6da0 73 44 65 63 6f 72 61 74 65 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 sDecorated();.}.....public.funct
f6dc0 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
f6de0 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 6f Interface.$formatter).{.$this->o
f6e00 75 74 70 75 74 2d 3e 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 utput->setFormatter($formatter);
f6e20 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 6f 72 6d 61 74 .}.....public.function.getFormat
f6e40 74 65 72 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 2d 3e 67 65 ter().{.return.$this->output->ge
f6e60 74 46 6f 72 6d 61 74 74 65 72 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a tFormatter();.}.}.<?php.........
f6e80 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 6f ..namespace.Symfony\Component\Co
f6ea0 6e 73 6f 6c 65 5c 53 74 79 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 53 74 79 nsole\Style;.......interface.Sty
f6ec0 6c 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 74 69 leInterface.{......public.functi
f6ee0 6f 6e 20 74 69 74 6c 65 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 on.title($message);.......public
f6f00 20 66 75 6e 63 74 69 6f 6e 20 73 65 63 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a .function.section($message);....
f6f20 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 67 28 61 72 72 61 79 ...public.function.listing(array
f6f40 20 24 65 6c 65 6d 65 6e 74 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 .$elements);.......public.functi
f6f60 6f 6e 20 74 65 78 74 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 on.text($message);.......public.
f6f80 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 3b 0a 0a 0a 0a 0a function.success($message);.....
f6fa0 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 61 67 65 ..public.function.error($message
f6fc0 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 77 61 72 6e 69 6e 67 );.......public.function.warning
f6fe0 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
f7000 6e 20 6e 6f 74 65 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 n.note($message);.......public.f
f7020 75 6e 63 74 69 6f 6e 20 63 61 75 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a 0a 0a unction.caution($message);......
f7040 0a 0a 70 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 ..public.function.table(array.$h
f7060 65 61 64 65 72 73 2c 20 61 72 72 61 79 20 24 72 6f 77 73 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a eaders,.array.$rows);...........
f7080 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 6f 6e 2c 20 24 public.function.ask($question,.$
f70a0 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 2c 20 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 75 6c default.=.null,.$validator.=.nul
f70c0 6c 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 61 73 6b l);..........public.function.ask
f70e0 48 69 64 64 65 6e 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e Hidden($question,.$validator.=.n
f7100 75 6c 6c 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 63 ull);..........public.function.c
f7120 6f 6e 66 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 onfirm($question,.$default.=.tru
f7140 65 29 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 6f 6e 20 63 68 e);...........public.function.ch
f7160 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 65 73 2c 20 oice($question,.array.$choices,.
f7180 24 64 65 66 61 75 6c 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 $default.=.null);.......public.f
f71a0 75 6e 63 74 69 6f 6e 20 6e 65 77 4c 69 6e 65 28 24 63 6f 75 6e 74 20 3d 20 31 29 3b 0a 0a 0a 0a unction.newLine($count.=.1);....
f71c0 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 72 74 ...public.function.progressStart
f71e0 28 24 6d 61 78 20 3d 20 30 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ($max.=.0);.......public.functio
f7200 6e 20 70 72 6f 67 72 65 73 73 41 64 76 61 6e 63 65 28 24 73 74 65 70 20 3d 20 31 29 3b 0a 0a 0a n.progressAdvance($step.=.1);...
f7220 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 68 ..public.function.progressFinish
f7240 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 63 65 20 ();.}.<?php...........namespace.
f7260 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 79 6c 65 3b Symfony\Component\Console\Style;
f7280 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 5c ..use.Symfony\Component\Console\
f72a0 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 65 Application;.use.Symfony\Compone
f72c0 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 45 78 63 65 nt\Console\Exception\RuntimeExce
f72e0 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 6e ption;.use.Symfony\Component\Con
f7300 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 3b 0a sole\Formatter\OutputFormatter;.
f7320 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
f7340 6c 70 65 72 5c 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 lper\Helper;.use.Symfony\Compone
f7360 6e 74 5c 43 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 nt\Console\Helper\ProgressBar;.u
f7380 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
f73a0 70 65 72 5c 53 79 6d 66 6f 6e 79 51 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 3b 0a 75 73 65 20 53 per\SymfonyQuestionHelper;.use.S
f73c0 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 65 72 5c ymfony\Component\Console\Helper\
f73e0 54 61 62 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 Table;.use.Symfony\Component\Con
f7400 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
f7420 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\
f7440 42 75 66 66 65 72 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 BufferedOutput;.use.Symfony\Comp
f7460 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
f7480 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 73 face;.use.Symfony\Component\Cons
f74a0 6f 6c 65 5c 51 75 65 73 74 69 6f 6e 5c 43 68 6f 69 63 65 51 75 65 73 74 69 6f 6e 3b 0a 75 73 65 ole\Question\ChoiceQuestion;.use
f74c0 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
f74e0 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
f7500 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
f7520 5c 51 75 65 73 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 79 6d 66 6f 6e 79 53 74 \Question;.......class.SymfonySt
f7540 79 6c 65 20 65 78 74 65 6e 64 73 20 4f 75 74 70 75 74 53 74 79 6c 65 0a 7b 0a 63 6f 6e 73 74 20 yle.extends.OutputStyle.{.const.
f7560 4d 41 58 5f 4c 49 4e 45 5f 4c 45 4e 47 54 48 20 3d 20 31 32 30 3b 0a 0a 70 72 69 76 61 74 65 20 MAX_LINE_LENGTH.=.120;..private.
f7580 24 69 6e 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 71 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 3b $input;.private.$questionHelper;
f75a0 0a 70 72 69 76 61 74 65 20 24 70 72 6f 67 72 65 73 73 42 61 72 3b 0a 70 72 69 76 61 74 65 20 24 .private.$progressBar;.private.$
f75c0 6c 69 6e 65 4c 65 6e 67 74 68 3b 0a 70 72 69 76 61 74 65 20 24 62 75 66 66 65 72 65 64 4f 75 74 lineLength;.private.$bufferedOut
f75e0 70 75 74 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 put;......public.function.__cons
f7600 74 72 75 63 74 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 truct(InputInterface.$input,.Out
f7620 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 69 putInterface.$output).{.$this->i
f7640 6e 70 75 74 20 3d 20 24 69 6e 70 75 74 3b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 nput.=.$input;.$this->bufferedOu
f7660 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 24 6f 75 74 70 75 tput.=.new.BufferedOutput($outpu
f7680 74 2d 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 2c 20 66 61 6c 73 65 2c 20 63 6c 6f 6e 65 20 t->getVerbosity(),.false,.clone.
f76a0 24 6f 75 74 70 75 74 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 29 3b 0a 0a 20 24 74 68 69 $output->getFormatter());...$thi
f76c0 73 2d 3e 6c 69 6e 65 4c 65 6e 67 74 68 20 3d 20 6d 69 6e 28 24 74 68 69 73 2d 3e 67 65 74 54 65 s->lineLength.=.min($this->getTe
f76e0 72 6d 69 6e 61 6c 57 69 64 74 68 28 29 20 2d 20 28 69 6e 74 29 20 28 44 49 52 45 43 54 4f 52 59 rminalWidth().-.(int).(DIRECTORY
f7700 5f 53 45 50 41 52 41 54 4f 52 20 3d 3d 3d 20 27 5c 5c 27 29 2c 20 73 65 6c 66 3a 3a 4d 41 58 5f _SEPARATOR.===.'\\'),.self::MAX_
f7720 4c 49 4e 45 5f 4c 45 4e 47 54 48 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 LINE_LENGTH);..parent::__constru
f7740 63 74 28 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 ct($output);.}...........public.
f7760 66 75 6e 63 74 69 6f 6e 20 62 6c 6f 63 6b 28 24 6d 65 73 73 61 67 65 73 2c 20 24 74 79 70 65 20 function.block($messages,.$type.
f7780 3d 20 6e 75 6c 6c 2c 20 24 73 74 79 6c 65 20 3d 20 6e 75 6c 6c 2c 20 24 70 72 65 66 69 78 20 3d =.null,.$style.=.null,.$prefix.=
f77a0 20 27 20 27 2c 20 24 70 61 64 64 69 6e 67 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 73 2d .'.',.$padding.=.false).{.$this-
f77c0 3e 61 75 74 6f 50 72 65 70 65 6e 64 42 6c 6f 63 6b 28 29 3b 0a 24 6d 65 73 73 61 67 65 73 20 3d >autoPrependBlock();.$messages.=
f77e0 20 69 73 5f 61 72 72 61 79 28 24 6d 65 73 73 61 67 65 73 29 20 3f 20 61 72 72 61 79 5f 76 61 6c .is_array($messages).?.array_val
f7800 75 65 73 28 24 6d 65 73 73 61 67 65 73 29 20 3a 20 61 72 72 61 79 28 24 6d 65 73 73 61 67 65 73 ues($messages).:.array($messages
f7820 29 3b 0a 24 6c 69 6e 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 69 66 20 28 6e 75 6c 6c );.$lines.=.array();....if.(null
f7840 20 21 3d 3d 20 24 74 79 70 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 30 5d 20 3d 20 73 70 72 .!==.$type).{.$messages[0].=.spr
f7860 69 6e 74 66 28 27 5b 25 73 5d 20 25 73 27 2c 20 24 74 79 70 65 2c 20 24 6d 65 73 73 61 67 65 73 intf('[%s].%s',.$type,.$messages
f7880 5b 30 5d 29 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 [0]);.}....foreach.($messages.as
f78a0 20 24 6b 65 79 20 3d 3e 20 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 .$key.=>.$message).{.$message.=.
f78c0 4f 75 74 70 75 74 46 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 OutputFormatter::escape($message
f78e0 29 3b 0a 24 6c 69 6e 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6c 69 6e 65 73 2c 20 );.$lines.=.array_merge($lines,.
f7900 65 78 70 6c 6f 64 65 28 50 48 50 5f 45 4f 4c 2c 20 77 6f 72 64 77 72 61 70 28 24 6d 65 73 73 61 explode(PHP_EOL,.wordwrap($messa
f7920 67 65 2c 20 24 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 ge,.$this->lineLength.-.Helper::
f7940 73 74 72 6c 65 6e 28 24 70 72 65 66 69 78 29 2c 20 50 48 50 5f 45 4f 4c 2c 20 74 72 75 65 29 29 strlen($prefix),.PHP_EOL,.true))
f7960 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 6d 65 73 73 61 67 65 73 29 20 3e 20 31 20 26 26 20 );..if.(count($messages).>.1.&&.
f7980 24 6b 65 79 20 3c 20 63 6f 75 6e 74 28 24 6d 65 73 73 61 67 65 73 29 20 2d 20 31 29 20 7b 0a 24 $key.<.count($messages).-.1).{.$
f79a0 6c 69 6e 65 73 5b 5d 20 3d 20 27 27 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 70 61 64 64 69 6e 67 20 lines[].=.'';.}.}..if.($padding.
f79c0 26 26 20 24 74 68 69 73 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 29 20 7b 0a 61 72 72 61 79 &&.$this->isDecorated()).{.array
f79e0 5f 75 6e 73 68 69 66 74 28 24 6c 69 6e 65 73 2c 20 27 27 29 3b 0a 24 6c 69 6e 65 73 5b 5d 20 3d _unshift($lines,.'');.$lines[].=
f7a00 20 27 27 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 61 73 20 26 24 6c 69 6e .'';.}..foreach.($lines.as.&$lin
f7a20 65 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 25 73 27 2c 20 24 70 72 e).{.$line.=.sprintf('%s%s',.$pr
f7a40 65 66 69 78 2c 20 24 6c 69 6e 65 29 3b 0a 24 6c 69 6e 65 20 2e 3d 20 73 74 72 5f 72 65 70 65 61 efix,.$line);.$line..=.str_repea
f7a60 74 28 27 20 27 2c 20 24 74 68 69 73 2d 3e 6c 69 6e 65 4c 65 6e 67 74 68 20 2d 20 48 65 6c 70 65 t('.',.$this->lineLength.-.Helpe
f7a80 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 73 r::strlenWithoutDecoration($this
f7aa0 2d 3e 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 2c 20 24 6c 69 6e 65 29 29 3b 0a 0a 69 66 20 28 ->getFormatter(),.$line));..if.(
f7ac0 24 73 74 79 6c 65 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 73 70 72 69 6e 74 66 28 27 3c 25 73 3e 25 $style).{.$line.=.sprintf('<%s>%
f7ae0 73 3c 2f 3e 27 2c 20 24 73 74 79 6c 65 2c 20 24 6c 69 6e 65 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 s</>',.$style,.$line);.}.}..$thi
f7b00 73 2d 3e 77 72 69 74 65 6c 6e 28 24 6c 69 6e 65 73 29 3b 0a 24 74 68 69 73 2d 3e 6e 65 77 4c 69 s->writeln($lines);.$this->newLi
f7b20 6e 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 74 69 74 6c ne();.}.....public.function.titl
f7b40 65 28 24 6d 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 e($message).{.$this->autoPrepend
f7b60 42 6c 6f 63 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 Block();.$this->writeln(array(.s
f7b80 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 24 6d 65 73 73 61 67 printf('<comment>%s</>',.$messag
f7ba0 65 29 2c 0a 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 e),.sprintf('<comment>%s</>',.st
f7bc0 72 5f 72 65 70 65 61 74 28 27 3d 27 2c 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e 57 69 74 68 r_repeat('=',.Helper::strlenWith
f7be0 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 6d 61 74 74 65 outDecoration($this->getFormatte
f7c00 72 28 29 2c 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 r(),.$message))),.));.$this->new
f7c20 4c 69 6e 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 73 65 Line();.}.....public.function.se
f7c40 63 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 50 72 65 ction($message).{.$this->autoPre
f7c60 70 65 6e 64 42 6c 6f 63 6b 28 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 6c 6e 28 61 72 72 61 pendBlock();.$this->writeln(arra
f7c80 79 28 0a 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 24 6d 65 y(.sprintf('<comment>%s</>',.$me
f7ca0 73 73 61 67 65 29 2c 0a 73 70 72 69 6e 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 3e 27 ssage),.sprintf('<comment>%s</>'
f7cc0 2c 20 73 74 72 5f 72 65 70 65 61 74 28 27 2d 27 2c 20 48 65 6c 70 65 72 3a 3a 73 74 72 6c 65 6e ,.str_repeat('-',.Helper::strlen
f7ce0 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 6d WithoutDecoration($this->getForm
f7d00 61 74 74 65 72 28 29 2c 20 24 6d 65 73 73 61 67 65 29 29 29 2c 0a 29 29 3b 0a 24 74 68 69 73 2d atter(),.$message))),.));.$this-
f7d20 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 75 6e 63 74 69 6f >newLine();.}.....public.functio
f7d40 6e 20 6c 69 73 74 69 6e 67 28 61 72 72 61 79 20 24 65 6c 65 6d 65 6e 74 73 29 0a 7b 0a 24 74 68 n.listing(array.$elements).{.$th
f7d60 69 73 2d 3e 61 75 74 6f 50 72 65 70 65 6e 64 54 65 78 74 28 29 3b 0a 24 65 6c 65 6d 65 6e 74 73 is->autoPrependText();.$elements
f7d80 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 6d 65 6e 74 29 .=.array_map(function.($element)
f7da0 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 20 2a 20 25 73 27 2c 20 24 65 6c 65 6d .{.return.sprintf('.*.%s',.$elem
f7dc0 65 6e 74 29 3b 0a 7d 2c 20 24 65 6c 65 6d 65 6e 74 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 77 72 69 ent);.},.$elements);..$this->wri
f7de0 74 65 6c 6e 28 24 65 6c 65 6d 65 6e 74 73 29 3b 0a 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 teln($elements);.$this->newLine(
f7e00 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 74 65 78 74 28 24 6d );.}.....public.function.text($m
f7e20 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 54 65 78 74 essage).{.$this->autoPrependText
f7e40 28 29 3b 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 69 73 5f 61 72 72 61 79 28 24 6d 65 73 73 61 ();..$messages.=.is_array($messa
f7e60 67 65 29 20 3f 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 6d 65 73 73 61 67 65 29 20 3a 20 61 ge).?.array_values($message).:.a
f7e80 72 72 61 79 28 24 6d 65 73 73 61 67 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 rray($message);.foreach.($messag
f7ea0 65 73 20 61 73 20 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 6c 6e es.as.$message).{.$this->writeln
f7ec0 28 73 70 72 69 6e 74 66 28 27 20 25 73 27 2c 20 24 6d 65 73 73 61 67 65 29 29 3b 0a 7d 0a 7d 0a (sprintf('.%s',.$message));.}.}.
f7ee0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 6d 65 6e 74 28 24 6d 65 73 ....public.function.comment($mes
f7f00 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 54 65 78 74 28 29 sage).{.$this->autoPrependText()
f7f20 3b 0a 0a 24 6d 65 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 ;..$messages.=.is_array($message
f7f40 29 20 3f 20 61 72 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 ).?.array_values($message).:.arr
f7f60 61 79 28 24 6d 65 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 ay($message);.foreach.($messages
f7f80 20 61 73 20 24 6d 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 .as.$message).{.$this->writeln(s
f7fa0 70 72 69 6e 74 66 28 27 20 2f 2f 20 25 73 27 2c 20 24 6d 65 73 73 61 67 65 29 29 3b 0a 7d 0a 7d printf('.//.%s',.$message));.}.}
f7fc0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 63 63 65 73 73 28 24 6d 65 .....public.function.success($me
f7fe0 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 73 73 61 67 65 2c 20 ssage).{.$this->block($message,.
f8000 27 4f 4b 27 2c 20 27 66 67 3d 62 6c 61 63 6b 3b 62 67 3d 67 72 65 65 6e 27 2c 20 27 20 27 2c 20 'OK',.'fg=black;bg=green',.'.',.
f8020 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 65 72 72 true);.}.....public.function.err
f8040 6f 72 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 73 or($message).{.$this->block($mes
f8060 73 61 67 65 2c 20 27 45 52 52 4f 52 27 2c 20 27 66 67 3d 77 68 69 74 65 3b 62 67 3d 72 65 64 27 sage,.'ERROR',.'fg=white;bg=red'
f8080 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 6e 63 74 ,.'.',.true);.}.....public.funct
f80a0 69 6f 6e 20 77 61 72 6e 69 6e 67 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 ion.warning($message).{.$this->b
f80c0 6c 6f 63 6b 28 24 6d 65 73 73 61 67 65 2c 20 27 57 41 52 4e 49 4e 47 27 2c 20 27 66 67 3d 77 68 lock($message,.'WARNING',.'fg=wh
f80e0 69 74 65 3b 62 67 3d 72 65 64 27 2c 20 27 20 27 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 ite;bg=red',.'.',.true);.}.....p
f8100 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 65 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a ublic.function.note($message).{.
f8120 24 74 68 69 73 2d 3e 62 6c 6f 63 6b 28 24 6d 65 73 73 61 67 65 2c 20 27 4e 4f 54 45 27 2c 20 27 $this->block($message,.'NOTE',.'
f8140 66 67 3d 79 65 6c 6c 6f 77 27 2c 20 27 20 21 20 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 fg=yellow',.'.!.');.}.....public
f8160 20 66 75 6e 63 74 69 6f 6e 20 63 61 75 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 74 .function.caution($message).{.$t
f8180 68 69 73 2d 3e 62 6c 6f 63 6b 28 24 6d 65 73 73 61 67 65 2c 20 27 43 41 55 54 49 4f 4e 27 2c 20 his->block($message,.'CAUTION',.
f81a0 27 66 67 3d 77 68 69 74 65 3b 62 67 3d 72 65 64 27 2c 20 27 20 21 20 27 2c 20 74 72 75 65 29 3b 'fg=white;bg=red',.'.!.',.true);
f81c0 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 61 62 6c 65 28 61 72 72 .}.....public.function.table(arr
f81e0 61 79 20 24 68 65 61 64 65 72 73 2c 20 61 72 72 61 79 20 24 72 6f 77 73 29 0a 7b 0a 24 68 65 61 ay.$headers,.array.$rows).{.$hea
f8200 64 65 72 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 76 61 6c 75 ders.=.array_map(function.($valu
f8220 65 29 20 7b 20 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 3e e).{.return.sprintf('<info>%s</>
f8240 27 2c 20 24 76 61 6c 75 65 29 3b 20 7d 2c 20 24 68 65 61 64 65 72 73 29 3b 0a 0a 24 74 61 62 6c ',.$value);.},.$headers);..$tabl
f8260 65 20 3d 20 6e 65 77 20 54 61 62 6c 65 28 24 74 68 69 73 29 3b 0a 24 74 61 62 6c 65 2d 3e 73 65 e.=.new.Table($this);.$table->se
f8280 74 48 65 61 64 65 72 73 28 24 68 65 61 64 65 72 73 29 3b 0a 24 74 61 62 6c 65 2d 3e 73 65 74 52 tHeaders($headers);.$table->setR
f82a0 6f 77 73 28 24 72 6f 77 73 29 3b 0a 24 74 61 62 6c 65 2d 3e 73 65 74 53 74 79 6c 65 28 27 73 79 ows($rows);.$table->setStyle('sy
f82c0 6d 66 6f 6e 79 2d 73 74 79 6c 65 2d 67 75 69 64 65 27 29 3b 0a 0a 24 74 61 62 6c 65 2d 3e 72 65 mfony-style-guide');..$table->re
f82e0 6e 64 65 72 28 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 0a nder();.$this->newLine();.}.....
f8300 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 6f 6e 2c 20 24 public.function.ask($question,.$
f8320 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 2c 20 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 75 6c default.=.null,.$validator.=.nul
f8340 6c 29 0a 7b 0a 24 71 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 l).{.$question.=.new.Question($q
f8360 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 29 3b 0a 24 71 75 65 73 74 69 6f 6e 2d 3e 73 uestion,.$default);.$question->s
f8380 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 72 65 74 75 72 6e etValidator($validator);..return
f83a0 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 69 6f 6e 29 3b 0a .$this->askQuestion($question);.
f83c0 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 48 69 64 64 65 6e 28 }.....public.function.askHidden(
f83e0 24 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 0a 7b 0a $question,.$validator.=.null).{.
f8400 24 71 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 $question.=.new.Question($questi
f8420 6f 6e 29 3b 0a 0a 24 71 75 65 73 74 69 6f 6e 2d 3e 73 65 74 48 69 64 64 65 6e 28 74 72 75 65 29 on);..$question->setHidden(true)
f8440 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 24 76 61 6c 69 64 ;.$question->setValidator($valid
f8460 61 74 6f 72 29 3b 0a 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 ator);..return.$this->askQuestio
f8480 6e 28 24 71 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 n($question);.}.....public.funct
f84a0 69 6f 6e 20 63 6f 6e 66 69 72 6d 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 ion.confirm($question,.$default.
f84c0 3d 20 74 72 75 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 73 6b 51 75 65 73 74 =.true).{.return.$this->askQuest
f84e0 69 6f 6e 28 6e 65 77 20 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 51 75 65 73 74 69 6f 6e 28 24 71 75 ion(new.ConfirmationQuestion($qu
f8500 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 estion,.$default));.}.....public
f8520 20 66 75 6e 63 74 69 6f 6e 20 63 68 6f 69 63 65 28 24 71 75 65 73 74 69 6f 6e 2c 20 61 72 72 61 .function.choice($question,.arra
f8540 79 20 24 63 68 6f 69 63 65 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 y.$choices,.$default.=.null).{.i
f8560 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 24 76 61 6c 75 65 73 20 f.(null.!==.$default).{.$values.
f8580 3d 20 61 72 72 61 79 5f 66 6c 69 70 28 24 63 68 6f 69 63 65 73 29 3b 0a 24 64 65 66 61 75 6c 74 =.array_flip($choices);.$default
f85a0 20 3d 20 24 76 61 6c 75 65 73 5b 24 64 65 66 61 75 6c 74 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 .=.$values[$default];.}..return.
f85c0 24 74 68 69 73 2d 3e 61 73 6b 51 75 65 73 74 69 6f 6e 28 6e 65 77 20 43 68 6f 69 63 65 51 75 65 $this->askQuestion(new.ChoiceQue
f85e0 73 74 69 6f 6e 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 stion($question,.$choices,.$defa
f8600 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 6e 20 70 72 6f ult));.}.....public.function.pro
f8620 67 72 65 73 73 53 74 61 72 74 28 24 6d 61 78 20 3d 20 30 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 gressStart($max.=.0).{.$this->pr
f8640 6f 67 72 65 73 73 42 61 72 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 50 72 6f 67 72 65 73 ogressBar.=.$this->createProgres
f8660 73 42 61 72 28 24 6d 61 78 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 42 61 72 2d 3e sBar($max);.$this->progressBar->
f8680 73 74 61 72 74 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 70 start();.}.....public.function.p
f86a0 72 6f 67 72 65 73 73 41 64 76 61 6e 63 65 28 24 73 74 65 70 20 3d 20 31 29 0a 7b 0a 24 74 68 69 rogressAdvance($step.=.1).{.$thi
f86c0 73 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 42 61 72 28 29 2d 3e 61 64 76 61 6e 63 65 28 24 73 74 s->getProgressBar()->advance($st
f86e0 65 70 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 70 72 6f 67 72 ep);.}.....public.function.progr
f8700 65 73 73 46 69 6e 69 73 68 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 67 72 65 73 73 essFinish().{.$this->getProgress
f8720 42 61 72 28 29 2d 3e 66 69 6e 69 73 68 28 29 3b 0a 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 Bar()->finish();.$this->newLine(
f8740 32 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 42 61 72 20 3d 20 6e 75 6c 6c 3b 0a 7d 2);.$this->progressBar.=.null;.}
f8760 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 65 50 72 6f 67 72 .....public.function.createProgr
f8780 65 73 73 42 61 72 28 24 6d 61 78 20 3d 20 30 29 0a 7b 0a 24 70 72 6f 67 72 65 73 73 42 61 72 20 essBar($max.=.0).{.$progressBar.
f87a0 3d 20 70 61 72 65 6e 74 3a 3a 63 72 65 61 74 65 50 72 6f 67 72 65 73 73 42 61 72 28 24 6d 61 78 =.parent::createProgressBar($max
f87c0 29 3b 0a 0a 69 66 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 );..if.('\\'.!==.DIRECTORY_SEPAR
f87e0 41 54 4f 52 29 20 7b 0a 24 70 72 6f 67 72 65 73 73 42 61 72 2d 3e 73 65 74 45 6d 70 74 79 42 61 ATOR).{.$progressBar->setEmptyBa
f8800 72 43 68 61 72 61 63 74 65 72 28 27 e2 96 91 27 29 3b 20 0a 20 24 70 72 6f 67 72 65 73 73 42 61 rCharacter('...');...$progressBa
f8820 72 2d 3e 73 65 74 50 72 6f 67 72 65 73 73 43 68 61 72 61 63 74 65 72 28 27 27 29 3b 0a 24 70 72 r->setProgressCharacter('');.$pr
f8840 6f 67 72 65 73 73 42 61 72 2d 3e 73 65 74 42 61 72 43 68 61 72 61 63 74 65 72 28 27 e2 96 93 27 ogressBar->setBarCharacter('...'
f8860 29 3b 20 0a 20 7d 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 67 72 65 73 73 42 61 72 3b 0a 7d 0a 0a );...}..return.$progressBar;.}..
f8880 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 51 75 65 73 74 69 6f 6e .....public.function.askQuestion
f88a0 28 51 75 65 73 74 69 6f 6e 20 24 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 (Question.$question).{.if.($this
f88c0 2d 3e 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 24 74 68 69 ->input->isInteractive()).{.$thi
f88e0 73 2d 3e 61 75 74 6f 50 72 65 70 65 6e 64 42 6c 6f 63 6b 28 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 s->autoPrependBlock();.}..if.(!$
f8900 74 68 69 73 2d 3e 71 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 71 this->questionHelper).{.$this->q
f8920 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 20 3d 20 6e 65 77 20 53 79 6d 66 6f 6e 79 51 75 65 73 74 uestionHelper.=.new.SymfonyQuest
f8940 69 6f 6e 48 65 6c 70 65 72 28 29 3b 0a 7d 0a 0a 24 61 6e 73 77 65 72 20 3d 20 24 74 68 69 73 2d ionHelper();.}..$answer.=.$this-
f8960 3e 71 75 65 73 74 69 6f 6e 48 65 6c 70 65 72 2d 3e 61 73 6b 28 24 74 68 69 73 2d 3e 69 6e 70 75 >questionHelper->ask($this->inpu
f8980 74 2c 20 24 74 68 69 73 2c 20 24 71 75 65 73 74 69 6f 6e 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 t,.$this,.$question);..if.($this
f89a0 2d 3e 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 24 74 68 69 ->input->isInteractive()).{.$thi
f89c0 73 2d 3e 6e 65 77 4c 69 6e 65 28 29 3b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 74 s->newLine();.$this->bufferedOut
f89e0 70 75 74 2d 3e 77 72 69 74 65 28 22 5c 6e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 6e 73 put->write("\n");.}..return.$ans
f8a00 77 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 77 72 69 74 65 wer;.}.....public.function.write
f8a20 6c 6e 28 24 6d 65 73 73 61 67 65 73 2c 20 24 74 79 70 65 20 3d 20 73 65 6c 66 3a 3a 4f 55 54 50 ln($messages,.$type.=.self::OUTP
f8a40 55 54 5f 4e 4f 52 4d 41 4c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 77 72 69 74 65 6c 6e 28 24 6d 65 UT_NORMAL).{.parent::writeln($me
f8a60 73 73 61 67 65 73 2c 20 24 74 79 70 65 29 3b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f ssages,.$type);.$this->bufferedO
f8a80 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 74 68 69 73 2d 3e 72 65 64 75 63 65 42 75 66 66 utput->writeln($this->reduceBuff
f8aa0 65 72 28 24 6d 65 73 73 61 67 65 73 29 2c 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 er($messages),.$type);.}.....pub
f8ac0 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
f8ae0 65 77 6c 69 6e 65 20 3d 20 66 61 6c 73 65 2c 20 24 74 79 70 65 20 3d 20 73 65 6c 66 3a 3a 4f 55 ewline.=.false,.$type.=.self::OU
f8b00 54 50 55 54 5f 4e 4f 52 4d 41 4c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 77 72 69 74 65 28 24 6d 65 TPUT_NORMAL).{.parent::write($me
f8b20 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 2c 20 24 74 79 70 65 29 3b 0a 24 74 68 69 73 2d ssages,.$newline,.$type);.$this-
f8b40 3e 62 75 66 66 65 72 65 64 4f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 74 68 69 73 2d 3e 72 65 >bufferedOutput->write($this->re
f8b60 64 75 63 65 42 75 66 66 65 72 28 24 6d 65 73 73 61 67 65 73 29 2c 20 24 6e 65 77 6c 69 6e 65 2c duceBuffer($messages),.$newline,
f8b80 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 74 69 6f 6e 20 6e .$type);.}.....public.function.n
f8ba0 65 77 4c 69 6e 65 28 24 63 6f 75 6e 74 20 3d 20 31 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 6e 65 77 ewLine($count.=.1).{.parent::new
f8bc0 4c 69 6e 65 28 24 63 6f 75 6e 74 29 3b 0a 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 74 Line($count);.$this->bufferedOut
f8be0 70 75 74 2d 3e 77 72 69 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 22 5c 6e 22 2c 20 24 63 6f 75 put->write(str_repeat("\n",.$cou
f8c00 6e 74 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 67 65 74 nt));.}.....private.function.get
f8c20 50 72 6f 67 72 65 73 73 42 61 72 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 70 72 6f 67 ProgressBar().{.if.(!$this->prog
f8c40 72 65 73 73 42 61 72 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 ressBar).{.throw.new.RuntimeExce
f8c60 70 74 69 6f 6e 28 27 54 68 65 20 50 72 6f 67 72 65 73 73 42 61 72 20 69 73 20 6e 6f 74 20 73 74 ption('The.ProgressBar.is.not.st
f8c80 61 72 74 65 64 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 67 72 arted.');.}..return.$this->progr
f8ca0 65 73 73 42 61 72 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 54 essBar;.}..private.function.getT
f8cc0 65 72 6d 69 6e 61 6c 57 69 64 74 68 28 29 0a 7b 0a 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 erminalWidth().{.$application.=.
f8ce0 6e 65 77 20 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 3b 0a 24 64 69 6d 65 6e 73 69 6f 6e 73 20 3d new.Application();.$dimensions.=
f8d00 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 54 65 72 6d 69 6e 61 6c 44 69 6d 65 6e 73 .$application->getTerminalDimens
f8d20 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 30 5d 20 3f ions();..return.$dimensions[0].?
f8d40 3a 20 73 65 6c 66 3a 3a 4d 41 58 5f 4c 49 4e 45 5f 4c 45 4e 47 54 48 3b 0a 7d 0a 0a 70 72 69 76 :.self::MAX_LINE_LENGTH;.}..priv
f8d60 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 6f 50 72 65 70 65 6e 64 42 6c 6f 63 6b 28 29 0a ate.function.autoPrependBlock().
f8d80 7b 0a 24 63 68 61 72 73 20 3d 20 73 75 62 73 74 72 28 73 74 72 5f 72 65 70 6c 61 63 65 28 50 48 {.$chars.=.substr(str_replace(PH
f8da0 50 5f 45 4f 4c 2c 20 22 5c 6e 22 2c 20 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 74 70 P_EOL,."\n",.$this->bufferedOutp
f8dc0 75 74 2d 3e 66 65 74 63 68 28 29 29 2c 20 2d 32 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 ut->fetch()),.-2);..if.(!isset($
f8de0 63 68 61 72 73 5b 30 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 65 77 4c 69 chars[0])).{.return.$this->newLi
f8e00 6e 65 28 29 3b 20 0a 20 7d 0a 0a 20 24 74 68 69 73 2d 3e 6e 65 77 4c 69 6e 65 28 32 20 2d 20 73 ne();...}...$this->newLine(2.-.s
f8e20 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 63 68 61 72 73 2c 20 22 5c 6e 22 29 29 3b 0a 7d 0a 0a 70 ubstr_count($chars,."\n"));.}..p
f8e40 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 6f 50 72 65 70 65 6e 64 54 65 78 74 28 rivate.function.autoPrependText(
f8e60 29 0a 7b 0a 24 66 65 74 63 68 65 64 20 3d 20 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 4f 75 ).{.$fetched.=.$this->bufferedOu
f8e80 74 70 75 74 2d 3e 66 65 74 63 68 28 29 3b 0a 0a 20 69 66 20 28 22 5c 6e 22 20 21 3d 3d 20 73 75 tput->fetch();...if.("\n".!==.su
f8ea0 62 73 74 72 28 24 66 65 74 63 68 65 64 2c 20 2d 31 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 65 77 bstr($fetched,.-1)).{.$this->new
f8ec0 4c 69 6e 65 28 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 Line();.}.}..private.function.re
f8ee0 64 75 63 65 42 75 66 66 65 72 28 24 6d 65 73 73 61 67 65 73 29 0a 7b 0a 0a 20 0a 20 72 65 74 75 duceBuffer($messages).{.....retu
f8f00 72 6e 20 61 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 rn.array_map(function.($value).{
f8f20 0a 72 65 74 75 72 6e 20 73 75 62 73 74 72 28 24 76 61 6c 75 65 2c 20 2d 34 29 3b 0a 7d 2c 20 61 .return.substr($value,.-4);.},.a
f8f40 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 24 74 68 69 73 2d 3e 62 75 66 66 65 72 65 64 rray_merge(array($this->buffered
f8f60 4f 75 74 70 75 74 2d 3e 66 65 74 63 68 28 29 29 2c 20 28 61 72 72 61 79 29 20 24 6d 65 73 73 61 Output->fetch()),.(array).$messa
f8f80 67 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 6e 61 6d 65 73 ges));.}.}.<?php...........names
f8fa0 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 54 pace.Symfony\Component\Console\T
f8fc0 65 73 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 ester;..use.Symfony\Component\Co
f8fe0 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
f9000 6f 6d 70 6f 6e 65 6e 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 omponent\Console\Input\ArrayInpu
f9020 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
f9040 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 6f \Input\InputInterface;.use.Symfo
f9060 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
f9080 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
f90a0 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 74 70 75 74 3b 0a nt\Console\Output\StreamOutput;.
f90c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 70 70 6c 69 63 61 74 69 6f 6e 54 65 73 74 ...........class.ApplicationTest
f90e0 65 72 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 70 72 69 76 61 er.{.private.$application;.priva
f9100 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 72 69 76 te.$input;.private.$output;.priv
f9120 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 20 66 75 ate.$statusCode;.......public.fu
f9140 6e 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 nction.__construct(Application.$
f9160 61 70 70 6c 69 63 61 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f application).{.$this->applicatio
f9180 6e 20 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a n.=.$application;.}.............
f91a0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 61 72 72 61 79 20 24 69 6e ...public.function.run(array.$in
f91c0 70 75 74 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 68 69 73 put,.$options.=.array()).{.$this
f91e0 2d 3e 69 6e 70 75 74 20 3d 20 6e 65 77 20 41 72 72 61 79 49 6e 70 75 74 28 24 69 6e 70 75 74 29 ->input.=.new.ArrayInput($input)
f9200 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 69 6e 74 65 72 61 63 74 69 76 ;.if.(isset($options['interactiv
f9220 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 2d 3e 73 65 74 49 6e 74 65 72 61 63 e'])).{.$this->input->setInterac
f9240 74 69 76 65 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 3b 0a 7d tive($options['interactive']);.}
f9260 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 53 74 72 65 61 6d 4f 75 74 70 ..$this->output.=.new.StreamOutp
f9280 75 74 28 66 6f 70 65 6e 28 27 70 68 70 3a 2f 2f 6d 65 6d 6f 72 79 27 2c 20 27 77 27 2c 20 66 61 ut(fopen('php://memory',.'w',.fa
f92a0 6c 73 65 29 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 64 65 63 6f 72 lse));.if.(isset($options['decor
f92c0 61 74 65 64 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 65 74 44 65 63 ated'])).{.$this->output->setDec
f92e0 6f 72 61 74 65 64 28 24 6f 70 74 69 6f 6e 73 5b 27 64 65 63 6f 72 61 74 65 64 27 5d 29 3b 0a 7d orated($options['decorated']);.}
f9300 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 76 65 72 62 6f 73 69 74 79 27 5d .if.(isset($options['verbosity']
f9320 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 65 74 56 65 72 62 6f 73 69 74 79 )).{.$this->output->setVerbosity
f9340 28 24 6f 70 74 69 6f 6e 73 5b 27 76 65 72 62 6f 73 69 74 79 27 5d 29 3b 0a 7d 0a 0a 72 65 74 75 ($options['verbosity']);.}..retu
f9360 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 74 75 73 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 61 70 rn.$this->statusCode.=.$this->ap
f9380 70 6c 69 63 61 74 69 6f 6e 2d 3e 72 75 6e 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 24 74 68 plication->run($this->input,.$th
f93a0 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 6c 69 63 20 66 75 is->output);.}.........public.fu
f93c0 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 7a 65 20 3d 20 66 nction.getDisplay($normalize.=.f
f93e0 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 75 74 2d 3e 67 65 alse).{.rewind($this->output->ge
f9400 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 72 65 61 6d 5f 67 tStream());..$display.=.stream_g
f9420 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 3e 67 65 74 53 74 et_contents($this->output->getSt
f9440 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 7b 0a 24 64 69 73 ream());..if.($normalize).{.$dis
f9460 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 2c 20 22 5c 6e 22 play.=.str_replace(PHP_EOL,."\n"
f9480 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 73 70 6c 61 79 3b ,.$display);.}..return.$display;
f94a0 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 6e 70 75 .}.......public.function.getInpu
f94c0 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 0a 7d 0a 0a 0a 0a t().{.return.$this->input;.}....
f94e0 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 75 74 28 29 0a 7b ...public.function.getOutput().{
f9500 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 0a 0a 0a 0a 0a 70 .return.$this->output;.}.......p
f9520 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 64 65 28 29 0a 7b ublic.function.getStatusCode().{
f9540 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 0a 7d 0a 7d 0a 3c .return.$this->statusCode;.}.}.<
f9560 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
f9580 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 75 73 65 20 \Component\Console\Tester;..use.
f95a0 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
f95c0 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
f95e0 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
f9600 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\
f9620 53 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 StreamOutput;.use.Symfony\Compon
f9640 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 65 ent\Console\Input\InputInterface
f9660 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\
f9680 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 63 6c Output\OutputInterface;.......cl
f96a0 61 73 73 20 43 6f 6d 6d 61 6e 64 54 65 73 74 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f 6d ass.CommandTester.{.private.$com
f96c0 6d 61 6e 64 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 6f mand;.private.$input;.private.$o
f96e0 75 74 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 73 74 61 74 75 73 43 6f 64 65 3b 0a 0a 0a 0a 0a utput;.private.$statusCode;.....
f9700 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 6f ..public.function.__construct(Co
f9720 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 mmand.$command).{.$this->command
f9740 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 .=.$command;.}................pu
f9760 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 61 72 72 61 79 20 24 69 6e 70 blic.function.execute(array.$inp
f9780 75 74 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 0a ut,.array.$options.=.array()).{.
f97a0 0a 20 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 69 6e 70 75 74 5b 27 63 6f 6d 6d 61 6e 64 27 5d ....if.(!isset($input['command']
f97c0 29 0a 26 26 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 24 74 ).&&.(null.!==.$application.=.$t
f97e0 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 29 0a his->command->getApplication()).
f9800 26 26 20 24 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 29 &&.$application->getDefinition()
f9820 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 27 29 0a 29 20 7b 0a 24 69 6e ->hasArgument('command').).{.$in
f9840 70 75 74 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 27 63 6f 6d 6d 61 6e 64 put.=.array_merge(array('command
f9860 27 20 3d 3e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 2c '.=>.$this->command->getName()),
f9880 20 24 69 6e 70 75 74 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 6e 65 77 20 .$input);.}..$this->input.=.new.
f98a0 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 73 65 74 28 24 6f ArrayInput($input);.if.(isset($o
f98c0 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 24 74 68 69 73 2d ptions['interactive'])).{.$this-
f98e0 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 74 69 6f 6e 73 5b >input->setInteractive($options[
f9900 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 3e 6f 75 74 70 75 'interactive']);.}..$this->outpu
f9920 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 28 27 70 68 70 3a t.=.new.StreamOutput(fopen('php:
f9940 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 66 20 28 69 73 73 //memory',.'w',.false));.if.(iss
f9960 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 20 7b 0a 24 74 68 et($options['decorated'])).{.$th
f9980 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 6f 70 74 69 6f 6e is->output->setDecorated($option
f99a0 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 65 74 28 24 6f 70 s['decorated']);.}.if.(isset($op
f99c0 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 69 73 2d 3e 6f 75 tions['verbosity'])).{.$this->ou
f99e0 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 73 5b 27 76 65 72 tput->setVerbosity($options['ver
f9a00 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 2d 3e 73 74 61 74 bosity']);.}..return.$this->stat
f9a20 75 73 43 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 2d 3e 72 75 6e 28 24 74 68 usCode.=.$this->command->run($th
f9a40 69 73 2d 3e 69 6e 70 75 74 2c 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 0a is->input,.$this->output);.}....
f9a60 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 70 6c 61 79 28 .....public.function.getDisplay(
f9a80 24 6e 6f 72 6d 61 6c 69 7a 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 72 65 77 69 6e 64 28 24 74 68 $normalize.=.false).{.rewind($th
f9aa0 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 0a 0a 24 64 69 73 70 is->output->getStream());..$disp
f9ac0 6c 61 79 20 3d 20 73 74 72 65 61 6d 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d lay.=.stream_get_contents($this-
f9ae0 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 29 3b 0a 0a 69 66 20 28 24 6e 6f 72 >output->getStream());..if.($nor
f9b00 6d 61 6c 69 7a 65 29 20 7b 0a 24 64 69 73 70 6c 61 79 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 malize).{.$display.=.str_replace
f9b20 28 50 48 50 5f 45 4f 4c 2c 20 22 5c 6e 22 2c 20 24 64 69 73 70 6c 61 79 29 3b 0a 7d 0a 0a 72 65 (PHP_EOL,."\n",.$display);.}..re
f9b40 74 75 72 6e 20 24 64 69 73 70 6c 61 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 turn.$display;.}.......public.fu
f9b60 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 74 68 69 73 nction.getInput().{.return.$this
f9b80 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 74 69 6f 6e ->input;.}.......public.function
f9ba0 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 3e 6f 75 74 .getOutput().{.return.$this->out
f9bc0 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
f9be0 53 74 61 74 75 73 43 6f 64 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 StatusCode().{.return.$this->sta
f9c00 74 75 73 43 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 6e 61 6d tusCode;.}.}.<?php...........nam
f9c20 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 73 espace.Symfony\Component\Filesys
f9c40 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 63 65 20 45 tem\Exception;.......interface.E
f9c60 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 0a 0a 0a xceptionInterface.{.}.<?php.....
f9c80 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
f9ca0 74 5c 46 69 6c 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 0a 63 t\Filesystem\Exception;........c
f9cc0 6c 61 73 73 20 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e lass.FileNotFoundException.exten
f9ce0 64 73 20 49 4f 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 ds.IOException.{.public.function
f9d00 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 20 3d 20 6e 75 6c 6c 2c 20 24 63 .__construct($message.=.null,.$c
f9d20 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 73 20 3d 20 ode.=.0,.\Exception.$previous.=.
f9d40 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d null,.$path.=.null).{.if.(null.=
f9d60 3d 3d 20 24 6d 65 73 73 61 67 65 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 70 61 74 ==.$message).{.if.(null.===.$pat
f9d80 68 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 46 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 h).{.$message.=.'File.could.not.
f9da0 62 65 20 66 6f 75 6e 64 2e 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 be.found.';.}.else.{.$message.=.
f9dc0 73 70 72 69 6e 74 66 28 27 46 69 6c 65 20 22 25 73 22 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 sprintf('File."%s".could.not.be.
f9de0 66 6f 75 6e 64 2e 27 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f found.',.$path);.}.}..parent::__
f9e00 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 2c 20 24 70 72 65 76 construct($message,.$code,.$prev
f9e20 69 6f 75 73 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a ious,.$path);.}.}.<?php.........
f9e40 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
f9e60 6c 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 0a 0a 63 6c 61 73 lesystem\Exception;.........clas
f9e80 73 20 49 4f 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 s.IOException.extends.\RuntimeEx
f9ea0 63 65 70 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 4f 45 78 63 65 70 74 69 6f 6e 49 6e ception.implements.IOExceptionIn
f9ec0 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 61 74 68 3b 0a 0a 70 75 62 6c 69 63 terface.{.private.$path;..public
f9ee0 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 65 2c 20 .function.__construct($message,.
f9f00 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 73 20 $code.=.0,.\Exception.$previous.
f9f20 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 74 68 69 73 2d 3e 70 =.null,.$path.=.null).{.$this->p
f9f40 61 74 68 20 3d 20 24 70 61 74 68 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 ath.=.$path;..parent::__construc
f9f60 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 29 3b 0a 7d t($message,.$code,.$previous);.}
f9f80 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 74 68 28 29 0a 7b .....public.function.getPath().{
f9fa0 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 74 68 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a .return.$this->path;.}.}.<?php..
f9fc0 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
f9fe0 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 3b 0a 0a 0a 0a 0a 0a nent\Filesystem\Exception;......
fa000 0a 69 6e 74 65 72 66 61 63 65 20 49 4f 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 20 .interface.IOExceptionInterface.
fa020 65 78 74 65 6e 64 73 20 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a extends.ExceptionInterface.{....
fa040 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 74 68 28 29 3b 0a 7d 0a 3c ..public.function.getPath();.}.<
fa060 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
fa080 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 66 \Component\Filesystem;..use.Symf
fa0a0 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 69 ony\Component\Filesystem\Excepti
fa0c0 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 6d 70 on\IOException;.use.Symfony\Comp
fa0e0 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 46 69 6c 65 4e onent\Filesystem\Exception\FileN
fa100 6f 74 46 6f 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 46 69 otFoundException;.......class.Fi
fa120 6c 65 73 79 73 74 65 6d 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 lesystem.{...............public.
fa140 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 28 24 6f 72 69 67 69 6e 46 69 6c 65 2c 20 24 74 61 72 67 function.copy($originFile,.$targ
fa160 65 74 46 69 6c 65 2c 20 24 6f 76 65 72 72 69 64 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 etFile,.$override.=.false).{.if.
fa180 28 73 74 72 65 61 6d 5f 69 73 5f 6c 6f 63 61 6c 28 24 6f 72 69 67 69 6e 46 69 6c 65 29 20 26 26 (stream_is_local($originFile).&&
fa1a0 20 21 69 73 5f 66 69 6c 65 28 24 6f 72 69 67 69 6e 46 69 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 .!is_file($originFile)).{.throw.
fa1c0 6e 65 77 20 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 new.FileNotFoundException(sprint
fa1e0 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 6f 70 79 20 22 25 73 22 20 62 65 63 61 75 73 65 20 66 f('Failed.to.copy."%s".because.f
fa200 69 6c 65 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6f 72 69 67 69 6e 46 69 6c ile.does.not.exist.',.$originFil
fa220 65 29 2c 20 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 24 74 e),.0,.null,.$originFile);.}..$t
fa240 68 69 73 2d 3e 6d 6b 64 69 72 28 64 69 72 6e 61 6d 65 28 24 74 61 72 67 65 74 46 69 6c 65 29 29 his->mkdir(dirname($targetFile))
fa260 3b 0a 0a 24 64 6f 43 6f 70 79 20 3d 20 74 72 75 65 3b 0a 69 66 20 28 21 24 6f 76 65 72 72 69 64 ;..$doCopy.=.true;.if.(!$overrid
fa280 65 20 26 26 20 6e 75 6c 6c 20 3d 3d 3d 20 70 61 72 73 65 5f 75 72 6c 28 24 6f 72 69 67 69 6e 46 e.&&.null.===.parse_url($originF
fa2a0 69 6c 65 2c 20 50 48 50 5f 55 52 4c 5f 48 4f 53 54 29 20 26 26 20 69 73 5f 66 69 6c 65 28 24 74 ile,.PHP_URL_HOST).&&.is_file($t
fa2c0 61 72 67 65 74 46 69 6c 65 29 29 20 7b 0a 24 64 6f 43 6f 70 79 20 3d 20 66 69 6c 65 6d 74 69 6d argetFile)).{.$doCopy.=.filemtim
fa2e0 65 28 24 6f 72 69 67 69 6e 46 69 6c 65 29 20 3e 20 66 69 6c 65 6d 74 69 6d 65 28 24 74 61 72 67 e($originFile).>.filemtime($targ
fa300 65 74 46 69 6c 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 64 6f 43 6f 70 79 29 20 7b 0a 0a 20 69 66 20 etFile);.}..if.($doCopy).{...if.
fa320 28 66 61 6c 73 65 20 3d 3d 3d 20 24 73 6f 75 72 63 65 20 3d 20 40 66 6f 70 65 6e 28 24 6f 72 69 (false.===.$source.=.@fopen($ori
fa340 67 69 6e 46 69 6c 65 2c 20 27 72 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 ginFile,.'r')).{.throw.new.IOExc
fa360 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 63 6f 70 79 20 22 eption(sprintf('Failed.to.copy."
fa380 25 73 22 20 74 6f 20 22 25 73 22 20 62 65 63 61 75 73 65 20 73 6f 75 72 63 65 20 66 69 6c 65 20 %s".to."%s".because.source.file.
fa3a0 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 6f 70 65 6e 65 64 20 66 6f 72 20 72 65 61 64 69 6e 67 2e could.not.be.opened.for.reading.
fa3c0 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 30 2c ',.$originFile,.$targetFile),.0,
fa3e0 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 69 66 20 28 66 61 .null,.$originFile);.}....if.(fa
fa400 6c 73 65 20 3d 3d 3d 20 24 74 61 72 67 65 74 20 3d 20 40 66 6f 70 65 6e 28 24 74 61 72 67 65 74 lse.===.$target.=.@fopen($target
fa420 46 69 6c 65 2c 20 27 77 27 2c 20 6e 75 6c 6c 2c 20 73 74 72 65 61 6d 5f 63 6f 6e 74 65 78 74 5f File,.'w',.null,.stream_context_
fa440 63 72 65 61 74 65 28 61 72 72 61 79 28 27 66 74 70 27 20 3d 3e 20 61 72 72 61 79 28 27 6f 76 65 create(array('ftp'.=>.array('ove
fa460 72 77 72 69 74 65 27 20 3d 3e 20 74 72 75 65 29 29 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 rwrite'.=>.true))))).{.throw.new
fa480 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.
fa4a0 63 6f 70 79 20 22 25 73 22 20 74 6f 20 22 25 73 22 20 62 65 63 61 75 73 65 20 74 61 72 67 65 74 copy."%s".to."%s".because.target
fa4c0 20 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 66 6f 72 20 77 72 .file.could.not.be.opened.for.wr
fa4e0 69 74 69 6e 67 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 iting.',.$originFile,.$targetFil
fa500 65 29 2c 20 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 24 62 e),.0,.null,.$originFile);.}..$b
fa520 79 74 65 73 43 6f 70 69 65 64 20 3d 20 73 74 72 65 61 6d 5f 63 6f 70 79 5f 74 6f 5f 73 74 72 65 ytesCopied.=.stream_copy_to_stre
fa540 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 73 6f am($source,.$target);.fclose($so
fa560 75 72 63 65 29 3b 0a 66 63 6c 6f 73 65 28 24 74 61 72 67 65 74 29 3b 0a 75 6e 73 65 74 28 24 73 urce);.fclose($target);.unset($s
fa580 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 29 3b 0a 0a 69 66 20 28 21 69 73 5f 66 69 6c 65 28 24 ource,.$target);..if.(!is_file($
fa5a0 74 61 72 67 65 74 46 69 6c 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 targetFile)).{.throw.new.IOExcep
fa5c0 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
fa5e0 22 20 74 6f 20 22 25 73 22 2e 27 2c 20 24 6f 72 69 67 69 6e 46 69 6c 65 2c 20 24 74 61 72 67 65 ".to."%s".',.$originFile,.$targe
fa600 74 46 69 6c 65 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 6f 72 69 67 69 6e 46 69 6c 65 29 3b 0a 7d tFile),.0,.null,.$originFile);.}
fa620 0a 0a 0a 20 40 63 68 6d 6f 64 28 24 74 61 72 67 65 74 46 69 6c 65 2c 20 66 69 6c 65 70 65 72 6d ....@chmod($targetFile,.fileperm
fa640 73 28 24 74 61 72 67 65 74 46 69 6c 65 29 20 7c 20 28 66 69 6c 65 70 65 72 6d 73 28 24 6f 72 69 s($targetFile).|.(fileperms($ori
fa660 67 69 6e 46 69 6c 65 29 20 26 20 30 31 31 31 29 29 3b 0a 0a 69 66 20 28 73 74 72 65 61 6d 5f 69 ginFile).&.0111));..if.(stream_i
fa680 73 5f 6c 6f 63 61 6c 28 24 6f 72 69 67 69 6e 46 69 6c 65 29 20 26 26 20 24 62 79 74 65 73 43 6f s_local($originFile).&&.$bytesCo
fa6a0 70 69 65 64 20 21 3d 3d 20 28 24 62 79 74 65 73 4f 72 69 67 69 6e 20 3d 20 66 69 6c 65 73 69 7a pied.!==.($bytesOrigin.=.filesiz
fa6c0 65 28 24 6f 72 69 67 69 6e 46 69 6c 65 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 e($originFile))).{.throw.new.IOE
fa6e0 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 63 6f 70 79 xception(sprintf('Failed.to.copy
fa700 20 74 68 65 20 77 68 6f 6c 65 20 63 6f 6e 74 65 6e 74 20 6f 66 20 22 25 73 22 20 74 6f 20 22 25 .the.whole.content.of."%s".to."%
fa720 73 22 20 28 25 67 20 6f 66 20 25 67 20 62 79 74 65 73 20 63 6f 70 69 65 64 29 2e 27 2c 20 24 6f s".(%g.of.%g.bytes.copied).',.$o
fa740 72 69 67 69 6e 46 69 6c 65 2c 20 24 74 61 72 67 65 74 46 69 6c 65 2c 20 24 62 79 74 65 73 43 6f riginFile,.$targetFile,.$bytesCo
fa760 70 69 65 64 2c 20 24 62 79 74 65 73 4f 72 69 67 69 6e 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 6f pied,.$bytesOrigin),.0,.null,.$o
fa780 72 69 67 69 6e 46 69 6c 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 riginFile);.}.}.}..........publi
fa7a0 63 20 66 75 6e 63 74 69 6f 6e 20 6d 6b 64 69 72 28 24 64 69 72 73 2c 20 24 6d 6f 64 65 20 3d 20 c.function.mkdir($dirs,.$mode.=.
fa7c0 30 37 37 37 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 0777).{.foreach.($this->toIterat
fa7e0 6f 72 28 24 64 69 72 73 29 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 69 73 5f 64 69 72 28 or($dirs).as.$dir).{.if.(is_dir(
fa800 24 64 69 72 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 21 $dir)).{.continue;.}..if.(true.!
fa820 3d 3d 20 40 6d 6b 64 69 72 28 24 64 69 72 2c 20 24 6d 6f 64 65 2c 20 74 72 75 65 29 29 20 7b 0a ==.@mkdir($dir,.$mode,.true)).{.
fa840 24 65 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 69 66 20 28 21 $error.=.error_get_last();.if.(!
fa860 69 73 5f 64 69 72 28 24 64 69 72 29 29 20 7b 0a 0a 20 69 66 20 28 24 65 72 72 6f 72 29 20 7b 0a is_dir($dir)).{...if.($error).{.
fa880 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
fa8a0 61 69 6c 65 64 20 74 6f 20 63 72 65 61 74 65 20 22 25 73 22 3a 20 25 73 2e 27 2c 20 24 64 69 72 ailed.to.create."%s":.%s.',.$dir
fa8c0 2c 20 24 65 72 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 ,.$error['message']),.0,.null,.$
fa8e0 64 69 72 29 3b 0a 7d 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 dir);.}.throw.new.IOException(sp
fa900 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 72 65 61 74 65 20 22 25 73 22 27 2c 20 24 rintf('Failed.to.create."%s"',.$
fa920 64 69 72 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 64 69 72 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a dir),.0,.null,.$dir);.}.}.}.}...
fa940 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 69 73 74 73 28 24 66 69 ......public.function.exists($fi
fa960 6c 65 73 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 les).{.foreach.($this->toIterato
fa980 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 21 66 69 6c 65 5f r($files).as.$file).{.if.(!file_
fa9a0 65 78 69 73 74 73 28 24 66 69 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d exists($file)).{.return.false;.}
fa9c0 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 0a 0a 70 75 62 .}..return.true;.}...........pub
fa9e0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 6f 75 63 68 28 24 66 69 6c 65 73 2c 20 24 74 69 6d 65 lic.function.touch($files,.$time
faa00 20 3d 20 6e 75 6c 6c 2c 20 24 61 74 69 6d 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 66 6f 72 65 61 63 .=.null,.$atime.=.null).{.foreac
faa20 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 29 20 61 73 20 h.($this->toIterator($files).as.
faa40 24 66 69 6c 65 29 20 7b 0a 24 74 6f 75 63 68 20 3d 20 24 74 69 6d 65 20 3f 20 40 74 6f 75 63 68 $file).{.$touch.=.$time.?.@touch
faa60 28 24 66 69 6c 65 2c 20 24 74 69 6d 65 2c 20 24 61 74 69 6d 65 29 20 3a 20 40 74 6f 75 63 68 28 ($file,.$time,.$atime).:.@touch(
faa80 24 66 69 6c 65 29 3b 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 24 74 6f 75 63 68 29 20 7b 0a 74 $file);.if.(true.!==.$touch).{.t
faaa0 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 61 hrow.new.IOException(sprintf('Fa
faac0 69 6c 65 64 20 74 6f 20 74 6f 75 63 68 20 22 25 73 22 2e 27 2c 20 24 66 69 6c 65 29 2c 20 30 2c iled.to.touch."%s".',.$file),.0,
faae0 20 6e 75 6c 6c 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 .null,.$file);.}.}.}.........pub
fab00 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 73 29 0a 7b 0a 24 66 lic.function.remove($files).{.$f
fab20 69 6c 65 73 20 3d 20 69 74 65 72 61 74 6f 72 5f 74 6f 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e iles.=.iterator_to_array($this->
fab40 74 6f 49 74 65 72 61 74 6f 72 28 24 66 69 6c 65 73 29 29 3b 0a 24 66 69 6c 65 73 20 3d 20 61 72 toIterator($files));.$files.=.ar
fab60 72 61 79 5f 72 65 76 65 72 73 65 28 24 66 69 6c 65 73 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 66 ray_reverse($files);.foreach.($f
fab80 69 6c 65 73 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 iles.as.$file).{.if.(!file_exist
faba0 73 28 24 66 69 6c 65 29 20 26 26 20 21 69 73 5f 6c 69 6e 6b 28 24 66 69 6c 65 29 29 20 7b 0a 63 s($file).&&.!is_link($file)).{.c
fabc0 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 69 73 5f 64 69 72 28 24 66 69 6c 65 29 20 26 26 ontinue;.}..if.(is_dir($file).&&
fabe0 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 72 65 6d 6f 76 .!is_link($file)).{.$this->remov
fac00 65 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 e(new.\FilesystemIterator($file)
fac20 29 3b 0a 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 40 72 6d 64 69 72 28 24 66 69 6c 65 29 29 20 );..if.(true.!==.@rmdir($file)).
fac40 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 28 {.throw.new.IOException(sprintf(
fac60 27 46 61 69 6c 65 64 20 74 6f 20 72 65 6d 6f 76 65 20 64 69 72 65 63 74 6f 72 79 20 22 25 73 22 'Failed.to.remove.directory."%s"
fac80 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 7d .',.$file),.0,.null,.$file);.}.}
faca0 20 65 6c 73 65 20 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 .else.{...if.('\\'.===.DIRECTORY
facc0 5f 53 45 50 41 52 41 54 4f 52 20 26 26 20 69 73 5f 64 69 72 28 24 66 69 6c 65 29 29 20 7b 0a 69 _SEPARATOR.&&.is_dir($file)).{.i
face0 66 20 28 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 f.(true.!==.@rmdir($file)).{.thr
fad00 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 6c ow.new.IOException(sprintf('Fail
fad20 65 64 20 74 6f 20 72 65 6d 6f 76 65 20 66 69 6c 65 20 22 25 73 22 2e 27 2c 20 24 66 69 6c 65 29 ed.to.remove.file."%s".',.$file)
fad40 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
fad60 20 28 74 72 75 65 20 21 3d 3d 20 40 75 6e 6c 69 6e 6b 28 24 66 69 6c 65 29 29 20 7b 0a 74 68 72 .(true.!==.@unlink($file)).{.thr
fad80 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 6c ow.new.IOException(sprintf('Fail
fada0 65 64 20 74 6f 20 72 65 6d 6f 76 65 20 66 69 6c 65 20 22 25 73 22 2e 27 2c 20 24 66 69 6c 65 29 ed.to.remove.file."%s".',.$file)
fadc0 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 7d 0a 0a 0a 0a ,.0,.null,.$file);.}.}.}.}.}....
fade0 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 6d 6f 64 28 24 66 ........public.function.chmod($f
fae00 69 6c 65 73 2c 20 24 6d 6f 64 65 2c 20 24 75 6d 61 73 6b 20 3d 20 30 30 30 30 2c 20 24 72 65 63 iles,.$mode,.$umask.=.0000,.$rec
fae20 75 72 73 69 76 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 ursive.=.false).{.foreach.($this
fae40 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).{
fae60 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 40 63 68 6d 6f 64 28 24 66 69 6c 65 2c 20 24 6d 6f 64 .if.(true.!==.@chmod($file,.$mod
fae80 65 20 26 20 7e 24 75 6d 61 73 6b 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 e.&.~$umask)).{.throw.new.IOExce
faea0 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 63 68 6d 6f 64 20 66 ption(sprintf('Failed.to.chmod.f
faec0 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 6c 2c 20 24 66 69 ile."%s".',.$file),.0,.null,.$fi
faee0 6c 65 29 3b 0a 7d 0a 69 66 20 28 24 72 65 63 75 72 73 69 76 65 20 26 26 20 69 73 5f 64 69 72 28 le);.}.if.($recursive.&&.is_dir(
faf00 24 66 69 6c 65 29 20 26 26 20 21 69 73 5f 6c 69 6e 6b 28 24 66 69 6c 65 29 29 20 7b 0a 24 74 68 $file).&&.!is_link($file)).{.$th
faf20 69 73 2d 3e 63 68 6d 6f 64 28 6e 65 77 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f is->chmod(new.\FilesystemIterato
faf40 72 28 24 66 69 6c 65 29 2c 20 24 6d 6f 64 65 2c 20 24 75 6d 61 73 6b 2c 20 74 72 75 65 29 3b 0a r($file),.$mode,.$umask,.true);.
faf60 7d 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 74 69 6f 6e 20 }.}.}...........public.function.
faf80 63 68 6f 77 6e 28 24 66 69 6c 65 73 2c 20 24 75 73 65 72 2c 20 24 72 65 63 75 72 73 69 76 65 20 chown($files,.$user,.$recursive.
fafa0 3d 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 =.false).{.foreach.($this->toIte
fafc0 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 0a 69 66 20 28 24 72 rator($files).as.$file).{.if.($r
fafe0 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 26 20 21 69 73 ecursive.&&.is_dir($file).&&.!is
fb000 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 6f 77 6e 28 6e 65 77 _link($file)).{.$this->chown(new
fb020 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 2c 20 24 75 73 .\FilesystemIterator($file),.$us
fb040 65 72 2c 20 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 er,.true);.}.if.(is_link($file).
fb060 26 26 20 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 6c 63 68 6f 77 6e 27 29 29 20 7b 0a &&.function_exists('lchown')).{.
fb080 69 66 20 28 74 72 75 65 20 21 3d 3d 20 40 6c 63 68 6f 77 6e 28 24 66 69 6c 65 2c 20 24 75 73 65 if.(true.!==.@lchown($file,.$use
fb0a0 72 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 69 r)).{.throw.new.IOException(spri
fb0c0 6e 74 66 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 ntf('Failed.to.chown.file."%s".'
fb0e0 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 7d 20 65 ,.$file),.0,.null,.$file);.}.}.e
fb100 6c 73 65 20 7b 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 40 63 68 6f 77 6e 28 24 66 69 6c 65 2c lse.{.if.(true.!==.@chown($file,
fb120 20 24 75 73 65 72 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 .$user)).{.throw.new.IOException
fb140 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 68 6f 77 6e 20 66 69 6c 65 20 22 (sprintf('Failed.to.chown.file."
fb160 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 66 69 6c 65 29 3b 0a %s".',.$file),.0,.null,.$file);.
fb180 7d 0a 7d 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 74 69 6f }.}.}.}...........public.functio
fb1a0 6e 20 63 68 67 72 70 28 24 66 69 6c 65 73 2c 20 24 67 72 6f 75 70 2c 20 24 72 65 63 75 72 73 69 n.chgrp($files,.$group,.$recursi
fb1c0 76 65 20 3d 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 ve.=.false).{.foreach.($this->to
fb1e0 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 0a 69 66 20 Iterator($files).as.$file).{.if.
fb200 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 26 20 ($recursive.&&.is_dir($file).&&.
fb220 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 67 72 70 28 !is_link($file)).{.$this->chgrp(
fb240 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 2c 20 new.\FilesystemIterator($file),.
fb260 24 67 72 6f 75 70 2c 20 74 72 75 65 29 3b 0a 7d 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 66 69 $group,.true);.}.if.(is_link($fi
fb280 6c 65 29 20 26 26 20 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 6c 63 68 67 72 70 27 29 le).&&.function_exists('lchgrp')
fb2a0 29 20 7b 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 40 6c 63 68 67 72 70 28 24 66 69 6c 65 2c 20 ).{.if.(true.!==.@lchgrp($file,.
fb2c0 24 67 72 6f 75 70 29 20 7c 7c 20 28 64 65 66 69 6e 65 64 28 27 48 48 56 4d 5f 56 45 52 53 49 4f $group).||.(defined('HHVM_VERSIO
fb2e0 4e 27 29 20 26 26 20 21 70 6f 73 69 78 5f 67 65 74 67 72 6e 61 6d 28 24 67 72 6f 75 70 29 29 29 N').&&.!posix_getgrnam($group)))
fb300 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
fb320 28 27 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 ('Failed.to.chgrp.file."%s".',.$
fb340 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 20 65 6c 73 65 file),.0,.null,.$file);.}.}.else
fb360 20 7b 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 40 63 68 67 72 70 28 24 66 69 6c 65 2c 20 24 67 .{.if.(true.!==.@chgrp($file,.$g
fb380 72 6f 75 70 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 roup)).{.throw.new.IOException(s
fb3a0 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 63 68 67 72 70 20 66 69 6c 65 20 22 25 73 printf('Failed.to.chgrp.file."%s
fb3c0 22 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 ".',.$file),.0,.null,.$file);.}.
fb3e0 7d 0a 7d 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
fb400 20 72 65 6e 61 6d 65 28 24 6f 72 69 67 69 6e 2c 20 24 74 61 72 67 65 74 2c 20 24 6f 76 65 72 77 .rename($origin,.$target,.$overw
fb420 72 69 74 65 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 0a 20 69 66 20 28 21 24 6f 76 65 72 77 72 69 74 rite.=.false).{...if.(!$overwrit
fb440 65 20 26 26 20 69 73 5f 72 65 61 64 61 62 6c 65 28 24 74 61 72 67 65 74 29 29 20 7b 0a 74 68 72 e.&&.is_readable($target)).{.thr
fb460 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 43 61 6e 6e ow.new.IOException(sprintf('Cann
fb480 6f 74 20 72 65 6e 61 6d 65 20 62 65 63 61 75 73 65 20 74 68 65 20 74 61 72 67 65 74 20 22 25 73 ot.rename.because.the.target."%s
fb4a0 22 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e 27 2c 20 24 74 61 72 67 65 74 29 2c 20 30 2c ".already.exists.',.$target),.0,
fb4c0 20 6e 75 6c 6c 2c 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 21 3d 3d .null,.$target);.}..if.(true.!==
fb4e0 20 40 72 65 6e 61 6d 65 28 24 6f 72 69 67 69 6e 2c 20 24 74 61 72 67 65 74 29 29 20 7b 0a 74 68 .@rename($origin,.$target)).{.th
fb500 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 43 61 6e row.new.IOException(sprintf('Can
fb520 6e 6f 74 20 72 65 6e 61 6d 65 20 22 25 73 22 20 74 6f 20 22 25 73 22 2e 27 2c 20 24 6f 72 69 67 not.rename."%s".to."%s".',.$orig
fb540 69 6e 2c 20 24 74 61 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 in,.$target),.0,.null,.$target);
fb560 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 74 69 6f 6e 20 73 .}.}...........public.function.s
fb580 79 6d 6c 69 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 2c 20 24 ymlink($originDir,.$targetDir,.$
fb5a0 63 6f 70 79 4f 6e 57 69 6e 64 6f 77 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 27 5c 5c copyOnWindows.=.false).{.if.('\\
fb5c0 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 20 26 26 20 24 63 6f '.===.DIRECTORY_SEPARATOR.&&.$co
fb5e0 70 79 4f 6e 57 69 6e 64 6f 77 73 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 69 72 72 6f 72 28 24 6f 72 pyOnWindows).{.$this->mirror($or
fb600 69 67 69 6e 44 69 72 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d iginDir,.$targetDir);..return;.}
fb620 0a 0a 24 74 68 69 73 2d 3e 6d 6b 64 69 72 28 64 69 72 6e 61 6d 65 28 24 74 61 72 67 65 74 44 69 ..$this->mkdir(dirname($targetDi
fb640 72 29 29 3b 0a 0a 24 6f 6b 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 r));..$ok.=.false;.if.(is_link($
fb660 74 61 72 67 65 74 44 69 72 29 29 20 7b 0a 69 66 20 28 72 65 61 64 6c 69 6e 6b 28 24 74 61 72 67 targetDir)).{.if.(readlink($targ
fb680 65 74 44 69 72 29 20 21 3d 20 24 6f 72 69 67 69 6e 44 69 72 29 20 7b 0a 24 74 68 69 73 2d 3e 72 etDir).!=.$originDir).{.$this->r
fb6a0 65 6d 6f 76 65 28 24 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f 6b 20 emove($targetDir);.}.else.{.$ok.
fb6c0 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 6f 6b 20 26 26 20 74 72 75 65 20 21 3d =.true;.}.}..if.(!$ok.&&.true.!=
fb6e0 3d 20 40 73 79 6d 6c 69 6e 6b 28 24 6f 72 69 67 69 6e 44 69 72 2c 20 24 74 61 72 67 65 74 44 69 =.@symlink($originDir,.$targetDi
fb700 72 29 29 20 7b 0a 24 72 65 70 6f 72 74 20 3d 20 65 72 72 6f 72 5f 67 65 74 5f 6c 61 73 74 28 29 r)).{.$report.=.error_get_last()
fb720 3b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 72 65 70 6f 72 74 29 29 20 7b 0a 69 66 20 28 27 ;.if.(is_array($report)).{.if.('
fb740 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 20 26 26 20 66 \\'.===.DIRECTORY_SEPARATOR.&&.f
fb760 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 72 65 70 6f 72 74 5b 27 6d 65 73 73 61 67 65 alse.!==.strpos($report['message
fb780 27 5d 2c 20 27 65 72 72 6f 72 20 63 6f 64 65 28 31 33 31 34 29 27 29 29 20 7b 0a 74 68 72 6f 77 '],.'error.code(1314)')).{.throw
fb7a0 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 63 72 65 61 .new.IOException('Unable.to.crea
fb7c0 74 65 20 73 79 6d 6c 69 6e 6b 20 64 75 65 20 74 6f 20 65 72 72 6f 72 20 63 6f 64 65 20 31 33 31 te.symlink.due.to.error.code.131
fb7e0 34 3a 20 5c 27 41 20 72 65 71 75 69 72 65 64 20 70 72 69 76 69 6c 65 67 65 20 69 73 20 6e 6f 74 4:.\'A.required.privilege.is.not
fb800 20 68 65 6c 64 20 62 79 20 74 68 65 20 63 6c 69 65 6e 74 5c 27 2e 20 44 6f 20 79 6f 75 20 68 61 .held.by.the.client\'..Do.you.ha
fb820 76 65 20 74 68 65 20 72 65 71 75 69 72 65 64 20 41 64 6d 69 6e 69 73 74 72 61 74 6f 72 2d 72 69 ve.the.required.Administrator-ri
fb840 67 68 74 73 3f 27 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 ghts?',.0,.null,.$targetDir);.}.
fb860 7d 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 }.throw.new.IOException(sprintf(
fb880 27 46 61 69 6c 65 64 20 74 6f 20 63 72 65 61 74 65 20 73 79 6d 62 6f 6c 69 63 20 6c 69 6e 6b 20 'Failed.to.create.symbolic.link.
fb8a0 66 72 6f 6d 20 22 25 73 22 20 74 6f 20 22 25 73 22 2e 27 2c 20 24 6f 72 69 67 69 6e 44 69 72 2c from."%s".to."%s".',.$originDir,
fb8c0 20 24 74 61 72 67 65 74 44 69 72 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 74 61 72 67 65 74 44 69 .$targetDir),.0,.null,.$targetDi
fb8e0 72 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 r);.}.}..........public.function
fb900 20 6d 61 6b 65 50 61 74 68 52 65 6c 61 74 69 76 65 28 24 65 6e 64 50 61 74 68 2c 20 24 73 74 61 .makePathRelative($endPath,.$sta
fb920 72 74 50 61 74 68 29 0a 7b 0a 0a 20 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f rtPath).{...if.('\\'.===.DIRECTO
fb940 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 24 65 6e 64 50 61 74 68 20 3d 20 73 74 72 5f 72 RY_SEPARATOR).{.$endPath.=.str_r
fb960 65 70 6c 61 63 65 28 27 5c 5c 27 2c 20 27 2f 27 2c 20 24 65 6e 64 50 61 74 68 29 3b 0a 24 73 74 eplace('\\',.'/',.$endPath);.$st
fb980 61 72 74 50 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 artPath.=.str_replace('\\',.'/',
fb9a0 20 24 73 74 61 72 74 50 61 74 68 29 3b 0a 7d 0a 0a 0a 20 24 73 74 61 72 74 50 61 74 68 41 72 72 .$startPath);.}....$startPathArr
fb9c0 20 3d 20 65 78 70 6c 6f 64 65 28 27 2f 27 2c 20 74 72 69 6d 28 24 73 74 61 72 74 50 61 74 68 2c .=.explode('/',.trim($startPath,
fb9e0 20 27 2f 27 29 29 3b 0a 24 65 6e 64 50 61 74 68 41 72 72 20 3d 20 65 78 70 6c 6f 64 65 28 27 2f .'/'));.$endPathArr.=.explode('/
fba00 27 2c 20 74 72 69 6d 28 24 65 6e 64 50 61 74 68 2c 20 27 2f 27 29 29 3b 0a 0a 0a 20 24 69 6e 64 ',.trim($endPath,.'/'));....$ind
fba20 65 78 20 3d 20 30 3b 0a 77 68 69 6c 65 20 28 69 73 73 65 74 28 24 73 74 61 72 74 50 61 74 68 41 ex.=.0;.while.(isset($startPathA
fba40 72 72 5b 24 69 6e 64 65 78 5d 29 20 26 26 20 69 73 73 65 74 28 24 65 6e 64 50 61 74 68 41 72 72 rr[$index]).&&.isset($endPathArr
fba60 5b 24 69 6e 64 65 78 5d 29 20 26 26 20 24 73 74 61 72 74 50 61 74 68 41 72 72 5b 24 69 6e 64 65 [$index]).&&.$startPathArr[$inde
fba80 78 5d 20 3d 3d 3d 20 24 65 6e 64 50 61 74 68 41 72 72 5b 24 69 6e 64 65 78 5d 29 20 7b 0a 2b 2b x].===.$endPathArr[$index]).{.++
fbaa0 24 69 6e 64 65 78 3b 0a 7d 0a 0a 0a 20 24 64 65 70 74 68 20 3d 20 63 6f 75 6e 74 28 24 73 74 61 $index;.}....$depth.=.count($sta
fbac0 72 74 50 61 74 68 41 72 72 29 20 2d 20 24 69 6e 64 65 78 3b 0a 0a 0a 20 69 66 20 28 27 2f 27 20 rtPathArr).-.$index;....if.('/'.
fbae0 3d 3d 3d 20 24 73 74 61 72 74 50 61 74 68 5b 30 5d 20 26 26 20 30 20 3d 3d 3d 20 24 69 6e 64 65 ===.$startPath[0].&&.0.===.$inde
fbb00 78 20 26 26 20 31 20 3d 3d 3d 20 24 64 65 70 74 68 29 20 7b 0a 24 74 72 61 76 65 72 73 65 72 20 x.&&.1.===.$depth).{.$traverser.
fbb20 3d 20 27 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 74 72 61 76 65 72 73 65 72 20 3d 20 73 74 =.'';.}.else.{...$traverser.=.st
fbb40 72 5f 72 65 70 65 61 74 28 27 2e 2e 2f 27 2c 20 24 64 65 70 74 68 29 3b 0a 7d 0a 0a 24 65 6e 64 r_repeat('../',.$depth);.}..$end
fbb60 50 61 74 68 52 65 6d 61 69 6e 64 65 72 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2f 27 2c 20 61 72 72 PathRemainder.=.implode('/',.arr
fbb80 61 79 5f 73 6c 69 63 65 28 24 65 6e 64 50 61 74 68 41 72 72 2c 20 24 69 6e 64 65 78 29 29 3b 0a ay_slice($endPathArr,.$index));.
fbba0 0a 0a 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 20 3d 20 24 74 72 61 76 65 72 73 65 72 2e 28 27 ...$relativePath.=.$traverser.('
fbbc0 27 20 21 3d 3d 20 24 65 6e 64 50 61 74 68 52 65 6d 61 69 6e 64 65 72 20 3f 20 24 65 6e 64 50 61 '.!==.$endPathRemainder.?.$endPa
fbbe0 74 68 52 65 6d 61 69 6e 64 65 72 2e 27 2f 27 20 3a 20 27 27 29 3b 0a 0a 72 65 74 75 72 6e 20 27 thRemainder.'/'.:.'');..return.'
fbc00 27 20 3d 3d 3d 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 20 3f 20 27 2e 2f 27 20 3a 20 24 72 65 '.===.$relativePath.?.'./'.:.$re
fbc20 6c 61 74 69 76 65 50 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 lativePath;.}................pub
fbc40 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 69 72 72 6f 72 28 24 6f 72 69 67 69 6e 44 69 72 2c 20 lic.function.mirror($originDir,.
fbc60 24 74 61 72 67 65 74 44 69 72 2c 20 5c 54 72 61 76 65 72 73 61 62 6c 65 20 24 69 74 65 72 61 74 $targetDir,.\Traversable.$iterat
fbc80 6f 72 20 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 or.=.null,.$options.=.array()).{
fbca0 0a 24 74 61 72 67 65 74 44 69 72 20 3d 20 72 74 72 69 6d 28 24 74 61 72 67 65 74 44 69 72 2c 20 .$targetDir.=.rtrim($targetDir,.
fbcc0 27 2f 5c 5c 27 29 3b 0a 24 6f 72 69 67 69 6e 44 69 72 20 3d 20 72 74 72 69 6d 28 24 6f 72 69 67 '/\\');.$originDir.=.rtrim($orig
fbce0 69 6e 44 69 72 2c 20 27 2f 5c 5c 27 29 3b 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 65 78 69 inDir,.'/\\');....if.($this->exi
fbd00 73 74 73 28 24 74 61 72 67 65 74 44 69 72 29 20 26 26 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e sts($targetDir).&&.isset($option
fbd20 73 5b 27 64 65 6c 65 74 65 27 5d 29 20 26 26 20 24 6f 70 74 69 6f 6e 73 5b 27 64 65 6c 65 74 65 s['delete']).&&.$options['delete
fbd40 27 5d 29 20 7b 0a 24 64 65 6c 65 74 65 49 74 65 72 61 74 6f 72 20 3d 20 24 69 74 65 72 61 74 6f ']).{.$deleteIterator.=.$iterato
fbd60 72 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 6c 65 74 65 49 74 65 72 61 74 6f 72 29 r;.if.(null.===.$deleteIterator)
fbd80 20 7b 0a 24 66 6c 61 67 73 20 3d 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a .{.$flags.=.\FilesystemIterator:
fbda0 3a 53 4b 49 50 5f 44 4f 54 53 3b 0a 24 64 65 6c 65 74 65 49 74 65 72 61 74 6f 72 20 3d 20 6e 65 :SKIP_DOTS;.$deleteIterator.=.ne
fbdc0 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 28 6e 65 77 w.\RecursiveIteratorIterator(new
fbde0 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 24 74 61 .\RecursiveDirectoryIterator($ta
fbe00 72 67 65 74 44 69 72 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 rgetDir,.$flags),.\RecursiveIter
fbe20 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 7d 0a 66 6f atorIterator::CHILD_FIRST);.}.fo
fbe40 72 65 61 63 68 20 28 24 64 65 6c 65 74 65 49 74 65 72 61 74 6f 72 20 61 73 20 24 66 69 6c 65 29 reach.($deleteIterator.as.$file)
fbe60 20 7b 0a 24 6f 72 69 67 69 6e 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 24 74 61 72 67 65 74 .{.$origin.=.str_replace($target
fbe80 44 69 72 2c 20 24 6f 72 69 67 69 6e 44 69 72 2c 20 24 66 69 6c 65 2d 3e 67 65 74 50 61 74 68 6e Dir,.$originDir,.$file->getPathn
fbea0 61 6d 65 28 29 29 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 65 78 69 73 74 73 28 24 6f 72 69 67 ame());.if.(!$this->exists($orig
fbec0 69 6e 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 28 24 66 69 6c 65 29 3b 0a 7d 0a 7d in)).{.$this->remove($file);.}.}
fbee0 0a 7d 0a 0a 24 63 6f 70 79 4f 6e 57 69 6e 64 6f 77 73 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 .}..$copyOnWindows.=.false;.if.(
fbf00 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 63 6f 70 79 5f 6f 6e 5f 77 69 6e 64 6f 77 73 27 isset($options['copy_on_windows'
fbf20 5d 29 29 20 7b 0a 24 63 6f 70 79 4f 6e 57 69 6e 64 6f 77 73 20 3d 20 24 6f 70 74 69 6f 6e 73 5b ])).{.$copyOnWindows.=.$options[
fbf40 27 63 6f 70 79 5f 6f 6e 5f 77 69 6e 64 6f 77 73 27 5d 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 'copy_on_windows'];.}..if.(null.
fbf60 3d 3d 3d 20 24 69 74 65 72 61 74 6f 72 29 20 7b 0a 24 66 6c 61 67 73 20 3d 20 24 63 6f 70 79 4f ===.$iterator).{.$flags.=.$copyO
fbf80 6e 57 69 6e 64 6f 77 73 20 3f 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a 3a nWindows.?.\FilesystemIterator::
fbfa0 53 4b 49 50 5f 44 4f 54 53 20 7c 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a SKIP_DOTS.|.\FilesystemIterator:
fbfc0 3a 46 4f 4c 4c 4f 57 5f 53 59 4d 4c 49 4e 4b 53 20 3a 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 :FOLLOW_SYMLINKS.:.\FilesystemIt
fbfe0 65 72 61 74 6f 72 3a 3a 53 4b 49 50 5f 44 4f 54 53 3b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e erator::SKIP_DOTS;.$iterator.=.n
fc000 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 28 6e 65 ew.\RecursiveIteratorIterator(ne
fc020 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 24 6f w.\RecursiveDirectoryIterator($o
fc040 72 69 67 69 6e 44 69 72 2c 20 24 66 6c 61 67 73 29 2c 20 5c 52 65 63 75 72 73 69 76 65 49 74 65 riginDir,.$flags),.\RecursiveIte
fc060 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 29 3b 0a 7d 0a 0a 69 ratorIterator::SELF_FIRST);.}..i
fc080 66 20 28 24 74 68 69 73 2d 3e 65 78 69 73 74 73 28 24 6f 72 69 67 69 6e 44 69 72 29 29 20 7b 0a f.($this->exists($originDir)).{.
fc0a0 24 74 68 69 73 2d 3e 6d 6b 64 69 72 28 24 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 0a 0a 66 6f 72 $this->mkdir($targetDir);.}..for
fc0c0 65 61 63 68 20 28 24 69 74 65 72 61 74 6f 72 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 24 74 61 72 each.($iterator.as.$file).{.$tar
fc0e0 67 65 74 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 24 6f 72 69 67 69 6e 44 69 72 2c 20 24 74 get.=.str_replace($originDir,.$t
fc100 61 72 67 65 74 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 argetDir,.$file->getPathname());
fc120 0a 0a 69 66 20 28 24 63 6f 70 79 4f 6e 57 69 6e 64 6f 77 73 29 20 7b 0a 69 66 20 28 69 73 5f 6c ..if.($copyOnWindows).{.if.(is_l
fc140 69 6e 6b 28 24 66 69 6c 65 29 20 7c 7c 20 69 73 5f 66 69 6c 65 28 24 66 69 6c 65 29 29 20 7b 0a ink($file).||.is_file($file)).{.
fc160 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 2c 20 69 73 73 65 $this->copy($file,.$target,.isse
fc180 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 24 6f 70 74 69 6f t($options['override']).?.$optio
fc1a0 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 20 65 6c 73 65 69 ns['override'].:.false);.}.elsei
fc1c0 66 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 f.(is_dir($file)).{.$this->mkdir
fc1e0 28 24 74 61 72 67 65 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f ($target);.}.else.{.throw.new.IO
fc200 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 20 67 75 65 Exception(sprintf('Unable.to.gue
fc220 73 73 20 22 25 73 22 20 66 69 6c 65 20 74 79 70 65 2e 27 2c 20 24 66 69 6c 65 29 2c 20 30 2c 20 ss."%s".file.type.',.$file),.0,.
fc240 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 69 73 5f null,.$file);.}.}.else.{.if.(is_
fc260 6c 69 6e 6b 28 24 66 69 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 79 6d 6c 69 6e 6b 28 24 66 link($file)).{.$this->symlink($f
fc280 69 6c 65 2d 3e 67 65 74 4c 69 6e 6b 54 61 72 67 65 74 28 29 2c 20 24 74 61 72 67 65 74 29 3b 0a ile->getLinkTarget(),.$target);.
fc2a0 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 64 69 72 28 24 66 69 6c 65 29 29 20 7b 0a 24 74 68 69 73 }.elseif.(is_dir($file)).{.$this
fc2c0 2d 3e 6d 6b 64 69 72 28 24 74 61 72 67 65 74 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 66 ->mkdir($target);.}.elseif.(is_f
fc2e0 69 6c 65 28 24 66 69 6c 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 70 79 28 24 66 69 6c 65 2c ile($file)).{.$this->copy($file,
fc300 20 24 74 61 72 67 65 74 2c 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 6f 76 65 72 72 69 .$target,.isset($options['overri
fc320 64 65 27 5d 29 20 3f 20 24 6f 70 74 69 6f 6e 73 5b 27 6f 76 65 72 72 69 64 65 27 5d 20 3a 20 66 de']).?.$options['override'].:.f
fc340 61 6c 73 65 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 alse);.}.else.{.throw.new.IOExce
fc360 70 74 69 6f 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 ption(sprintf('Unable.to.guess."
fc380 25 73 22 20 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 %s".file.type.',.$file),.0,.null
fc3a0 2c 20 24 66 69 6c 65 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 ,.$file);.}.}.}.}.........public
fc3c0 20 66 75 6e 63 74 69 6f 6e 20 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 66 69 6c 65 29 0a .function.isAbsolutePath($file).
fc3e0 7b 0a 72 65 74 75 72 6e 20 73 74 72 73 70 6e 28 24 66 69 6c 65 2c 20 27 2f 5c 5c 27 2c 20 30 2c {.return.strspn($file,.'/\\',.0,
fc400 20 31 29 0a 7c 7c 20 28 73 74 72 6c 65 6e 28 24 66 69 6c 65 29 20 3e 20 33 20 26 26 20 63 74 79 .1).||.(strlen($file).>.3.&&.cty
fc420 70 65 5f 61 6c 70 68 61 28 24 66 69 6c 65 5b 30 5d 29 0a 26 26 20 73 75 62 73 74 72 28 24 66 69 pe_alpha($file[0]).&&.substr($fi
fc440 6c 65 2c 20 31 2c 20 31 29 20 3d 3d 3d 20 27 3a 27 0a 26 26 20 28 73 74 72 73 70 6e 28 24 66 69 le,.1,.1).===.':'.&&.(strspn($fi
fc460 6c 65 2c 20 27 2f 5c 5c 27 2c 20 32 2c 20 31 29 29 0a 29 0a 7c 7c 20 6e 75 6c 6c 20 21 3d 3d 20 le,.'/\\',.2,.1)).).||.null.!==.
fc480 70 61 72 73 65 5f 75 72 6c 28 24 66 69 6c 65 2c 20 50 48 50 5f 55 52 4c 5f 53 43 48 45 4d 45 29 parse_url($file,.PHP_URL_SCHEME)
fc4a0 0a 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 74 .;.}...........public.function.t
fc4c0 65 6d 70 6e 61 6d 28 24 64 69 72 2c 20 24 70 72 65 66 69 78 29 0a 7b 0a 6c 69 73 74 28 24 73 63 empnam($dir,.$prefix).{.list($sc
fc4e0 68 65 6d 65 2c 20 24 68 69 65 72 61 72 63 68 79 29 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 heme,.$hierarchy).=.$this->getSc
fc500 68 65 6d 65 41 6e 64 48 69 65 72 61 72 63 68 79 28 24 64 69 72 29 3b 0a 0a 0a 20 69 66 20 28 6e hemeAndHierarchy($dir);....if.(n
fc520 75 6c 6c 20 3d 3d 3d 20 24 73 63 68 65 6d 65 20 7c 7c 20 27 66 69 6c 65 27 20 3d 3d 3d 20 24 73 ull.===.$scheme.||.'file'.===.$s
fc540 63 68 65 6d 65 29 20 7b 0a 24 74 6d 70 46 69 6c 65 20 3d 20 74 65 6d 70 6e 61 6d 28 24 68 69 65 cheme).{.$tmpFile.=.tempnam($hie
fc560 72 61 72 63 68 79 2c 20 24 70 72 65 66 69 78 29 3b 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 21 rarchy,.$prefix);....if.(false.!
fc580 3d 3d 20 24 74 6d 70 46 69 6c 65 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 73 63 68 ==.$tmpFile).{.if.(null.!==.$sch
fc5a0 65 6d 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 73 63 68 65 6d 65 2e 27 3a 2f 2f 27 2e 24 74 6d 70 eme).{.return.$scheme.'://'.$tmp
fc5c0 46 69 6c 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6d 70 46 69 6c 65 3b 0a 7d 0a 0a 74 68 72 File;.}..return.$tmpFile;.}..thr
fc5e0 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 70 74 69 6f 6e 28 27 41 20 74 65 6d 70 6f 72 61 72 79 20 ow.new.IOException('A.temporary.
fc600 66 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 72 65 61 74 65 64 2e 27 29 3b 0a 7d 0a file.could.not.be.created.');.}.
fc620 0a 0a 20 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 24 69 20 3c 20 31 30 3b 20 2b 2b 24 69 29 20 7b ...for.($i.=.0;.$i.<.10;.++$i).{
fc640 0a 0a 20 24 74 6d 70 46 69 6c 65 20 3d 20 24 64 69 72 2e 27 2f 27 2e 24 70 72 65 66 69 78 2e 75 ...$tmpFile.=.$dir.'/'.$prefix.u
fc660 6e 69 71 69 64 28 6d 74 5f 72 61 6e 64 28 29 2c 20 74 72 75 65 29 3b 0a 0a 0a 20 0a 20 24 68 61 niqid(mt_rand(),.true);......$ha
fc680 6e 64 6c 65 20 3d 20 40 66 6f 70 65 6e 28 24 74 6d 70 46 69 6c 65 2c 20 27 78 2b 27 29 3b 0a 0a ndle.=.@fopen($tmpFile,.'x+');..
fc6a0 0a 20 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 68 61 6e 64 6c 65 29 20 7b 0a 63 6f 6e 74 69 ..if.(false.===.$handle).{.conti
fc6c0 6e 75 65 3b 0a 7d 0a 0a 0a 20 40 66 63 6c 6f 73 65 28 24 68 61 6e 64 6c 65 29 3b 0a 0a 72 65 74 nue;.}....@fclose($handle);..ret
fc6e0 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 78 63 urn.$tmpFile;.}..throw.new.IOExc
fc700 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 20 6e eption('A.temporary.file.could.n
fc720 6f 74 20 62 65 20 63 72 65 61 74 65 64 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 ot.be.created.');.}............p
fc740 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 75 6d 70 46 69 6c 65 28 24 66 69 6c 65 6e 61 6d ublic.function.dumpFile($filenam
fc760 65 2c 20 24 63 6f 6e 74 65 6e 74 2c 20 24 6d 6f 64 65 20 3d 20 30 36 36 36 29 0a 7b 0a 24 64 69 e,.$content,.$mode.=.0666).{.$di
fc780 72 20 3d 20 64 69 72 6e 61 6d 65 28 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 0a 69 66 20 28 21 69 73 r.=.dirname($filename);..if.(!is
fc7a0 5f 64 69 72 28 24 64 69 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 6b 64 69 72 28 24 64 69 72 29 _dir($dir)).{.$this->mkdir($dir)
fc7c0 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 77 72 69 74 61 62 6c 65 28 24 64 69 72 29 29 20 ;.}.elseif.(!is_writable($dir)).
fc7e0 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 28 {.throw.new.IOException(sprintf(
fc800 27 55 6e 61 62 6c 65 20 74 6f 20 77 72 69 74 65 20 74 6f 20 74 68 65 20 22 25 73 22 20 64 69 72 'Unable.to.write.to.the."%s".dir
fc820 65 63 74 6f 72 79 2e 27 2c 20 24 64 69 72 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 64 69 72 29 3b ectory.',.$dir),.0,.null,.$dir);
fc840 0a 7d 0a 0a 24 74 6d 70 46 69 6c 65 20 3d 20 24 74 68 69 73 2d 3e 74 65 6d 70 6e 61 6d 28 24 64 .}..$tmpFile.=.$this->tempnam($d
fc860 69 72 2c 20 62 61 73 65 6e 61 6d 65 28 24 66 69 6c 65 6e 61 6d 65 29 29 3b 0a 0a 69 66 20 28 66 ir,.basename($filename));..if.(f
fc880 61 6c 73 65 20 3d 3d 3d 20 40 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 6d 70 alse.===.@file_put_contents($tmp
fc8a0 46 69 6c 65 2c 20 24 63 6f 6e 74 65 6e 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 File,.$content)).{.throw.new.IOE
fc8c0 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 77 72 69 74 xception(sprintf('Failed.to.writ
fc8e0 65 20 66 69 6c 65 20 22 25 73 22 2e 27 2c 20 24 66 69 6c 65 6e 61 6d 65 29 2c 20 30 2c 20 6e 75 e.file."%s".',.$filename),.0,.nu
fc900 6c 6c 2c 20 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 6e 61 6d 65 ll,.$filename);.}..$this->rename
fc920 28 24 74 6d 70 46 69 6c 65 2c 20 24 66 69 6c 65 6e 61 6d 65 2c 20 74 72 75 65 29 3b 0a 69 66 20 ($tmpFile,.$filename,.true);.if.
fc940 28 6e 75 6c 6c 20 21 3d 3d 20 24 6d 6f 64 65 29 20 7b 0a 69 66 20 28 66 75 6e 63 5f 6e 75 6d 5f (null.!==.$mode).{.if.(func_num_
fc960 61 72 67 73 28 29 20 3e 20 32 29 20 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 53 75 args().>.2).{.@trigger_error('Su
fc980 70 70 6f 72 74 20 66 6f 72 20 6d 6f 64 69 66 79 69 6e 67 20 66 69 6c 65 20 70 65 72 6d 69 73 73 pport.for.modifying.file.permiss
fc9a0 69 6f 6e 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 ions.is.deprecated.since.version
fc9c0 20 32 2e 33 2e 31 32 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 .2.3.12.and.will.be.removed.in.3
fc9e0 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 7d 0a 0a 24 74 68 .0.',.E_USER_DEPRECATED);.}..$th
fca00 69 73 2d 3e 63 68 6d 6f 64 28 24 66 69 6c 65 6e 61 6d 65 2c 20 24 6d 6f 64 65 29 3b 0a 7d 0a 7d is->chmod($filename,.$mode);.}.}
fca20 0a 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 49 74 65 72 61 74 .......private.function.toIterat
fca40 6f 72 28 24 66 69 6c 65 73 29 0a 7b 0a 69 66 20 28 21 24 66 69 6c 65 73 20 69 6e 73 74 61 6e 63 or($files).{.if.(!$files.instanc
fca60 65 6f 66 20 5c 54 72 61 76 65 72 73 61 62 6c 65 29 20 7b 0a 24 66 69 6c 65 73 20 3d 20 6e 65 77 eof.\Traversable).{.$files.=.new
fca80 20 5c 41 72 72 61 79 4f 62 6a 65 63 74 28 69 73 5f 61 72 72 61 79 28 24 66 69 6c 65 73 29 20 3f .\ArrayObject(is_array($files).?
fcaa0 20 24 66 69 6c 65 73 20 3a 20 61 72 72 61 79 28 24 66 69 6c 65 73 29 29 3b 0a 7d 0a 0a 72 65 74 .$files.:.array($files));.}..ret
fcac0 75 72 6e 20 24 66 69 6c 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 urn.$files;.}.........private.fu
fcae0 6e 63 74 69 6f 6e 20 67 65 74 53 63 68 65 6d 65 41 6e 64 48 69 65 72 61 72 63 68 79 28 24 66 69 nction.getSchemeAndHierarchy($fi
fcb00 6c 65 6e 61 6d 65 29 0a 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 lename).{.$components.=.explode(
fcb20 27 3a 2f 2f 27 2c 20 24 66 69 6c 65 6e 61 6d 65 2c 20 32 29 3b 0a 0a 72 65 74 75 72 6e 20 32 20 '://',.$filename,.2);..return.2.
fcb40 3d 3d 3d 20 63 6f 75 6e 74 28 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 20 3f 20 61 72 72 61 79 28 24 ===.count($components).?.array($
fcb60 63 6f 6d 70 6f 6e 65 6e 74 73 5b 30 5d 2c 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 31 5d 29 20 3a components[0],.$components[1]).:
fcb80 20 61 72 72 61 79 28 6e 75 6c 6c 2c 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 30 5d 29 3b 0a 7d 0a .array(null,.$components[0]);.}.
fcba0 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 30 34 2d 32 30 31 35 20 46 61 62 69 65 6e }.Copyright.(c).2004-2015.Fabien
fcbc0 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 72 65 62 79 .Potencier..Permission.is.hereby
fcbe0 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 20 61 6e 79 .granted,.free.of.charge,.to.any
fcc00 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 74 68 69 73 .person.obtaining.a.copy.of.this
fcc20 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 75 6d 65 6e .software.and.associated.documen
fcc40 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 29 2c 20 74 tation.files.(the."Software"),.t
fcc60 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 75 74 20 72 o.deal.in.the.Software.without.r
fcc80 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 74 20 6c 69 estriction,.including.without.li
fcca0 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 63 6f 70 79 mitation.the.rights.to.use,.copy
fccc0 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 73 74 72 69 ,.modify,.merge,.publish,.distri
fcce0 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 6c 0a 63 6f bute,.sublicense,.and/or.sell.co
fcd00 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 20 70 65 72 pies.of.the.Software,.and.to.per
fcd20 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 77 61 72 65 mit.persons.to.whom.the.Software
fcd40 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 65 63 74 20 .is.furnished.to.do.so,.subject.
fcd60 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 0a 0a 54 68 to.the.following.conditions:..Th
fcd80 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 20 74 68 69 e.above.copyright.notice.and.thi
fcda0 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 20 69 6e 63 s.permission.notice.shall.be.inc
fcdc0 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 61 6e 74 69 luded.in.all.copies.or.substanti
fcde0 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 0a 0a 54 48 al.portions.of.the.Software...TH
fce00 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 53 22 2c 20 E.SOFTWARE.IS.PROVIDED."AS.IS",.
fce20 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 2c 20 45 58 WITHOUT.WARRANTY.OF.ANY.KIND,.EX
fce40 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 42 55 54 20 PRESS.OR.IMPLIED,.INCLUDING.BUT.
fce60 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 53 20 4f 46 NOT.LIMITED.TO.THE.WARRANTIES.OF
fce80 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 52 20 41 20 .MERCHANTABILITY,.FITNESS.FOR.A.
fcea0 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 46 52 49 4e PARTICULAR.PURPOSE.AND.NONINFRIN
fcec0 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 45 0a 41 55 GEMENT..IN.NO.EVENT.SHALL.THE.AU
fcee0 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 45 20 4c 49 THORS.OR.COPYRIGHT.HOLDERS.BE.LI
fcf00 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 4f 52 20 4f ABLE.FOR.ANY.CLAIM,.DAMAGES.OR.O
fcf20 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 4e 20 41 43 THER.LIABILITY,.WHETHER.IN.AN.AC
fcf40 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 48 45 52 57 TION.OF.CONTRACT,.TORT.OR.OTHERW
fcf60 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 20 49 4e 20 ISE,.ARISING.FROM,.OUT.OF.OR.IN.
fcf80 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 20 4f 52 20 CONNECTION.WITH.THE.SOFTWARE.OR.
fcfa0 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 0a 54 48 45 THE.USE.OR.OTHER.DEALINGS.IN.THE
fcfc0 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 61 6d 65 73 .SOFTWARE..<?php...........names
fcfe0 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 73 74 65 pace.Symfony\Component\Filesyste
fd000 6d 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 6c 65 73 79 m;..use.Symfony\Component\Filesy
fd020 73 74 65 6d 5c 45 78 63 65 70 74 69 6f 6e 5c 49 4f 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a stem\Exception\IOException;.....
fd040 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 6f 63 6b 48 61 6e 64 6c 65 72 0a 7b 0a 70 72 ..........class.LockHandler.{.pr
fd060 69 76 61 74 65 20 24 66 69 6c 65 3b 0a 70 72 69 76 61 74 65 20 24 68 61 6e 64 6c 65 3b 0a 0a 0a ivate.$file;.private.$handle;...
fd080 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
fd0a0 28 24 6e 61 6d 65 2c 20 24 6c 6f 63 6b 50 61 74 68 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 6c 6f 63 ($name,.$lockPath.=.null).{.$loc
fd0c0 6b 50 61 74 68 20 3d 20 24 6c 6f 63 6b 50 61 74 68 20 3f 3a 20 73 79 73 5f 67 65 74 5f 74 65 6d kPath.=.$lockPath.?:.sys_get_tem
fd0e0 70 5f 64 69 72 28 29 3b 0a 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 6c 6f 63 6b 50 61 74 68 29 p_dir();..if.(!is_dir($lockPath)
fd100 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 3b 0a 24 66 73 2d ).{.$fs.=.new.Filesystem();.$fs-
fd120 3e 6d 6b 64 69 72 28 24 6c 6f 63 6b 50 61 74 68 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 5f 77 72 >mkdir($lockPath);.}..if.(!is_wr
fd140 69 74 61 62 6c 65 28 24 6c 6f 63 6b 50 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 itable($lockPath)).{.throw.new.I
fd160 4f 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 64 69 72 65 63 74 6f 72 OException(sprintf('The.director
fd180 79 20 22 25 73 22 20 69 73 20 6e 6f 74 20 77 72 69 74 61 62 6c 65 2e 27 2c 20 24 6c 6f 63 6b 50 y."%s".is.not.writable.',.$lockP
fd1a0 61 74 68 29 2c 20 30 2c 20 6e 75 6c 6c 2c 20 24 6c 6f 63 6b 50 61 74 68 29 3b 0a 7d 0a 0a 24 74 ath),.0,.null,.$lockPath);.}..$t
fd1c0 68 69 73 2d 3e 66 69 6c 65 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 2f 73 66 2e 25 73 2e 25 73 his->file.=.sprintf('%s/sf.%s.%s
fd1e0 2e 6c 6f 63 6b 27 2c 20 24 6c 6f 63 6b 50 61 74 68 2c 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 .lock',.$lockPath,.preg_replace(
fd200 27 2f 5b 5e 61 2d 7a 30 2d 39 5c 2e 5f 2d 5d 2b 2f 69 27 2c 20 27 2d 27 2c 20 24 6e 61 6d 65 29 '/[^a-z0-9\._-]+/i',.'-',.$name)
fd220 2c 20 68 61 73 68 28 27 73 68 61 32 35 36 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 0a 0a 0a ,.hash('sha256',.$name));.}.....
fd240 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 63 6b 28 24 62 6c 6f 63 ......public.function.lock($bloc
fd260 6b 69 6e 67 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 6e 64 6c king.=.false).{.if.($this->handl
fd280 65 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 24 65 72 72 6f 72 4c 65 76 e).{.return.true;.}....$errorLev
fd2a0 65 6c 20 3d 20 65 72 72 6f 72 5f 72 65 70 6f 72 74 69 6e 67 28 30 29 3b 0a 73 65 74 5f 65 72 72 el.=.error_reporting(0);.set_err
fd2c0 6f 72 5f 68 61 6e 64 6c 65 72 28 27 76 61 72 5f 64 75 6d 70 27 2c 20 30 29 3b 0a 0a 69 66 20 28 or_handler('var_dump',.0);..if.(
fd2e0 21 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 66 69 !$this->handle.=.fopen($this->fi
fd300 6c 65 2c 20 27 72 27 29 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 20 3d 20 le,.'r')).{.if.($this->handle.=.
fd320 66 6f 70 65 6e 28 24 74 68 69 73 2d 3e 66 69 6c 65 2c 20 27 78 27 29 29 20 7b 0a 63 68 6d 6f 64 fopen($this->file,.'x')).{.chmod
fd340 28 24 74 68 69 73 2d 3e 66 69 6c 65 2c 20 30 34 34 34 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 ($this->file,.0444);.}.elseif.(!
fd360 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 66 69 6c $this->handle.=.fopen($this->fil
fd380 65 2c 20 27 72 27 29 29 20 7b 0a 75 73 6c 65 65 70 28 31 30 30 29 3b 20 0a 20 24 74 68 69 73 2d e,.'r')).{.usleep(100);...$this-
fd3a0 3e 68 61 6e 64 6c 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 >handle.=.fopen($this->file,.'r'
fd3c0 29 3b 0a 7d 0a 7d 0a 72 65 73 74 6f 72 65 5f 65 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 29 3b 0a );.}.}.restore_error_handler();.
fd3e0 65 72 72 6f 72 5f 72 65 70 6f 72 74 69 6e 67 28 24 65 72 72 6f 72 4c 65 76 65 6c 29 3b 0a 0a 69 error_reporting($errorLevel);..i
fd400 66 20 28 21 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 29 20 7b 0a 24 65 72 72 6f 72 20 3d 20 65 72 f.(!$this->handle).{.$error.=.er
fd420 72 6f 72 5f 67 65 74 5f 6c 61 73 74 28 29 3b 0a 74 68 72 6f 77 20 6e 65 77 20 49 4f 45 78 63 65 ror_get_last();.throw.new.IOExce
fd440 70 74 69 6f 6e 28 24 65 72 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 2c 20 30 2c 20 6e 75 6c 6c ption($error['message'],.0,.null
fd460 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 29 3b 0a 7d 0a 0a 0a 20 0a 20 69 66 20 28 21 66 6c 6f 63 ,.$this->file);.}......if.(!floc
fd480 6b 28 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 2c 20 4c 4f 43 4b 5f 45 58 20 7c 20 28 24 62 6c 6f k($this->handle,.LOCK_EX.|.($blo
fd4a0 63 6b 69 6e 67 20 3f 20 30 20 3a 20 4c 4f 43 4b 5f 4e 42 29 29 29 20 7b 0a 66 63 6c 6f 73 65 28 cking.?.0.:.LOCK_NB))).{.fclose(
fd4c0 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 20 $this->handle);.$this->handle.=.
fd4e0 6e 75 6c 6c 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 null;..return.false;.}..return.t
fd500 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 72 65 6c 65 61 rue;.}.....public.function.relea
fd520 73 65 28 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 66 6c 6f 63 se().{.if.($this->handle).{.floc
fd540 6b 28 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 2c 20 4c 4f 43 4b 5f 55 4e 20 7c 20 4c 4f 43 4b 5f k($this->handle,.LOCK_UN.|.LOCK_
fd560 4e 42 29 3b 0a 66 63 6c 6f 73 65 28 24 74 68 69 73 2d 3e 68 61 6e 64 6c 65 29 3b 0a 24 74 68 69 NB);.fclose($this->handle);.$thi
fd580 73 2d 3e 68 61 6e 64 6c 65 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a s->handle.=.null;.}.}.}.<?php...
fd5a0 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
fd5c0 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 65 72 ent\Finder\Adapter;..@trigger_er
fd5e0 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 41 62 73 74 72 ror('The.'.__NAMESPACE__.'\Abstr
fd600 61 63 74 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 actAdapter.class.is.deprecated.s
fd620 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
fd640 6f 76 65 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 oved.in.3.0..Use.directly.the.Fi
fd660 6e 64 65 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 nder.class.instead.',.E_USER_DEP
fd680 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 RECATED);.........abstract.class
fd6a0 20 41 62 73 74 72 61 63 74 41 64 61 70 74 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 41 64 61 70 .AbstractAdapter.implements.Adap
fd6c0 74 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 66 6f 6c 6c 6f 77 terInterface.{.protected.$follow
fd6e0 4c 69 6e 6b 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6d 6f 64 65 20 3d Links.=.false;.protected.$mode.=
fd700 20 30 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6d 69 6e 44 65 70 74 68 20 3d 20 30 3b 0a 70 72 6f .0;.protected.$minDepth.=.0;.pro
fd720 74 65 63 74 65 64 20 24 6d 61 78 44 65 70 74 68 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a tected.$maxDepth.=.PHP_INT_MAX;.
fd740 70 72 6f 74 65 63 74 65 64 20 24 65 78 63 6c 75 64 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 protected.$exclude.=.array();.pr
fd760 6f 74 65 63 74 65 64 20 24 6e 61 6d 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 otected.$names.=.array();.protec
fd780 74 65 64 20 24 6e 6f 74 4e 61 6d 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 ted.$notNames.=.array();.protect
fd7a0 65 64 20 24 63 6f 6e 74 61 69 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 ed.$contains.=.array();.protecte
fd7c0 64 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 6f 74 65 63 d.$notContains.=.array();.protec
fd7e0 74 65 64 20 24 73 69 7a 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 ted.$sizes.=.array();.protected.
fd800 24 64 61 74 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 66 69 6c $dates.=.array();.protected.$fil
fd820 74 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 73 6f 72 74 20 ters.=.array();.protected.$sort.
fd840 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 74 68 73 20 3d 20 61 72 72 61 =.false;.protected.$paths.=.arra
fd860 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 6f 74 50 61 74 68 73 20 3d 20 61 72 72 61 79 y();.protected.$notPaths.=.array
fd880 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 ();.protected.$ignoreUnreadableD
fd8a0 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 74 69 63 20 24 61 72 irs.=.false;..private.static.$ar
fd8c0 65 53 75 70 70 6f 72 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 eSupported.=.array();.....public
fd8e0 20 66 75 6e 63 74 69 6f 6e 20 69 73 53 75 70 70 6f 72 74 65 64 28 29 0a 7b 0a 24 6e 61 6d 65 20 .function.isSupported().{.$name.
fd900 3d 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 0a 69 66 20 28 21 61 72 72 61 79 5f =.$this->getName();..if.(!array_
fd920 6b 65 79 5f 65 78 69 73 74 73 28 24 6e 61 6d 65 2c 20 73 65 6c 66 3a 3a 24 61 72 65 53 75 70 70 key_exists($name,.self::$areSupp
fd940 6f 72 74 65 64 29 29 20 7b 0a 73 65 6c 66 3a 3a 24 61 72 65 53 75 70 70 6f 72 74 65 64 5b 24 6e orted)).{.self::$areSupported[$n
fd960 61 6d 65 5d 20 3d 20 24 74 68 69 73 2d 3e 63 61 6e 42 65 55 73 65 64 28 29 3b 0a 7d 0a 0a 72 65 ame].=.$this->canBeUsed();.}..re
fd980 74 75 72 6e 20 73 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 3b turn.self::$areSupported[$name];
fd9a0 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 6f 6c 6c 6f 77 .}.....public.function.setFollow
fd9c0 4c 69 6e 6b 73 28 24 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 6f 6c Links($followLinks).{.$this->fol
fd9e0 6c 6f 77 4c 69 6e 6b 73 20 3d 20 24 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 3b 0a 0a 72 65 74 75 72 6e lowLinks.=.$followLinks;..return
fda00 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
fda20 74 4d 6f 64 65 28 24 6d 6f 64 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 6d 6f tMode($mode).{.$this->mode.=.$mo
fda40 64 65 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 de;..return.$this;.}.....public.
fda60 66 75 6e 63 74 69 6f 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 function.setDepths(array.$depths
fda80 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e ).{.$this->minDepth.=.0;.$this->
fdaa0 6d 61 78 44 65 70 74 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 maxDepth.=.PHP_INT_MAX;..foreach
fdac0 20 28 24 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 .($depths.as.$comparator).{.swit
fdae0 63 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 ch.($comparator->getOperator()).
fdb00 7b 0a 63 61 73 65 20 27 3e 27 3a 0a 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 3d 20 24 63 {.case.'>':.$this->minDepth.=.$c
fdb20 6f 6d 70 61 72 61 74 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 omparator->getTarget().+.1;.brea
fdb40 6b 3b 0a 63 61 73 65 20 27 3e 3d 27 3a 0a 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 3d 20 k;.case.'>=':.$this->minDepth.=.
fdb60 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 62 72 65 61 6b 3b $comparator->getTarget();.break;
fdb80 0a 63 61 73 65 20 27 3c 27 3a 0a 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 20 3d 20 24 63 6f .case.'<':.$this->maxDepth.=.$co
fdba0 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 2d 20 31 3b 0a 62 72 65 61 6b mparator->getTarget().-.1;.break
fdbc0 3b 0a 63 61 73 65 20 27 3c 3d 27 3a 0a 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 20 3d 20 24 ;.case.'<=':.$this->maxDepth.=.$
fdbe0 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 62 72 65 61 6b 3b 0a comparator->getTarget();.break;.
fdc00 64 65 66 61 75 6c 74 3a 0a 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 3d 20 24 74 68 69 73 default:.$this->minDepth.=.$this
fdc20 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 65 74 54 61 72 ->maxDepth.=.$comparator->getTar
fdc40 67 65 74 28 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a get();.}.}..return.$this;.}.....
fdc60 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
fdc80 20 24 65 78 63 6c 75 64 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 20 3d 20 24 65 .$exclude).{.$this->exclude.=.$e
fdca0 78 63 6c 75 64 65 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 xclude;..return.$this;.}.....pub
fdcc0 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 20 24 6e 61 6d lic.function.setNames(array.$nam
fdce0 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 73 20 3d 20 24 6e 61 6d 65 73 3b 0a 0a 72 65 es).{.$this->names.=.$names;..re
fdd00 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
fdd20 6e 20 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 0a 7b n.setNotNames(array.$notNames).{
fdd40 0a 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 20 3d 20 24 6e 6f 74 4e 61 6d 65 73 3b 0a 0a 72 .$this->notNames.=.$notNames;..r
fdd60 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
fdd80 6f 6e 20 73 65 74 43 6f 6e 74 61 69 6e 73 28 61 72 72 61 79 20 24 63 6f 6e 74 61 69 6e 73 29 0a on.setContains(array.$contains).
fdda0 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 20 3d 20 24 63 6f 6e 74 61 69 6e 73 3b 0a 0a {.$this->contains.=.$contains;..
fddc0 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 74 return.$this;.}.....public.funct
fdde0 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 74 43 6f 6e ion.setNotContains(array.$notCon
fde00 74 61 69 6e 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 20 3d 20 24 6e tains).{.$this->notContains.=.$n
fde20 6f 74 43 6f 6e 74 61 69 6e 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a otContains;..return.$this;.}....
fde40 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 69 7a 65 73 28 61 72 72 61 79 20 .public.function.setSizes(array.
fde60 24 73 69 7a 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 69 7a 65 73 20 3d 20 24 73 69 7a 65 73 3b $sizes).{.$this->sizes.=.$sizes;
fde80 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
fdea0 63 74 69 6f 6e 20 73 65 74 44 61 74 65 73 28 61 72 72 61 79 20 24 64 61 74 65 73 29 0a 7b 0a 24 ction.setDates(array.$dates).{.$
fdec0 74 68 69 73 2d 3e 64 61 74 65 73 20 3d 20 24 64 61 74 65 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 this->dates.=.$dates;..return.$t
fdee0 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 46 69 his;.}.....public.function.setFi
fdf00 6c 74 65 72 73 28 61 72 72 61 79 20 24 66 69 6c 74 65 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 lters(array.$filters).{.$this->f
fdf20 69 6c 74 65 72 73 20 3d 20 24 66 69 6c 74 65 72 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 ilters.=.$filters;..return.$this
fdf40 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 72 74 28 ;.}.....public.function.setSort(
fdf60 24 73 6f 72 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 24 73 6f 72 74 3b 0a 0a 72 $sort).{.$this->sort.=.$sort;..r
fdf80 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
fdfa0 6f 6e 20 73 65 74 50 61 74 68 28 61 72 72 61 79 20 24 70 61 74 68 73 29 0a 7b 0a 24 74 68 69 73 on.setPath(array.$paths).{.$this
fdfc0 2d 3e 70 61 74 68 73 20 3d 20 24 70 61 74 68 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b ->paths.=.$paths;..return.$this;
fdfe0 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 50 61 74 .}.....public.function.setNotPat
fe000 68 28 61 72 72 61 79 20 24 6e 6f 74 50 61 74 68 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 50 h(array.$notPaths).{.$this->notP
fe020 61 74 68 73 20 3d 20 24 6e 6f 74 50 61 74 68 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b aths.=.$notPaths;..return.$this;
fe040 0a 7d 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 .}.....public.function.ignoreUnr
fe060 65 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 0a 7b 0a 24 74 eadableDirs($ignore.=.true).{.$t
fe080 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 3d 20 28 62 6f 6f his->ignoreUnreadableDirs.=.(boo
fe0a0 6c 29 20 24 69 67 6e 6f 72 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a l).$ignore;..return.$this;.}....
fe0c0 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 64 20 66 75 6e 63 .........abstract.protected.func
fe0e0 74 69 6f 6e 20 63 61 6e 42 65 55 73 65 64 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a tion.canBeUsed();.}.<?php.......
fe100 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\
fe120 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 65 72 72 6f 72 28 Finder\Adapter;..@trigger_error(
fe140 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 41 62 73 74 72 61 63 74 46 'The.'.__NAMESPACE__.'\AbstractF
fe160 69 6e 64 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 indAdapter.class.is.deprecated.s
fe180 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
fe1a0 6f 76 65 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 oved.in.3.0..Use.directly.the.Fi
fe1c0 6e 64 65 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 nder.class.instead.',.E_USER_DEP
fe1e0 52 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 RECATED);..use.Symfony\Component
fe200 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 64 45 78 \Finder\Exception\AccessDeniedEx
fe220 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 46 ception;.use.Symfony\Component\F
fe240 69 6e 64 65 72 5c 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 70 inder\Iterator;.use.Symfony\Comp
fe260 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 0a 75 73 65 20 53 79 onent\Finder\Shell\Shell;.use.Sy
fe280 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 69 6f mfony\Component\Finder\Expressio
fe2a0 6e 5c 45 78 70 72 65 73 73 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e n\Expression;.use.Symfony\Compon
fe2c0 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 79 ent\Finder\Shell\Command;.use.Sy
fe2e0 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 6d 70 61 72 61 74 6f mfony\Component\Finder\Comparato
fe300 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 79 6d 66 6f 6e 79 5c r\NumberComparator;.use.Symfony\
fe320 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 5c 44 61 74 65 Component\Finder\Comparator\Date
fe340 43 6f 6d 70 61 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 Comparator;.........abstract.cla
fe360 73 73 20 41 62 73 74 72 61 63 74 46 69 6e 64 41 64 61 70 74 65 72 20 65 78 74 65 6e 64 73 20 41 ss.AbstractFindAdapter.extends.A
fe380 62 73 74 72 61 63 74 41 64 61 70 74 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 73 bstractAdapter.{....protected.$s
fe3a0 68 65 6c 6c 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 hell;.....public.function.__cons
fe3c0 74 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 68 65 6c 6c 20 3d 20 6e 65 77 20 53 68 65 truct().{.$this->shell.=.new.She
fe3e0 6c 6c 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 61 72 ll();.}.....public.function.sear
fe400 63 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 29 0a 7b 0a 0a 20 24 64 69 72 20 3d 20 72 chInDirectory($dir).{...$dir.=.r
fe420 65 61 6c 70 61 74 68 28 24 64 69 72 29 3b 0a 0a 0a 20 69 66 20 28 49 74 65 72 61 74 6f 72 5c 46 ealpath($dir);....if.(Iterator\F
fe440 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
fe460 43 54 4f 52 49 45 53 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6d 6f 64 65 20 26 26 20 28 24 74 68 69 CTORIES.===.$this->mode.&&.($thi
fe480 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 74 61 69 6e s->contains.||.$this->notContain
fe4a0 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 50 61 s)).{.return.new.Iterator\FilePa
fe4c0 74 68 73 49 74 65 72 61 74 6f 72 28 61 72 72 61 79 28 29 2c 20 24 64 69 72 29 3b 0a 7d 0a 0a 24 thsIterator(array(),.$dir);.}..$
fe4e0 63 6f 6d 6d 61 6e 64 20 3d 20 43 6f 6d 6d 61 6e 64 3a 3a 63 72 65 61 74 65 28 29 3b 0a 24 66 69 command.=.Command::create();.$fi
fe500 6e 64 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 46 69 6e 64 43 6f 6d 6d 61 6e 64 28 24 63 6f nd.=.$this->buildFindCommand($co
fe520 6d 6d 61 6e 64 2c 20 24 64 69 72 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 6f 6c 6c 6f 77 mmand,.$dir);..if.($this->follow
fe540 4c 69 6e 6b 73 29 20 7b 0a 24 66 69 6e 64 2d 3e 61 64 64 28 27 2d 66 6f 6c 6c 6f 77 27 29 3b 0a Links).{.$find->add('-follow');.
fe560 7d 0a 0a 24 66 69 6e 64 2d 3e 61 64 64 28 27 2d 6d 69 6e 64 65 70 74 68 27 29 2d 3e 61 64 64 28 }..$find->add('-mindepth')->add(
fe580 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 2b 20 31 29 3b 0a 0a 69 66 20 28 50 48 50 5f 49 $this->minDepth.+.1);..if.(PHP_I
fe5a0 4e 54 5f 4d 41 58 20 21 3d 3d 20 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 29 20 7b 0a 24 66 NT_MAX.!==.$this->maxDepth).{.$f
fe5c0 69 6e 64 2d 3e 61 64 64 28 27 2d 6d 61 78 64 65 70 74 68 27 29 2d 3e 61 64 64 28 24 74 68 69 73 ind->add('-maxdepth')->add($this
fe5e0 2d 3e 6d 61 78 44 65 70 74 68 20 2b 20 31 29 3b 0a 7d 0a 0a 69 66 20 28 49 74 65 72 61 74 6f 72 ->maxDepth.+.1);.}..if.(Iterator
fe600 5c 46 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 \FileTypeFilterIterator::ONLY_DI
fe620 52 45 43 54 4f 52 49 45 53 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 7b 0a 24 66 69 RECTORIES.===.$this->mode).{.$fi
fe640 6e 64 2d 3e 61 64 64 28 27 2d 74 79 70 65 20 64 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 49 74 nd->add('-type.d');.}.elseif.(It
fe660 65 72 61 74 6f 72 5c 46 69 6c 65 54 79 70 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3a 3a 4f erator\FileTypeFilterIterator::O
fe680 4e 4c 59 5f 46 49 4c 45 53 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 7b 0a 24 66 69 NLY_FILES.===.$this->mode).{.$fi
fe6a0 6e 64 2d 3e 61 64 64 28 27 2d 74 79 70 65 20 66 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 62 75 nd->add('-type.f');.}..$this->bu
fe6c0 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 74 68 69 73 2d 3e ildNamesFiltering($find,.$this->
fe6e0 6e 61 6d 65 73 29 3b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 4e 61 6d 65 73 46 69 6c 74 65 72 69 names);.$this->buildNamesFilteri
fe700 6e 67 28 24 66 69 6e 64 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 2c 20 74 72 75 65 29 ng($find,.$this->notNames,.true)
fe720 3b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 50 61 74 68 73 46 69 6c 74 65 72 69 6e 67 28 24 66 69 ;.$this->buildPathsFiltering($fi
fe740 6e 64 2c 20 24 64 69 72 2c 20 24 74 68 69 73 2d 3e 70 61 74 68 73 29 3b 0a 24 74 68 69 73 2d 3e nd,.$dir,.$this->paths);.$this->
fe760 62 75 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 buildPathsFiltering($find,.$dir,
fe780 20 24 74 68 69 73 2d 3e 6e 6f 74 50 61 74 68 73 2c 20 74 72 75 65 29 3b 0a 24 74 68 69 73 2d 3e .$this->notPaths,.true);.$this->
fe7a0 62 75 69 6c 64 53 69 7a 65 73 46 69 6c 74 65 72 69 6e 67 28 24 66 69 6e 64 2c 20 24 74 68 69 73 buildSizesFiltering($find,.$this
fe7c0 2d 3e 73 69 7a 65 73 29 3b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 44 61 74 65 73 46 69 6c 74 65 ->sizes);.$this->buildDatesFilte
fe7e0 72 69 6e 67 28 24 66 69 6e 64 2c 20 24 74 68 69 73 2d 3e 64 61 74 65 73 29 3b 0a 0a 24 75 73 65 ring($find,.$this->dates);..$use
fe800 47 72 65 70 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 61 6e 64 Grep.=.$this->shell->testCommand
fe820 28 27 67 72 65 70 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 ('grep').&&.$this->shell->testCo
fe840 6d 6d 61 6e 64 28 27 78 61 72 67 73 27 29 3b 0a 24 75 73 65 53 6f 72 74 20 3d 20 69 73 5f 69 6e mmand('xargs');.$useSort.=.is_in
fe860 74 28 24 74 68 69 73 2d 3e 73 6f 72 74 29 20 26 26 20 24 74 68 69 73 2d 3e 73 68 65 6c 6c 2d 3e t($this->sort).&&.$this->shell->
fe880 74 65 73 74 43 6f 6d 6d 61 6e 64 28 27 73 6f 72 74 27 29 20 26 26 20 24 74 68 69 73 2d 3e 73 68 testCommand('sort').&&.$this->sh
fe8a0 65 6c 6c 2d 3e 74 65 73 74 43 6f 6d 6d 61 6e 64 28 27 63 75 74 27 29 3b 0a 0a 69 66 20 28 24 75 ell->testCommand('cut');..if.($u
fe8c0 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 7c 7c 20 24 74 seGrep.&&.($this->contains.||.$t
fe8e0 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 29 20 7b 0a 24 67 72 65 70 20 3d 20 24 63 6f his->notContains)).{.$grep.=.$co
fe900 6d 6d 61 6e 64 2d 3e 69 6e 73 28 27 67 72 65 70 27 29 3b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 mmand->ins('grep');.$this->build
fe920 43 6f 6e 74 65 6e 74 46 69 6c 74 65 72 69 6e 67 28 24 67 72 65 70 2c 20 24 74 68 69 73 2d 3e 63 ContentFiltering($grep,.$this->c
fe940 6f 6e 74 61 69 6e 73 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 ontains);.$this->buildContentFil
fe960 74 65 72 69 6e 67 28 24 67 72 65 70 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 tering($grep,.$this->notContains
fe980 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 75 73 65 53 6f 72 74 29 20 7b 0a 24 74 68 69 ,.true);.}..if.($useSort).{.$thi
fe9a0 73 2d 3e 62 75 69 6c 64 53 6f 72 74 69 6e 67 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 74 68 69 73 2d s->buildSorting($command,.$this-
fe9c0 3e 73 6f 72 74 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 73 65 74 45 72 72 6f 72 48 61 6e >sort);.}..$command->setErrorHan
fe9e0 64 6c 65 72 28 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 dler(.$this->ignoreUnreadableDir
fea00 73 0a 0a 20 3f 20 66 75 6e 63 74 69 6f 6e 20 28 24 73 74 64 65 72 72 29 20 7b 20 72 65 74 75 72 s...?.function.($stderr).{.retur
fea20 6e 3b 20 7d 0a 3a 20 66 75 6e 63 74 69 6f 6e 20 28 24 73 74 64 65 72 72 29 20 7b 20 74 68 72 6f n;.}.:.function.($stderr).{.thro
fea40 77 20 6e 65 77 20 41 63 63 65 73 73 44 65 6e 69 65 64 45 78 63 65 70 74 69 6f 6e 28 24 73 74 64 w.new.AccessDeniedException($std
fea60 65 72 72 29 3b 20 7d 0a 29 3b 0a 0a 24 70 61 74 68 73 20 3d 20 24 74 68 69 73 2d 3e 73 68 65 6c err);.}.);..$paths.=.$this->shel
fea80 6c 2d 3e 74 65 73 74 43 6f 6d 6d 61 6e 64 28 27 75 6e 69 71 27 29 20 3f 20 24 63 6f 6d 6d 61 6e l->testCommand('uniq').?.$comman
feaa0 64 2d 3e 61 64 64 28 27 7c 20 75 6e 69 71 27 29 2d 3e 65 78 65 63 75 74 65 28 29 20 3a 20 61 72 d->add('|.uniq')->execute().:.ar
feac0 72 61 79 5f 75 6e 69 71 75 65 28 24 63 6f 6d 6d 61 6e 64 2d 3e 65 78 65 63 75 74 65 28 29 29 3b ray_unique($command->execute());
feae0 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 46 69 6c 65 50 61 .$iterator.=.new.Iterator\FilePa
feb00 74 68 73 49 74 65 72 61 74 6f 72 28 24 70 61 74 68 73 2c 20 24 64 69 72 29 3b 0a 0a 69 66 20 28 thsIterator($paths,.$dir);..if.(
feb20 24 74 68 69 73 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 $this->exclude).{.$iterator.=.ne
feb40 77 20 49 74 65 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 w.Iterator\ExcludeDirectoryFilte
feb60 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 65 78 63 6c rIterator($iterator,.$this->excl
feb80 75 64 65 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 75 73 65 47 72 65 70 20 26 26 20 28 24 74 68 69 73 ude);.}..if.(!$useGrep.&&.($this
feba0 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 74 61 69 6e 73 ->contains.||.$this->notContains
febc0 29 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 46 69 )).{.$iterator.=.new.Iterator\Fi
febe0 6c 65 63 6f 6e 74 65 6e 74 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f lecontentFilterIterator($iterato
fec00 72 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f r,.$this->contains,.$this->notCo
fec20 6e 74 61 69 6e 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 20 ntains);.}..if.($this->filters).
fec40 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 43 75 73 74 6f {.$iterator.=.new.Iterator\Custo
fec60 6d 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 69 73 mFilterIterator($iterator,.$this
fec80 2d 3e 66 69 6c 74 65 72 73 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 75 73 65 53 6f 72 74 20 26 26 20 ->filters);.}..if.(!$useSort.&&.
feca0 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 67 67 72 65 67 61 74 $this->sort).{.$iteratorAggregat
fecc0 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 49 74 65 72 61 74 6f e.=.new.Iterator\SortableIterato
fece0 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 3b 0a 24 69 74 65 72 r($iterator,.$this->sort);.$iter
fed00 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 2d 3e 67 65 74 49 74 ator.=.$iteratorAggregate->getIt
fed20 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 61 74 6f 72 3b 0a 7d erator();.}..return.$iterator;.}
fed40 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 61 6e 42 65 55 73 65 .....protected.function.canBeUse
fed60 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 68 65 6c 6c 2d 3e 74 65 73 74 43 d().{.return.$this->shell->testC
fed80 6f 6d 6d 61 6e 64 28 27 66 69 6e 64 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 ommand('find');.}........protect
feda0 65 64 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 46 69 6e 64 43 6f 6d 6d 61 6e 64 28 43 6f 6d ed.function.buildFindCommand(Com
fedc0 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 64 69 72 29 0a 7b 0a 72 65 74 75 72 6e 20 24 63 mand.$command,.$dir).{.return.$c
fede0 6f 6d 6d 61 6e 64 0a 2d 3e 69 6e 73 28 27 66 69 6e 64 27 29 0a 2d 3e 61 64 64 28 27 66 69 6e 64 ommand.->ins('find').->add('find
fee00 20 27 29 0a 2d 3e 61 72 67 28 24 64 69 72 29 0a 2d 3e 61 64 64 28 27 2d 6e 6f 6c 65 61 66 27 29 .').->arg($dir).->add('-noleaf')
fee20 3b 20 0a 20 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 75 69 ;...}.......private.function.bui
fee40 6c 64 4e 61 6d 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 ldNamesFiltering(Command.$comman
fee60 64 2c 20 61 72 72 61 79 20 24 6e 61 6d 65 73 2c 20 24 6e 6f 74 20 3d 20 66 61 6c 73 65 29 0a 7b d,.array.$names,.$not.=.false).{
fee80 0a 69 66 20 28 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 6e 61 6d 65 73 29 29 20 7b 0a 72 65 74 75 .if.(0.===.count($names)).{.retu
feea0 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 24 6e 6f 74 20 3f 20 27 2d 6e 6f rn;.}..$command->add($not.?.'-no
feec0 74 27 20 3a 20 6e 75 6c 6c 29 2d 3e 63 6d 64 28 27 28 27 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 t'.:.null)->cmd('(');..foreach.(
feee0 24 6e 61 6d 65 73 20 61 73 20 24 69 20 3d 3e 20 24 6e 61 6d 65 29 20 7b 0a 24 65 78 70 72 20 3d $names.as.$i.=>.$name).{.$expr.=
fef00 20 45 78 70 72 65 73 73 69 6f 6e 3a 3a 63 72 65 61 74 65 28 24 6e 61 6d 65 29 3b 0a 0a 0a 20 69 .Expression::create($name);....i
fef20 66 20 28 24 65 78 70 72 2d 3e 69 73 47 6c 6f 62 28 29 20 26 26 20 24 65 78 70 72 2d 3e 67 65 74 f.($expr->isGlob().&&.$expr->get
fef40 47 6c 6f 62 28 29 2d 3e 69 73 45 78 70 61 6e 64 61 62 6c 65 28 29 29 20 7b 0a 24 65 78 70 72 20 Glob()->isExpandable()).{.$expr.
fef60 3d 20 45 78 70 72 65 73 73 69 6f 6e 3a 3a 63 72 65 61 74 65 28 24 65 78 70 72 2d 3e 67 65 74 47 =.Expression::create($expr->getG
fef80 6c 6f 62 28 29 2d 3e 74 6f 52 65 67 65 78 28 66 61 6c 73 65 29 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a lob()->toRegex(false));.}.......
fefa0 20 69 66 20 28 24 65 78 70 72 2d 3e 69 73 52 65 67 65 78 28 29 29 20 7b 0a 24 72 65 67 65 78 20 .if.($expr->isRegex()).{.$regex.
fefc0 3d 20 24 65 78 70 72 2d 3e 67 65 74 52 65 67 65 78 28 29 3b 0a 24 72 65 67 65 78 2d 3e 70 72 65 =.$expr->getRegex();.$regex->pre
fefe0 70 65 6e 64 28 24 72 65 67 65 78 2d 3e 68 61 73 53 74 61 72 74 46 6c 61 67 28 29 20 3f 20 27 2f pend($regex->hasStartFlag().?.'/
ff000 27 20 3a 20 27 2f 5b 5e 2f 5d 2a 27 29 0a 2d 3e 73 65 74 53 74 61 72 74 46 6c 61 67 28 66 61 6c '.:.'/[^/]*').->setStartFlag(fal
ff020 73 65 29 0a 2d 3e 73 65 74 53 74 61 72 74 4a 6f 6b 65 72 28 74 72 75 65 29 0a 2d 3e 72 65 70 6c se).->setStartJoker(true).->repl
ff040 61 63 65 4a 6f 6b 65 72 73 28 27 5b 5e 2f 5d 27 29 3b 0a 69 66 20 28 21 24 72 65 67 65 78 2d 3e aceJokers('[^/]');.if.(!$regex->
ff060 68 61 73 45 6e 64 46 6c 61 67 28 29 20 7c 7c 20 24 72 65 67 65 78 2d 3e 68 61 73 45 6e 64 4a 6f hasEndFlag().||.$regex->hasEndJo
ff080 6b 65 72 28 29 29 20 7b 0a 24 72 65 67 65 78 2d 3e 73 65 74 45 6e 64 4a 6f 6b 65 72 28 66 61 6c ker()).{.$regex->setEndJoker(fal
ff0a0 73 65 29 2d 3e 61 70 70 65 6e 64 28 27 5b 5e 2f 5d 2a 27 29 3b 0a 7d 0a 7d 0a 0a 24 63 6f 6d 6d se)->append('[^/]*');.}.}..$comm
ff0c0 61 6e 64 0a 2d 3e 61 64 64 28 24 69 20 3e 20 30 20 3f 20 27 2d 6f 72 27 20 3a 20 6e 75 6c 6c 29 and.->add($i.>.0.?.'-or'.:.null)
ff0e0 0a 2d 3e 61 64 64 28 24 65 78 70 72 2d 3e 69 73 52 65 67 65 78 28 29 0a 3f 20 28 24 65 78 70 72 .->add($expr->isRegex().?.($expr
ff100 2d 3e 69 73 43 61 73 65 53 65 6e 73 69 74 69 76 65 28 29 20 3f 20 27 2d 72 65 67 65 78 27 20 3a ->isCaseSensitive().?.'-regex'.:
ff120 20 27 2d 69 72 65 67 65 78 27 29 0a 3a 20 28 24 65 78 70 72 2d 3e 69 73 43 61 73 65 53 65 6e 73 .'-iregex').:.($expr->isCaseSens
ff140 69 74 69 76 65 28 29 20 3f 20 27 2d 6e 61 6d 65 27 20 3a 20 27 2d 69 6e 61 6d 65 27 29 0a 29 0a itive().?.'-name'.:.'-iname').).
ff160 2d 3e 61 72 67 28 24 65 78 70 72 2d 3e 72 65 6e 64 65 72 50 61 74 74 65 72 6e 28 29 29 3b 0a 7d ->arg($expr->renderPattern());.}
ff180 0a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 63 6d 64 28 27 29 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 ..$command->cmd(')');.}........p
ff1a0 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 50 61 74 68 73 46 69 6c 74 65 72 rivate.function.buildPathsFilter
ff1c0 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 64 69 72 2c 20 61 72 72 61 ing(Command.$command,.$dir,.arra
ff1e0 79 20 24 70 61 74 68 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 y.$paths,.$not.=.false).{.if.(0.
ff200 3d 3d 3d 20 63 6f 75 6e 74 28 24 70 61 74 68 73 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a ===.count($paths)).{.return;.}..
ff220 24 63 6f 6d 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 $command->add($not.?.'-not'.:.nu
ff240 6c 6c 29 2d 3e 63 6d 64 28 27 28 27 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 74 68 73 20 ll)->cmd('(');..foreach.($paths.
ff260 61 73 20 24 69 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a 24 65 78 70 72 20 3d 20 45 78 70 72 65 73 as.$i.=>.$path).{.$expr.=.Expres
ff280 73 69 6f 6e 3a 3a 63 72 65 61 74 65 28 24 70 61 74 68 29 3b 0a 0a 0a 20 69 66 20 28 24 65 78 70 sion::create($path);....if.($exp
ff2a0 72 2d 3e 69 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 r->isGlob().&&.$expr->getGlob()-
ff2c0 3e 69 73 45 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 >isExpandable()).{.$expr.=.Expre
ff2e0 73 73 69 6f 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 ssion::create($expr->getGlob()->
ff300 74 6f 52 65 67 65 78 28 66 61 6c 73 65 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 65 78 70 72 2d toRegex(false));.}....if.($expr-
ff320 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
ff340 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
ff360 2d 3e 68 61 73 53 74 61 72 74 46 6c 61 67 28 29 20 3f 20 70 72 65 67 5f 71 75 6f 74 65 28 24 64 ->hasStartFlag().?.preg_quote($d
ff380 69 72 29 2e 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 3a 20 27 2e 2a 27 29 2d ir).DIRECTORY_SEPARATOR.:.'.*')-
ff3a0 3e 73 65 74 45 6e 64 4a 6f 6b 65 72 28 21 24 72 65 67 65 78 2d 3e 68 61 73 45 6e 64 46 6c 61 67 >setEndJoker(!$regex->hasEndFlag
ff3c0 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 78 70 72 2d 3e 70 72 65 70 65 6e 64 28 27 2a 27 ());.}.else.{.$expr->prepend('*'
ff3e0 29 2d 3e 61 70 70 65 6e 64 28 27 2a 27 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 0a 2d 3e 61 64 )->append('*');.}..$command.->ad
ff400 64 28 24 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 d($i.>.0.?.'-or'.:.null).->add($
ff420 65 78 70 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 expr->isRegex().?.($expr->isCase
ff440 53 65 6e 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 Sensitive().?.'-regex'.:.'-irege
ff460 78 27 29 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 x').:.($expr->isCaseSensitive().
ff480 3f 20 27 2d 70 61 74 68 27 20 3a 20 27 2d 69 70 61 74 68 27 29 0a 29 0a 2d 3e 61 72 67 28 24 65 ?.'-path'.:.'-ipath').).->arg($e
ff4a0 78 70 72 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 xpr->renderPattern());.}..$comma
ff4c0 6e 64 2d 3e 63 6d 64 28 27 29 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e nd->cmd(')');.}......private.fun
ff4e0 63 74 69 6f 6e 20 62 75 69 6c 64 53 69 7a 65 73 46 69 6c 74 65 72 69 6e 67 28 43 6f 6d 6d 61 6e ction.buildSizesFiltering(Comman
ff500 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 61 72 72 61 79 20 24 73 69 7a 65 73 29 0a 7b 0a 66 6f 72 65 d.$command,.array.$sizes).{.fore
ff520 61 63 68 20 28 24 73 69 7a 65 73 20 61 73 20 24 69 20 3d 3e 20 24 73 69 7a 65 29 20 7b 0a 24 63 ach.($sizes.as.$i.=>.$size).{.$c
ff540 6f 6d 6d 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 ommand->add($i.>.0.?.'-and'.:.nu
ff560 6c 6c 29 3b 0a 0a 73 77 69 74 63 68 20 28 24 73 69 7a 65 2d 3e 67 65 74 4f 70 65 72 61 74 6f 72 ll);..switch.($size->getOperator
ff580 28 29 29 20 7b 0a 63 61 73 65 20 27 3c 3d 27 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 ()).{.case.'<=':.$command->add('
ff5a0 2d 73 69 7a 65 20 2d 27 2e 28 24 73 69 7a 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 2b 20 31 -size.-'.($size->getTarget().+.1
ff5c0 29 2e 27 63 27 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 6d 61 ).'c');.break;.case.'>=':.$comma
ff5e0 6e 64 2d 3e 61 64 64 28 27 2d 73 69 7a 65 20 2b 27 2e 28 24 73 69 7a 65 2d 3e 67 65 74 54 61 72 nd->add('-size.+'.($size->getTar
ff600 67 65 74 28 29 20 2d 20 31 29 2e 27 63 27 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3e 27 get().-.1).'c');.break;.case.'>'
ff620 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 2d 73 69 7a 65 20 2b 27 2e 24 73 69 7a 65 2d :.$command->add('-size.+'.$size-
ff640 3e 67 65 74 54 61 72 67 65 74 28 29 2e 27 63 27 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 >getTarget().'c');.break;.case.'
ff660 21 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 24 73 69 !=':.$command->add('-size.-'.$si
ff680 7a 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2e 27 63 27 29 3b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e ze->getTarget().'c');.$command->
ff6a0 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 29 add('-size.+'.$size->getTarget()
ff6c0 2e 27 63 27 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3c 27 3a 0a 64 65 66 61 75 6c 74 3a .'c');.break;.case.'<':.default:
ff6e0 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 24 73 69 7a 65 2d 3e .$command->add('-size.-'.$size->
ff700 67 65 74 54 61 72 67 65 74 28 29 2e 27 63 27 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 70 72 69 getTarget().'c');.}.}.}......pri
ff720 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 44 61 74 65 73 46 69 6c 74 65 72 69 6e vate.function.buildDatesFilterin
ff740 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 64 61 74 65 73 g(Command.$command,.array.$dates
ff760 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 65 73 20 61 73 20 24 69 20 3d 3e 20 24 64 61 ).{.foreach.($dates.as.$i.=>.$da
ff780 74 65 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 24 69 20 3e 20 30 20 3f 20 27 2d 61 te).{.$command->add($i.>.0.?.'-a
ff7a0 6e 64 27 20 3a 20 6e 75 6c 6c 29 3b 0a 0a 24 6d 69 6e 73 20 3d 20 28 69 6e 74 29 20 72 6f 75 6e nd'.:.null);..$mins.=.(int).roun
ff7c0 64 28 28 74 69 6d 65 28 29 20 2d 20 24 64 61 74 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 29 20 d((time().-.$date->getTarget()).
ff7e0 2f 20 36 30 29 3b 0a 0a 69 66 20 28 30 20 3e 20 24 6d 69 6e 73 29 20 7b 0a 0a 20 24 63 6f 6d 6d /.60);..if.(0.>.$mins).{...$comm
ff800 61 6e 64 2d 3e 61 64 64 28 27 20 2d 6d 6d 69 6e 20 2d 30 27 29 3b 0a 0a 20 72 65 74 75 72 6e 3b and->add('.-mmin.-0');...return;
ff820 0a 7d 0a 0a 73 77 69 74 63 68 20 28 24 64 61 74 65 2d 3e 67 65 74 4f 70 65 72 61 74 6f 72 28 29 .}..switch.($date->getOperator()
ff840 29 20 7b 0a 63 61 73 65 20 27 3c 3d 27 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 2d 6d ).{.case.'<=':.$command->add('-m
ff860 6d 69 6e 20 2b 27 2e 28 24 6d 69 6e 73 20 2d 20 31 29 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 min.+'.($mins.-.1));.break;.case
ff880 20 27 3e 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 2d 27 2e 28 .'>=':.$command->add('-mmin.-'.(
ff8a0 24 6d 69 6e 73 20 2b 20 31 29 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3e 27 3a 0a 24 63 $mins.+.1));.break;.case.'>':.$c
ff8c0 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 2d 6d 6d 69 6e 20 2d 27 2e 24 6d 69 6e 73 29 3b 0a 62 72 ommand->add('-mmin.-'.$mins);.br
ff8e0 65 61 6b 3b 0a 63 61 73 65 20 27 21 3d 27 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 61 64 64 28 27 2d eak;.case.'!=':.$command->add('-
ff900 6d 6d 69 6e 20 2b 27 2e 24 6d 69 6e 73 2e 27 20 2d 6f 72 20 2d 6d 6d 69 6e 20 2d 27 2e 24 6d 69 mmin.+'.$mins.'.-or.-mmin.-'.$mi
ff920 6e 73 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3c 27 3a 0a 64 65 66 61 75 6c 74 3a 0a 24 ns);.break;.case.'<':.default:.$
ff940 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 6e 73 29 3b 0a 7d command->add('-mmin.+'.$mins);.}
ff960 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 62 75 69 .}.}........private.function.bui
ff980 6c 64 53 6f 72 74 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 73 6f 72 ldSorting(Command.$command,.$sor
ff9a0 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 46 6f 72 6d 61 74 53 6f 72 74 69 6e 67 28 24 t).{.$this->buildFormatSorting($
ff9c0 63 6f 6d 6d 61 6e 64 2c 20 24 73 6f 72 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 command,.$sort);.}......abstract
ff9e0 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 46 6f 72 6d 61 74 53 .protected.function.buildFormatS
ffa00 6f 72 74 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 73 6f 72 74 29 3b orting(Command.$command,.$sort);
ffa20 0a 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 .......abstract.protected.functi
ffa40 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 43 6f 6d 6d 61 6e 64 on.buildContentFiltering(Command
ffa60 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 73 2c 20 24 6e 6f 74 .$command,.array.$contains,.$not
ffa80 20 3d 20 66 61 6c 73 65 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d .=.false);.}.<?php...........nam
ffaa0 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\
ffac0 41 64 61 70 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 41 64 61 70 74 65 72 Adapter;.......interface.Adapter
ffae0 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
ffb00 20 73 65 74 46 6f 6c 6c 6f 77 4c 69 6e 6b 73 28 24 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 29 3b 0a 0a .setFollowLinks($followLinks);..
ffb20 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 6f 64 65 28 24 6d 6f .....public.function.setMode($mo
ffb40 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 6e 20 73 65 74 45 78 de);.......public.function.setEx
ffb60 63 6c 75 64 65 28 61 72 72 61 79 20 24 65 78 63 6c 75 64 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 clude(array.$exclude);.......pub
ffb80 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 70 74 68 73 28 61 72 72 61 79 20 24 64 65 lic.function.setDepths(array.$de
ffba0 70 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 6f 6e 20 73 65 74 pths);.......public.function.set
ffbc0 4e 61 6d 65 73 28 61 72 72 61 79 20 24 6e 61 6d 65 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 Names(array.$names);.......publi
ffbe0 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4e 6f 74 4e 61 6d 65 73 28 61 72 72 61 79 20 24 6e 6f c.function.setNotNames(array.$no
ffc00 74 4e 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 73 tNames);.......public.function.s
ffc20 65 74 43 6f 6e 74 61 69 6e 73 28 61 72 72 61 79 20 24 63 6f 6e 74 61 69 6e 73 29 3b 0a 0a 0a 0a etContains(array.$contains);....
ffc40 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 6f 6e 74 61 69 6e ...public.function.setNotContain
ffc60 73 28 61 72 72 61 79 20 24 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 s(array.$notContains);.......pub
ffc80 6c 69 63 20 66 75 6e 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 lic.function.setSizes(array.$siz
ffca0 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 44 61 es);.......public.function.setDa
ffcc0 74 65 73 28 61 72 72 61 79 20 24 64 61 74 65 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 tes(array.$dates);.......public.
ffce0 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 20 24 66 69 6c 74 65 function.setFilters(array.$filte
ffd00 72 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 53 6f rs);.......public.function.setSo
ffd20 72 74 28 24 73 6f 72 74 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e rt($sort);.......public.function
ffd40 20 73 65 74 50 61 74 68 28 61 72 72 61 79 20 24 70 61 74 68 73 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 .setPath(array.$paths);.......pu
ffd60 62 6c 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 blic.function.setNotPath(array.$
ffd80 6e 6f 74 50 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 6f 6e notPaths);.......public.function
ffda0 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 65 20 3d 20 .ignoreUnreadableDirs($ignore.=.
ffdc0 74 72 75 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 73 65 61 true);.......public.function.sea
ffde0 72 63 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c rchInDirectory($dir);.......publ
ffe00 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 53 75 70 70 6f 72 74 65 64 28 29 3b 0a 0a 0a 0a 0a 0a ic.function.isSupported();......
ffe20 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 3c 3f .public.function.getName();.}.<?
ffe40 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\
ffe60 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 40 74 72 69 67 Component\Finder\Adapter;..@trig
ffe80 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 27 ger_error('The.'.__NAMESPACE__.'
ffea0 5c 42 73 64 46 69 6e 64 41 64 61 70 74 65 72 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 \BsdFindAdapter.class.is.depreca
ffec0 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
ffee0 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 65 63 74 6c 79 20 74 e.removed.in.3.0..Use.directly.t
fff00 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 2c 20 45 5f 55 53 45 he.Finder.class.instead.',.E_USE
fff20 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 6e 79 5c 43 6f 6d 70 R_DEPRECATED);..use.Symfony\Comp
fff40 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 0a 75 73 65 20 53 79 onent\Finder\Shell\Shell;.use.Sy
fff60 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 65 6c 6c 5c 43 6f 6d mfony\Component\Finder\Shell\Com
fff80 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 46 69 6e 64 mand;.use.Symfony\Component\Find
fffa0 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 74 6f 72 3b 0a 75 73 er\Iterator\SortableIterator;.us
fffc0 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 70 72 65 e.Symfony\Component\Finder\Expre
fffe0 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 0a 63 6c 61 73 73 20 ssion\Expression;.........class.
100000 42 73 64 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 46 BsdFindAdapter.extends.AbstractF
100020 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 6e 63 74 69 6f 6e 20 indAdapter.{....public.function.
100040 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 62 73 64 5f 66 69 6e 64 27 3b 0a 7d getName().{.return.'bsd_find';.}
100060 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 61 6e 42 65 55 73 65 .....protected.function.canBeUse
100080 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 6e 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 73 68 65 d().{.return.in_array($this->she
1000a0 6c 6c 2d 3e 67 65 74 54 79 70 65 28 29 2c 20 61 72 72 61 79 28 53 68 65 6c 6c 3a 3a 54 59 50 45 ll->getType(),.array(Shell::TYPE
1000c0 5f 42 53 44 2c 20 53 68 65 6c 6c 3a 3a 54 59 50 45 5f 44 41 52 57 49 4e 29 29 20 26 26 20 70 61 _BSD,.Shell::TYPE_DARWIN)).&&.pa
1000e0 72 65 6e 74 3a 3a 63 61 6e 42 65 55 73 65 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 rent::canBeUsed();.}.....protect
100100 65 64 20 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 ed.function.buildFormatSorting(C
100120 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 73 77 69 74 63 68 ommand.$command,.$sort).{.switch
100140 20 28 24 73 6f 72 74 29 20 7b 0a 63 61 73 65 20 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 .($sort).{.case.SortableIterator
100160 3a 3a 53 4f 52 54 5f 42 59 5f 4e 41 4d 45 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 69 6e 73 28 27 73 ::SORT_BY_NAME:.$command->ins('s
100180 6f 72 74 27 29 2d 3e 61 64 64 28 27 7c 20 73 6f 72 74 27 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 63 ort')->add('|.sort');..return;.c
1001a0 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 54 59 ase.SortableIterator::SORT_BY_TY
1001c0 50 45 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 48 54 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 PE:.$format.=.'%HT';.break;.case
1001e0 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 41 43 43 45 53 .SortableIterator::SORT_BY_ACCES
100200 53 45 44 5f 54 49 4d 45 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 61 27 3b 0a 62 72 65 61 6b 3b SED_TIME:.$format.=.'%a';.break;
100220 0a 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 .case.SortableIterator::SORT_BY_
100240 43 48 41 4e 47 45 44 5f 54 49 4d 45 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 63 27 3b 0a 62 72 CHANGED_TIME:.$format.=.'%c';.br
100260 65 61 6b 3b 0a 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 eak;.case.SortableIterator::SORT
100280 5f 42 59 5f 4d 4f 44 49 46 49 45 44 5f 54 49 4d 45 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 6d _BY_MODIFIED_TIME:.$format.=.'%m
1002a0 27 3b 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e ';.break;.default:.throw.new.\In
1002c0 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('
1002e0 55 6e 6b 6e 6f 77 6e 20 73 6f 72 74 20 6f 70 74 69 6f 6e 73 3a 20 25 73 2e 27 2c 20 24 73 6f 72 Unknown.sort.options:.%s.',.$sor
100300 74 29 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 0a 2d 3e 61 64 64 28 27 2d 70 72 69 6e 74 30 20 t));.}..$command.->add('-print0.
100320 7c 20 78 61 72 67 73 20 2d 30 20 73 74 61 74 20 2d 66 27 29 0a 2d 3e 61 72 67 28 24 66 6f 72 6d |.xargs.-0.stat.-f').->arg($form
100340 61 74 2e 27 25 74 25 4e 27 29 0a 2d 3e 61 64 64 28 27 7c 20 73 6f 72 74 20 7c 20 63 75 74 20 2d at.'%t%N').->add('|.sort.|.cut.-
100360 66 20 32 27 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 f.2');.}.....protected.function.
100380 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 6e buildFindCommand(Command.$comman
1003a0 64 2c 20 24 64 69 72 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 62 75 69 6c 64 46 69 6e 64 43 6f 6d 6d d,.$dir).{.parent::buildFindComm
1003c0 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 64 69 72 29 2d 3e 61 64 64 41 74 49 6e 64 65 78 28 and($command,.$dir)->addAtIndex(
1003e0 27 2d 45 27 2c 20 31 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 0a '-E',.1);..return.$command;.}...
100400 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 6e ..protected.function.buildConten
100420 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 72 tFiltering(Command.$command,.arr
100440 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 6f ay.$contains,.$not.=.false).{.fo
100460 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 0a reach.($contains.as.$contain).{.
100480 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 74 $expr.=.Expression::create($cont
1004a0 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 67 72 65 70 20 ain);....$command.->add('|.grep.
1004c0 2d 76 20 5c 27 5e 24 5c 27 27 29 0a 2d 3e 61 64 64 28 27 7c 20 78 61 72 67 73 20 2d 49 7b 7d 20 -v.\'^$\'').->add('|.xargs.-I{}.
1004e0 67 72 65 70 20 2d 49 27 29 0a 2d 3e 61 64 64 28 24 65 78 70 72 2d 3e 69 73 43 61 73 65 53 65 6e grep.-I').->add($expr->isCaseSen
100500 73 69 74 69 76 65 28 29 20 3f 20 6e 75 6c 6c 20 3a 20 27 2d 69 27 29 0a 2d 3e 61 64 64 28 24 6e sitive().?.null.:.'-i').->add($n
100520 6f 74 20 3f 20 27 2d 4c 27 20 3a 20 27 2d 6c 27 29 0a 2d 3e 61 64 64 28 27 2d 45 65 27 29 2d 3e ot.?.'-L'.:.'-l').->add('-Ee')->
100540 61 72 67 28 24 65 78 70 72 2d 3e 72 65 6e 64 65 72 50 61 74 74 65 72 6e 28 29 29 0a 2d 3e 61 64 arg($expr->renderPattern()).->ad
100560 64 28 27 7b 7d 27 29 0a 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a d('{}').;.}.}.}.<?php...........
100580 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
1005a0 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 54 68 65 er\Adapter;..@trigger_error('The
1005c0 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 47 6e 75 46 69 6e 64 41 64 61 70 74 65 .'.__NAMESPACE__.'\GnuFindAdapte
1005e0 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 65 72 73 r.class.is.deprecated.since.vers
100600 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 6e 20 33 ion.2.8.and.will.be.removed.in.3
100620 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 6c 61 73 .0..Use.directly.the.Finder.clas
100640 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 44 29 3b s.instead.',.E_USER_DEPRECATED);
100660 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 72 5c 53 ..use.Symfony\Component\Finder\S
100680 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 6e 65 6e hell\Shell;.use.Symfony\Componen
1006a0 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 79 6d 66 t\Finder\Shell\Command;.use.Symf
1006c0 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 53 6f ony\Component\Finder\Iterator\So
1006e0 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 6f 6d 70 rtableIterator;.use.Symfony\Comp
100700 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 73 73 69 onent\Finder\Expression\Expressi
100720 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 6e 75 46 69 6e 64 41 64 61 70 74 65 72 on;.........class.GnuFindAdapter
100740 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 7b 0a 0a .extends.AbstractFindAdapter.{..
100760 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
100780 74 75 72 6e 20 27 67 6e 75 5f 66 69 6e 64 27 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 turn.'gnu_find';.}.....protected
1007a0 20 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 .function.buildFormatSorting(Com
1007c0 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 73 6f 72 74 29 0a 7b 0a 73 77 69 74 63 68 20 28 mand.$command,.$sort).{.switch.(
1007e0 24 73 6f 72 74 29 20 7b 0a 63 61 73 65 20 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3a 3a $sort).{.case.SortableIterator::
100800 53 4f 52 54 5f 42 59 5f 4e 41 4d 45 3a 0a 24 63 6f 6d 6d 61 6e 64 2d 3e 69 6e 73 28 27 73 6f 72 SORT_BY_NAME:.$command->ins('sor
100820 74 27 29 2d 3e 61 64 64 28 27 7c 20 73 6f 72 74 27 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 63 61 73 t')->add('|.sort');..return;.cas
100840 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 54 59 50 45 e.SortableIterator::SORT_BY_TYPE
100860 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 79 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 53 6f :.$format.=.'%y';.break;.case.So
100880 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 41 43 43 45 53 53 45 44 rtableIterator::SORT_BY_ACCESSED
1008a0 5f 54 49 4d 45 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 41 40 27 3b 0a 62 72 65 61 6b 3b 0a 63 _TIME:.$format.=.'%A@';.break;.c
1008c0 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 43 48 ase.SortableIterator::SORT_BY_CH
1008e0 41 4e 47 45 44 5f 54 49 4d 45 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 43 40 27 3b 0a 62 72 65 ANGED_TIME:.$format.=.'%C@';.bre
100900 61 6b 3b 0a 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 ak;.case.SortableIterator::SORT_
100920 42 59 5f 4d 4f 44 49 46 49 45 44 5f 54 49 4d 45 3a 0a 24 66 6f 72 6d 61 74 20 3d 20 27 25 54 40 BY_MODIFIED_TIME:.$format.=.'%T@
100940 27 3b 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e ';.break;.default:.throw.new.\In
100960 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('
100980 55 6e 6b 6e 6f 77 6e 20 73 6f 72 74 20 6f 70 74 69 6f 6e 73 3a 20 25 73 2e 27 2c 20 24 73 6f 72 Unknown.sort.options:.%s.',.$sor
1009a0 74 29 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 0a 2d 3e 67 65 74 28 27 66 69 6e 64 27 29 0a 2d t));.}..$command.->get('find').-
1009c0 3e 61 64 64 28 27 2d 70 72 69 6e 74 66 27 29 0a 2d 3e 61 72 67 28 24 66 6f 72 6d 61 74 2e 27 20 >add('-printf').->arg($format.'.
1009e0 25 68 2f 25 66 5c 5c 6e 27 29 0a 2d 3e 61 64 64 28 27 7c 20 73 6f 72 74 20 7c 20 63 75 74 27 29 %h/%f\\n').->add('|.sort.|.cut')
100a00 0a 2d 3e 61 72 67 28 27 2d 64 20 27 29 0a 2d 3e 61 72 67 28 27 2d 66 32 2d 27 29 0a 3b 0a 7d 0a .->arg('-d.').->arg('-f2-').;.}.
100a20 0a 0a 0a 0a 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 73 65 64 ....protected.function.canBeUsed
100a40 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 68 65 6c 6c 2d 3e 67 65 74 54 79 70 ().{.return.$this->shell->getTyp
100a60 65 28 29 20 3d 3d 3d 20 53 68 65 6c 6c 3a 3a 54 59 50 45 5f 55 4e 49 58 20 26 26 20 70 61 72 65 e().===.Shell::TYPE_UNIX.&&.pare
100a80 6e 74 3a 3a 63 61 6e 42 65 55 73 65 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 nt::canBeUsed();.}.....protected
100aa0 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 46 69 6e 64 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 .function.buildFindCommand(Comma
100ac0 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 24 64 69 72 29 0a 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 nd.$command,.$dir).{.return.pare
100ae0 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 64 2c 20 24 nt::buildFindCommand($command,.$
100b00 64 69 72 29 2d 3e 61 64 64 28 27 2d 72 65 67 65 78 74 79 70 65 20 70 6f 73 69 78 2d 65 78 74 65 dir)->add('-regextype.posix-exte
100b20 6e 64 65 64 27 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 nded');.}.....protected.function
100b40 20 62 75 69 6c 64 43 6f 6e 74 65 6e 74 46 69 6c 74 65 72 69 6e 67 28 43 6f 6d 6d 61 6e 64 20 24 .buildContentFiltering(Command.$
100b60 63 6f 6d 6d 61 6e 64 2c 20 61 72 72 61 79 20 24 63 6f 6e 74 61 69 6e 73 2c 20 24 6e 6f 74 20 3d command,.array.$contains,.$not.=
100b80 20 66 61 6c 73 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 74 61 69 6e 73 20 61 73 20 .false).{.foreach.($contains.as.
100ba0 24 63 6f 6e 74 61 69 6e 29 20 7b 0a 24 65 78 70 72 20 3d 20 45 78 70 72 65 73 73 69 6f 6e 3a 3a $contain).{.$expr.=.Expression::
100bc0 63 72 65 61 74 65 28 24 63 6f 6e 74 61 69 6e 29 3b 0a 0a 0a 20 24 63 6f 6d 6d 61 6e 64 0a 2d 3e create($contain);....$command.->
100be0 61 64 64 28 27 7c 20 78 61 72 67 73 20 2d 49 7b 7d 20 2d 72 20 67 72 65 70 20 2d 49 27 29 0a 2d add('|.xargs.-I{}.-r.grep.-I').-
100c00 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().?.
100c20 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'.:
100c40 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->
100c60 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('{}').;.}
100c80 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
100ca0 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;
100cc0 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
100ce0 41 43 45 5f 5f 2e 27 5c 50 68 70 41 64 61 70 74 65 72 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 ACE__.'\PhpAdapter.class.is.depr
100d00 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 20 77 69 6c ecated.since.version.2.8.and.wil
100d20 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 65 63 74 6c l.be.removed.in.3.0..Use.directl
100d40 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 2c 20 45 5f y.the.Finder.class.instead.',.E_
100d60 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 6e 79 5c 43 USER_DEPRECATED);..use.Symfony\C
100d80 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 0a 0a omponent\Finder\Iterator;.......
100da0 0a 0a 63 6c 61 73 73 20 50 68 70 41 64 61 70 74 65 72 20 65 78 74 65 6e 64 73 20 41 62 73 74 72 ..class.PhpAdapter.extends.Abstr
100dc0 61 63 74 41 64 61 70 74 65 72 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 actAdapter.{....public.function.
100de0 73 65 61 72 63 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 29 0a 7b 0a 24 66 6c 61 67 73 searchInDirectory($dir).{.$flags
100e00 20 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 3a 3a .=.\RecursiveDirectoryIterator::
100e20 53 4b 49 50 5f 44 4f 54 53 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 6f 6c 6c 6f 77 4c 69 6e SKIP_DOTS;..if.($this->followLin
100e40 6b 73 29 20 7b 0a 24 66 6c 61 67 73 20 7c 3d 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 ks).{.$flags.|=.\RecursiveDirect
100e60 6f 72 79 49 74 65 72 61 74 6f 72 3a 3a 46 4f 4c 4c 4f 57 5f 53 59 4d 4c 49 4e 4b 53 3b 0a 7d 0a oryIterator::FOLLOW_SYMLINKS;.}.
100e80 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 52 65 63 75 72 73 .$iterator.=.new.Iterator\Recurs
100ea0 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 2c 20 24 66 6c 61 67 iveDirectoryIterator($dir,.$flag
100ec0 73 2c 20 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 29 3b s,.$this->ignoreUnreadableDirs);
100ee0 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 29 20 7b 0a 24 69 74 65 72 61 74 6f ..if.($this->exclude).{.$iterato
100f00 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 45 78 63 6c 75 64 65 44 69 72 65 63 74 6f 72 r.=.new.Iterator\ExcludeDirector
100f20 79 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 69 73 yFilterIterator($iterator,.$this
100f40 2d 3e 65 78 63 6c 75 64 65 29 3b 0a 7d 0a 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 5c ->exclude);.}..$iterator.=.new.\
100f60 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 65 72 61 RecursiveIteratorIterator($itera
100f80 74 6f 72 2c 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 3a tor,.\RecursiveIteratorIterator:
100fa0 3a 53 45 4c 46 5f 46 49 52 53 54 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 :SELF_FIRST);..if.($this->minDep
100fc0 74 68 20 3e 20 30 20 7c 7c 20 24 74 68 69 73 2d 3e 6d 61 78 44 65 70 74 68 20 3c 20 50 48 50 5f th.>.0.||.$this->maxDepth.<.PHP_
100fe0 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 61 INT_MAX).{.$iterator.=.new.Itera
101000 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 74 tor\DepthRangeFilterIterator($it
101020 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 2c 20 24 74 68 69 73 2d 3e erator,.$this->minDepth,.$this->
101040 6d 61 78 44 65 70 74 68 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 7b maxDepth);.}..if.($this->mode).{
101060 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 46 69 6c 65 54 79 .$iterator.=.new.Iterator\FileTy
101080 70 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 69 peFilterIterator($iterator,.$thi
1010a0 73 2d 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6e 61 6d 65 73 20 7c 7c s->mode);.}..if.($this->names.||
1010c0 20 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 .$this->notNames).{.$iterator.=.
1010e0 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 6e 61 6d 65 46 69 6c 74 65 72 49 74 65 72 61 new.Iterator\FilenameFilterItera
101100 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 73 2c 20 24 74 68 tor($iterator,.$this->names,.$th
101120 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 6e is->notNames);.}..if.($this->con
101140 74 61 69 6e 73 20 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 20 7b 0a 24 tains.||.$this->notContains).{.$
101160 69 74 65 72 61 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 iterator.=.new.Iterator\Filecont
101180 65 6e 74 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 entFilterIterator($iterator,.$th
1011a0 69 73 2d 3e 63 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 is->contains,.$this->notContains
1011c0 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 69 7a 65 73 29 20 7b 0a 24 69 74 65 72 61 );.}..if.($this->sizes).{.$itera
1011e0 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 53 69 7a 65 52 61 6e 67 65 46 69 6c 74 tor.=.new.Iterator\SizeRangeFilt
101200 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 73 69 7a erIterator($iterator,.$this->siz
101220 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 61 74 65 73 29 20 7b 0a 24 69 74 65 es);.}..if.($this->dates).{.$ite
101240 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 44 61 74 65 52 61 6e 67 65 46 69 rator.=.new.Iterator\DateRangeFi
101260 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 64 lterIterator($iterator,.$this->d
101280 61 74 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 20 7b 0a ates);.}..if.($this->filters).{.
1012a0 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 43 75 73 74 6f 6d 46 $iterator.=.new.Iterator\CustomF
1012c0 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 69 73 2d 3e ilterIterator($iterator,.$this->
1012e0 66 69 6c 74 65 72 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 61 74 68 73 20 7c 7c filters);.}..if.($this->paths.||
101300 20 24 74 68 69 73 2d 3e 6e 6f 74 50 61 74 68 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 .$this->notPaths).{.$iterator.=.
101320 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 50 61 74 68 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 new.Iterator\PathFilterIterator(
101340 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 70 61 74 68 73 2c 20 24 74 68 69 73 2d 3e $iterator,.$this->paths,.$this->
101360 6e 6f 74 50 61 74 68 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 6f 72 74 29 20 7b notPaths);.}..if.($this->sort).{
101380 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 72 61 74 .$iteratorAggregate.=.new.Iterat
1013a0 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 2c 20 24 or\SortableIterator($iterator,.$
1013c0 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 72 61 74 this->sort);.$iterator.=.$iterat
1013e0 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 0a 0a 72 orAggregate->getIterator();.}..r
101400 65 74 75 72 6e 20 24 69 74 65 72 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 eturn.$iterator;.}.....public.fu
101420 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 70 68 70 27 3b nction.getName().{.return.'php';
101440 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 61 6e 42 65 55 .}.....protected.function.canBeU
101460 73 65 64 28 29 0a 7b 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 sed().{.return.true;.}.}.<?php..
101480 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
1014a0 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 6c nent\Finder\Comparator;.......cl
1014c0 61 73 73 20 43 6f 6d 70 61 72 61 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 74 61 72 67 65 74 ass.Comparator.{.private.$target
1014e0 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 65 72 61 74 6f 72 20 3d 20 27 3d 3d 27 3b 0a 0a 0a 0a 0a ;.private.$operator.=.'==';.....
101500 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 28 29 0a 7b 0a ..public.function.getTarget().{.
101520 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 return.$this->target;.}.......pu
101540 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 61 72 67 65 74 28 24 74 61 72 67 65 74 29 blic.function.setTarget($target)
101560 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 72 67 65 74 20 3d 20 24 74 61 72 67 65 74 3b 0a 7d 0a 0a 0a .{.$this->target.=.$target;.}...
101580 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 72 61 74 6f 72 28 ....public.function.getOperator(
1015a0 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 3b 0a 7d 0a 0a 0a ).{.return.$this->operator;.}...
1015c0 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 65 72 61 74 6f ......public.function.setOperato
1015e0 72 28 24 6f 70 65 72 61 74 6f 72 29 0a 7b 0a 69 66 20 28 21 24 6f 70 65 72 61 74 6f 72 29 20 7b r($operator).{.if.(!$operator).{
101600 0a 24 6f 70 65 72 61 74 6f 72 20 3d 20 27 3d 3d 27 3b 0a 7d 0a 0a 69 66 20 28 21 69 6e 5f 61 72 .$operator.=.'==';.}..if.(!in_ar
101620 72 61 79 28 24 6f 70 65 72 61 74 6f 72 2c 20 61 72 72 61 79 28 27 3e 27 2c 20 27 3c 27 2c 20 27 ray($operator,.array('>',.'<',.'
101640 3e 3d 27 2c 20 27 3c 3d 27 2c 20 27 3d 3d 27 2c 20 27 21 3d 27 29 29 29 20 7b 0a 74 68 72 6f 77 >=',.'<=',.'==',.'!='))).{.throw
101660 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 73 .new.\InvalidArgumentException(s
101680 70 72 69 6e 74 66 28 27 49 6e 76 61 6c 69 64 20 6f 70 65 72 61 74 6f 72 20 22 25 73 22 2e 27 2c printf('Invalid.operator."%s".',
1016a0 20 24 6f 70 65 72 61 74 6f 72 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 .$operator));.}..$this->operator
1016c0 20 3d 20 24 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 63 20 66 .=.$operator;.}.........public.f
1016e0 75 6e 63 74 69 6f 6e 20 74 65 73 74 28 24 74 65 73 74 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 74 unction.test($test).{.switch.($t
101700 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 29 20 7b 0a 63 61 73 65 20 27 3e 27 3a 0a 72 65 74 75 72 his->operator).{.case.'>':.retur
101720 6e 20 24 74 65 73 74 20 3e 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 63 61 73 65 20 27 3e n.$test.>.$this->target;.case.'>
101740 3d 27 3a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 20 3e 3d 20 24 74 68 69 73 2d 3e 74 61 72 67 65 =':.return.$test.>=.$this->targe
101760 74 3b 0a 63 61 73 65 20 27 3c 27 3a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 20 3c 20 24 74 68 69 t;.case.'<':.return.$test.<.$thi
101780 73 2d 3e 74 61 72 67 65 74 3b 0a 63 61 73 65 20 27 3c 3d 27 3a 0a 72 65 74 75 72 6e 20 24 74 65 s->target;.case.'<=':.return.$te
1017a0 73 74 20 3c 3d 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 63 61 73 65 20 27 21 3d 27 3a 0a st.<=.$this->target;.case.'!=':.
1017c0 72 65 74 75 72 6e 20 24 74 65 73 74 20 21 3d 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 7d return.$test.!=.$this->target;.}
1017e0 0a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 20 3d 3d 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b ..return.$test.==.$this->target;
101800 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
101820 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 6d 70 61 72 61 74 ymfony\Component\Finder\Comparat
101840 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 61 74 65 43 6f 6d 70 61 72 61 74 6f 72 20 65 or;.......class.DateComparator.e
101860 78 74 65 6e 64 73 20 43 6f 6d 70 61 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 xtends.Comparator.{........publi
101880 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 65 73 74 29 0a 7b 0a c.function.__construct($test).{.
1018a0 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 5c 73 2a 28 3d 3d 7c 21 3d 7c 5b 3c 3e if.(!preg_match('#^\s*(==|!=|[<>
1018c0 5d 3d 3f 7c 61 66 74 65 72 7c 73 69 6e 63 65 7c 62 65 66 6f 72 65 7c 75 6e 74 69 6c 29 3f 5c 73 ]=?|after|since|before|until)?\s
1018e0 2a 28 2e 2b 3f 29 5c 73 2a 24 23 69 27 2c 20 24 74 65 73 74 2c 20 24 6d 61 74 63 68 65 73 29 29 *(.+?)\s*$#i',.$test,.$matches))
101900 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
101920 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 72 73 74 61 6e eption(sprintf('Don\'t.understan
101940 64 20 22 25 73 22 20 61 73 20 61 20 64 61 74 65 20 74 65 73 74 2e 27 2c 20 24 74 65 73 74 29 29 d."%s".as.a.date.test.',.$test))
101960 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 ;.}..try.{.$date.=.new.\DateTime
101980 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 3b 0a 24 74 61 72 67 65 74 20 3d 20 24 64 61 74 65 2d 3e ($matches[2]);.$target.=.$date->
1019a0 66 6f 72 6d 61 74 28 27 55 27 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e format('U');.}.catch.(\Exception
1019c0 20 24 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 67 75 6d 65 6e .$e).{.throw.new.\InvalidArgumen
1019e0 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 22 25 73 22 20 69 73 20 6e 6f 74 20 tException(sprintf('"%s".is.not.
101a00 61 20 76 61 6c 69 64 20 64 61 74 65 2e 27 2c 20 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 3b 0a 7d a.valid.date.',.$matches[2]));.}
101a20 0a 0a 24 6f 70 65 72 61 74 6f 72 20 3d 20 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 31 5d 29 ..$operator.=.isset($matches[1])
101a40 20 3f 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 3a 20 27 3d 3d 27 3b 0a 69 66 20 28 27 73 69 6e 63 .?.$matches[1].:.'==';.if.('sinc
101a60 65 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 6f 72 20 7c 7c 20 27 61 66 74 65 72 27 20 3d 3d 3d 20 e'.===.$operator.||.'after'.===.
101a80 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 3e 27 3b 0a 7d 0a $operator).{.$operator.=.'>';.}.
101aa0 0a 69 66 20 28 27 75 6e 74 69 6c 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 6f 72 20 7c 7c 20 27 62 .if.('until'.===.$operator.||.'b
101ac0 65 66 6f 72 65 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 6f 72 29 20 7b 0a 24 6f 70 65 72 61 74 6f efore'.===.$operator).{.$operato
101ae0 72 20 3d 20 27 3c 27 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 4f 70 65 72 61 74 6f 72 28 24 r.=.'<';.}..$this->setOperator($
101b00 6f 70 65 72 61 74 6f 72 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 54 61 72 67 65 74 28 24 74 61 72 operator);.$this->setTarget($tar
101b20 67 65 74 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 get);.}.}.<?php...........namesp
101b40 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 43 6f 6d ace.Symfony\Component\Finder\Com
101b60 70 61 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 parator;.......................c
101b80 6c 61 73 73 20 4e 75 6d 62 65 72 43 6f 6d 70 61 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 43 6f lass.NumberComparator.extends.Co
101ba0 6d 70 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 mparator.{........public.functio
101bc0 6e 20 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 n.__construct($test).{.if.(!preg
101be0 5f 6d 61 74 63 68 28 27 23 5e 5c 73 2a 28 3d 3d 7c 21 3d 7c 5b 3c 3e 5d 3d 3f 29 3f 5c 73 2a 28 _match('#^\s*(==|!=|[<>]=?)?\s*(
101c00 5b 30 2d 39 5c 2e 5d 2b 29 5c 73 2a 28 5b 6b 6d 67 5d 69 3f 29 3f 5c 73 2a 24 23 69 27 2c 20 24 [0-9\.]+)\s*([kmg]i?)?\s*$#i',.$
101c20 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 77 20 5c 49 6e test,.$matches)).{.throw.new.\In
101c40 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('
101c60 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 20 6e 75 6d 62 Don\'t.understand."%s".as.a.numb
101c80 65 72 20 74 65 73 74 2e 27 2c 20 24 74 65 73 74 29 29 3b 0a 7d 0a 0a 24 74 61 72 67 65 74 20 3d er.test.',.$test));.}..$target.=
101ca0 20 24 6d 61 74 63 68 65 73 5b 32 5d 3b 0a 69 66 20 28 21 69 73 5f 6e 75 6d 65 72 69 63 28 24 74 .$matches[2];.if.(!is_numeric($t
101cc0 61 72 67 65 74 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 arget)).{.throw.new.\InvalidArgu
101ce0 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 61 6c 69 64 20 6e mentException(sprintf('Invalid.n
101d00 75 6d 62 65 72 20 22 25 73 22 2e 27 2c 20 24 74 61 72 67 65 74 29 29 3b 0a 7d 0a 69 66 20 28 69 umber."%s".',.$target));.}.if.(i
101d20 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 29 20 7b 0a 0a 20 73 77 69 74 63 68 20 28 73 sset($matches[3])).{...switch.(s
101d40 74 72 74 6f 6c 6f 77 65 72 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 29 20 7b 0a 63 61 73 65 20 27 trtolower($matches[3])).{.case.'
101d60 6b 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 30 30 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 k':.$target.*=.1000;.break;.case
101d80 20 27 6b 69 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 32 34 3b 0a 62 72 65 61 6b 3b 0a 63 .'ki':.$target.*=.1024;.break;.c
101da0 61 73 65 20 27 6d 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 30 30 30 30 30 3b 0a 62 72 65 ase.'m':.$target.*=.1000000;.bre
101dc0 61 6b 3b 0a 63 61 73 65 20 27 6d 69 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 32 34 20 2a ak;.case.'mi':.$target.*=.1024.*
101de0 20 31 30 32 34 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 67 27 3a 0a 24 74 61 72 67 65 74 20 .1024;.break;.case.'g':.$target.
101e00 2a 3d 20 31 30 30 30 30 30 30 30 30 30 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 67 69 27 3a *=.1000000000;.break;.case.'gi':
101e20 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 32 34 20 2a 20 31 30 32 34 20 2a 20 31 30 32 34 3b 0a .$target.*=.1024.*.1024.*.1024;.
101e40 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 54 61 72 67 65 74 28 24 74 61 break;.}.}..$this->setTarget($ta
101e60 72 67 65 74 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 4f 70 65 72 61 74 6f 72 28 69 73 73 65 74 28 rget);.$this->setOperator(isset(
101e80 24 6d 61 74 63 68 65 73 5b 31 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 3a 20 27 3d 3d $matches[1]).?.$matches[1].:.'==
101ea0 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
101ec0 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 65 70 e.Symfony\Component\Finder\Excep
101ee0 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 63 63 65 73 73 44 65 6e 69 65 64 45 78 63 65 tion;.....class.AccessDeniedExce
101f00 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 ption.extends.\UnexpectedValueEx
101f20 63 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 6e 61 6d 65 ception.{.}.<?php...........name
101f40 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 45 space.Symfony\Component\Finder\E
101f60 78 63 65 70 74 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 xception;..@trigger_error('The.'
101f80 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 41 64 61 70 74 65 72 46 61 69 6c 75 72 65 45 .__NAMESPACE__.'\AdapterFailureE
101fa0 78 63 65 70 74 69 6f 6e 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 6e xception.class.is.deprecated.sin
101fc0 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
101fe0 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);
102000 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 72 5c 41 ..use.Symfony\Component\Finder\A
102020 64 61 70 74 65 72 5c 41 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a dapter\AdapterInterface;........
102040 0a 63 6c 61 73 73 20 41 64 61 70 74 65 72 46 61 69 6c 75 72 65 45 78 63 65 70 74 69 6f 6e 20 65 .class.AdapterFailureException.e
102060 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 69 6d 70 6c 65 6d 65 xtends.\RuntimeException.impleme
102080 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 0a 0a 0a 70 72 69 76 nts.ExceptionInterface.{....priv
1020a0 61 74 65 20 24 61 64 61 70 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ate.$adapter;.......public.funct
1020c0 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 41 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 65 ion.__construct(AdapterInterface
1020e0 20 24 61 64 61 70 74 65 72 2c 20 24 6d 65 73 73 61 67 65 20 3d 20 6e 75 6c 6c 2c 20 5c 45 78 63 .$adapter,.$message.=.null,.\Exc
102100 65 70 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 24 74 68 69 73 eption.$previous.=.null).{.$this
102120 2d 3e 61 64 61 70 74 65 72 20 3d 20 24 61 64 61 70 74 65 72 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f ->adapter.=.$adapter;.parent::__
102140 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 20 3f 3a 20 27 53 65 61 72 63 68 20 66 61 construct($message.?:.'Search.fa
102160 69 6c 65 64 20 77 69 74 68 20 22 27 2e 24 61 64 61 70 74 65 72 2d 3e 67 65 74 4e 61 6d 65 28 29 iled.with."'.$adapter->getName()
102180 2e 27 22 20 61 64 61 70 74 65 72 2e 27 2c 20 24 70 72 65 76 69 6f 75 73 29 3b 0a 7d 0a 0a 0a 0a .'".adapter.',.$previous);.}....
1021a0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 64 61 70 74 65 72 28 29 0a 7b 0a .public.function.getAdapter().{.
1021c0 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 return.$this->adapter;.}.}.<?php
1021e0 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
102200 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 69 6e 74 ponent\Finder\Exception;.....int
102220 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 0a 0a 0a 70 erface.ExceptionInterface.{....p
102240 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 64 61 70 74 65 72 28 29 3b 0a 7d 0a 3c ublic.function.getAdapter();.}.<
102260 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
102280 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 40 74 \Component\Finder\Exception;..@t
1022a0 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 5f rigger_error('The.'.__NAMESPACE_
1022c0 5f 2e 27 5c 4f 70 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 _.'\OperationNotPermitedExceptio
1022e0 6e 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 65 72 73 n.class.is.deprecated.since.vers
102300 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 6e 20 33 ion.2.8.and.will.be.removed.in.3
102320 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 0a 0a 0a 0a 0a .0.',.E_USER_DEPRECATED);.......
102340 63 6c 61 73 73 20 4f 70 65 72 61 74 69 6f 6e 4e 6f 74 50 65 72 6d 69 74 65 64 45 78 63 65 70 74 class.OperationNotPermitedExcept
102360 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
102380 69 6f 6e 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 ion.{.}.<?php...........namespac
1023a0 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 65 70 e.Symfony\Component\Finder\Excep
1023c0 74 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 tion;..@trigger_error('The.'.__N
1023e0 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 53 68 65 6c 6c 43 6f 6d 6d 61 6e 64 46 61 69 6c 75 72 65 AMESPACE__.'\ShellCommandFailure
102400 45 78 63 65 70 74 69 6f 6e 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 Exception.class.is.deprecated.si
102420 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 6f nce.version.2.8.and.will.be.remo
102440 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)
102460 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 72 5c ;..use.Symfony\Component\Finder\
102480 41 64 61 70 74 65 72 5c 41 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 Adapter\AdapterInterface;.use.Sy
1024a0 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 65 6c 6c 5c 43 6f 6d mfony\Component\Finder\Shell\Com
1024c0 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 68 65 6c 6c 43 6f 6d 6d 61 6e 64 46 61 mand;.......class.ShellCommandFa
1024e0 69 6c 75 72 65 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 41 64 61 70 74 65 72 46 61 ilureException.extends.AdapterFa
102500 69 6c 75 72 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d ilureException.{....private.$com
102520 6d 61 6e 64 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 mand;.......public.function.__co
102540 6e 73 74 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 nstruct(AdapterInterface.$adapte
102560 72 2c 20 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 2c 20 5c 45 78 63 65 70 74 69 6f 6e 20 r,.Command.$command,.\Exception.
102580 24 70 72 65 76 69 6f 75 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 $previous.=.null).{.$this->comma
1025a0 6e 64 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 nd.=.$command;.parent::__constru
1025c0 63 74 28 24 61 64 61 70 74 65 72 2c 20 27 53 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 20 66 61 69 6c ct($adapter,.'Shell.command.fail
1025e0 65 64 3a 20 22 27 2e 24 63 6f 6d 6d 61 6e 64 2d 3e 6a 6f 69 6e 28 29 2e 27 22 2e 27 2c 20 24 70 ed:."'.$command->join().'".',.$p
102600 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 63 74 69 6f 6e 20 revious);.}.....public.function.
102620 67 65 74 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 6d getCommand().{.return.$this->com
102640 6d 61 6e 64 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 mand;.}.}.<?php...........namesp
102660 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 45 78 70 ace.Symfony\Component\Finder\Exp
102680 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 68 65 20 27 2e ression;..@trigger_error('The.'.
1026a0 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 45 78 70 72 65 73 73 69 6f 6e 20 63 6c 61 73 73 __NAMESPACE__.'\Expression.class
1026c0 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
1026e0 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
102700 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 45 78 70 _USER_DEPRECATED);.....class.Exp
102720 72 65 73 73 69 6f 6e 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 ression.implements.ValueInterfac
102740 65 0a 7b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 52 45 47 45 58 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 e.{.const.TYPE_REGEX.=.1;.const.
102760 54 59 50 45 5f 47 4c 4f 42 20 3d 20 32 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 76 61 6c 75 TYPE_GLOB.=.2;.....private.$valu
102780 65 3b 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 e;.......public.static.function.
1027a0 63 72 65 61 74 65 28 24 65 78 70 72 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 65 6c 66 28 create($expr).{.return.new.self(
1027c0 24 65 78 70 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 5f 5f $expr);.}.....public.function.__
1027e0 63 6f 6e 73 74 72 75 63 74 28 24 65 78 70 72 29 0a 7b 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e construct($expr).{.try.{.$this->
102800 76 61 6c 75 65 20 3d 20 52 65 67 65 78 3a 3a 63 72 65 61 74 65 28 24 65 78 70 72 29 3b 0a 7d 20 value.=.Regex::create($expr);.}.
102820 63 61 74 63 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 catch.(\InvalidArgumentException
102840 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 75 65 20 3d 20 6e 65 77 20 47 6c 6f 62 28 24 .$e).{.$this->value.=.new.Glob($
102860 65 78 70 72 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 5f expr);.}.}.....public.function._
102880 5f 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 72 65 6e 64 _toString().{.return.$this->rend
1028a0 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 6e 20 72 65 6e 64 er();.}.....public.function.rend
1028c0 65 72 28 29 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 er().{.return.$this->value->rend
1028e0 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 6e 20 72 65 6e 64 er();.}.....public.function.rend
102900 65 72 50 61 74 74 65 72 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 75 erPattern().{.return.$this->valu
102920 65 2d 3e 72 65 6e 64 65 72 50 61 74 74 65 72 6e 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 e->renderPattern();.}.....public
102940 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 0a 7b 0a 72 65 .function.isCaseSensitive().{.re
102960 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 69 73 43 61 73 65 53 65 6e 73 69 74 69 turn.$this->value->isCaseSensiti
102980 76 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 67 65 74 54 ve();.}.....public.function.getT
1029a0 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 67 65 74 ype().{.return.$this->value->get
1029c0 54 79 70 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 70 72 Type();.}.....public.function.pr
1029e0 65 70 65 6e 64 28 24 65 78 70 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 70 72 65 epend($expr).{.$this->value->pre
102a00 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 73 3b 0a 7d 0a 0a 0a pend($expr);..return.$this;.}...
102a20 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 70 72 29 0a ..public.function.append($expr).
102a40 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 61 70 70 65 6e 64 28 24 65 78 70 72 29 3b 0a 0a {.$this->value->append($expr);..
102a60 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 74 return.$this;.}.....public.funct
102a80 69 6f 6e 20 69 73 52 65 67 65 78 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 ion.isRegex().{.return.self::TYP
102aa0 45 5f 52 45 47 45 58 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 67 65 74 54 79 70 E_REGEX.===.$this->value->getTyp
102ac0 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 69 73 47 6c 6f e();.}.....public.function.isGlo
102ae0 62 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 47 4c 4f 42 20 3d 3d 3d b().{.return.self::TYPE_GLOB.===
102b00 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();.}.....
102b20 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 47 6c 6f 62 28 29 0a 7b 0a 69 66 ..public.function.getGlob().{.if
102b40 20 28 73 65 6c 66 3a 3a 54 59 50 45 5f 47 4c 4f 42 20 21 3d 3d 20 24 74 68 69 73 2d 3e 76 61 6c .(self::TYPE_GLOB.!==.$this->val
102b60 75 65 2d 3e 67 65 74 54 79 70 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 ue->getType()).{.throw.new.\Logi
102b80 63 45 78 63 65 70 74 69 6f 6e 28 27 52 65 67 65 78 20 63 61 6e 5c 27 74 20 62 65 20 74 72 61 6e cException('Regex.can\'t.be.tran
102ba0 73 66 6f 72 6d 65 64 20 74 6f 20 67 6c 6f 62 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 sformed.to.glob.');.}..return.$t
102bc0 68 69 73 2d 3e 76 61 6c 75 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f his->value;.}.....public.functio
102be0 6e 20 67 65 74 52 65 67 65 78 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 n.getRegex().{.return.self::TYPE
102c00 5f 52 45 47 45 58 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 2d 3e 67 65 74 54 79 70 65 _REGEX.===.$this->value->getType
102c20 28 29 20 3f 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 20 3a 20 24 74 68 69 73 2d 3e 76 61 6c 75 65 ().?.$this->value.:.$this->value
102c40 2d 3e 74 6f 52 65 67 65 78 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ->toRegex();.}.}.<?php..........
102c60 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 6e .namespace.Symfony\Component\Fin
102c80 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 72 6f 72 28 der\Expression;..@trigger_error(
102ca0 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 47 6c 6f 62 20 63 6c 61 73 'The.'.__NAMESPACE__.'\Glob.clas
102cc0 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 32 2e s.is.deprecated.since.version.2.
102ce0 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.',.
102d00 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 6e 79 E_USER_DEPRECATED);..use.Symfony
102d20 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 47 6c 6f 62 20 61 73 20 46 69 6e 64 65 72 \Component\Finder\Glob.as.Finder
102d40 47 6c 6f 62 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 6c 6f 62 20 69 6d 70 6c 65 6d 65 6e 74 73 20 Glob;.....class.Glob.implements.
102d60 56 61 6c 75 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 61 74 ValueInterface.{....private.$pat
102d80 74 65 72 6e 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 tern;.....public.function.__cons
102da0 74 72 75 63 74 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e truct($pattern).{.$this->pattern
102dc0 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 .=.$pattern;.}.....public.functi
102de0 6f 6e 20 72 65 6e 64 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 74 74 on.render().{.return.$this->patt
102e00 65 72 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 72 65 6e 64 65 ern;.}.....public.function.rende
102e20 72 50 61 74 74 65 72 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 74 74 65 rPattern().{.return.$this->patte
102e40 72 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 54 79 70 rn;.}.....public.function.getTyp
102e60 65 28 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 47 4c e().{.return.Expression::TYPE_GL
102e80 4f 42 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 43 61 73 65 OB;.}.....public.function.isCase
102ea0 53 65 6e 73 69 74 69 76 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a Sensitive().{.return.true;.}....
102ec0 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 29 0a .public.function.prepend($expr).
102ee0 7b 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 20 3d 20 24 65 78 70 72 2e 24 74 68 69 73 2d 3e {.$this->pattern.=.$expr.$this->
102f00 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 0a 0a 0a 70 75 pattern;..return.$this;.}.....pu
102f20 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 0a 7b 0a 24 74 blic.function.append($expr).{.$t
102f40 68 69 73 2d 3e 70 61 74 74 65 72 6e 20 2e 3d 20 24 65 78 70 72 3b 0a 0a 72 65 74 75 72 6e 20 24 his->pattern..=.$expr;..return.$
102f60 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 69 73 this;.}.......public.function.is
102f80 45 78 70 61 6e 64 61 62 6c 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d 20 Expandable().{.return.false.!==.
102fa0 73 74 72 70 6f 73 28 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 2c 20 27 7b 27 29 0a 26 26 20 66 strpos($this->pattern,.'{').&&.f
102fc0 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 2c 20 alse.!==.strpos($this->pattern,.
102fe0 27 7d 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 74 '}');.}........public.function.t
103000 6f 52 65 67 65 78 28 24 73 74 72 69 63 74 4c 65 61 64 69 6e 67 44 6f 74 20 3d 20 74 72 75 65 2c oRegex($strictLeadingDot.=.true,
103020 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 65 29 0a 7b 0a .$strictWildcardSlash.=.true).{.
103040 24 72 65 67 65 78 20 3d 20 46 69 6e 64 65 72 47 6c 6f 62 3a 3a 74 6f 52 65 67 65 78 28 24 74 68 $regex.=.FinderGlob::toRegex($th
103060 69 73 2d 3e 70 61 74 74 65 72 6e 2c 20 24 73 74 72 69 63 74 4c 65 61 64 69 6e 67 44 6f 74 2c 20 is->pattern,.$strictLeadingDot,.
103080 24 73 74 72 69 63 74 57 69 6c 64 63 61 72 64 53 6c 61 73 68 2c 20 27 27 29 3b 0a 0a 72 65 74 75 $strictWildcardSlash,.'');..retu
1030a0 72 6e 20 6e 65 77 20 52 65 67 65 78 28 24 72 65 67 65 78 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a rn.new.Regex($regex);.}.}.<?php.
1030c0 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
1030e0 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 74 72 69 67 67 onent\Finder\Expression;..@trigg
103100 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 27 5c er_error('The.'.__NAMESPACE__.'\
103120 52 65 67 65 78 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 Regex.class.is.deprecated.since.
103140 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 64 20 version.2.8.and.will.be.removed.
103160 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 0a in.3.0.',.E_USER_DEPRECATED);...
103180 0a 0a 63 6c 61 73 73 20 52 65 67 65 78 20 69 6d 70 6c 65 6d 65 6e 74 73 20 56 61 6c 75 65 49 6e ..class.Regex.implements.ValueIn
1031a0 74 65 72 66 61 63 65 0a 7b 0a 63 6f 6e 73 74 20 53 54 41 52 54 5f 46 4c 41 47 20 3d 20 27 5e 27 terface.{.const.START_FLAG.=.'^'
1031c0 3b 0a 63 6f 6e 73 74 20 45 4e 44 5f 46 4c 41 47 20 3d 20 27 24 27 3b 0a 63 6f 6e 73 74 20 42 4f ;.const.END_FLAG.=.'$';.const.BO
1031e0 55 4e 44 41 52 59 20 3d 20 27 7e 27 3b 0a 63 6f 6e 73 74 20 4a 4f 4b 45 52 20 3d 20 27 2e 2a 27 UNDARY.=.'~';.const.JOKER.=.'.*'
103200 3b 0a 63 6f 6e 73 74 20 45 53 43 41 50 49 4e 47 20 3d 20 27 5c 5c 27 3b 0a 0a 0a 0a 0a 70 72 69 ;.const.ESCAPING.=.'\\';.....pri
103220 76 61 74 65 20 24 70 61 74 74 65 72 6e 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 vate.$pattern;.....private.$opti
103240 6f 6e 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 74 61 72 74 46 6c 61 67 3b 0a 0a 0a 0a ons;.....private.$startFlag;....
103260 0a 70 72 69 76 61 74 65 20 24 65 6e 64 46 6c 61 67 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 .private.$endFlag;.....private.$
103280 73 74 61 72 74 4a 6f 6b 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 65 6e 64 4a 6f 6b 65 startJoker;.....private.$endJoke
1032a0 72 3b 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 r;.........public.static.functio
1032c0 6e 20 63 72 65 61 74 65 28 24 65 78 70 72 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 n.create($expr).{.if.(preg_match
1032e0 28 27 2f 5e 28 2e 7b 33 2c 7d 3f 29 28 5b 69 6d 73 78 75 41 44 55 5d 2a 29 24 2f 27 2c 20 24 65 ('/^(.{3,}?)([imsxuADU]*)$/',.$e
103300 78 70 72 2c 20 24 6d 29 29 20 7b 0a 24 73 74 61 72 74 20 3d 20 73 75 62 73 74 72 28 24 6d 5b 31 xpr,.$m)).{.$start.=.substr($m[1
103320 5d 2c 20 30 2c 20 31 29 3b 0a 24 65 6e 64 20 3d 20 73 75 62 73 74 72 28 24 6d 5b 31 5d 2c 20 2d ],.0,.1);.$end.=.substr($m[1],.-
103340 31 29 3b 0a 0a 69 66 20 28 0a 28 24 73 74 61 72 74 20 3d 3d 3d 20 24 65 6e 64 20 26 26 20 21 70 1);..if.(.($start.===.$end.&&.!p
103360 72 65 67 5f 6d 61 74 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 reg_match('/[*?[:alnum:].\\\\]/'
103380 2c 20 24 73 74 61 72 74 29 29 0a 7c 7c 20 28 24 73 74 61 72 74 20 3d 3d 3d 20 27 7b 27 20 26 26 ,.$start)).||.($start.===.'{'.&&
1033a0 20 24 65 6e 64 20 3d 3d 3d 20 27 7d 27 29 0a 7c 7c 20 28 24 73 74 61 72 74 20 3d 3d 3d 20 27 28 .$end.===.'}').||.($start.===.'(
1033c0 27 20 26 26 20 24 65 6e 64 20 3d 3d 3d 20 27 29 27 29 0a 29 20 7b 0a 72 65 74 75 72 6e 20 6e 65 '.&&.$end.===.')').).{.return.ne
1033e0 77 20 73 65 6c 66 28 73 75 62 73 74 72 28 24 6d 5b 31 5d 2c 20 31 2c 20 2d 31 29 2c 20 24 6d 5b w.self(substr($m[1],.1,.-1),.$m[
103400 32 5d 2c 20 24 65 6e 64 29 3b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 2],.$end);.}.}..throw.new.\Inval
103420 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 47 69 76 65 6e 20 65 78 70 72 65 idArgumentException('Given.expre
103440 73 73 69 6f 6e 20 69 73 20 6e 6f 74 20 61 20 72 65 67 65 78 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a ssion.is.not.a.regex.');.}......
103460 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 61 .public.function.__construct($pa
103480 74 74 65 72 6e 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 27 27 2c 20 24 64 65 6c 69 6d 69 74 65 72 ttern,.$options.=.'',.$delimiter
1034a0 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 6c 69 6d 69 74 .=.null).{.if.(null.!==.$delimit
1034c0 65 72 29 20 7b 0a 0a 20 24 70 61 74 74 65 72 6e 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 er).{...$pattern.=.str_replace('
1034e0 5c 5c 27 2e 24 64 65 6c 69 6d 69 74 65 72 2c 20 24 64 65 6c 69 6d 69 74 65 72 2c 20 24 70 61 74 \\'.$delimiter,.$delimiter,.$pat
103500 74 65 72 6e 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 50 61 74 74 65 72 6e 28 24 70 tern);.}..$this->parsePattern($p
103520 61 74 74 65 72 6e 29 3b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 24 6f 70 74 69 6f attern);.$this->options.=.$optio
103540 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 5f 5f 74 6f 53 74 ns;.}.....public.function.__toSt
103560 72 69 6e 67 28 29 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 ring().{.return.$this->render();
103580 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 0a .}.....public.function.render().
1035a0 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 42 4f 55 4e 44 41 52 59 0a 2e 24 74 68 69 73 2d 3e {.return.self::BOUNDARY..$this->
1035c0 72 65 6e 64 65 72 50 61 74 74 65 72 6e 28 29 0a 2e 73 65 6c 66 3a 3a 42 4f 55 4e 44 41 52 59 0a renderPattern()..self::BOUNDARY.
1035e0 2e 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 .$this->options;.}.....public.fu
103600 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 50 61 74 74 65 72 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 nction.renderPattern().{.return.
103620 28 24 74 68 69 73 2d 3e 73 74 61 72 74 46 6c 61 67 20 3f 20 73 65 6c 66 3a 3a 53 54 41 52 54 5f ($this->startFlag.?.self::START_
103640 46 4c 41 47 20 3a 20 27 27 29 0a 2e 28 24 74 68 69 73 2d 3e 73 74 61 72 74 4a 6f 6b 65 72 20 3f FLAG.:.'')..($this->startJoker.?
103660 20 73 65 6c 66 3a 3a 4a 4f 4b 45 52 20 3a 20 27 27 29 0a 2e 73 74 72 5f 72 65 70 6c 61 63 65 28 .self::JOKER.:.'')..str_replace(
103680 73 65 6c 66 3a 3a 42 4f 55 4e 44 41 52 59 2c 20 27 5c 5c 27 2e 73 65 6c 66 3a 3a 42 4f 55 4e 44 self::BOUNDARY,.'\\'.self::BOUND
1036a0 41 52 59 2c 20 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 29 0a 2e 28 24 74 68 69 73 2d 3e 65 6e ARY,.$this->pattern)..($this->en
1036c0 64 4a 6f 6b 65 72 20 3f 20 73 65 6c 66 3a 3a 4a 4f 4b 45 52 20 3a 20 27 27 29 0a 2e 28 24 74 68 dJoker.?.self::JOKER.:.'')..($th
1036e0 69 73 2d 3e 65 6e 64 46 6c 61 67 20 3f 20 73 65 6c 66 3a 3a 45 4e 44 5f 46 4c 41 47 20 3a 20 27 is->endFlag.?.self::END_FLAG.:.'
103700 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 69 73 43 61 73 65 ');.}.....public.function.isCase
103720 53 65 6e 73 69 74 69 76 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 21 24 74 68 69 73 2d 3e 68 61 73 Sensitive().{.return.!$this->has
103740 4f 70 74 69 6f 6e 28 27 69 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 Option('i');.}.....public.functi
103760 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 45 78 70 72 65 73 73 69 6f 6e on.getType().{.return.Expression
103780 3a 3a 54 59 50 45 5f 52 45 47 45 58 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 ::TYPE_REGEX;.}.....public.funct
1037a0 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 74 74 ion.prepend($expr).{.$this->patt
1037c0 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 65 74 ern.=.$expr.$this->pattern;..ret
1037e0 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 6e urn.$this;.}.....public.function
103800 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 6e 20 .append($expr).{.$this->pattern.
103820 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 0a 0a .=.$expr;..return.$this;.}......
103840 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 6f 70 74 69 .public.function.hasOption($opti
103860 6f 6e 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 on).{.return.false.!==.strpos($t
103880 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 2c 20 24 6f 70 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a his->options,.$option);.}.......
1038a0 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 24 6f 70 74 69 6f public.function.addOption($optio
1038c0 6e 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 24 6f 70 74 69 n).{.if.(!$this->hasOption($opti
1038e0 6f 6e 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 2e 3d 20 24 6f 70 74 69 6f 6e on)).{.$this->options..=.$option
103900 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 70 75 62 6c 69 ;.}..return.$this;.}.......publi
103920 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 c.function.removeOption($option)
103940 0a 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 .{.$this->options.=.str_replace(
103960 24 6f 70 74 69 6f 6e 2c 20 27 27 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 0a 72 $option,.'',.$this->options);..r
103980 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
1039a0 74 69 6f 6e 20 73 65 74 53 74 61 72 74 46 6c 61 67 28 24 73 74 61 72 74 46 6c 61 67 29 0a 7b 0a tion.setStartFlag($startFlag).{.
1039c0 24 74 68 69 73 2d 3e 73 74 61 72 74 46 6c 61 67 20 3d 20 24 73 74 61 72 74 46 6c 61 67 3b 0a 0a $this->startFlag.=.$startFlag;..
1039e0 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 74 return.$this;.}.....public.funct
103a00 69 6f 6e 20 68 61 73 53 74 61 72 74 46 6c 61 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 ion.hasStartFlag().{.return.$thi
103a20 73 2d 3e 73 74 61 72 74 46 6c 61 67 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e s->startFlag;.}.......public.fun
103a40 63 74 69 6f 6e 20 73 65 74 45 6e 64 46 6c 61 67 28 24 65 6e 64 46 6c 61 67 29 0a 7b 0a 24 74 68 ction.setEndFlag($endFlag).{.$th
103a60 69 73 2d 3e 65 6e 64 46 6c 61 67 20 3d 20 28 62 6f 6f 6c 29 20 24 65 6e 64 46 6c 61 67 3b 0a 0a is->endFlag.=.(bool).$endFlag;..
103a80 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 74 return.$this;.}.....public.funct
103aa0 69 6f 6e 20 68 61 73 45 6e 64 46 6c 61 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d ion.hasEndFlag().{.return.$this-
103ac0 3e 65 6e 64 46 6c 61 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 >endFlag;.}.......public.functio
103ae0 6e 20 73 65 74 53 74 61 72 74 4a 6f 6b 65 72 28 24 73 74 61 72 74 4a 6f 6b 65 72 29 0a 7b 0a 24 n.setStartJoker($startJoker).{.$
103b00 74 68 69 73 2d 3e 73 74 61 72 74 4a 6f 6b 65 72 20 3d 20 24 73 74 61 72 74 4a 6f 6b 65 72 3b 0a this->startJoker.=.$startJoker;.
103b20 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
103b40 74 69 6f 6e 20 68 61 73 53 74 61 72 74 4a 6f 6b 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 tion.hasStartJoker().{.return.$t
103b60 68 69 73 2d 3e 73 74 61 72 74 4a 6f 6b 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 his->startJoker;.}.......public.
103b80 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 6e 64 4a 6f 6b 65 72 28 24 65 6e 64 4a 6f 6b 65 72 29 0a function.setEndJoker($endJoker).
103ba0 7b 0a 24 74 68 69 73 2d 3e 65 6e 64 4a 6f 6b 65 72 20 3d 20 28 62 6f 6f 6c 29 20 24 65 6e 64 4a {.$this->endJoker.=.(bool).$endJ
103bc0 6f 6b 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 70 75 62 6c 69 oker;..return.$this;.}.....publi
103be0 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 45 6e 64 4a 6f 6b 65 72 28 29 0a 7b 0a 72 65 74 75 72 c.function.hasEndJoker().{.retur
103c00 6e 20 24 74 68 69 73 2d 3e 65 6e 64 4a 6f 6b 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 n.$this->endJoker;.}.......publi
103c20 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 70 6c 61 63 65 4a 6f 6b 65 72 73 28 24 72 65 70 6c 61 63 c.function.replaceJokers($replac
103c40 65 6d 65 6e 74 29 0a 7b 0a 24 72 65 70 6c 61 63 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 73 ement).{.$replace.=.function.($s
103c60 75 62 6a 65 63 74 29 20 75 73 65 20 28 24 72 65 70 6c 61 63 65 6d 65 6e 74 29 20 7b 0a 24 73 75 ubject).use.($replacement).{.$su
103c80 62 6a 65 63 74 20 3d 20 24 73 75 62 6a 65 63 74 5b 30 5d 3b 0a 24 72 65 70 6c 61 63 65 20 3d 20 bject.=.$subject[0];.$replace.=.
103ca0 30 20 3d 3d 3d 20 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 73 75 62 6a 65 63 74 2c 20 27 5c 5c 0.===.substr_count($subject,.'\\
103cc0 27 29 20 25 20 32 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 70 6c 61 63 65 20 3f 20 73 74 72 5f 72 ').%.2;..return.$replace.?.str_r
103ce0 65 70 6c 61 63 65 28 27 2e 27 2c 20 24 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 24 73 75 62 6a 65 eplace('.',.$replacement,.$subje
103d00 63 74 29 20 3a 20 24 73 75 62 6a 65 63 74 3b 0a 7d 3b 0a 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 ct).:.$subject;.};..$this->patte
103d20 72 6e 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 7e 5b 5c 5c rn.=.preg_replace_callback('~[\\
103d40 5c 5c 5d 2a 5c 5c 2e 7e 27 2c 20 24 72 65 70 6c 61 63 65 2c 20 24 74 68 69 73 2d 3e 70 61 74 74 \\]*\\.~',.$replace,.$this->patt
103d60 65 72 6e 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 ern);..return.$this;.}.....priva
103d80 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 50 61 74 74 65 72 6e 28 24 70 61 74 74 65 72 te.function.parsePattern($patter
103da0 6e 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 74 61 72 74 46 6c 61 67 20 3d 20 73 65 6c 66 n).{.if.($this->startFlag.=.self
103dc0 3a 3a 53 54 41 52 54 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 ::START_FLAG.===.substr($pattern
103de0 2c 20 30 2c 20 31 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 ,.0,.1)).{.$pattern.=.substr($pa
103e00 74 74 65 72 6e 2c 20 31 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 74 61 72 74 4a 6f ttern,.1);.}..if.($this->startJo
103e20 6b 65 72 20 3d 20 73 65 6c 66 3a 3a 4a 4f 4b 45 52 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 70 61 ker.=.self::JOKER.===.substr($pa
103e40 74 74 65 72 6e 2c 20 30 2c 20 32 29 29 20 7b 0a 24 70 61 74 74 65 72 6e 20 3d 20 73 75 62 73 74 ttern,.0,.2)).{.$pattern.=.subst
103e60 72 28 24 70 61 74 74 65 72 6e 2c 20 32 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e r($pattern,.2);.}..if.($this->en
103e80 64 46 6c 61 67 20 3d 20 28 73 65 6c 66 3a 3a 45 4e 44 5f 46 4c 41 47 20 3d 3d 3d 20 73 75 62 73 dFlag.=.(self::END_FLAG.===.subs
103ea0 74 72 28 24 70 61 74 74 65 72 6e 2c 20 2d 31 29 20 26 26 20 73 65 6c 66 3a 3a 45 53 43 41 50 49 tr($pattern,.-1).&&.self::ESCAPI
103ec0 4e 47 20 21 3d 3d 20 73 75 62 73 74 72 28 24 70 61 74 74 65 72 6e 2c 20 2d 32 2c 20 2d 31 29 29 NG.!==.substr($pattern,.-2,.-1))
103ee0 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 20 ).{.$pattern.=.substr($pattern,.
103f00 30 2c 20 2d 31 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 64 4a 6f 6b 65 72 20 3d 0,.-1);.}..if.($this->endJoker.=
103f20 20 28 73 65 6c 66 3a 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 .(self::JOKER.===.substr($patter
103f40 6e 2c 20 2d 32 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 n,.-2).&&.self::ESCAPING.!==.sub
103f60 73 74 72 28 24 70 61 74 74 65 72 6e 2c 20 2d 33 2c 20 2d 32 29 29 29 20 7b 0a 24 70 61 74 74 65 str($pattern,.-3,.-2))).{.$patte
103f80 72 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 32 29 3b 0a 7d 0a rn.=.substr($pattern,.0,.-2);.}.
103fa0 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 3b 0a 7d 0a 7d 0a .$this->pattern.=.$pattern;.}.}.
103fc0 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
103fe0 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 69 6f 6e 3b 0a 0a y\Component\Finder\Expression;..
104000 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
104020 45 5f 5f 2e 27 5c 56 61 6c 75 65 49 6e 74 65 72 66 61 63 65 20 69 6e 74 65 72 66 61 63 65 20 69 E__.'\ValueInterface.interface.i
104040 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 61 s.deprecated.since.version.2.8.a
104060 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 55 nd.will.be.removed.in.3.0.',.E_U
104080 53 45 52 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 56 SER_DEPRECATED);.....interface.V
1040a0 61 6c 75 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 alueInterface.{......public.func
1040c0 74 69 6f 6e 20 72 65 6e 64 65 72 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 tion.render();.......public.func
1040e0 74 69 6f 6e 20 72 65 6e 64 65 72 50 61 74 74 65 72 6e 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c tion.renderPattern();.......publ
104100 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 3b 0a 0a ic.function.isCaseSensitive();..
104120 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 29 3b 0a .....public.function.getType();.
104140 0a 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 28 24 65 ......public.function.prepend($e
104160 78 70 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 61 70 70 65 xpr);.......public.function.appe
104180 6e 64 28 24 65 78 70 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 nd($expr);.}.<?php...........nam
1041a0 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 3b espace.Symfony\Component\Finder;
1041c0 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 72 5c 41 ..use.Symfony\Component\Finder\A
1041e0 64 61 70 74 65 72 5c 41 64 61 70 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d dapter\AdapterInterface;.use.Sym
104200 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 5c 47 6e fony\Component\Finder\Adapter\Gn
104220 75 46 69 6e 64 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 uFindAdapter;.use.Symfony\Compon
104240 65 6e 74 5c 46 69 6e 64 65 72 5c 41 64 61 70 74 65 72 5c 42 73 64 46 69 6e 64 41 64 61 70 74 65 ent\Finder\Adapter\BsdFindAdapte
104260 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\
104280 41 64 61 70 74 65 72 5c 50 68 70 41 64 61 70 74 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c Adapter\PhpAdapter;.use.Symfony\
1042a0 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 5c 44 61 74 65 Component\Finder\Comparator\Date
1042c0 43 6f 6d 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 Comparator;.use.Symfony\Componen
1042e0 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 70 61 72 t\Finder\Comparator\NumberCompar
104300 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 69 6e 64 ator;.use.Symfony\Component\Find
104320 65 72 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 61 63 65 3b er\Exception\ExceptionInterface;
104340 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 49 74 .use.Symfony\Component\Finder\It
104360 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 6f 72 3b 0a 75 73 65 erator\CustomFilterIterator;.use
104380 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
1043a0 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 72 3b 0a 75 73 65 20 or\DateRangeFilterIterator;.use.
1043c0 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 6f Symfony\Component\Finder\Iterato
1043e0 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 3b 0a 75 73 65 20 r\DepthRangeFilterIterator;.use.
104400 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 6f Symfony\Component\Finder\Iterato
104420 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 61 74 6f 72 r\ExcludeDirectoryFilterIterator
104440 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 49 ;.use.Symfony\Component\Finder\I
104460 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 65 72 61 74 6f terator\FilecontentFilterIterato
104480 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\
1044a0 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 6e 61 6d 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3b Iterator\FilenameFilterIterator;
1044c0 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 49 74 .use.Symfony\Component\Finder\It
1044e0 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 3b 0a erator\SizeRangeFilterIterator;.
104500 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 49 74 65 use.Symfony\Component\Finder\Ite
104520 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a rator\SortableIterator;.........
104540 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6e 64 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 ......class.Finder.implements.\I
104560 74 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 2c 20 5c 43 6f 75 6e 74 61 62 6c 65 0a 7b 0a 63 teratorAggregate,.\Countable.{.c
104580 6f 6e 73 74 20 49 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 20 3d 20 31 3b 0a 63 6f 6e 73 74 onst.IGNORE_VCS_FILES.=.1;.const
1045a0 20 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 20 3d 20 32 3b 0a 0a 70 72 69 76 61 74 65 20 .IGNORE_DOT_FILES.=.2;..private.
1045c0 24 6d 6f 64 65 20 3d 20 30 3b 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 73 20 3d 20 61 72 72 61 $mode.=.0;.private.$names.=.arra
1045e0 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 6e 6f 74 4e 61 6d 65 73 20 3d 20 61 72 72 61 79 28 29 y();.private.$notNames.=.array()
104600 3b 0a 70 72 69 76 61 74 65 20 24 65 78 63 6c 75 64 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 ;.private.$exclude.=.array();.pr
104620 69 76 61 74 65 20 24 66 69 6c 74 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 ivate.$filters.=.array();.privat
104640 65 20 24 64 65 70 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 73 69 e.$depths.=.array();.private.$si
104660 7a 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 66 6f 6c 6c 6f 77 4c 69 zes.=.array();.private.$followLi
104680 6e 6b 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 73 6f 72 74 20 3d 20 66 61 6c nks.=.false;.private.$sort.=.fal
1046a0 73 65 3b 0a 70 72 69 76 61 74 65 20 24 69 67 6e 6f 72 65 20 3d 20 30 3b 0a 70 72 69 76 61 74 65 se;.private.$ignore.=.0;.private
1046c0 20 24 64 69 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 64 61 74 65 73 .$dirs.=.array();.private.$dates
1046e0 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 69 74 65 72 61 74 6f 72 73 20 3d .=.array();.private.$iterators.=
104700 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 74 61 69 6e 73 20 3d 20 61 72 .array();.private.$contains.=.ar
104720 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 6e 6f 74 43 6f 6e 74 61 69 6e 73 20 3d 20 61 72 ray();.private.$notContains.=.ar
104740 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 61 64 61 70 74 65 72 73 20 3d 20 6e 75 6c 6c 3b ray();.private.$adapters.=.null;
104760 0a 70 72 69 76 61 74 65 20 24 70 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 .private.$paths.=.array();.priva
104780 74 65 20 24 6e 6f 74 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 te.$notPaths.=.array();.private.
1047a0 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 3b 0a 0a $ignoreUnreadableDirs.=.false;..
1047c0 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 76 63 73 50 61 74 74 65 72 6e 73 20 3d 20 61 72 private.static.$vcsPatterns.=.ar
1047e0 72 61 79 28 27 2e 73 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 ray('.svn',.'_svn',.'CVS',.'_dar
104800 63 73 27 2c 20 27 2e 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 cs',.'.arch-params',.'.monotone'
104820 2c 20 27 2e 62 7a 72 27 2c 20 27 2e 67 69 74 27 2c 20 27 2e 68 67 27 29 3b 0a 0a 0a 0a 0a 70 75 ,.'.bzr',.'.git',.'.hg');.....pu
104840 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 74 blic.function.__construct().{.$t
104860 68 69 73 2d 3e 69 67 6e 6f 72 65 20 3d 20 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 56 43 53 his->ignore.=.static::IGNORE_VCS
104880 5f 46 49 4c 45 53 20 7c 20 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 _FILES.|.static::IGNORE_DOT_FILE
1048a0 53 3b 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 63 74 69 6f S;.}.......public.static.functio
1048c0 6e 20 63 72 65 61 74 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 74 61 74 69 63 28 29 n.create().{.return.new.static()
1048e0 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
104900 64 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 61 70 ddAdapter(AdapterInterface.$adap
104920 74 65 72 2c 20 24 70 72 69 6f 72 69 74 79 20 3d 20 30 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 ter,.$priority.=.0).{.@trigger_e
104940 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.
104960 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.
104980 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_
1049a0 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
1049c0 66 61 75 6c 74 41 64 61 70 74 65 72 73 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 faultAdapters();..$this->adapter
1049e0 73 5b 24 61 64 61 70 74 65 72 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 61 72 72 61 79 28 0a s[$adapter->getName()].=.array(.
104a00 27 61 64 61 70 74 65 72 27 20 3d 3e 20 24 61 64 61 70 74 65 72 2c 0a 27 70 72 69 6f 72 69 74 79 'adapter'.=>.$adapter,.'priority
104a20 27 20 3d 3e 20 24 70 72 69 6f 72 69 74 79 2c 0a 27 73 65 6c 65 63 74 65 64 27 20 3d 3e 20 66 61 '.=>.$priority,.'selected'.=>.fa
104a40 6c 73 65 2c 0a 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 lse,.);..return.$this->sortAdapt
104a60 65 72 73 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 69 6f 6e ers();.}.........public.function
104a80 20 75 73 65 42 65 73 74 41 64 61 70 74 65 72 28 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 .useBestAdapter().{.@trigger_err
104aa0 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
104ac0 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
104ae0 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
104b00 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 66 61 ER_DEPRECATED);..$this->initDefa
104b20 75 6c 74 41 64 61 70 74 65 72 73 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 73 65 74 41 64 61 70 ultAdapters();..$this->resetAdap
104b40 74 65 72 53 65 6c 65 63 74 69 6f 6e 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 terSelection();..return.$this->s
104b60 6f 72 74 41 64 61 70 74 65 72 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 ortAdapters();.}.............pub
104b80 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 64 61 70 74 65 72 28 24 6e 61 6d 65 29 0a 7b lic.function.setAdapter($name).{
104ba0 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 4f 44 5f .@trigger_error('The.'.__METHOD_
104bc0 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 65 20 76 _.'.method.is.deprecated.since.v
104be0 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
104c00 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 24 74 n.3.0.',.E_USER_DEPRECATED);..$t
104c20 68 69 73 2d 3e 69 6e 69 74 44 65 66 61 75 6c 74 41 64 61 70 74 65 72 73 28 29 3b 0a 0a 69 66 20 his->initDefaultAdapters();..if.
104c40 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 5b 24 6e 61 6d 65 5d 29 29 (!isset($this->adapters[$name]))
104c60 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
104c80 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 41 64 61 70 74 65 72 20 22 25 73 22 20 64 6f 65 eption(sprintf('Adapter."%s".doe
104ca0 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 74 68 69 73 s.not.exist.',.$name));.}..$this
104cc0 2d 3e 72 65 73 65 74 41 64 61 70 74 65 72 53 65 6c 65 63 74 69 6f 6e 28 29 3b 0a 24 74 68 69 73 ->resetAdapterSelection();.$this
104ce0 2d 3e 61 64 61 70 74 65 72 73 5b 24 6e 61 6d 65 5d 5b 27 73 65 6c 65 63 74 65 64 27 5d 20 3d 20 ->adapters[$name]['selected'].=.
104d00 74 72 75 65 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 true;..return.$this->sortAdapter
104d20 73 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 69 6f 6e 20 72 s();.}.........public.function.r
104d40 65 6d 6f 76 65 41 64 61 70 74 65 72 73 28 29 0a 7b 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 emoveAdapters().{.@trigger_error
104d60 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
104d80 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 20 eprecated.since.version.2.8.and.
104da0 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
104dc0 5f 44 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 20 3d _DEPRECATED);..$this->adapters.=
104de0 20 61 72 72 61 79 28 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 .array();..return.$this;.}......
104e00 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 64 61 70 74 65 72 73 28 29 ...public.function.getAdapters()
104e20 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 4f .{.@trigger_error('The.'.__METHO
104e40 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 65 D__.'.method.is.deprecated.since
104e60 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 64 .version.2.8.and.will.be.removed
104e80 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);..
104ea0 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 28 29 3b 0a 0a 72 $this->initDefaultAdapters();..r
104ec0 65 74 75 72 6e 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 61 72 72 61 79 5f 6d 61 70 28 66 75 6e eturn.array_values(array_map(fun
104ee0 63 74 69 6f 6e 20 28 61 72 72 61 79 20 24 61 64 61 70 74 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 ction.(array.$adapter).{.return.
104f00 24 61 64 61 70 74 65 72 5b 27 61 64 61 70 74 65 72 27 5d 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 61 $adapter['adapter'];.},.$this->a
104f20 64 61 70 74 65 72 73 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 dapters));.}.......public.functi
104f40 6f 6e 20 64 69 72 65 63 74 6f 72 69 65 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d on.directories().{.$this->mode.=
104f60 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 72 61 74 6f 72 .Iterator\FileTypeFilterIterator
104f80 3a 3a 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 ::ONLY_DIRECTORIES;..return.$thi
104fa0 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 66 69 6c 65 73 s;.}.......public.function.files
104fc0 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 69 6c 65 ().{.$this->mode.=.Iterator\File
104fe0 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 3b 0a TypeFilterIterator::ONLY_FILES;.
105000 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 0a 0a .return.$this;.}................
105020 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 70 74 68 28 24 6c 65 76 65 6c 29 0a 7b .public.function.depth($level).{
105040 0a 24 74 68 69 73 2d 3e 64 65 70 74 68 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 70 61 72 61 74 6f .$this->depths[].=.new.Comparato
105060 72 5c 4e 75 6d 62 65 72 43 6f 6d 70 61 72 61 74 6f 72 28 24 6c 65 76 65 6c 29 3b 0a 0a 72 65 74 r\NumberComparator($level);..ret
105080 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 0a 0a 0a urn.$this;.}....................
1050a0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 61 74 65 28 24 64 61 74 65 29 0a 7b 0a 24 74 public.function.date($date).{.$t
1050c0 68 69 73 2d 3e 64 61 74 65 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 70 61 72 61 74 6f 72 5c 44 61 his->dates[].=.new.Comparator\Da
1050e0 74 65 43 6f 6d 70 61 72 61 74 6f 72 28 24 64 61 74 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 teComparator($date);..return.$th
105100 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
105120 63 74 69 6f 6e 20 6e 61 6d 65 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 61 ction.name($pattern).{.$this->na
105140 6d 65 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 mes[].=.$pattern;..return.$this;
105160 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 6e 6f 74 .}...........public.function.not
105180 4e 61 6d 65 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 Name($pattern).{.$this->notNames
1051a0 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 0a [].=.$pattern;..return.$this;.}.
1051c0 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 63 ...............public.function.c
1051e0 6f 6e 74 61 69 6e 73 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 61 ontains($pattern).{.$this->conta
105200 69 6e 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 ins[].=.$pattern;..return.$this;
105220 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
105240 6e 20 6e 6f 74 43 6f 6e 74 61 69 6e 73 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 2d n.notContains($pattern).{.$this-
105260 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 5b 5d 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 0a 72 65 74 75 >notContains[].=.$pattern;..retu
105280 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 0a 70 75 62 rn.$this;.}..................pub
1052a0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 74 68 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 lic.function.path($pattern).{.$t
1052c0 68 69 73 2d 3e 70 61 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 his->paths[].=.$pattern;..return
1052e0 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 0a 70 75 62 6c 69 .$this;.}..................publi
105300 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 50 61 74 68 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 c.function.notPath($pattern).{.$
105320 74 68 69 73 2d 3e 6e 6f 74 50 61 74 68 73 5b 5d 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 0a 72 65 this->notPaths[].=.$pattern;..re
105340 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 70 75 62 turn.$this;.}................pub
105360 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 69 7a 65 28 24 73 69 7a 65 29 0a 7b 0a 24 74 68 69 73 lic.function.size($size).{.$this
105380 2d 3e 73 69 7a 65 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 ->sizes[].=.new.Comparator\Numbe
1053a0 72 43 6f 6d 70 61 72 61 74 6f 72 28 24 73 69 7a 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 rComparator($size);..return.$thi
1053c0 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 65 s;.}...........public.function.e
1053e0 78 63 6c 75 64 65 28 24 64 69 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 20 3d xclude($dirs).{.$this->exclude.=
105400 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 2c 20 28 61 72 .array_merge($this->exclude,.(ar
105420 72 61 79 29 20 24 64 69 72 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a ray).$dirs);..return.$this;.}...
105440 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 67 6e 6f 72 65 44 6f ........public.function.ignoreDo
105460 74 46 69 6c 65 73 28 24 69 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 29 0a 7b 0a 69 66 20 28 24 69 tFiles($ignoreDotFiles).{.if.($i
105480 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 20 7c gnoreDotFiles).{.$this->ignore.|
1054a0 3d 20 73 74 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 20 65 6c =.static::IGNORE_DOT_FILES;.}.el
1054c0 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 20 26 3d 20 7e 73 74 61 74 69 63 3a 3a 49 se.{.$this->ignore.&=.~static::I
1054e0 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 GNORE_DOT_FILES;.}..return.$this
105500 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 69 67 ;.}...........public.function.ig
105520 6e 6f 72 65 56 43 53 28 24 69 67 6e 6f 72 65 56 43 53 29 0a 7b 0a 69 66 20 28 24 69 67 6e 6f 72 noreVCS($ignoreVCS).{.if.($ignor
105540 65 56 43 53 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 eVCS).{.$this->ignore.|=.static:
105560 3a 49 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 :IGNORE_VCS_FILES;.}.else.{.$thi
105580 73 2d 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 56 43 53 s->ignore.&=.~static::IGNORE_VCS
1055a0 5f 46 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 _FILES;.}..return.$this;.}......
1055c0 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 61 64 64 56 43 53 ...public.static.function.addVCS
1055e0 50 61 74 74 65 72 6e 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 28 61 72 Pattern($pattern).{.foreach.((ar
105600 72 61 79 29 20 24 70 61 74 74 65 72 6e 20 61 73 20 24 70 29 20 7b 0a 73 65 6c 66 3a 3a 24 76 63 ray).$pattern.as.$p).{.self::$vc
105620 73 50 61 74 74 65 72 6e 73 5b 5d 20 3d 20 24 70 3b 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 76 63 73 50 sPatterns[].=.$p;.}..self::$vcsP
105640 61 74 74 65 72 6e 73 20 3d 20 61 72 72 61 79 5f 75 6e 69 71 75 65 28 73 65 6c 66 3a 3a 24 76 63 atterns.=.array_unique(self::$vc
105660 73 50 61 74 74 65 72 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c sPatterns);.}...............publ
105680 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 28 5c 43 6c 6f 73 75 72 65 20 24 63 6c 6f 73 75 ic.function.sort(\Closure.$closu
1056a0 72 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 24 63 6c 6f 73 75 72 65 3b 0a 0a 72 re).{.$this->sort.=.$closure;..r
1056c0 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 6c 69 63 20 eturn.$this;.}...........public.
1056e0 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 42 79 4e 61 6d 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 function.sortByName().{.$this->s
105700 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 3a ort.=.Iterator\SortableIterator:
105720 3a 53 4f 52 54 5f 42 59 5f 4e 41 4d 45 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a :SORT_BY_NAME;..return.$this;.}.
105740 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 72 74 42 79 ..........public.function.sortBy
105760 54 79 70 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 74 6f 72 5c Type().{.$this->sort.=.Iterator\
105780 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 54 59 50 45 3b 0a SortableIterator::SORT_BY_TYPE;.
1057a0 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 62 .return.$this;.}.............pub
1057c0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 42 79 41 63 63 65 73 73 65 64 54 69 6d 65 28 lic.function.sortByAccessedTime(
1057e0 29 0a 7b 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 ).{.$this->sort.=.Iterator\Sorta
105800 62 6c 65 49 74 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 bleIterator::SORT_BY_ACCESSED_TI
105820 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 0a ME;..return.$this;.}............
105840 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 42 79 43 68 61 6e 67 65 64 ...public.function.sortByChanged
105860 54 69 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 74 6f 72 5c Time().{.$this->sort.=.Iterator\
105880 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 43 48 41 4e 47 45 SortableIterator::SORT_BY_CHANGE
1058a0 44 5f 54 49 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 D_TIME;..return.$this;.}........
1058c0 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 42 79 4d 6f 64 69 66 .....public.function.sortByModif
1058e0 69 65 64 54 69 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 74 iedTime().{.$this->sort.=.Iterat
105900 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 4d 4f 44 or\SortableIterator::SORT_BY_MOD
105920 49 46 49 45 44 5f 54 49 4d 45 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a IFIED_TIME;..return.$this;.}....
105940 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 69 6c 74 65 72 ..........public.function.filter
105960 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 2d 3e 66 69 6c (\Closure.$closure).{.$this->fil
105980 74 65 72 73 5b 5d 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 ters[].=.$closure;..return.$this
1059a0 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 66 6f 6c 6c 6f 77 ;.}.......public.function.follow
1059c0 4c 69 6e 6b 73 28 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 74 Links().{.$this->followLinks.=.t
1059e0 72 75 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 0a rue;..return.$this;.}...........
105a00 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 61 64 61 62 6c 65 public.function.ignoreUnreadable
105a20 44 69 72 73 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 Dirs($ignore.=.true).{.$this->ig
105a40 6e 6f 72 65 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 noreUnreadableDirs.=.(bool).$ign
105a60 6f 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 0a 0a 0a 0a ore;..return.$this;.}...........
105a80 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 28 24 64 69 72 73 29 0a 7b 0a 24 72 65 73 public.function.in($dirs).{.$res
105aa0 6f 6c 76 65 64 44 69 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 28 olvedDirs.=.array();..foreach.((
105ac0 61 72 72 61 79 29 20 24 64 69 72 73 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 69 73 5f 64 array).$dirs.as.$dir).{.if.(is_d
105ae0 69 72 28 24 64 69 72 29 29 20 7b 0a 24 72 65 73 6f 6c 76 65 64 44 69 72 73 5b 5d 20 3d 20 24 64 ir($dir)).{.$resolvedDirs[].=.$d
105b00 69 72 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 67 6c 6f 62 20 3d 20 67 6c 6f 62 28 24 64 69 72 2c ir;.}.elseif.($glob.=.glob($dir,
105b20 20 28 64 65 66 69 6e 65 64 28 27 47 4c 4f 42 5f 42 52 41 43 45 27 29 20 3f 20 47 4c 4f 42 5f 42 .(defined('GLOB_BRACE').?.GLOB_B
105b40 52 41 43 45 20 3a 20 30 29 20 7c 20 47 4c 4f 42 5f 4f 4e 4c 59 44 49 52 29 29 20 7b 0a 24 72 65 RACE.:.0).|.GLOB_ONLYDIR)).{.$re
105b60 73 6f 6c 76 65 64 44 69 72 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 6f 6c 76 solvedDirs.=.array_merge($resolv
105b80 65 64 44 69 72 73 2c 20 24 67 6c 6f 62 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e edDirs,.$glob);.}.else.{.throw.n
105ba0 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 73 70 72 ew.\InvalidArgumentException(spr
105bc0 69 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 64 69 72 65 63 74 6f 72 79 20 64 6f 65 73 20 6e 6f intf('The."%s".directory.does.no
105be0 74 20 65 78 69 73 74 2e 27 2c 20 24 64 69 72 29 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 t.exist.',.$dir));.}.}..$this->d
105c00 69 72 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 64 69 72 73 2c 20 24 irs.=.array_merge($this->dirs,.$
105c20 72 65 73 6f 6c 76 65 64 44 69 72 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a resolvedDirs);..return.$this;.}.
105c40 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 49 74 65 ..........public.function.getIte
105c60 72 61 74 6f 72 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 rator().{.if.(0.===.count($this-
105c80 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 2d 3e 69 74 65 >dirs).&&.0.===.count($this->ite
105ca0 72 61 74 6f 72 73 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 rators)).{.throw.new.\LogicExcep
105cc0 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 63 61 6c 6c 20 6f 6e 65 20 6f 66 20 69 6e 28 29 20 tion('You.must.call.one.of.in().
105ce0 6f 72 20 61 70 70 65 6e 64 28 29 20 6d 65 74 68 6f 64 73 20 62 65 66 6f 72 65 20 69 74 65 72 61 or.append().methods.before.itera
105d00 74 69 6e 67 20 6f 76 65 72 20 61 20 46 69 6e 64 65 72 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 31 20 ting.over.a.Finder.');.}..if.(1.
105d20 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 20 3d 3d 3d 20 ===.count($this->dirs).&&.0.===.
105d40 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 72 65 74 75 72 count($this->iterators)).{.retur
105d60 6e 20 24 74 68 69 73 2d 3e 73 65 61 72 63 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 74 68 69 73 n.$this->searchInDirectory($this
105d80 2d 3e 64 69 72 73 5b 30 5d 29 3b 0a 7d 0a 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 5c ->dirs[0]);.}..$iterator.=.new.\
105da0 41 70 70 65 6e 64 49 74 65 72 61 74 6f 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 AppendIterator();.foreach.($this
105dc0 2d 3e 64 69 72 73 20 61 73 20 24 64 69 72 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 2d 3e 61 70 70 ->dirs.as.$dir).{.$iterator->app
105de0 65 6e 64 28 24 74 68 69 73 2d 3e 73 65 61 72 63 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 64 69 end($this->searchInDirectory($di
105e00 72 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 r));.}..foreach.($this->iterator
105e20 73 20 61 73 20 24 69 74 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 2d 3e 61 70 70 65 6e 64 28 24 69 s.as.$it).{.$iterator->append($i
105e40 74 29 3b 0a 7d 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 0a t);.}..return.$iterator;.}......
105e60 0a 0a 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 69 .......public.function.append($i
105e80 74 65 72 61 74 6f 72 29 0a 7b 0a 69 66 20 28 24 69 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 terator).{.if.($iterator.instanc
105ea0 65 6f 66 20 5c 49 74 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 29 20 7b 0a 24 74 68 69 73 2d eof.\IteratorAggregate).{.$this-
105ec0 3e 69 74 65 72 61 74 6f 72 73 5b 5d 20 3d 20 24 69 74 65 72 61 74 6f 72 2d 3e 67 65 74 49 74 65 >iterators[].=.$iterator->getIte
105ee0 72 61 74 6f 72 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 74 65 72 61 74 6f 72 20 69 6e 73 rator();.}.elseif.($iterator.ins
105f00 74 61 6e 63 65 6f 66 20 5c 49 74 65 72 61 74 6f 72 29 20 7b 0a 24 74 68 69 73 2d 3e 69 74 65 72 tanceof.\Iterator).{.$this->iter
105f20 61 74 6f 72 73 5b 5d 20 3d 20 24 69 74 65 72 61 74 6f 72 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 ators[].=.$iterator;.}.elseif.($
105f40 69 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 54 72 61 76 65 72 73 61 62 6c 65 iterator.instanceof.\Traversable
105f60 20 7c 7c 20 69 73 5f 61 72 72 61 79 28 24 69 74 65 72 61 74 6f 72 29 29 20 7b 0a 24 69 74 20 3d .||.is_array($iterator)).{.$it.=
105f80 20 6e 65 77 20 5c 41 72 72 61 79 49 74 65 72 61 74 6f 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 .new.\ArrayIterator();.foreach.(
105fa0 24 69 74 65 72 61 74 6f 72 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 24 69 74 2d 3e 61 70 70 65 6e $iterator.as.$file).{.$it->appen
105fc0 64 28 24 66 69 6c 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 20 d($file.instanceof.\SplFileInfo.
105fe0 3f 20 24 66 69 6c 65 20 3a 20 6e 65 77 20 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 28 24 66 69 6c 65 ?.$file.:.new.\SplFileInfo($file
106000 29 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 73 5b 5d 20 3d 20 24 69 74 3b 0a ));.}.$this->iterators[].=.$it;.
106020 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 72 67 75 6d }.else.{.throw.new.\InvalidArgum
106040 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 46 69 6e 64 65 72 3a 3a 61 70 70 65 6e 64 28 29 20 6d entException('Finder::append().m
106060 65 74 68 6f 64 20 77 72 6f 6e 67 20 61 72 67 75 6d 65 6e 74 20 74 79 70 65 2e 27 29 3b 0a 7d 0a ethod.wrong.argument.type.');.}.
106080 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
1060a0 6e 63 74 69 6f 6e 20 63 6f 75 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 74 65 72 61 74 6f 72 nction.count().{.return.iterator
1060c0 5f 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 28 29 29 3b 0a 7d 0a _count($this->getIterator());.}.
1060e0 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 41 64 61 70 74 65 72 ....private.function.sortAdapter
106100 73 28 29 0a 7b 0a 75 61 73 6f 72 74 28 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 2c 20 66 75 s().{.uasort($this->adapters,.fu
106120 6e 63 74 69 6f 6e 20 28 61 72 72 61 79 20 24 61 2c 20 61 72 72 61 79 20 24 62 29 20 7b 0a 69 66 nction.(array.$a,.array.$b).{.if
106140 20 28 24 61 5b 27 73 65 6c 65 63 74 65 64 27 5d 20 7c 7c 20 24 62 5b 27 73 65 6c 65 63 74 65 64 .($a['selected'].||.$b['selected
106160 27 5d 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 5b 27 73 65 6c 65 63 74 65 64 27 5d 20 3f 20 2d 31 ']).{.return.$a['selected'].?.-1
106180 20 3a 20 31 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 5b 27 70 72 69 6f 72 69 74 79 27 5d 20 3e .:.1;.}..return.$a['priority'].>
1061a0 20 24 62 5b 27 70 72 69 6f 72 69 74 79 27 5d 20 3f 20 2d 31 20 3a 20 31 3b 0a 7d 29 3b 0a 0a 72 .$b['priority'].?.-1.:.1;.});..r
1061c0 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e eturn.$this;.}.......private.fun
1061e0 63 74 69 6f 6e 20 73 65 61 72 63 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 29 0a 7b 0a ction.searchInDirectory($dir).{.
106200 69 66 20 28 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 3d 3d 3d if.(static::IGNORE_VCS_FILES.===
106220 20 28 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 26 20 24 74 68 .(static::IGNORE_VCS_FILES.&.$th
106240 69 73 2d 3e 69 67 6e 6f 72 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 20 3d 20 is->ignore)).{.$this->exclude.=.
106260 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 2c 20 73 65 6c 66 array_merge($this->exclude,.self
106280 3a 3a 24 76 63 73 50 61 74 74 65 72 6e 73 29 3b 0a 7d 0a 0a 69 66 20 28 73 74 61 74 69 63 3a 3a ::$vcsPatterns);.}..if.(static::
1062a0 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 20 3d 3d 3d 20 28 73 74 61 74 69 63 3a 3a 49 47 IGNORE_DOT_FILES.===.(static::IG
1062c0 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 20 26 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 29 29 NORE_DOT_FILES.&.$this->ignore))
1062e0 20 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 50 61 74 68 73 5b 5d 20 3d 20 27 23 28 5e 7c 2f 29 5c 2e .{.$this->notPaths[].=.'#(^|/)\.
106300 2e 2b 28 2f 7c 24 29 23 27 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 .+(/|$)#';.}..if.($this->adapter
106320 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 20 61 73 s).{.foreach.($this->adapters.as
106340 20 24 61 64 61 70 74 65 72 29 20 7b 0a 69 66 20 28 24 61 64 61 70 74 65 72 5b 27 61 64 61 70 74 .$adapter).{.if.($adapter['adapt
106360 65 72 27 5d 2d 3e 69 73 53 75 70 70 6f 72 74 65 64 28 29 29 20 7b 0a 74 72 79 20 7b 0a 72 65 74 er']->isSupported()).{.try.{.ret
106380 75 72 6e 20 24 74 68 69 73 0a 2d 3e 62 75 69 6c 64 41 64 61 70 74 65 72 28 24 61 64 61 70 74 65 urn.$this.->buildAdapter($adapte
1063a0 72 5b 27 61 64 61 70 74 65 72 27 5d 29 0a 2d 3e 73 65 61 72 63 68 49 6e 44 69 72 65 63 74 6f 72 r['adapter']).->searchInDirector
1063c0 79 28 24 64 69 72 29 3b 0a 7d 20 63 61 74 63 68 20 28 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 y($dir);.}.catch.(ExceptionInter
1063e0 66 61 63 65 20 24 65 29 20 7b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 24 6d 69 6e 44 65 70 74 68 20 3d 20 face.$e).{.}.}.}.}..$minDepth.=.
106400 30 3b 0a 24 6d 61 78 44 65 70 74 68 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a 0a 66 6f 72 0;.$maxDepth.=.PHP_INT_MAX;..for
106420 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 65 70 74 68 73 20 61 73 20 24 63 6f 6d 70 61 72 61 74 each.($this->depths.as.$comparat
106440 6f 72 29 20 7b 0a 73 77 69 74 63 68 20 28 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 4f 70 or).{.switch.($comparator->getOp
106460 65 72 61 74 6f 72 28 29 29 20 7b 0a 63 61 73 65 20 27 3e 27 3a 0a 24 6d 69 6e 44 65 70 74 68 20 erator()).{.case.'>':.$minDepth.
106480 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 20 2b 20 31 3b 0a =.$comparator->getTarget().+.1;.
1064a0 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3e 3d 27 3a 0a 24 6d 69 6e 44 65 70 74 68 20 3d 20 24 63 break;.case.'>=':.$minDepth.=.$c
1064c0 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 54 61 72 67 65 74 28 29 3b 0a 62 72 65 61 6b 3b 0a 63 omparator->getTarget();.break;.c
1064e0 61 73 65 20 27 3c 27 3a 0a 24 6d 61 78 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 ase.'<':.$maxDepth.=.$comparator
106500 2d 3e 67 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 ->getTarget().-.1;.break;.case.'
106520 3c 3d 27 3a 0a 24 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 65 <=':.$maxDepth.=.$comparator->ge
106540 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 6d 69 6e 44 tTarget();.break;.default:.$minD
106560 65 70 74 68 20 3d 20 24 6d 61 78 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e epth.=.$maxDepth.=.$comparator->
106580 67 65 74 54 61 72 67 65 74 28 29 3b 0a 7d 0a 7d 0a 0a 24 66 6c 61 67 73 20 3d 20 5c 52 65 63 75 getTarget();.}.}..$flags.=.\Recu
1065a0 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 49 50 5f 44 4f 54 rsiveDirectoryIterator::SKIP_DOT
1065c0 53 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 S;..if.($this->followLinks).{.$f
1065e0 6c 61 67 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 lags.|=.\RecursiveDirectoryItera
106600 74 6f 72 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 tor::FOLLOW_SYMLINKS;.}..$iterat
106620 6f 72 20 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 or.=.new.Iterator\RecursiveDirec
106640 74 6f 72 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 toryIterator($dir,.$flags,.$this
106660 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 0a 69 66 20 28 24 74 ->ignoreUnreadableDirs);..if.($t
106680 68 69 73 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 his->exclude).{.$iterator.=.new.
1066a0 49 74 65 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 Iterator\ExcludeDirectoryFilterI
1066c0 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 65 78 63 6c 75 64 terator($iterator,.$this->exclud
1066e0 65 29 3b 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 e);.}..$iterator.=.new.\Recursiv
106700 65 49 74 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 eIteratorIterator($iterator,.\Re
106720 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 53 45 4c 46 5f 46 49 cursiveIteratorIterator::SELF_FI
106740 52 53 54 29 3b 0a 0a 69 66 20 28 24 6d 69 6e 44 65 70 74 68 20 3e 20 30 20 7c 7c 20 24 6d 61 78 RST);..if.($minDepth.>.0.||.$max
106760 44 65 70 74 68 20 3c 20 50 48 50 5f 49 4e 54 5f 4d 41 58 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 Depth.<.PHP_INT_MAX).{.$iterator
106780 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 44 65 70 74 68 52 61 6e 67 65 46 69 6c 74 65 72 .=.new.Iterator\DepthRangeFilter
1067a0 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 6d 69 6e 44 65 70 74 68 2c 20 24 Iterator($iterator,.$minDepth,.$
1067c0 6d 61 78 44 65 70 74 68 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 7b maxDepth);.}..if.($this->mode).{
1067e0 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 46 69 6c 65 54 79 .$iterator.=.new.Iterator\FileTy
106800 70 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 69 peFilterIterator($iterator,.$thi
106820 73 2d 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6e 61 6d 65 73 20 7c 7c s->mode);.}..if.($this->names.||
106840 20 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 .$this->notNames).{.$iterator.=.
106860 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 6e 61 6d 65 46 69 6c 74 65 72 49 74 65 72 61 new.Iterator\FilenameFilterItera
106880 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 73 2c 20 24 74 68 tor($iterator,.$this->names,.$th
1068a0 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 6e is->notNames);.}..if.($this->con
1068c0 74 61 69 6e 73 20 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 20 7b 0a 24 tains.||.$this->notContains).{.$
1068e0 69 74 65 72 61 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 iterator.=.new.Iterator\Filecont
106900 65 6e 74 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 entFilterIterator($iterator,.$th
106920 69 73 2d 3e 63 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 is->contains,.$this->notContains
106940 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 69 7a 65 73 29 20 7b 0a 24 69 74 65 72 61 );.}..if.($this->sizes).{.$itera
106960 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 53 69 7a 65 52 61 6e 67 65 46 69 6c 74 tor.=.new.Iterator\SizeRangeFilt
106980 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 73 69 7a erIterator($iterator,.$this->siz
1069a0 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 61 74 65 73 29 20 7b 0a 24 69 74 65 es);.}..if.($this->dates).{.$ite
1069c0 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 44 61 74 65 52 61 6e 67 65 46 69 rator.=.new.Iterator\DateRangeFi
1069e0 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 64 lterIterator($iterator,.$this->d
106a00 61 74 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 20 7b 0a ates);.}..if.($this->filters).{.
106a20 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 43 75 73 74 6f 6d 46 $iterator.=.new.Iterator\CustomF
106a40 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 69 73 2d 3e ilterIterator($iterator,.$this->
106a60 66 69 6c 74 65 72 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 61 74 68 73 20 7c 7c filters);.}..if.($this->paths.||
106a80 20 24 74 68 69 73 2d 3e 6e 6f 74 50 61 74 68 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 .$this->notPaths).{.$iterator.=.
106aa0 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 50 61 74 68 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 new.Iterator\PathFilterIterator(
106ac0 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 70 61 74 68 73 2c 20 24 74 68 69 73 2d 3e $iterator,.$this->paths,.$this->
106ae0 6e 6f 74 50 61 74 68 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 6f 72 74 29 20 7b notPaths);.}..if.($this->sort).{
106b00 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 72 61 74 .$iteratorAggregate.=.new.Iterat
106b20 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 2c 20 24 or\SortableIterator($iterator,.$
106b40 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 72 61 74 this->sort);.$iterator.=.$iterat
106b60 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 0a 0a 72 orAggregate->getIterator();.}..r
106b80 65 74 75 72 6e 20 24 69 74 65 72 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 eturn.$iterator;.}.......private
106ba0 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 41 64 61 70 74 65 72 28 41 64 61 70 74 65 72 49 6e .function.buildAdapter(AdapterIn
106bc0 74 65 72 66 61 63 65 20 24 61 64 61 70 74 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 24 61 64 61 70 terface.$adapter).{.return.$adap
106be0 74 65 72 0a 2d 3e 73 65 74 46 6f 6c 6c 6f 77 4c 69 6e 6b 73 28 24 74 68 69 73 2d 3e 66 6f 6c 6c ter.->setFollowLinks($this->foll
106c00 6f 77 4c 69 6e 6b 73 29 0a 2d 3e 73 65 74 44 65 70 74 68 73 28 24 74 68 69 73 2d 3e 64 65 70 74 owLinks).->setDepths($this->dept
106c20 68 73 29 0a 2d 3e 73 65 74 4d 6f 64 65 28 24 74 68 69 73 2d 3e 6d 6f 64 65 29 0a 2d 3e 73 65 74 hs).->setMode($this->mode).->set
106c40 45 78 63 6c 75 64 65 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 29 0a 2d 3e 73 65 74 4e 61 6d Exclude($this->exclude).->setNam
106c60 65 73 28 24 74 68 69 73 2d 3e 6e 61 6d 65 73 29 0a 2d 3e 73 65 74 4e 6f 74 4e 61 6d 65 73 28 24 es($this->names).->setNotNames($
106c80 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 29 0a 2d 3e 73 65 74 43 6f 6e 74 61 69 6e 73 28 24 74 this->notNames).->setContains($t
106ca0 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 29 0a 2d 3e 73 65 74 4e 6f 74 43 6f 6e 74 61 69 6e 73 28 his->contains).->setNotContains(
106cc0 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 29 0a 2d 3e 73 65 74 53 69 7a 65 73 28 24 $this->notContains).->setSizes($
106ce0 74 68 69 73 2d 3e 73 69 7a 65 73 29 0a 2d 3e 73 65 74 44 61 74 65 73 28 24 74 68 69 73 2d 3e 64 this->sizes).->setDates($this->d
106d00 61 74 65 73 29 0a 2d 3e 73 65 74 46 69 6c 74 65 72 73 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 ates).->setFilters($this->filter
106d20 73 29 0a 2d 3e 73 65 74 53 6f 72 74 28 24 74 68 69 73 2d 3e 73 6f 72 74 29 0a 2d 3e 73 65 74 50 s).->setSort($this->sort).->setP
106d40 61 74 68 28 24 74 68 69 73 2d 3e 70 61 74 68 73 29 0a 2d 3e 73 65 74 4e 6f 74 50 61 74 68 28 24 ath($this->paths).->setNotPath($
106d60 74 68 69 73 2d 3e 6e 6f 74 50 61 74 68 73 29 0a 2d 3e 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 this->notPaths).->ignoreUnreadab
106d80 6c 65 44 69 72 73 28 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 leDirs($this->ignoreUnreadableDi
106da0 72 73 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 72 65 73 65 rs);.}.....private.function.rese
106dc0 74 41 64 61 70 74 65 72 53 65 6c 65 63 74 69 6f 6e 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 61 tAdapterSelection().{.$this->ada
106de0 70 74 65 72 73 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 61 72 72 61 pters.=.array_map(function.(arra
106e00 79 20 24 70 72 6f 70 65 72 74 69 65 73 29 20 7b 0a 24 70 72 6f 70 65 72 74 69 65 73 5b 27 73 65 y.$properties).{.$properties['se
106e20 6c 65 63 74 65 64 27 5d 20 3d 20 66 61 6c 73 65 3b 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 70 65 lected'].=.false;..return.$prope
106e40 72 74 69 65 73 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 61 64 61 70 74 65 72 73 29 3b 0a 7d 0a 0a 70 rties;.},.$this->adapters);.}..p
106e60 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 44 65 66 61 75 6c 74 41 64 61 70 74 rivate.function.initDefaultAdapt
106e80 65 72 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 61 64 61 70 ers().{.if.(null.===.$this->adap
106ea0 74 65 72 73 29 20 7b 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 ters).{.$this->adapters.=.array(
106ec0 29 3b 0a 24 74 68 69 73 0a 2d 3e 61 64 64 41 64 61 70 74 65 72 28 6e 65 77 20 47 6e 75 46 69 6e );.$this.->addAdapter(new.GnuFin
106ee0 64 41 64 61 70 74 65 72 28 29 29 0a 2d 3e 61 64 64 41 64 61 70 74 65 72 28 6e 65 77 20 42 73 64 dAdapter()).->addAdapter(new.Bsd
106f00 46 69 6e 64 41 64 61 70 74 65 72 28 29 29 0a 2d 3e 61 64 64 41 64 61 70 74 65 72 28 6e 65 77 20 FindAdapter()).->addAdapter(new.
106f20 50 68 70 41 64 61 70 74 65 72 28 29 2c 20 2d 35 30 29 0a 2d 3e 73 65 74 41 64 61 70 74 65 72 28 PhpAdapter(),.-50).->setAdapter(
106f40 27 70 68 70 27 29 0a 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 'php').;.}.}.}.<?php...........n
106f60 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
106f80 72 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 63 6c 61 73 73 20 r;........................class.
106fa0 47 6c 6f 62 0a 7b 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 Glob.{...........public.static.f
106fc0 75 6e 63 74 69 6f 6e 20 74 6f 52 65 67 65 78 28 24 67 6c 6f 62 2c 20 24 73 74 72 69 63 74 4c 65 unction.toRegex($glob,.$strictLe
106fe0 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 64 63 61 72 64 adingDot.=.true,.$strictWildcard
107000 53 6c 61 73 68 20 3d 20 74 72 75 65 2c 20 24 64 65 6c 69 6d 69 74 65 72 20 3d 20 27 23 27 29 0a Slash.=.true,.$delimiter.=.'#').
107020 7b 0a 24 66 69 72 73 74 42 79 74 65 20 3d 20 74 72 75 65 3b 0a 24 65 73 63 61 70 69 6e 67 20 3d {.$firstByte.=.true;.$escaping.=
107040 20 66 61 6c 73 65 3b 0a 24 69 6e 43 75 72 6c 69 65 73 20 3d 20 30 3b 0a 24 72 65 67 65 78 20 3d .false;.$inCurlies.=.0;.$regex.=
107060 20 27 27 3b 0a 24 73 69 7a 65 47 6c 6f 62 20 3d 20 73 74 72 6c 65 6e 28 24 67 6c 6f 62 29 3b 0a .'';.$sizeGlob.=.strlen($glob);.
107080 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 24 69 20 3c 20 24 73 69 7a 65 47 6c 6f 62 3b 20 2b 2b 24 for.($i.=.0;.$i.<.$sizeGlob;.++$
1070a0 69 29 20 7b 0a 24 63 61 72 20 3d 20 24 67 6c 6f 62 5b 24 69 5d 3b 0a 69 66 20 28 24 66 69 72 73 i).{.$car.=.$glob[$i];.if.($firs
1070c0 74 42 79 74 65 29 20 7b 0a 69 66 20 28 24 73 74 72 69 63 74 4c 65 61 64 69 6e 67 44 6f 74 20 26 tByte).{.if.($strictLeadingDot.&
1070e0 26 20 27 2e 27 20 21 3d 3d 20 24 63 61 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 27 28 3f 3d &.'.'.!==.$car).{.$regex..=.'(?=
107100 5b 5e 5c 2e 5d 29 27 3b 0a 7d 0a 0a 24 66 69 72 73 74 42 79 74 65 20 3d 20 66 61 6c 73 65 3b 0a [^\.])';.}..$firstByte.=.false;.
107120 7d 0a 0a 69 66 20 28 27 2f 27 20 3d 3d 3d 20 24 63 61 72 29 20 7b 0a 24 66 69 72 73 74 42 79 74 }..if.('/'.===.$car).{.$firstByt
107140 65 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 27 2e 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c e.=.true;.}..if.('.'.===.$car.||
107160 20 27 28 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 29 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c .'('.===.$car.||.')'.===.$car.||
107180 20 27 7c 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 2b 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c .'|'.===.$car.||.'+'.===.$car.||
1071a0 20 27 5e 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 24 27 20 3d 3d 3d 20 24 63 61 72 29 20 7b .'^'.===.$car.||.'$'.===.$car).{
1071c0 0a 24 72 65 67 65 78 20 2e 3d 20 22 5c 5c 24 63 61 72 22 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 .$regex..=."\\$car";.}.elseif.('
1071e0 2a 27 20 3d 3d 3d 20 24 63 61 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 70 69 *'.===.$car).{.$regex..=.$escapi
107200 6e 67 20 3f 20 27 5c 5c 2a 27 20 3a 20 28 24 73 74 72 69 63 74 57 69 6c 64 63 61 72 64 53 6c 61 ng.?.'\\*'.:.($strictWildcardSla
107220 73 68 20 3f 20 27 5b 5e 2f 5d 2a 27 20 3a 20 27 2e 2a 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 sh.?.'[^/]*'.:.'.*');.}.elseif.(
107240 27 3f 27 20 3d 3d 3d 20 24 63 61 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 70 '?'.===.$car).{.$regex..=.$escap
107260 69 6e 67 20 3f 20 27 5c 5c 3f 27 20 3a 20 28 24 73 74 72 69 63 74 57 69 6c 64 63 61 72 64 53 6c ing.?.'\\?'.:.($strictWildcardSl
107280 61 73 68 20 3f 20 27 5b 5e 2f 5d 27 20 3a 20 27 2e 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 ash.?.'[^/]'.:.'.');.}.elseif.('
1072a0 7b 27 20 3d 3d 3d 20 24 63 61 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 70 69 {'.===.$car).{.$regex..=.$escapi
1072c0 6e 67 20 3f 20 27 5c 5c 7b 27 20 3a 20 27 28 27 3b 0a 69 66 20 28 21 24 65 73 63 61 70 69 6e 67 ng.?.'\\{'.:.'(';.if.(!$escaping
1072e0 29 20 7b 0a 2b 2b 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 7d ).{.++$inCurlies;.}.}.elseif.('}
107300 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
107320 65 78 20 2e 3d 20 24 65 73 63 61 70 69 6e 67 20 3f 20 27 7d 27 20 3a 20 27 29 27 3b 0a 69 66 20 ex..=.$escaping.?.'}'.:.')';.if.
107340 28 21 24 65 73 63 61 70 69 6e 67 29 20 7b 0a 2d 2d 24 69 6e 43 75 72 6c 69 65 73 3b 0a 7d 0a 7d (!$escaping).{.--$inCurlies;.}.}
107360 20 65 6c 73 65 69 66 20 28 27 2c 27 20 3d 3d 3d 20 24 63 61 72 20 26 26 20 24 69 6e 43 75 72 6c .elseif.(','.===.$car.&&.$inCurl
107380 69 65 73 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 2c 27 ies).{.$regex..=.$escaping.?.','
1073a0 20 3a 20 27 7c 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 24 63 61 72 29 .:.'|';.}.elseif.('\\'.===.$car)
1073c0 20 7b 0a 69 66 20 28 24 65 73 63 61 70 69 6e 67 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 27 5c .{.if.($escaping).{.$regex..=.'\
1073e0 5c 5c 5c 27 3b 0a 24 65 73 63 61 70 69 6e 67 20 3d 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 20 \\\';.$escaping.=.false;.}.else.
107400 7b 0a 24 65 73 63 61 70 69 6e 67 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b {.$escaping.=.true;.}..continue;
107420 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 63 61 72 3b 0a 7d 0a 24 65 73 63 .}.else.{.$regex..=.$car;.}.$esc
107440 61 70 69 6e 67 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 65 6c 69 6d 69 aping.=.false;.}..return.$delimi
107460 74 65 72 2e 27 5e 27 2e 24 72 65 67 65 78 2e 27 24 27 2e 24 64 65 6c 69 6d 69 74 65 72 3b 0a 7d ter.'^'.$regex.'$'.$delimiter;.}
107480 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
1074a0 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 3b 0a fony\Component\Finder\Iterator;.
1074c0 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 75 73 74 6f 6d 46 69 6c 74 65 72 49 74 65 72 61 .........class.CustomFilterItera
1074e0 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 7b 0a 70 72 69 tor.extends.FilterIterator.{.pri
107500 76 61 74 65 20 24 66 69 6c 74 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a vate.$filters.=.array();........
107520 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 49 ..public.function.__construct(\I
107540 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 66 69 6c 74 65 72 terator.$iterator,.array.$filter
107560 73 29 0a 7b 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 74 65 s).{.foreach.($filters.as.$filte
107580 72 29 20 7b 0a 69 66 20 28 21 69 73 5f 63 61 6c 6c 61 62 6c 65 28 24 66 69 6c 74 65 72 29 29 20 r).{.if.(!is_callable($filter)).
1075a0 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
1075c0 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 50 48 50 20 63 61 6c 6c 62 61 63 6b 2e 27 29 3b 0a ption('Invalid.PHP.callback.');.
1075e0 7d 0a 7d 0a 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 20 3d 20 24 66 69 6c 74 65 72 73 3b 0a 0a }.}.$this->filters.=.$filters;..
107600 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 6f 72 29 3b 0a parent::__construct($iterator);.
107620 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 63 63 65 70 74 28 29 }.......public.function.accept()
107640 0a 7b 0a 24 66 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 .{.$fileinfo.=.$this->current();
107660 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 20 61 73 20 24 66 69 ..foreach.($this->filters.as.$fi
107680 6c 74 65 72 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 63 61 6c 6c 5f 75 73 65 72 5f lter).{.if.(false.===.call_user_
1076a0 66 75 6e 63 28 24 66 69 6c 74 65 72 2c 20 24 66 69 6c 65 69 6e 66 6f 29 29 20 7b 0a 72 65 74 75 func($filter,.$fileinfo)).{.retu
1076c0 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 0a 7d 0a 7d 0a rn.false;.}.}..return.true;.}.}.
1076e0 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
107700 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 75 73 y\Component\Finder\Iterator;..us
107720 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 6d 70 61 e.Symfony\Component\Finder\Compa
107740 72 61 74 6f 72 5c 44 61 74 65 43 6f 6d 70 61 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 rator\DateComparator;.......clas
107760 73 20 44 61 74 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 s.DateRangeFilterIterator.extend
107780 73 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 63 6f 6d 70 s.FilterIterator.{.private.$comp
1077a0 61 72 61 74 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 arators.=.array();........public
1077c0 20 66 75 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 .function.__construct(\Iterator.
1077e0 24 69 74 65 72 61 74 6f 72 2c 20 61 72 72 61 79 20 24 63 6f 6d 70 61 72 61 74 6f 72 73 29 0a 7b $iterator,.array.$comparators).{
107800 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 61 72 61 74 6f 72 73 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f .$this->comparators.=.$comparato
107820 72 73 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 74 65 72 61 74 rs;..parent::__construct($iterat
107840 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 63 63 or);.}.......public.function.acc
107860 65 70 74 28 29 0a 7b 0a 24 66 69 6c 65 69 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 ept().{.$fileinfo.=.$this->curre
107880 6e 74 28 29 3b 0a 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 69 6e 66 nt();..if.(!file_exists($fileinf
1078a0 6f 2d 3e 67 65 74 52 65 61 6c 50 61 74 68 28 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 o->getRealPath())).{.return.fals
1078c0 65 3b 0a 7d 0a 0a 24 66 69 6c 65 64 61 74 65 20 3d 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 67 65 74 e;.}..$filedate.=.$fileinfo->get
1078e0 4d 54 69 6d 65 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6d 70 61 72 61 MTime();.foreach.($this->compara
107900 74 6f 72 73 20 61 73 20 24 63 6f 6d 70 61 72 65 29 20 7b 0a 69 66 20 28 21 24 63 6f 6d 70 61 72 tors.as.$compare).{.if.(!$compar
107920 65 2d 3e 74 65 73 74 28 24 66 69 6c 65 64 61 74 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c e->test($filedate)).{.return.fal
107940 73 65 3b 0a 7d 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 se;.}.}..return.true;.}.}.<?php.
107960 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
107980 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 0a 0a 63 6c 61 onent\Finder\Iterator;.......cla
1079a0 73 73 20 44 65 70 74 68 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 ss.DepthRangeFilterIterator.exte
1079c0 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 61 74 65 20 24 6d 69 nds.FilterIterator.{.private.$mi
1079e0 6e 44 65 70 74 68 20 3d 20 30 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 nDepth.=.0;.........public.funct
107a00 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 ion.__construct(\RecursiveIterat
107a20 6f 72 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 74 6f 72 2c 20 24 6d 69 6e 44 65 70 74 68 20 orIterator.$iterator,.$minDepth.
107a40 3d 20 30 2c 20 24 6d 61 78 44 65 70 74 68 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 29 0a 7b 0a =.0,.$maxDepth.=.PHP_INT_MAX).{.
107a60 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 3d 20 24 6d 69 6e 44 65 70 74 68 3b 0a 24 69 74 $this->minDepth.=.$minDepth;.$it
107a80 65 72 61 74 6f 72 2d 3e 73 65 74 4d 61 78 44 65 70 74 68 28 50 48 50 5f 49 4e 54 5f 4d 41 58 20 erator->setMaxDepth(PHP_INT_MAX.
107aa0 3d 3d 3d 20 24 6d 61 78 44 65 70 74 68 20 3f 20 2d 31 20 3a 20 24 6d 61 78 44 65 70 74 68 29 3b ===.$maxDepth.?.-1.:.$maxDepth);
107ac0 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 6f 72 29 ..parent::__construct($iterator)
107ae0 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 63 63 65 70 74 ;.}.......public.function.accept
107b00 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 6e 65 72 49 74 65 72 61 ().{.return.$this->getInnerItera
107b20 74 6f 72 28 29 2d 3e 67 65 74 44 65 70 74 68 28 29 20 3e 3d 20 24 74 68 69 73 2d 3e 6d 69 6e 44 tor()->getDepth().>=.$this->minD
107b40 65 70 74 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 epth;.}.}.<?php...........namesp
107b60 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 74 65 ace.Symfony\Component\Finder\Ite
107b80 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 78 63 6c 75 64 65 44 69 72 65 63 74 rator;.......class.ExcludeDirect
107ba0 6f 72 79 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 oryFilterIterator.extends.Filter
107bc0 49 74 65 72 61 74 6f 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 52 65 63 75 72 73 69 76 65 49 74 Iterator.implements.\RecursiveIt
107be0 65 72 61 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 74 65 72 61 74 6f 72 3b 0a 70 72 69 76 erator.{.private.$iterator;.priv
107c00 61 74 65 20 24 69 73 52 65 63 75 72 73 69 76 65 3b 0a 70 72 69 76 61 74 65 20 24 65 78 63 6c 75 ate.$isRecursive;.private.$exclu
107c20 64 65 64 44 69 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 65 78 63 6c dedDirs.=.array();.private.$excl
107c40 75 64 65 64 50 61 74 74 65 72 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 udedPattern;........public.funct
107c60 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 65 72 61 ion.__construct(\Iterator.$itera
107c80 74 6f 72 2c 20 61 72 72 61 79 20 24 64 69 72 65 63 74 6f 72 69 65 73 29 0a 7b 0a 24 74 68 69 73 tor,.array.$directories).{.$this
107ca0 2d 3e 69 74 65 72 61 74 6f 72 20 3d 20 24 69 74 65 72 61 74 6f 72 3b 0a 24 74 68 69 73 2d 3e 69 ->iterator.=.$iterator;.$this->i
107cc0 73 52 65 63 75 72 73 69 76 65 20 3d 20 24 69 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 6f sRecursive.=.$iterator.instanceo
107ce0 66 20 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 3b 0a 24 70 61 74 74 65 72 6e 73 20 f.\RecursiveIterator;.$patterns.
107d00 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 69 72 65 63 74 6f 72 69 65 73 =.array();.foreach.($directories
107d20 20 61 73 20 24 64 69 72 65 63 74 6f 72 79 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 .as.$directory).{.if.(!$this->is
107d40 52 65 63 75 72 73 69 76 65 20 7c 7c 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 64 Recursive.||.false.!==.strpos($d
107d60 69 72 65 63 74 6f 72 79 2c 20 27 2f 27 29 29 20 7b 0a 24 70 61 74 74 65 72 6e 73 5b 5d 20 3d 20 irectory,.'/')).{.$patterns[].=.
107d80 70 72 65 67 5f 71 75 6f 74 65 28 24 64 69 72 65 63 74 6f 72 79 2c 20 27 23 27 29 3b 0a 7d 20 65 preg_quote($directory,.'#');.}.e
107da0 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 64 44 69 72 73 5b 24 64 69 72 65 63 lse.{.$this->excludedDirs[$direc
107dc0 74 6f 72 79 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 69 66 20 28 24 70 61 74 74 65 72 6e 73 29 tory].=.true;.}.}.if.($patterns)
107de0 20 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 64 50 61 74 74 65 72 6e 20 3d 20 27 23 28 3f .{.$this->excludedPattern.=.'#(?
107e00 3a 5e 7c 2f 29 28 3f 3a 27 2e 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 24 70 61 74 74 65 72 6e 73 :^|/)(?:'.implode('|',.$patterns
107e20 29 2e 27 29 28 3f 3a 2f 7c 24 29 23 27 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 ).')(?:/|$)#';.}..parent::__cons
107e40 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 6c 69 63 truct($iterator);.}.......public
107e60 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e .function.accept().{.if.($this->
107e80 69 73 52 65 63 75 72 73 69 76 65 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 65 78 63 6c isRecursive.&&.isset($this->excl
107ea0 75 64 65 64 44 69 72 73 5b 24 74 68 69 73 2d 3e 67 65 74 46 69 6c 65 6e 61 6d 65 28 29 5d 29 20 udedDirs[$this->getFilename()]).
107ec0 26 26 20 24 74 68 69 73 2d 3e 69 73 44 69 72 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 &&.$this->isDir()).{.return.fals
107ee0 65 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 64 50 61 74 74 65 72 6e e;.}..if.($this->excludedPattern
107f00 29 20 7b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 69 73 44 69 72 28 29 20 3f 20 24 74 68 ).{.$path.=.$this->isDir().?.$th
107f20 69 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 6e 61 is->current()->getRelativePathna
107f40 6d 65 28 29 20 3a 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 2d 3e 67 65 74 52 65 6c 61 me().:.$this->current()->getRela
107f60 74 69 76 65 50 61 74 68 28 29 3b 0a 24 70 61 74 68 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 tivePath();.$path.=.str_replace(
107f80 27 5c 5c 27 2c 20 27 2f 27 2c 20 24 70 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 21 70 72 65 67 '\\',.'/',.$path);..return.!preg
107fa0 5f 6d 61 74 63 68 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 64 50 61 74 74 65 72 6e 2c 20 24 _match($this->excludedPattern,.$
107fc0 70 61 74 68 29 3b 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 path);.}..return.true;.}..public
107fe0 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 43 68 69 6c 64 72 65 6e 28 29 0a 7b 0a 72 65 74 75 72 6e .function.hasChildren().{.return
108000 20 24 74 68 69 73 2d 3e 69 73 52 65 63 75 72 73 69 76 65 20 26 26 20 24 74 68 69 73 2d 3e 69 74 .$this->isRecursive.&&.$this->it
108020 65 72 61 74 6f 72 2d 3e 68 61 73 43 68 69 6c 64 72 65 6e 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 erator->hasChildren();.}..public
108040 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 68 69 6c 64 72 65 6e 28 29 0a 7b 0a 24 63 68 69 6c 64 .function.getChildren().{.$child
108060 72 65 6e 20 3d 20 6e 65 77 20 73 65 6c 66 28 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 2d 3e ren.=.new.self($this->iterator->
108080 67 65 74 43 68 69 6c 64 72 65 6e 28 29 2c 20 61 72 72 61 79 28 29 29 3b 0a 24 63 68 69 6c 64 72 getChildren(),.array());.$childr
1080a0 65 6e 2d 3e 65 78 63 6c 75 64 65 64 44 69 72 73 20 3d 20 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 en->excludedDirs.=.$this->exclud
1080c0 65 64 44 69 72 73 3b 0a 24 63 68 69 6c 64 72 65 6e 2d 3e 65 78 63 6c 75 64 65 64 50 61 74 74 65 edDirs;.$children->excludedPatte
1080e0 72 6e 20 3d 20 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 64 50 61 74 74 65 72 6e 3b 0a 0a 72 65 rn.=.$this->excludedPattern;..re
108100 74 75 72 6e 20 24 63 68 69 6c 64 72 65 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a turn.$children;.}.}.<?php.......
108120 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\
108140 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 72 6f 72 Finder\Iterator;..@trigger_error
108160 28 27 54 68 65 20 27 2e 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 46 69 6c 65 50 61 74 68 ('The.'.__NAMESPACE__.'\FilePath
108180 73 49 74 65 72 61 74 6f 72 20 63 6c 61 73 73 20 69 73 20 64 65 70 72 65 63 61 74 65 64 20 73 69 sIterator.class.is.deprecated.si
1081a0 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 6f nce.version.2.8.and.will.be.remo
1081c0 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)
1081e0 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 72 5c ;..use.Symfony\Component\Finder\
108200 53 70 6c 46 69 6c 65 49 6e 66 6f 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 50 SplFileInfo;.........class.FileP
108220 61 74 68 73 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 5c 41 72 72 61 79 49 74 65 72 61 athsIterator.extends.\ArrayItera
108240 74 6f 72 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 62 61 73 65 44 69 72 3b 0a 0a 0a 0a 0a 70 tor.{....private.$baseDir;.....p
108260 72 69 76 61 74 65 20 24 62 61 73 65 44 69 72 4c 65 6e 67 74 68 3b 0a 0a 0a 0a 0a 70 72 69 76 61 rivate.$baseDirLength;.....priva
108280 74 65 20 24 73 75 62 50 61 74 68 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 75 62 50 61 74 te.$subPath;.....private.$subPat
1082a0 68 6e 61 6d 65 3b 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 hname;.....private.$current;....
1082c0 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 72 ..public.function.__construct(ar
1082e0 72 61 79 20 24 70 61 74 68 73 2c 20 24 62 61 73 65 44 69 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 ray.$paths,.$baseDir).{.$this->b
108300 61 73 65 44 69 72 20 3d 20 24 62 61 73 65 44 69 72 3b 0a 24 74 68 69 73 2d 3e 62 61 73 65 44 69 aseDir.=.$baseDir;.$this->baseDi
108320 72 4c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 62 61 73 65 44 69 72 29 3b 0a 0a 70 61 72 rLength.=.strlen($baseDir);..par
108340 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 61 74 68 73 29 3b 0a 7d 0a 0a 0a 0a 0a ent::__construct($paths);.}.....
108360 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 61 6c 6c 28 24 6e 61 6d 65 2c ...public.function.__call($name,
108380 20 61 72 72 61 79 20 24 61 72 67 75 6d 65 6e 74 73 29 0a 7b 0a 72 65 74 75 72 6e 20 63 61 6c 6c .array.$arguments).{.return.call
1083a0 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 61 72 72 61 79 28 24 74 68 69 73 2d 3e 63 75 _user_func_array(array($this->cu
1083c0 72 72 65 6e 74 28 29 2c 20 24 6e 61 6d 65 29 2c 20 24 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a rrent(),.$name),.$arguments);.}.
1083e0 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 75 72 72 65 6e 74 28 29 0a ......public.function.current().
108400 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 70 {.return.$this->current;.}.....p
108420 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6b 65 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 ublic.function.key().{.return.$t
108440 68 69 73 2d 3e 63 75 72 72 65 6e 74 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 3b 0a 7d 0a 0a his->current->getPathname();.}..
108460 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 70 61 72 65 6e 74 3a public.function.next().{.parent:
108480 3a 6e 65 78 74 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 :next();.$this->buildProperties(
1084a0 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b );.}..public.function.rewind().{
1084c0 0a 70 61 72 65 6e 74 3a 3a 72 65 77 69 6e 64 28 29 3b 0a 24 74 68 69 73 2d 3e 62 75 69 6c 64 50 .parent::rewind();.$this->buildP
1084e0 72 6f 70 65 72 74 69 65 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 roperties();.}.....public.functi
108500 6f 6e 20 67 65 74 53 75 62 50 61 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e on.getSubPath().{.return.$this->
108520 73 75 62 50 61 74 68 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 subPath;.}.....public.function.g
108540 65 74 53 75 62 50 61 74 68 6e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e etSubPathname().{.return.$this->
108560 73 75 62 50 61 74 68 6e 61 6d 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e subPathname;.}..private.function
108580 20 62 75 69 6c 64 50 72 6f 70 65 72 74 69 65 73 28 29 0a 7b 0a 24 61 62 73 6f 6c 75 74 65 50 61 .buildProperties().{.$absolutePa
1085a0 74 68 20 3d 20 70 61 72 65 6e 74 3a 3a 63 75 72 72 65 6e 74 28 29 3b 0a 0a 69 66 20 28 24 74 68 th.=.parent::current();..if.($th
1085c0 69 73 2d 3e 62 61 73 65 44 69 72 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 61 62 73 6f 6c 75 74 65 is->baseDir.===.substr($absolute
1085e0 50 61 74 68 2c 20 30 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 44 69 72 4c 65 6e 67 74 68 29 29 20 Path,.0,.$this->baseDirLength)).
108600 7b 0a 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 6e 61 6d 65 20 3d 20 6c 74 72 69 6d 28 73 75 62 {.$this->subPathname.=.ltrim(sub
108620 73 74 72 28 24 61 62 73 6f 6c 75 74 65 50 61 74 68 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 44 69 str($absolutePath,.$this->baseDi
108640 72 4c 65 6e 67 74 68 29 2c 20 27 2f 5c 5c 27 29 3b 0a 24 64 69 72 20 3d 20 64 69 72 6e 61 6d 65 rLength),.'/\\');.$dir.=.dirname
108660 28 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 6e 61 6d 65 29 3b 0a 24 74 68 69 73 2d 3e 73 75 62 ($this->subPathname);.$this->sub
108680 50 61 74 68 20 3d 20 27 2e 27 20 3d 3d 3d 20 24 64 69 72 20 3f 20 27 27 20 3a 20 24 64 69 72 3b Path.=.'.'.===.$dir.?.''.:.$dir;
1086a0 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 20 3d 20 24 74 68 69 73 .}.else.{.$this->subPath.=.$this
1086c0 2d 3e 73 75 62 50 61 74 68 6e 61 6d 65 20 3d 20 27 27 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 75 ->subPathname.=.'';.}..$this->cu
1086e0 72 72 65 6e 74 20 3d 20 6e 65 77 20 53 70 6c 46 69 6c 65 49 6e 66 6f 28 70 61 72 65 6e 74 3a 3a rrent.=.new.SplFileInfo(parent::
108700 63 75 72 72 65 6e 74 28 29 2c 20 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 2c 20 24 74 68 69 73 current(),.$this->subPath,.$this
108720 2d 3e 73 75 62 50 61 74 68 6e 61 6d 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a ->subPathname);.}.}.<?php.......
108740 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\
108760 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c Finder\Iterator;.......class.Fil
108780 65 54 79 70 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 eTypeFilterIterator.extends.Filt
1087a0 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 63 6f 6e 73 74 20 4f 4e 4c 59 5f 46 49 4c 45 53 20 3d 20 erIterator.{.const.ONLY_FILES.=.
1087c0 31 3b 0a 63 6f 6e 73 74 20 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 20 3d 20 32 3b 0a 0a 1;.const.ONLY_DIRECTORIES.=.2;..
1087e0 70 72 69 76 61 74 65 20 24 6d 6f 64 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e private.$mode;........public.fun
108800 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 65 ction.__construct(\Iterator.$ite
108820 72 61 74 6f 72 2c 20 24 6d 6f 64 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 6d rator,.$mode).{.$this->mode.=.$m
108840 6f 64 65 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 74 65 72 61 ode;..parent::__construct($itera
108860 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 63 tor);.}.......public.function.ac
108880 63 65 70 74 28 29 0a 7b 0a 24 66 69 6c 65 69 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 cept().{.$fileinfo.=.$this->curr
1088a0 65 6e 74 28 29 3b 0a 69 66 20 28 73 65 6c 66 3a 3a 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 ent();.if.(self::ONLY_DIRECTORIE
1088c0 53 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 20 26 20 S.===.(self::ONLY_DIRECTORIES.&.
1088e0 24 74 68 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 46 69 6c $this->mode).&&.$fileinfo->isFil
108900 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 e()).{.return.false;.}.elseif.(s
108920 65 6c 66 3a 3a 4f 4e 4c 59 5f 46 49 4c 45 53 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 4f 4e 4c 59 5f elf::ONLY_FILES.===.(self::ONLY_
108940 46 49 4c 45 53 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 26 26 20 24 66 69 6c 65 69 6e 66 FILES.&.$this->mode).&&.$fileinf
108960 6f 2d 3e 69 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 72 o->isDir()).{.return.false;.}..r
108980 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 0a 0a 0a 0a 0a eturn.true;.}.}.<?php...........
1089a0 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
1089c0 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 63 6f er\Iterator;........class.Fileco
1089e0 6e 74 65 6e 74 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 4d 75 6c 74 ntentFilterIterator.extends.Mult
108a00 69 70 6c 65 50 63 72 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 70 75 iplePcreFilterIterator.{......pu
108a20 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 69 66 20 28 21 24 74 blic.function.accept().{.if.(!$t
108a40 68 69 73 2d 3e 6d 61 74 63 68 52 65 67 65 78 70 73 20 26 26 20 21 24 74 68 69 73 2d 3e 6e 6f 4d his->matchRegexps.&&.!$this->noM
108a60 61 74 63 68 52 65 67 65 78 70 73 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 atchRegexps).{.return.true;.}..$
108a80 66 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 0a 69 66 fileinfo.=.$this->current();..if
108aa0 20 28 24 66 69 6c 65 69 6e 66 6f 2d 3e 69 73 44 69 72 28 29 20 7c 7c 20 21 24 66 69 6c 65 69 6e .($fileinfo->isDir().||.!$filein
108ac0 66 6f 2d 3e 69 73 52 65 61 64 61 62 6c 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 fo->isReadable()).{.return.false
108ae0 3b 0a 7d 0a 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 67 65 74 43 6f ;.}..$content.=.$fileinfo->getCo
108b00 6e 74 65 6e 74 73 28 29 3b 0a 69 66 20 28 21 24 63 6f 6e 74 65 6e 74 29 20 7b 0a 72 65 74 75 72 ntents();.if.(!$content).{.retur
108b20 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 41 63 63 65 n.false;.}..return.$this->isAcce
108b40 70 74 65 64 28 24 63 6f 6e 74 65 6e 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 pted($content);.}.........protec
108b60 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 0a 7b 0a 72 65 74 ted.function.toRegex($str).{.ret
108b80 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 52 65 67 65 78 28 24 73 74 72 29 20 3f 20 24 73 74 72 20 urn.$this->isRegex($str).?.$str.
108ba0 3a 20 27 2f 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 73 74 72 2c 20 27 2f 27 29 2e 27 2f 27 3b :.'/'.preg_quote($str,.'/').'/';
108bc0 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
108be0 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
108c00 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 72 5c ;..use.Symfony\Component\Finder\
108c20 47 6c 6f 62 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 6e 61 6d 65 46 69 6c 74 65 72 Glob;.......class.FilenameFilter
108c40 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
108c60 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
108c80 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 41 63 on.accept().{.return.$this->isAc
108ca0 63 65 70 74 65 64 28 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 2d 3e 67 65 74 46 69 6c 65 cepted($this->current()->getFile
108cc0 6e 61 6d 65 28 29 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 name());.}............protected.
108ce0 66 75 6e 63 74 69 6f 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 function.toRegex($str).{.return.
108d00 24 74 68 69 73 2d 3e 69 73 52 65 67 65 78 28 24 73 74 72 29 20 3f 20 24 73 74 72 20 3a 20 47 6c $this->isRegex($str).?.$str.:.Gl
108d20 6f 62 3a 3a 74 6f 52 65 67 65 78 28 24 73 74 72 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a ob::toRegex($str);.}.}.<?php....
108d40 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
108d60 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 61 62 73 74 nt\Finder\Iterator;.........abst
108d80 72 61 63 74 20 63 6c 61 73 73 20 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 ract.class.FilterIterator.extend
108da0 73 20 5c 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 s.\FilterIterator.{.......public
108dc0 20 66 75 6e 63 74 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d .function.rewind().{.$iterator.=
108de0 20 24 74 68 69 73 3b 0a 77 68 69 6c 65 20 28 24 69 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 .$this;.while.($iterator.instanc
108e00 65 6f 66 20 5c 4f 75 74 65 72 49 74 65 72 61 74 6f 72 29 20 7b 0a 24 69 6e 6e 65 72 49 74 65 72 eof.\OuterIterator).{.$innerIter
108e20 61 74 6f 72 20 3d 20 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 ator.=.$iterator->getInnerIterat
108e40 6f 72 28 29 3b 0a 0a 69 66 20 28 24 69 6e 6e 65 72 49 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e or();..if.($innerIterator.instan
108e60 63 65 6f 66 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 29 ceof.RecursiveDirectoryIterator)
108e80 20 7b 0a 69 66 20 28 24 69 6e 6e 65 72 49 74 65 72 61 74 6f 72 2d 3e 69 73 52 65 77 69 6e 64 61 .{.if.($innerIterator->isRewinda
108ea0 62 6c 65 28 29 29 20 7b 0a 24 69 6e 6e 65 72 49 74 65 72 61 74 6f 72 2d 3e 6e 65 78 74 28 29 3b ble()).{.$innerIterator->next();
108ec0 0a 24 69 6e 6e 65 72 49 74 65 72 61 74 6f 72 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 7d 0a 7d 20 65 .$innerIterator->rewind();.}.}.e
108ee0 6c 73 65 69 66 20 28 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 lseif.($iterator->getInnerIterat
108f00 6f 72 28 29 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 or().instanceof.\FilesystemItera
108f20 74 6f 72 29 20 7b 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 tor).{.$iterator->getInnerIterat
108f40 6f 72 28 29 2d 3e 6e 65 78 74 28 29 3b 0a 24 69 74 65 72 61 74 6f 72 2d 3e 67 65 74 49 6e 6e 65 or()->next();.$iterator->getInne
108f60 72 49 74 65 72 61 74 6f 72 28 29 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 7d 0a 24 69 74 65 72 61 74 rIterator()->rewind();.}.$iterat
108f80 6f 72 20 3d 20 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 or.=.$iterator->getInnerIterator
108fa0 28 29 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 72 65 77 69 6e 64 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 ();.}..parent::rewind();.}.}.<?p
108fc0 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
108fe0 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 0a 0a omponent\Finder\Iterator;.......
109000 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 4d 75 6c 74 69 70 6c 65 50 63 72 65 46 69 6c 74 65 abstract.class.MultiplePcreFilte
109020 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 72 61 74 6f 72 rIterator.extends.FilterIterator
109040 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6d 61 74 63 68 52 65 67 65 78 70 73 20 3d 20 61 72 72 .{.protected.$matchRegexps.=.arr
109060 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 6f 4d 61 74 63 68 52 65 67 65 78 70 73 20 ay();.protected.$noMatchRegexps.
109080 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
1090a0 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 65 72 61 74 on.__construct(\Iterator.$iterat
1090c0 6f 72 2c 20 61 72 72 61 79 20 24 6d 61 74 63 68 50 61 74 74 65 72 6e 73 2c 20 61 72 72 61 79 20 or,.array.$matchPatterns,.array.
1090e0 24 6e 6f 4d 61 74 63 68 50 61 74 74 65 72 6e 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 $noMatchPatterns).{.foreach.($ma
109100 74 63 68 50 61 74 74 65 72 6e 73 20 61 73 20 24 70 61 74 74 65 72 6e 29 20 7b 0a 24 74 68 69 73 tchPatterns.as.$pattern).{.$this
109120 2d 3e 6d 61 74 63 68 52 65 67 65 78 70 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 74 6f 52 65 67 65 ->matchRegexps[].=.$this->toRege
109140 78 28 24 70 61 74 74 65 72 6e 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6e 6f 4d 61 74 63 x($pattern);.}..foreach.($noMatc
109160 68 50 61 74 74 65 72 6e 73 20 61 73 20 24 70 61 74 74 65 72 6e 29 20 7b 0a 24 74 68 69 73 2d 3e hPatterns.as.$pattern).{.$this->
109180 6e 6f 4d 61 74 63 68 52 65 67 65 78 70 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 74 6f 52 65 67 65 noMatchRegexps[].=.$this->toRege
1091a0 78 28 24 70 61 74 74 65 72 6e 29 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 x($pattern);.}..parent::__constr
1091c0 75 63 74 28 24 69 74 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 uct($iterator);.}.............pr
1091e0 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 73 41 63 63 65 70 74 65 64 28 24 73 74 72 otected.function.isAccepted($str
109200 69 6e 67 29 0a 7b 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6e 6f 4d 61 74 63 68 ing).{...foreach.($this->noMatch
109220 52 65 67 65 78 70 73 20 61 73 20 24 72 65 67 65 78 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 Regexps.as.$regex).{.if.(preg_ma
109240 74 63 68 28 24 72 65 67 65 78 2c 20 24 73 74 72 69 6e 67 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 tch($regex,.$string)).{.return.f
109260 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 52 65 67 alse;.}.}....if.($this->matchReg
109280 65 78 70 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 52 65 67 exps).{.foreach.($this->matchReg
1092a0 65 78 70 73 20 61 73 20 24 72 65 67 65 78 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 exps.as.$regex).{.if.(preg_match
1092c0 28 24 72 65 67 65 78 2c 20 24 73 74 72 69 6e 67 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 ($regex,.$string)).{.return.true
1092e0 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 20 72 65 74 75 72 6e ;.}.}..return.false;.}....return
109300 20 74 72 75 65 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 .true;.}.........protected.funct
109320 69 6f 6e 20 69 73 52 65 67 65 78 28 24 73 74 72 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 ion.isRegex($str).{.if.(preg_mat
109340 63 68 28 27 2f 5e 28 2e 7b 33 2c 7d 3f 29 5b 69 6d 73 78 75 41 44 55 5d 2a 24 2f 27 2c 20 24 73 ch('/^(.{3,}?)[imsxuADU]*$/',.$s
109360 74 72 2c 20 24 6d 29 29 20 7b 0a 24 73 74 61 72 74 20 3d 20 73 75 62 73 74 72 28 24 6d 5b 31 5d tr,.$m)).{.$start.=.substr($m[1]
109380 2c 20 30 2c 20 31 29 3b 0a 24 65 6e 64 20 3d 20 73 75 62 73 74 72 28 24 6d 5b 31 5d 2c 20 2d 31 ,.0,.1);.$end.=.substr($m[1],.-1
1093a0 29 3b 0a 0a 69 66 20 28 24 73 74 61 72 74 20 3d 3d 3d 20 24 65 6e 64 29 20 7b 0a 72 65 74 75 72 );..if.($start.===.$end).{.retur
1093c0 6e 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5b 2a 3f 5b 3a 61 6c 6e 75 6d 3a 5d 20 5c 5c 5c n.!preg_match('/[*?[:alnum:].\\\
1093e0 5c 5d 2f 27 2c 20 24 73 74 61 72 74 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 \]/',.$start);.}..foreach.(array
109400 28 61 72 72 61 79 28 27 7b 27 2c 20 27 7d 27 29 2c 20 61 72 72 61 79 28 27 28 27 2c 20 27 29 27 (array('{',.'}'),.array('(',.')'
109420 29 2c 20 61 72 72 61 79 28 27 5b 27 2c 20 27 5d 27 29 2c 20 61 72 72 61 79 28 27 3c 27 2c 20 27 ),.array('[',.']'),.array('<',.'
109440 3e 27 29 29 20 61 73 20 24 64 65 6c 69 6d 69 74 65 72 73 29 20 7b 0a 69 66 20 28 24 73 74 61 72 >')).as.$delimiters).{.if.($star
109460 74 20 3d 3d 3d 20 24 64 65 6c 69 6d 69 74 65 72 73 5b 30 5d 20 26 26 20 24 65 6e 64 20 3d 3d 3d t.===.$delimiters[0].&&.$end.===
109480 20 24 64 65 6c 69 6d 69 74 65 72 73 5b 31 5d 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a .$delimiters[1]).{.return.true;.
1094a0 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 0a 61 }.}.}..return.false;.}.........a
1094c0 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 74 6f 52 65 67 bstract.protected.function.toReg
1094e0 65 78 28 24 73 74 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 65 ex($str);.}.<?php...........name
109500 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
109520 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 74 68 46 69 6c 74 65 72 terator;........class.PathFilter
109540 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
109560 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
109580 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 24 66 69 6c 65 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d on.accept().{.$filename.=.$this-
1095a0 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 6e 61 6d 65 28 >current()->getRelativePathname(
1095c0 29 3b 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 53 45 50 41 52 );..if.('\\'.===.DIRECTORY_SEPAR
1095e0 41 54 4f 52 29 20 7b 0a 24 66 69 6c 65 6e 61 6d 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 ATOR).{.$filename.=.str_replace(
109600 27 5c 5c 27 2c 20 27 2f 27 2c 20 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e '\\',.'/',.$filename);.}..return
109620 20 24 74 68 69 73 2d 3e 69 73 41 63 63 65 70 74 65 64 28 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 7d .$this->isAccepted($filename);.}
109640 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 6e 63 74 69 ................protected.functi
109660 6f 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 on.toRegex($str).{.return.$this-
109680 3e 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 >isRegex($str).?.$str.:.'/'.preg
1096a0 5f 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 _quote($str,.'/').'/';.}.}.<?php
1096c0 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
1096e0 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 75 73 65 20 53 79 6d ponent\Finder\Iterator;..use.Sym
109700 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 6e 5c fony\Component\Finder\Exception\
109720 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 65 20 53 79 6d 66 6f AccessDeniedException;.use.Symfo
109740 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 3b ny\Component\Finder\SplFileInfo;
109760 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 .......class.RecursiveDirectoryI
109780 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 terator.extends.\RecursiveDirect
1097a0 6f 72 79 49 74 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 67 6e 6f 72 65 oryIterator.{....private.$ignore
1097c0 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 65 77 UnreadableDirs;.....private.$rew
1097e0 69 6e 64 61 62 6c 65 3b 0a 0a 0a 20 70 72 69 76 61 74 65 20 24 72 6f 6f 74 50 61 74 68 3b 0a 70 indable;....private.$rootPath;.p
109800 72 69 76 61 74 65 20 24 73 75 62 50 61 74 68 3b 0a 70 72 69 76 61 74 65 20 24 64 69 72 65 63 74 rivate.$subPath;.private.$direct
109820 6f 72 79 53 65 70 61 72 61 74 6f 72 20 3d 20 27 2f 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 orySeparator.=.'/';...........pu
109840 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 68 2c blic.function.__construct($path,
109860 20 24 66 6c 61 67 73 2c 20 24 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 20 3d .$flags,.$ignoreUnreadableDirs.=
109880 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 24 66 6c 61 67 73 20 26 20 28 73 65 6c 66 3a 3a 43 55 .false).{.if.($flags.&.(self::CU
1098a0 52 52 45 4e 54 5f 41 53 5f 50 41 54 48 4e 41 4d 45 20 7c 20 73 65 6c 66 3a 3a 43 55 52 52 45 4e RRENT_AS_PATHNAME.|.self::CURREN
1098c0 54 5f 41 53 5f 53 45 4c 46 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 T_AS_SELF)).{.throw.new.\Runtime
1098e0 45 78 63 65 70 74 69 6f 6e 28 27 54 68 69 73 20 69 74 65 72 61 74 6f 72 20 6f 6e 6c 79 20 73 75 Exception('This.iterator.only.su
109900 70 70 6f 72 74 20 72 65 74 75 72 6e 69 6e 67 20 63 75 72 72 65 6e 74 20 61 73 20 66 69 6c 65 69 pport.returning.current.as.filei
109920 6e 66 6f 2e 27 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 28 24 nfo.');.}..parent::__construct($
109940 70 61 74 68 2c 20 24 66 6c 61 67 73 29 3b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 55 6e 72 65 path,.$flags);.$this->ignoreUnre
109960 61 64 61 62 6c 65 44 69 72 73 20 3d 20 24 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 adableDirs.=.$ignoreUnreadableDi
109980 72 73 3b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 50 61 74 68 20 3d 20 28 73 74 72 69 6e 67 29 20 24 rs;.$this->rootPath.=.(string).$
1099a0 70 61 74 68 3b 0a 69 66 20 28 27 2f 27 20 21 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 path;.if.('/'.!==.DIRECTORY_SEPA
1099c0 52 41 54 4f 52 20 26 26 20 21 28 24 66 6c 61 67 73 20 26 20 73 65 6c 66 3a 3a 55 4e 49 58 5f 50 RATOR.&&.!($flags.&.self::UNIX_P
1099e0 41 54 48 53 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 69 72 65 63 74 6f 72 79 53 65 70 61 72 61 74 ATHS)).{.$this->directorySeparat
109a00 6f 72 20 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 3b 0a 7d 0a 7d 0a 0a 0a or.=.DIRECTORY_SEPARATOR;.}.}...
109a20 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 75 72 72 65 6e 74 28 29 0a 7b 0a ....public.function.current().{.
109a40 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 73 75 62 50 61 74 68 6e 61 6d 65 20 3d 20 24 74 ..if.(null.===.$subPathname.=.$t
109a60 68 69 73 2d 3e 73 75 62 50 61 74 68 29 20 7b 0a 24 73 75 62 50 61 74 68 6e 61 6d 65 20 3d 20 24 his->subPath).{.$subPathname.=.$
109a80 74 68 69 73 2d 3e 73 75 62 50 61 74 68 20 3d 20 28 73 74 72 69 6e 67 29 20 24 74 68 69 73 2d 3e this->subPath.=.(string).$this->
109aa0 67 65 74 53 75 62 50 61 74 68 28 29 3b 0a 7d 0a 69 66 20 28 27 27 20 21 3d 3d 20 24 73 75 62 50 getSubPath();.}.if.(''.!==.$subP
109ac0 61 74 68 6e 61 6d 65 29 20 7b 0a 24 73 75 62 50 61 74 68 6e 61 6d 65 20 2e 3d 20 24 74 68 69 73 athname).{.$subPathname..=.$this
109ae0 2d 3e 64 69 72 65 63 74 6f 72 79 53 65 70 61 72 61 74 6f 72 3b 0a 7d 0a 24 73 75 62 50 61 74 68 ->directorySeparator;.}.$subPath
109b00 6e 61 6d 65 20 2e 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 69 6c 65 6e 61 6d 65 28 29 3b 0a 0a 72 name..=.$this->getFilename();..r
109b20 65 74 75 72 6e 20 6e 65 77 20 53 70 6c 46 69 6c 65 49 6e 66 6f 28 24 74 68 69 73 2d 3e 72 6f 6f eturn.new.SplFileInfo($this->roo
109b40 74 50 61 74 68 2e 24 74 68 69 73 2d 3e 64 69 72 65 63 74 6f 72 79 53 65 70 61 72 61 74 6f 72 2e tPath.$this->directorySeparator.
109b60 24 73 75 62 50 61 74 68 6e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 73 75 62 50 61 74 68 2c 20 24 73 $subPathname,.$this->subPath,.$s
109b80 75 62 50 61 74 68 6e 61 6d 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 ubPathname);.}.......public.func
109ba0 74 69 6f 6e 20 67 65 74 43 68 69 6c 64 72 65 6e 28 29 0a 7b 0a 74 72 79 20 7b 0a 24 63 68 69 6c tion.getChildren().{.try.{.$chil
109bc0 64 72 65 6e 20 3d 20 70 61 72 65 6e 74 3a 3a 67 65 74 43 68 69 6c 64 72 65 6e 28 29 3b 0a 0a 69 dren.=.parent::getChildren();..i
109be0 66 20 28 24 63 68 69 6c 64 72 65 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 73 65 6c 66 29 20 7b 0a f.($children.instanceof.self).{.
109c00 0a 20 24 63 68 69 6c 64 72 65 6e 2d 3e 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 ..$children->ignoreUnreadableDir
109c20 73 20 3d 20 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 3b s.=.$this->ignoreUnreadableDirs;
109c40 0a 0a 0a 20 24 63 68 69 6c 64 72 65 6e 2d 3e 72 65 77 69 6e 64 61 62 6c 65 20 3d 20 26 24 74 68 ....$children->rewindable.=.&$th
109c60 69 73 2d 3e 72 65 77 69 6e 64 61 62 6c 65 3b 0a 24 63 68 69 6c 64 72 65 6e 2d 3e 72 6f 6f 74 50 is->rewindable;.$children->rootP
109c80 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 50 61 74 68 3b 0a 7d 0a 0a 72 65 74 75 72 6e ath.=.$this->rootPath;.}..return
109ca0 20 24 63 68 69 6c 64 72 65 6e 3b 0a 7d 20 63 61 74 63 68 20 28 5c 55 6e 65 78 70 65 63 74 65 64 .$children;.}.catch.(\Unexpected
109cc0 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e ValueException.$e).{.if.($this->
109ce0 69 67 6e 6f 72 65 55 6e 72 65 61 64 61 62 6c 65 44 69 72 73 29 20 7b 0a 0a 20 72 65 74 75 72 6e ignoreUnreadableDirs).{...return
109d00 20 6e 65 77 20 5c 52 65 63 75 72 73 69 76 65 41 72 72 61 79 49 74 65 72 61 74 6f 72 28 61 72 72 .new.\RecursiveArrayIterator(arr
109d20 61 79 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 41 63 63 65 73 73 ay());.}.else.{.throw.new.Access
109d40 44 65 6e 69 65 64 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 DeniedException($e->getMessage()
109d60 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 0a 7d 0a 0a 0a 0a 0a ,.$e->getCode(),.$e);.}.}.}.....
109d80 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b 0a 69 66 20 28 66 public.function.rewind().{.if.(f
109da0 61 6c 73 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 73 52 65 77 69 6e 64 61 62 6c 65 28 29 29 20 alse.===.$this->isRewindable()).
109dc0 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 70 61 72 65 6e 74 3a 3a 6e 65 78 74 28 29 3b 0a 0a {.return;.}....parent::next();..
109de0 70 61 72 65 6e 74 3a 3a 72 65 77 69 6e 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 parent::rewind();.}.......public
109e00 20 66 75 6e 63 74 69 6f 6e 20 69 73 52 65 77 69 6e 64 61 62 6c 65 28 29 0a 7b 0a 69 66 20 28 6e .function.isRewindable().{.if.(n
109e20 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 72 65 77 69 6e 64 61 62 6c 65 29 20 7b 0a 72 65 74 ull.!==.$this->rewindable).{.ret
109e40 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 77 69 6e 64 61 62 6c 65 3b 0a 7d 0a 0a 69 66 20 28 66 61 urn.$this->rewindable;.}..if.(fa
109e60 6c 73 65 20 21 3d 3d 20 24 73 74 72 65 61 6d 20 3d 20 40 6f 70 65 6e 64 69 72 28 24 74 68 69 73 lse.!==.$stream.=.@opendir($this
109e80 2d 3e 67 65 74 50 61 74 68 28 29 29 29 20 7b 0a 24 69 6e 66 6f 73 20 3d 20 73 74 72 65 61 6d 5f ->getPath())).{.$infos.=.stream_
109ea0 67 65 74 5f 6d 65 74 61 5f 64 61 74 61 28 24 73 74 72 65 61 6d 29 3b 0a 63 6c 6f 73 65 64 69 72 get_meta_data($stream);.closedir
109ec0 28 24 73 74 72 65 61 6d 29 3b 0a 0a 69 66 20 28 24 69 6e 66 6f 73 5b 27 73 65 65 6b 61 62 6c 65 ($stream);..if.($infos['seekable
109ee0 27 5d 29 20 7b 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 ']).{.return.$this->rewindable.=
109f00 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 77 69 6e 64 .true;.}.}..return.$this->rewind
109f20 61 62 6c 65 20 3d 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 able.=.false;.}.}.<?php.........
109f40 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
109f60 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 6f 6d 70 nder\Iterator;..use.Symfony\Comp
109f80 6f 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 onent\Finder\Comparator\NumberCo
109fa0 6d 70 61 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 69 7a 65 52 61 6e 67 65 46 mparator;.......class.SizeRangeF
109fc0 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 72 ilterIterator.extends.FilterIter
109fe0 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 72 ator.{.private.$comparators.=.ar
10a000 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 5f ray();........public.function.__
10a020 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 61 construct(\Iterator.$iterator,.a
10a040 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 70 rray.$comparators).{.$this->comp
10a060 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 3a arators.=.$comparators;..parent:
10a080 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 0a :__construct($iterator);.}......
10a0a0 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 6c .public.function.accept().{.$fil
10a0c0 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 21 24 einfo.=.$this->current();.if.(!$
10a0e0 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 72 6e 20 74 72 75 fileinfo->isFile()).{.return.tru
10a100 65 3b 0a 7d 0a 0a 24 66 69 6c 65 73 69 7a 65 20 3d 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 67 65 74 e;.}..$filesize.=.$fileinfo->get
10a120 53 69 7a 65 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6d 70 61 72 61 74 Size();.foreach.($this->comparat
10a140 6f 72 73 20 61 73 20 24 63 6f 6d 70 61 72 65 29 20 7b 0a 69 66 20 28 21 24 63 6f 6d 70 61 72 65 ors.as.$compare).{.if.(!$compare
10a160 2d 3e 74 65 73 74 28 24 66 69 6c 65 73 69 7a 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 ->test($filesize)).{.return.fals
10a180 65 3b 0a 7d 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 e;.}.}..return.true;.}.}.<?php..
10a1a0 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
10a1c0 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 0a 0a 63 6c 61 73 nent\Finder\Iterator;.......clas
10a1e0 73 20 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 s.SortableIterator.implements.\I
10a200 74 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 0a 7b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 42 59 teratorAggregate.{.const.SORT_BY
10a220 5f 4e 41 4d 45 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 42 59 5f 54 59 50 45 20 3d 20 _NAME.=.1;.const.SORT_BY_TYPE.=.
10a240 32 3b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 42 59 5f 41 43 43 45 53 53 45 44 5f 54 49 4d 45 20 3d 2;.const.SORT_BY_ACCESSED_TIME.=
10a260 20 33 3b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 42 59 5f 43 48 41 4e 47 45 44 5f 54 49 4d 45 20 3d .3;.const.SORT_BY_CHANGED_TIME.=
10a280 20 34 3b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 42 59 5f 4d 4f 44 49 46 49 45 44 5f 54 49 4d 45 20 .4;.const.SORT_BY_MODIFIED_TIME.
10a2a0 3d 20 35 3b 0a 0a 70 72 69 76 61 74 65 20 24 69 74 65 72 61 74 6f 72 3b 0a 70 72 69 76 61 74 65 =.5;..private.$iterator;.private
10a2c0 20 24 73 6f 72 74 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 .$sort;..........public.function
10a2e0 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 5c 54 72 61 76 65 72 73 61 62 6c 65 20 24 69 74 65 72 61 .__construct(\Traversable.$itera
10a300 74 6f 72 2c 20 24 73 6f 72 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 20 3d 20 tor,.$sort).{.$this->iterator.=.
10a320 24 69 74 65 72 61 74 6f 72 3b 0a 0a 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 5f 42 59 5f 4e 41 $iterator;..if.(self::SORT_BY_NA
10a340 4d 45 20 3d 3d 3d 20 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 ME.===.$sort).{.$this->sort.=.fu
10a360 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 63 6d 70 28 nction.($a,.$b).{.return.strcmp(
10a380 24 61 2d 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 $a->getRealpath(),.$b->getRealpa
10a3a0 74 68 28 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 th());.};.}.elseif.(self::SORT_B
10a3c0 59 5f 54 59 50 45 20 3d 3d 3d 20 24 73 6f 72 74 29 20 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 Y_TYPE.===.$sort).{.$this->sort.
10a3e0 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 69 66 20 28 24 61 2d 3e 69 73 =.function.($a,.$b).{.if.($a->is
10a400 44 69 72 28 29 20 26 26 20 24 62 2d 3e 69 73 46 69 6c 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 Dir().&&.$b->isFile()).{.return.
10a420 2d 31 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 61 2d 3e 69 73 46 69 6c 65 28 29 20 26 26 20 24 62 -1;.}.elseif.($a->isFile().&&.$b
10a440 2d 3e 69 73 44 69 72 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 72 65 74 75 72 6e ->isDir()).{.return.1;.}..return
10a460 20 73 74 72 63 6d 70 28 24 61 2d 3e 67 65 74 52 65 61 6c 70 61 74 68 28 29 2c 20 24 62 2d 3e 67 .strcmp($a->getRealpath(),.$b->g
10a480 65 74 52 65 61 6c 70 61 74 68 28 29 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 etRealpath());.};.}.elseif.(self
10a4a0 3a 3a 53 4f 52 54 5f 42 59 5f 41 43 43 45 53 53 45 44 5f 54 49 4d 45 20 3d 3d 3d 20 24 73 6f 72 ::SORT_BY_ACCESSED_TIME.===.$sor
10a4c0 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,
10a4e0 20 24 62 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 2d 3e 67 65 74 41 54 69 6d 65 28 29 20 2d 20 24 .$b).{.return.$a->getATime().-.$
10a500 62 2d 3e 67 65 74 41 54 69 6d 65 28 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 b->getATime();.};.}.elseif.(self
10a520 3a 3a 53 4f 52 54 5f 42 59 5f 43 48 41 4e 47 45 44 5f 54 49 4d 45 20 3d 3d 3d 20 24 73 6f 72 74 ::SORT_BY_CHANGED_TIME.===.$sort
10a540 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 20 ).{.$this->sort.=.function.($a,.
10a560 24 62 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 2d 3e 67 65 74 43 54 69 6d 65 28 29 20 2d 20 24 62 $b).{.return.$a->getCTime().-.$b
10a580 2d 3e 67 65 74 43 54 69 6d 65 28 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a ->getCTime();.};.}.elseif.(self:
10a5a0 3a 53 4f 52 54 5f 42 59 5f 4d 4f 44 49 46 49 45 44 5f 54 49 4d 45 20 3d 3d 3d 20 24 73 6f 72 74 :SORT_BY_MODIFIED_TIME.===.$sort
10a5c0 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 20 ).{.$this->sort.=.function.($a,.
10a5e0 24 62 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 2d 3e 67 65 74 4d 54 69 6d 65 28 29 20 2d 20 24 62 $b).{.return.$a->getMTime().-.$b
10a600 2d 3e 67 65 74 4d 54 69 6d 65 28 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 63 61 ->getMTime();.};.}.elseif.(is_ca
10a620 6c 6c 61 62 6c 65 28 24 73 6f 72 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 24 llable($sort)).{.$this->sort.=.$
10a640 73 6f 72 74 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 sort;.}.else.{.throw.new.\Invali
10a660 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 6f 72 74 61 62 6c 65 dArgumentException('The.Sortable
10a680 49 74 65 72 61 74 6f 72 20 74 61 6b 65 73 20 61 20 50 48 50 20 63 61 6c 6c 61 62 6c 65 20 6f 72 Iterator.takes.a.PHP.callable.or
10a6a0 20 61 20 76 61 6c 69 64 20 62 75 69 6c 74 2d 69 6e 20 73 6f 72 74 20 61 6c 67 6f 72 69 74 68 6d .a.valid.built-in.sort.algorithm
10a6c0 20 61 73 20 61 6e 20 61 72 67 75 6d 65 6e 74 2e 27 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 .as.an.argument.');.}.}..public.
10a6e0 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 24 61 72 72 61 79 20 function.getIterator().{.$array.
10a700 3d 20 69 74 65 72 61 74 6f 72 5f 74 6f 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 69 74 65 72 61 =.iterator_to_array($this->itera
10a720 74 6f 72 2c 20 74 72 75 65 29 3b 0a 75 61 73 6f 72 74 28 24 61 72 72 61 79 2c 20 24 74 68 69 73 tor,.true);.uasort($array,.$this
10a740 2d 3e 73 6f 72 74 29 3b 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 5c 41 72 72 61 79 49 74 65 72 61 ->sort);..return.new.\ArrayItera
10a760 74 6f 72 28 24 61 72 72 61 79 29 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 tor($array);.}.}.Copyright.(c).2
10a780 30 30 34 2d 32 30 31 35 20 46 61 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 72 0a 0a 50 65 72 6d 69 004-2015.Fabien.Potencier..Permi
10a7a0 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 72 65 65 20 6f 66 ssion.is.hereby.granted,.free.of
10a7c0 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 61 69 6e 69 6e 67 .charge,.to.any.person.obtaining
10a7e0 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 6e 64 20 61 73 73 .a.copy.of.this.software.and.ass
10a800 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 73 20 28 74 68 65 ociated.documentation.files.(the
10a820 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 68 65 20 53 6f 66 ."Software"),.to.deal.in.the.Sof
10a840 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 20 69 6e 63 6c 75 tware.without.restriction,.inclu
10a860 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 65 20 72 69 67 68 ding.without.limitation.the.righ
10a880 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 65 72 67 65 2c 20 ts.to.use,.copy,.modify,.merge,.
10a8a0 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 63 65 6e 73 65 2c publish,.distribute,.sublicense,
10a8c0 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 20 53 6f 66 74 77 .and/or.sell.copies.of.the.Softw
10a8e0 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 20 74 6f 20 77 68 are,.and.to.permit.persons.to.wh
10a900 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 65 64 0a 74 6f 20 om.the.Software.is.furnished.to.
10a920 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 6f 77 69 6e 67 20 do.so,.subject.to.the.following.
10a940 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 79 72 69 67 68 74 conditions:..The.above.copyright
10a960 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 6e 20 6e 6f 74 69 .notice.and.this.permission.noti
10a980 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 6c 0a 63 6f 70 69 ce.shall.be.included.in.all.copi
10a9a0 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 20 6f 66 20 74 68 es.or.substantial.portions.of.th
10a9c0 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 49 53 20 50 52 4f e.Software...THE.SOFTWARE.IS.PRO
10a9e0 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 52 41 4e 54 59 20 VIDED."AS.IS",.WITHOUT.WARRANTY.
10aa00 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 50 4c 49 45 44 2c OF.ANY.KIND,.EXPRESS.OR.IMPLIED,
10aa20 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 20 54 4f 20 54 48 .INCLUDING.BUT.NOT.LIMITED.TO.TH
10aa40 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 49 4c 49 54 59 2c E.WARRANTIES.OF.MERCHANTABILITY,
10aa60 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 50 55 52 50 4f 53 .FITNESS.FOR.A.PARTICULAR.PURPOS
10aa80 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 4e 4f 20 45 56 45 E.AND.NONINFRINGEMENT..IN.NO.EVE
10aaa0 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 50 59 52 49 47 48 NT.SHALL.THE.AUTHORS.OR.COPYRIGH
10aac0 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 59 20 43 4c 41 49 T.HOLDERS.BE.LIABLE.FOR.ANY.CLAI
10aae0 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 49 54 59 2c 20 57 M,.DAMAGES.OR.OTHER.LIABILITY,.W
10ab00 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 54 52 41 43 54 2c HETHER.IN.AN.ACTION.OF.CONTRACT,
10ab20 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 47 20 46 52 4f 4d .TORT.OR.OTHERWISE,.ARISING.FROM
10ab40 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 57 49 54 48 20 54 ,.OUT.OF.OR.IN.CONNECTION.WITH.T
10ab60 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 4f 54 48 45 52 20 HE.SOFTWARE.OR.THE.USE.OR.OTHER.
10ab80 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 3c 3f 70 68 70 0a DEALINGS.IN.THE.SOFTWARE..<?php.
10aba0 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
10abc0 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 53 68 65 6c 6c 3b 0a 0a 40 74 72 69 67 67 65 72 5f 65 72 onent\Finder\Shell;..@trigger_er
10abe0 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 43 6f 6d 6d 61 ror('The.'.__NAMESPACE__.'\Comma
10ac00 6e 64 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 65 72 nd.class.is.deprecated.since.ver
10ac20 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 6e 20 sion.2.8.and.will.be.removed.in.
10ac40 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 0a 0a 0a 0a 3.0.',.E_USER_DEPRECATED);......
10ac60 0a 63 6c 61 73 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 70 61 72 .class.Command.{....private.$par
10ac80 65 6e 74 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 62 69 74 73 20 3d 20 61 72 72 61 79 28 29 ent;.....private.$bits.=.array()
10aca0 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6c 61 62 65 6c 73 20 3d 20 61 72 72 61 79 28 29 3b ;.....private.$labels.=.array();
10acc0 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 65 72 72 6f 72 48 61 6e 64 6c 65 72 3b 0a 0a 0a 0a 0a .....private.$errorHandler;.....
10ace0 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 6f ..public.function.__construct(Co
10ad00 6d 6d 61 6e 64 20 24 70 61 72 65 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 mmand.$parent.=.null).{.$this->p
10ad20 61 72 65 6e 74 20 3d 20 24 70 61 72 65 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 arent.=.$parent;.}.......public.
10ad40 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 24 function.__toString().{.return.$
10ad60 74 68 69 73 2d 3e 6a 6f 69 6e 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 this->join();.}.........public.s
10ad80 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 28 43 6f 6d 6d 61 6e 64 20 24 70 tatic.function.create(Command.$p
10ada0 61 72 65 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 65 6c 66 28 arent.=.null).{.return.new.self(
10adc0 24 70 61 72 65 6e 74 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 $parent);.}.........public.stati
10ade0 63 20 66 75 6e 63 74 69 6f 6e 20 65 73 63 61 70 65 28 24 69 6e 70 75 74 29 0a 7b 0a 72 65 74 75 c.function.escape($input).{.retu
10ae00 72 6e 20 65 73 63 61 70 65 73 68 65 6c 6c 63 6d 64 28 24 69 6e 70 75 74 29 3b 0a 7d 0a 0a 0a 0a rn.escapeshellcmd($input);.}....
10ae20 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 71 75 6f 74 .....public.static.function.quot
10ae40 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 65 6c 6c 61 72 e($input).{.return.escapeshellar
10ae60 67 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 20 66 75 6e 63 g($input);.}.........public.func
10ae80 74 69 6f 6e 20 61 64 64 28 24 62 69 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 69 74 73 5b 5d 20 3d tion.add($bit).{.$this->bits[].=
10aea0 20 24 62 69 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 0a 0a 0a .$bit;..return.$this;.}.........
10aec0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 6f 70 28 24 62 69 74 29 0a 7b 0a 61 72 72 61 public.function.top($bit).{.arra
10aee0 79 5f 75 6e 73 68 69 66 74 28 24 74 68 69 73 2d 3e 62 69 74 73 2c 20 24 62 69 74 29 3b 0a 0a 66 y_unshift($this->bits,.$bit);..f
10af00 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6c 61 62 65 6c 73 20 61 73 20 24 6c 61 62 65 6c 20 oreach.($this->labels.as.$label.
10af20 3d 3e 20 24 69 6e 64 65 78 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 61 62 65 6c 73 5b 24 6c 61 62 65 =>.$index).{.$this->labels[$labe
10af40 6c 5d 20 2b 3d 20 31 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 l].+=.1;.}..return.$this;.}.....
10af60 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 72 67 28 24 61 72 67 29 0a 7b 0a ....public.function.arg($arg).{.
10af80 24 74 68 69 73 2d 3e 62 69 74 73 5b 5d 20 3d 20 73 65 6c 66 3a 3a 71 75 6f 74 65 28 24 61 72 67 $this->bits[].=.self::quote($arg
10afa0 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
10afc0 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6d 64 28 24 65 73 63 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 ic.function.cmd($esc).{.$this->b
10afe0 69 74 73 5b 5d 20 3d 20 73 65 6c 66 3a 3a 65 73 63 61 70 65 28 24 65 73 63 29 3b 0a 0a 72 65 74 its[].=.self::escape($esc);..ret
10b000 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
10b020 6e 63 74 69 6f 6e 20 69 6e 73 28 24 6c 61 62 65 6c 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 nction.ins($label).{.if.(isset($
10b040 74 68 69 73 2d 3e 6c 61 62 65 6c 73 5b 24 6c 61 62 65 6c 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e this->labels[$label])).{.throw.n
10b060 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 27 4c 61 ew.\RuntimeException(sprintf('La
10b080 62 65 6c 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 6c 61 62 65 bel."%s".already.exists.',.$labe
10b0a0 6c 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 62 69 74 73 5b 5d 20 3d 20 73 65 6c 66 3a 3a 63 72 l));.}..$this->bits[].=.self::cr
10b0c0 65 61 74 65 28 24 74 68 69 73 29 3b 0a 24 74 68 69 73 2d 3e 6c 61 62 65 6c 73 5b 24 6c 61 62 65 eate($this);.$this->labels[$labe
10b0e0 6c 5d 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 62 69 74 73 29 20 2d 20 31 3b 0a 0a 72 65 l].=.count($this->bits).-.1;..re
10b100 74 75 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 turn.$this->bits[$this->labels[$
10b120 6c 61 62 65 6c 5d 5d 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 label]];.}...........public.func
10b140 74 69 6f 6e 20 67 65 74 28 24 6c 61 62 65 6c 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 tion.get($label).{.if.(!isset($t
10b160 68 69 73 2d 3e 6c 61 62 65 6c 73 5b 24 6c 61 62 65 6c 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 his->labels[$label])).{.throw.ne
10b180 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 4c 61 62 w.\RuntimeException(sprintf('Lab
10b1a0 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 61 62 65 6c el."%s".does.not.exist.',.$label
10b1c0 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 69 74 73 5b 24 74 68 69 73 2d ));.}..return.$this->bits[$this-
10b1e0 3e 6c 61 62 65 6c 73 5b 24 6c 61 62 65 6c 5d 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c >labels[$label]];.}.........publ
10b200 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 6e 64 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d ic.function.end().{.if.(null.===
10b220 20 24 74 68 69 73 2d 3e 70 61 72 65 6e 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e .$this->parent).{.throw.new.\Run
10b240 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 61 6c 6c 69 6e 67 20 65 6e 64 20 6f 6e 20 72 6f timeException('Calling.end.on.ro
10b260 6f 74 20 63 6f 6d 6d 61 6e 64 20 64 6f 65 73 6e 5c 27 74 20 6d 61 6b 65 20 73 65 6e 73 65 2e 27 ot.command.doesn\'t.make.sense.'
10b280 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 72 65 6e 74 3b 0a 7d 0a 0a 0a );.}..return.$this->parent;.}...
10b2a0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 65 6e 67 74 68 28 29 0a 7b 0a 72 ....public.function.length().{.r
10b2c0 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 62 69 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a eturn.count($this->bits);.}.....
10b2e0 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 72 72 6f 72 48 61 6e 64 6c 65 ..public.function.setErrorHandle
10b300 72 28 5c 43 6c 6f 73 75 72 65 20 24 65 72 72 6f 72 48 61 6e 64 6c 65 72 29 0a 7b 0a 24 74 68 69 r(\Closure.$errorHandler).{.$thi
10b320 73 2d 3e 65 72 72 6f 72 48 61 6e 64 6c 65 72 20 3d 20 24 65 72 72 6f 72 48 61 6e 64 6c 65 72 3b s->errorHandler.=.$errorHandler;
10b340 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
10b360 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 48 61 6e 64 6c 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e ction.getErrorHandler().{.return
10b380 20 24 74 68 69 73 2d 3e 65 72 72 6f 72 48 61 6e 64 6c 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a .$this->errorHandler;.}.........
10b3a0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 29 0a 7b 0a 69 66 20 28 public.function.execute().{.if.(
10b3c0 6e 75 6c 6c 20 3d 3d 3d 20 24 65 72 72 6f 72 48 61 6e 64 6c 65 72 20 3d 20 24 74 68 69 73 2d 3e null.===.$errorHandler.=.$this->
10b3e0 65 72 72 6f 72 48 61 6e 64 6c 65 72 29 20 7b 0a 65 78 65 63 28 24 74 68 69 73 2d 3e 6a 6f 69 6e errorHandler).{.exec($this->join
10b400 28 29 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 72 6f 63 65 73 73 20 (),.$output);.}.else.{.$process.
10b420 3d 20 70 72 6f 63 5f 6f 70 65 6e 28 24 74 68 69 73 2d 3e 6a 6f 69 6e 28 29 2c 20 61 72 72 61 79 =.proc_open($this->join(),.array
10b440 28 30 20 3d 3e 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 72 27 29 2c 20 31 20 3d 3e 20 61 (0.=>.array('pipe',.'r'),.1.=>.a
10b460 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 79 28 27 70 rray('pipe',.'w'),.2.=>.array('p
10b480 69 70 65 27 2c 20 27 77 27 29 29 2c 20 24 70 69 70 65 73 29 3b 0a 24 6f 75 74 70 75 74 20 3d 20 ipe',.'w')),.$pipes);.$output.=.
10b4a0 70 72 65 67 5f 73 70 6c 69 74 28 27 7e 28 5c 72 5c 6e 7c 5c 72 7c 5c 6e 29 7e 27 2c 20 73 74 72 preg_split('~(\r\n|\r|\n)~',.str
10b4c0 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 2c 20 2d 31 2c eam_get_contents($pipes[1]),.-1,
10b4e0 20 50 52 45 47 5f 53 50 4c 49 54 5f 4e 4f 5f 45 4d 50 54 59 29 3b 0a 0a 69 66 20 28 24 65 72 72 .PREG_SPLIT_NO_EMPTY);..if.($err
10b500 6f 72 20 3d 20 73 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 or.=.stream_get_contents($pipes[
10b520 32 5d 29 29 20 7b 0a 24 65 72 72 6f 72 48 61 6e 64 6c 65 72 28 24 65 72 72 6f 72 29 3b 0a 7d 0a 2])).{.$errorHandler($error);.}.
10b540 0a 70 72 6f 63 5f 63 6c 6f 73 65 28 24 70 72 6f 63 65 73 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e .proc_close($process);.}..return
10b560 20 24 6f 75 74 70 75 74 20 3f 3a 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 .$output.?:.array();.}.......pub
10b580 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6a 6f 69 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 6d 70 lic.function.join().{.return.imp
10b5a0 6c 6f 64 65 28 27 20 27 2c 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 0a 61 72 72 61 79 5f 6d 61 lode('.',.array_filter(.array_ma
10b5c0 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 62 69 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 62 69 74 20 p(function.($bit).{.return.$bit.
10b5e0 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6d 6d 61 6e 64 20 3f 20 24 62 69 74 2d 3e 6a 6f 69 6e 28 instanceof.Command.?.$bit->join(
10b600 29 20 3a 20 28 24 62 69 74 20 3f 3a 20 6e 75 6c 6c 29 3b 0a 7d 2c 20 24 74 68 69 73 2d 3e 62 69 ).:.($bit.?:.null);.},.$this->bi
10b620 74 73 29 2c 0a 66 75 6e 63 74 69 6f 6e 20 28 24 62 69 74 29 20 7b 20 72 65 74 75 72 6e 20 6e 75 ts),.function.($bit).{.return.nu
10b640 6c 6c 20 21 3d 3d 20 24 62 69 74 3b 20 7d 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 ll.!==.$bit;.}.));.}..........pu
10b660 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 41 74 49 6e 64 65 78 28 24 62 69 74 2c 20 24 blic.function.addAtIndex($bit,.$
10b680 69 6e 64 65 78 29 0a 7b 0a 61 72 72 61 79 5f 73 70 6c 69 63 65 28 24 74 68 69 73 2d 3e 62 69 74 index).{.array_splice($this->bit
10b6a0 73 2c 20 24 69 6e 64 65 78 2c 20 30 2c 20 24 62 69 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 73 65 s,.$index,.0,.$bit.instanceof.se
10b6c0 6c 66 20 3f 20 61 72 72 61 79 28 24 62 69 74 29 20 3a 20 24 62 69 74 29 3b 0a 0a 72 65 74 75 72 lf.?.array($bit).:.$bit);..retur
10b6e0 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 6e 61 6d n.$this;.}.}.<?php...........nam
10b700 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\
10b720 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 5f 5f Shell;..@trigger_error('The.'.__
10b740 4e 41 4d 45 53 50 41 43 45 5f 5f 2e 27 5c 53 68 65 6c 6c 20 63 6c 61 73 73 20 69 73 20 64 65 70 NAMESPACE__.'\Shell.class.is.dep
10b760 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 20 77 69 recated.since.version.2.8.and.wi
10b780 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 5f 44 ll.be.removed.in.3.0.',.E_USER_D
10b7a0 45 50 52 45 43 41 54 45 44 29 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 68 65 6c 6c 0a 7b 0a EPRECATED);.......class.Shell.{.
10b7c0 63 6f 6e 73 74 20 54 59 50 45 5f 55 4e 49 58 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f const.TYPE_UNIX.=.1;.const.TYPE_
10b7e0 44 41 52 57 49 4e 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 43 59 47 57 49 4e 20 3d 20 DARWIN.=.2;.const.TYPE_CYGWIN.=.
10b800 33 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 57 49 4e 44 4f 57 53 20 3d 20 34 3b 0a 63 6f 6e 73 74 3;.const.TYPE_WINDOWS.=.4;.const
10b820 20 54 59 50 45 5f 42 53 44 20 3d 20 35 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 74 79 70 65 .TYPE_BSD.=.5;.....private.$type
10b840 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 79 70 65 28 ;.......public.function.getType(
10b860 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 79 70 65 29 20 7b 0a ).{.if.(null.===.$this->type).{.
10b880 24 74 68 69 73 2d 3e 74 79 70 65 20 3d 20 24 74 68 69 73 2d 3e 67 75 65 73 73 54 79 70 65 28 29 $this->type.=.$this->guessType()
10b8a0 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 0a ;.}..return.$this->type;.}......
10b8c0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 65 73 74 43 6f 6d 6d 61 6e 64 28 24 ...public.function.testCommand($
10b8e0 63 6f 6d 6d 61 6e 64 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 command).{.if.(!function_exists(
10b900 27 65 78 65 63 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 20 24 74 'exec')).{.return.false;.}....$t
10b920 65 73 74 43 6f 6d 6d 61 6e 64 20 3d 20 27 77 68 69 63 68 20 27 3b 0a 69 66 20 28 73 65 6c 66 3a estCommand.=.'which.';.if.(self:
10b940 3a 54 59 50 45 5f 57 49 4e 44 4f 57 53 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 79 70 65 29 20 7b :TYPE_WINDOWS.===.$this->type).{
10b960 0a 24 74 65 73 74 43 6f 6d 6d 61 6e 64 20 3d 20 27 77 68 65 72 65 20 27 3b 0a 7d 0a 0a 24 63 6f .$testCommand.=.'where.';.}..$co
10b980 6d 6d 61 6e 64 20 3d 20 65 73 63 61 70 65 73 68 65 6c 6c 63 6d 64 28 24 63 6f 6d 6d 61 6e 64 29 mmand.=.escapeshellcmd($command)
10b9a0 3b 0a 0a 65 78 65 63 28 24 74 65 73 74 43 6f 6d 6d 61 6e 64 2e 24 63 6f 6d 6d 61 6e 64 2c 20 24 ;..exec($testCommand.$command,.$
10b9c0 6f 75 74 70 75 74 2c 20 24 63 6f 64 65 29 3b 0a 0a 72 65 74 75 72 6e 20 30 20 3d 3d 3d 20 24 63 output,.$code);..return.0.===.$c
10b9e0 6f 64 65 20 26 26 20 63 6f 75 6e 74 28 24 6f 75 74 70 75 74 29 20 3e 20 30 3b 0a 7d 0a 0a 0a 0a ode.&&.count($output).>.0;.}....
10ba00 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 75 65 73 73 54 79 70 65 28 29 0a ...private.function.guessType().
10ba20 7b 0a 24 6f 73 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 50 48 50 5f 4f 53 29 3b 0a 0a 69 66 20 {.$os.=.strtolower(PHP_OS);..if.
10ba40 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 6f 73 2c 20 27 63 79 67 77 69 6e 27 29 (false.!==.strpos($os,.'cygwin')
10ba60 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 43 59 47 57 49 4e 3b 0a 7d 0a ).{.return.self::TYPE_CYGWIN;.}.
10ba80 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 6f 73 2c 20 27 64 61 72 77 .if.(false.!==.strpos($os,.'darw
10baa0 69 6e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 44 41 52 57 49 4e in')).{.return.self::TYPE_DARWIN
10bac0 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 24 6f 73 2c 20 27 ;.}..if.(false.!==.strpos($os,.'
10bae0 62 73 64 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 42 53 44 3b 0a bsd')).{.return.self::TYPE_BSD;.
10bb00 7d 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 6f 73 2c 20 27 77 69 6e 27 29 29 }..if.(0.===.strpos($os,.'win'))
10bb20 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 57 49 4e 44 4f 57 53 3b 0a 7d 0a .{.return.self::TYPE_WINDOWS;.}.
10bb40 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 54 59 50 45 5f 55 4e 49 58 3b 0a 7d 0a 7d 0a 3c 3f 70 .return.self::TYPE_UNIX;.}.}.<?p
10bb60 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
10bb80 6f 6d 70 6f 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 53 70 6c omponent\Finder;.......class.Spl
10bba0 46 69 6c 65 49 6e 66 6f 20 65 78 74 65 6e 64 73 20 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 0a 7b 0a FileInfo.extends.\SplFileInfo.{.
10bbc0 70 72 69 76 61 74 65 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 70 72 69 76 61 74 65 20 24 private.$relativePath;.private.$
10bbe0 72 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 relativePathname;.........public
10bc00 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 66 69 6c 65 2c 20 24 72 65 .function.__construct($file,.$re
10bc20 6c 61 74 69 76 65 50 61 74 68 2c 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 29 0a 7b lativePath,.$relativePathname).{
10bc40 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 66 69 6c 65 29 3b 0a 24 74 68 .parent::__construct($file);.$th
10bc60 69 73 2d 3e 72 65 6c 61 74 69 76 65 50 61 74 68 20 3d 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 is->relativePath.=.$relativePath
10bc80 3b 0a 24 74 68 69 73 2d 3e 72 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 20 3d 20 24 72 65 6c ;.$this->relativePathname.=.$rel
10bca0 61 74 69 76 65 50 61 74 68 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 ativePathname;.}.......public.fu
10bcc0 6e 63 74 69 6f 6e 20 67 65 74 52 65 6c 61 74 69 76 65 50 61 74 68 28 29 0a 7b 0a 72 65 74 75 72 nction.getRelativePath().{.retur
10bce0 6e 20 24 74 68 69 73 2d 3e 72 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 n.$this->relativePath;.}.......p
10bd00 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 6c 61 74 69 76 65 50 61 74 68 6e 61 ublic.function.getRelativePathna
10bd20 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6c 61 74 69 76 65 50 61 74 me().{.return.$this->relativePat
10bd40 68 6e 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 hname;.}.........public.function
10bd60 20 67 65 74 43 6f 6e 74 65 6e 74 73 28 29 0a 7b 0a 24 6c 65 76 65 6c 20 3d 20 65 72 72 6f 72 5f .getContents().{.$level.=.error_
10bd80 72 65 70 6f 72 74 69 6e 67 28 30 29 3b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 66 69 6c 65 5f 67 65 reporting(0);.$content.=.file_ge
10bda0 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 29 t_contents($this->getPathname())
10bdc0 3b 0a 65 72 72 6f 72 5f 72 65 70 6f 72 74 69 6e 67 28 24 6c 65 76 65 6c 29 3b 0a 69 66 20 28 66 ;.error_reporting($level);.if.(f
10bde0 61 6c 73 65 20 3d 3d 3d 20 24 63 6f 6e 74 65 6e 74 29 20 7b 0a 24 65 72 72 6f 72 20 3d 20 65 72 alse.===.$content).{.$error.=.er
10be00 72 6f 72 5f 67 65 74 5f 6c 61 73 74 28 29 3b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 ror_get_last();.throw.new.\Runti
10be20 6d 65 45 78 63 65 70 74 69 6f 6e 28 24 65 72 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 29 3b 0a meException($error['message']);.
10be40 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6e 74 65 6e 74 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 }..return.$content;.}.}.Copyrigh
10be60 74 20 28 63 29 20 32 30 31 34 2d 32 30 31 35 20 46 61 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 72 t.(c).2014-2015.Fabien.Potencier
10be80 0a 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 ..Permission.is.hereby.granted,.
10bea0 66 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 free.of.charge,.to.any.person.ob
10bec0 74 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 taining.a.copy.of.this.software.
10bee0 61 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 and.associated.documentation.fil
10bf00 65 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 es.(the."Software"),.to.deal.in.
10bf20 74 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 the.Software.without.restriction
10bf40 2c 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 ,.including.without.limitation.t
10bf60 68 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 he.rights.to.use,.copy,.modify,.
10bf80 6d 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 merge,.publish,.distribute,.subl
10bfa0 69 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 icense,.and/or.sell.copies.of.th
10bfc0 65 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 e.Software,.and.to.permit.person
10bfe0 73 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 s.to.whom.the.Software.is.furnis
10c000 68 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 hed.to.do.so,.subject.to.the.fol
10c020 6c 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 lowing.conditions:..The.above.co
10c040 70 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 pyright.notice.and.this.permissi
10c060 6f 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 on.notice.shall.be.included.in.a
10c080 6c 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 ll.copies.or.substantial.portion
10c0a0 73 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 s.of.the.Software...THE.SOFTWARE
10c0c0 20 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 .IS.PROVIDED."AS.IS",.WITHOUT.WA
10c0e0 52 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 RRANTY.OF.ANY.KIND,.EXPRESS.OR.I
10c100 4d 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 MPLIED,.INCLUDING.BUT.NOT.LIMITE
10c120 44 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 D.TO.THE.WARRANTIES.OF.MERCHANTA
10c140 42 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 BILITY,.FITNESS.FOR.A.PARTICULAR
10c160 20 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 .PURPOSE.AND.NONINFRINGEMENT..IN
10c180 20 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 .NO.EVENT.SHALL.THE.AUTHORS.OR.C
10c1a0 4f 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 OPYRIGHT.HOLDERS.BE.LIABLE.FOR.A
10c1c0 4e 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 NY.CLAIM,.DAMAGES.OR.OTHER.LIABI
10c1e0 4c 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 LITY,.WHETHER.IN.AN.ACTION.OF.CO
10c200 4e 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 NTRACT,.TORT.OR.OTHERWISE,.ARISI
10c220 4e 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 NG.FROM,.OUT.OF.OR.IN.CONNECTION
10c240 20 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 .WITH.THE.SOFTWARE.OR.THE.USE.OR
10c260 20 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 .OTHER.DEALINGS.IN.THE.SOFTWARE.
10c280 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
10c2a0 6e 79 5c 50 6f 6c 79 66 69 6c 6c 5c 4d 62 73 74 72 69 6e 67 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ny\Polyfill\Mbstring;...........
10c2c0 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 ................................
10c2e0 0a 0a 0a 0a 0a 0a 0a 0a 66 69 6e 61 6c 20 63 6c 61 73 73 20 4d 62 73 74 72 69 6e 67 0a 7b 0a 63 ........final.class.Mbstring.{.c
10c300 6f 6e 73 74 20 4d 42 5f 43 41 53 45 5f 46 4f 4c 44 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 3b onst.MB_CASE_FOLD.=.PHP_INT_MAX;
10c320 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d ..private.static.$encodingList.=
10c340 20 61 72 72 61 79 28 27 41 53 43 49 49 27 2c 20 27 55 54 46 2d 38 27 29 3b 0a 70 72 69 76 61 74 .array('ASCII',.'UTF-8');.privat
10c360 65 20 73 74 61 74 69 63 20 24 6c 61 6e 67 75 61 67 65 20 3d 20 27 6e 65 75 74 72 61 6c 27 3b 0a e.static.$language.=.'neutral';.
10c380 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 69 6e 74 65 72 6e 61 6c 45 6e 63 6f 64 69 6e 67 private.static.$internalEncoding
10c3a0 20 3d 20 27 55 54 46 2d 38 27 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 63 61 73 65 .=.'UTF-8';.private.static.$case
10c3c0 46 6f 6c 64 20 3d 20 61 72 72 61 79 28 0a 61 72 72 61 79 28 27 c2 b5 27 2c 27 c5 bf 27 2c 22 5c Fold.=.array(.array('..','..',"\
10c3e0 78 43 44 5c 78 38 35 22 2c 27 cf 82 27 2c 22 5c 78 43 46 5c 78 39 30 22 2c 22 5c 78 43 46 5c 78 xCD\x85",'..',"\xCF\x90","\xCF\x
10c400 39 31 22 2c 22 5c 78 43 46 5c 78 39 35 22 2c 22 5c 78 43 46 5c 78 39 36 22 2c 22 5c 78 43 46 5c 91","\xCF\x95","\xCF\x96","\xCF\
10c420 78 42 30 22 2c 22 5c 78 43 46 5c 78 42 31 22 2c 22 5c 78 43 46 5c 78 42 35 22 2c 22 5c 78 45 31 xB0","\xCF\xB1","\xCF\xB5","\xE1
10c440 5c 78 42 41 5c 78 39 42 22 2c 22 5c 78 45 31 5c 78 42 45 5c 78 42 45 22 29 2c 0a 61 72 72 61 79 \xBA\x9B","\xE1\xBE\xBE"),.array
10c460 28 27 ce bc 27 2c 27 73 27 2c 27 ce b9 27 2c 20 27 cf 83 27 2c 27 ce b2 27 2c 20 27 ce b8 27 2c ('..','s','..',.'..','..',.'..',
10c480 20 27 cf 86 27 2c 20 27 cf 80 27 2c 20 27 ce ba 27 2c 20 27 cf 81 27 2c 20 27 ce b5 27 2c 20 22 .'..',.'..',.'..',.'..',.'..',."
10c4a0 5c 78 45 31 5c 78 42 39 5c 78 41 31 22 2c 27 ce b9 27 29 2c 0a 29 3b 0a 0a 70 75 62 6c 69 63 20 \xE1\xB9\xA1",'..'),.);..public.
10c4c0 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f 64 static.function.mb_convert_encod
10c4e0 69 6e 67 28 24 73 2c 20 24 74 6f 45 6e 63 6f 64 69 6e 67 2c 20 24 66 72 6f 6d 45 6e 63 6f 64 69 ing($s,.$toEncoding,.$fromEncodi
10c500 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 66 72 6f 6d 45 ng.=.null).{.if.(is_array($fromE
10c520 6e 63 6f 64 69 6e 67 29 20 7c 7c 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 66 72 ncoding).||.false.!==.strpos($fr
10c540 6f 6d 45 6e 63 6f 64 69 6e 67 2c 20 27 2c 27 29 29 20 7b 0a 24 66 72 6f 6d 45 6e 63 6f 64 69 6e omEncoding,.',')).{.$fromEncodin
10c560 67 20 3d 20 73 65 6c 66 3a 3a 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 2c g.=.self::mb_detect_encoding($s,
10c580 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 66 72 6f 6d 45 .$fromEncoding);.}.else.{.$fromE
10c5a0 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 66 72 6f ncoding.=.self::getEncoding($fro
10c5c0 6d 45 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 24 74 6f 45 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c mEncoding);.}..$toEncoding.=.sel
10c5e0 66 3a 3a 67 65 74 45 6e 63 6f 64 69 6e 67 28 24 74 6f 45 6e 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 f::getEncoding($toEncoding);..if
10c600 20 28 27 42 41 53 45 36 34 27 20 3d 3d 3d 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 20 7b 0a .('BASE64'.===.$fromEncoding).{.
10c620 24 73 20 3d 20 62 61 73 65 36 34 5f 64 65 63 6f 64 65 28 24 73 29 3b 0a 24 66 72 6f 6d 45 6e 63 $s.=.base64_decode($s);.$fromEnc
10c640 6f 64 69 6e 67 20 3d 20 24 74 6f 45 6e 63 6f 64 69 6e 67 3b 0a 7d 0a 0a 69 66 20 28 27 42 41 53 oding.=.$toEncoding;.}..if.('BAS
10c660 45 36 34 27 20 3d 3d 3d 20 24 74 6f 45 6e 63 6f 64 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 62 E64'.===.$toEncoding).{.return.b
10c680 61 73 65 36 34 5f 65 6e 63 6f 64 65 28 24 73 29 3b 0a 7d 0a 0a 69 66 20 28 27 48 54 4d 4c 2d 45 ase64_encode($s);.}..if.('HTML-E
10c6a0 4e 54 49 54 49 45 53 27 20 3d 3d 3d 20 24 74 6f 45 6e 63 6f 64 69 6e 67 20 7c 7c 20 27 48 54 4d NTITIES'.===.$toEncoding.||.'HTM
10c6c0 4c 27 20 3d 3d 3d 20 24 74 6f 45 6e 63 6f 64 69 6e 67 29 20 7b 0a 69 66 20 28 27 48 54 4d 4c 2d L'.===.$toEncoding).{.if.('HTML-
10c6e0 45 4e 54 49 54 49 45 53 27 20 3d 3d 3d 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 20 7c 7c 20 27 ENTITIES'.===.$fromEncoding.||.'
10c700 48 54 4d 4c 27 20 3d 3d 3d 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 20 7b 0a 24 66 72 6f 6d HTML'.===.$fromEncoding).{.$from
10c720 45 6e 63 6f 64 69 6e 67 20 3d 20 27 57 69 6e 64 6f 77 73 2d 31 32 35 32 27 3b 0a 7d 0a 69 66 20 Encoding.=.'Windows-1252';.}.if.
10c740 28 27 55 54 46 2d 38 27 20 21 3d 3d 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 20 7b 0a 24 73 ('UTF-8'.!==.$fromEncoding).{.$s
10c760 20 3d 20 69 63 6f 6e 76 28 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 2c 20 27 55 54 46 2d 38 27 2c .=.iconv($fromEncoding,.'UTF-8',
10c780 20 24 73 29 3b 0a 7d 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 .$s);.}..return.preg_replace_cal
10c7a0 6c 62 61 63 6b 28 27 2f 5b 5c 78 38 30 2d 5c 78 46 46 5d 2b 2f 27 2c 20 61 72 72 61 79 28 5f 5f lback('/[\x80-\xFF]+/',.array(__
10c7c0 43 4c 41 53 53 5f 5f 2c 20 27 68 74 6d 6c 5f 65 6e 63 6f 64 69 6e 67 5f 63 61 6c 6c 62 61 63 6b CLASS__,.'html_encoding_callback
10c7e0 27 29 2c 20 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 '),.$s);.}..if.('HTML-ENTITIES'.
10c800 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 68 74 6d 6c 5f 65 ===.$fromEncoding).{.$s.=.html_e
10c820 6e 74 69 74 79 5f 64 65 63 6f 64 65 28 24 73 2c 20 45 4e 54 5f 43 4f 4d 50 41 54 2c 20 27 55 54 ntity_decode($s,.ENT_COMPAT,.'UT
10c840 46 2d 38 27 29 3b 0a 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 20 3d 20 27 55 54 46 2d 38 27 3b 0a F-8');.$fromEncoding.=.'UTF-8';.
10c860 7d 0a 0a 72 65 74 75 72 6e 20 69 63 6f 6e 76 28 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 2c 20 24 }..return.iconv($fromEncoding,.$
10c880 74 6f 45 6e 63 6f 64 69 6e 67 2c 20 24 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 toEncoding,.$s);.}..public.stati
10c8a0 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 63 6f 6e 76 65 72 74 5f 76 61 72 69 61 62 6c 65 73 28 c.function.mb_convert_variables(
10c8c0 24 74 6f 45 6e 63 6f 64 69 6e 67 2c 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 2c 20 26 24 61 20 $toEncoding,.$fromEncoding,.&$a.
10c8e0 3d 20 6e 75 6c 6c 2c 20 26 24 62 20 3d 20 6e 75 6c 6c 2c 20 26 24 63 20 3d 20 6e 75 6c 6c 2c 20 =.null,.&$b.=.null,.&$c.=.null,.
10c900 26 24 64 20 3d 20 6e 75 6c 6c 2c 20 26 24 65 20 3d 20 6e 75 6c 6c 2c 20 26 24 66 20 3d 20 6e 75 &$d.=.null,.&$e.=.null,.&$f.=.nu
10c920 6c 6c 29 0a 7b 0a 24 76 61 72 73 20 3d 20 61 72 72 61 79 28 26 24 61 2c 20 26 24 62 2c 20 26 24 ll).{.$vars.=.array(&$a,.&$b,.&$
10c940 63 2c 20 26 24 64 2c 20 26 24 65 2c 20 26 24 66 29 3b 0a 0a 24 6f 6b 20 3d 20 74 72 75 65 3b 0a c,.&$d,.&$e,.&$f);..$ok.=.true;.
10c960 61 72 72 61 79 5f 77 61 6c 6b 5f 72 65 63 75 72 73 69 76 65 28 24 76 61 72 73 2c 20 66 75 6e 63 array_walk_recursive($vars,.func
10c980 74 69 6f 6e 20 28 26 24 76 29 20 75 73 65 20 28 26 24 6f 6b 2c 20 24 74 6f 45 6e 63 6f 64 69 6e tion.(&$v).use.(&$ok,.$toEncodin
10c9a0 67 2c 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d g,.$fromEncoding).{.if.(false.==
10c9c0 3d 20 24 76 20 3d 20 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f =.$v.=.Mbstring::mb_convert_enco
10c9e0 64 69 6e 67 28 24 76 2c 20 24 74 6f 45 6e 63 6f 64 69 6e 67 2c 20 24 66 72 6f 6d 45 6e 63 6f 64 ding($v,.$toEncoding,.$fromEncod
10ca00 69 6e 67 29 29 20 7b 0a 24 6f 6b 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 7d 29 3b 0a 0a 72 65 74 75 ing)).{.$ok.=.false;.}.});..retu
10ca20 72 6e 20 24 6f 6b 20 3f 20 24 66 72 6f 6d 45 6e 63 6f 64 69 6e 67 20 3a 20 66 61 6c 73 65 3b 0a rn.$ok.?.$fromEncoding.:.false;.
10ca40 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 64 65 63 }..public.static.function.mb_dec
10ca60 6f 64 65 5f 6d 69 6d 65 68 65 61 64 65 72 28 24 73 29 0a 7b 0a 72 65 74 75 72 6e 20 69 63 6f 6e ode_mimeheader($s).{.return.icon
10ca80 76 5f 6d 69 6d 65 5f 64 65 63 6f 64 65 28 24 73 2c 20 32 2c 20 73 65 6c 66 3a 3a 24 69 6e 74 65 v_mime_decode($s,.2,.self::$inte
10caa0 72 6e 61 6c 45 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 rnalEncoding);.}..public.static.
10cac0 66 75 6e 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 function.mb_encode_mimeheader($s
10cae0 2c 20 24 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 6f ,.$charset.=.null,.$transferEnco
10cb00 64 69 6e 67 20 3d 20 6e 75 6c 6c 2c 20 24 6c 69 6e 65 66 65 65 64 20 3d 20 6e 75 6c 6c 2c 20 24 ding.=.null,.$linefeed.=.null,.$
10cb20 69 6e 64 65 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 27 indent.=.null).{.trigger_error('
10cb40 6d 62 5f 65 6e 63 6f 64 65 5f 6d 69 6d 65 68 65 61 64 65 72 28 29 20 69 73 20 62 75 67 67 65 64 mb_encode_mimeheader().is.bugged
10cb60 2e 20 50 6c 65 61 73 65 20 75 73 65 20 69 63 6f 6e 76 5f 6d 69 6d 65 5f 65 6e 63 6f 64 65 28 29 ..Please.use.iconv_mime_encode()
10cb80 20 69 6e 73 74 65 61 64 27 2c 20 45 5f 55 53 45 52 5f 57 41 52 4e 49 4e 47 29 3b 0a 7d 0a 0a 70 .instead',.E_USER_WARNING);.}..p
10cba0 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 63 6f 6e 76 65 72 74 ublic.static.function.mb_convert
10cbc0 5f 63 61 73 65 28 24 73 2c 20 24 6d 6f 64 65 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c _case($s,.$mode,.$encoding.=.nul
10cbe0 6c 29 0a 7b 0a 69 66 20 28 27 27 20 3d 3d 3d 20 24 73 20 2e 3d 20 27 27 29 20 7b 0a 72 65 74 75 l).{.if.(''.===.$s..=.'').{.retu
10cc00 72 6e 20 27 27 3b 0a 7d 0a 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c 66 3a 3a 67 65 74 45 rn.'';.}..$encoding.=.self::getE
10cc20 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 20 28 27 55 54 46 2d 38 27 ncoding($encoding);..if.('UTF-8'
10cc40 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 29 20 7b 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 .===.$encoding).{.$encoding.=.nu
10cc60 6c 6c 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 20 3d 20 69 63 6f 6e 76 28 24 65 6e 63 6f 64 69 6e ll;.}.else.{.$s.=.iconv($encodin
10cc80 67 2c 20 27 55 54 46 2d 38 27 2c 20 24 73 29 3b 0a 7d 0a 0a 69 66 20 28 4d 42 5f 43 41 53 45 5f g,.'UTF-8',.$s);.}..if.(MB_CASE_
10cca0 54 49 54 4c 45 20 3d 3d 20 24 6d 6f 64 65 29 20 7b 0a 24 73 20 3d 20 70 72 65 67 5f 72 65 70 6c TITLE.==.$mode).{.$s.=.preg_repl
10ccc0 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 2f 5c 62 5c 70 7b 4c 6c 7d 2f 75 27 2c 20 61 72 72 61 ace_callback('/\b\p{Ll}/u',.arra
10cce0 79 28 5f 5f 43 4c 41 53 53 5f 5f 2c 20 27 74 69 74 6c 65 5f 63 61 73 65 5f 75 70 70 65 72 27 29 y(__CLASS__,.'title_case_upper')
10cd00 2c 20 24 73 29 3b 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 ,.$s);.$s.=.preg_replace_callbac
10cd20 6b 28 27 2f 5c 42 5b 5c 70 7b 4c 75 7d 5c 70 7b 4c 74 7d 5d 2b 2f 75 27 2c 20 61 72 72 61 79 28 k('/\B[\p{Lu}\p{Lt}]+/u',.array(
10cd40 5f 5f 43 4c 41 53 53 5f 5f 2c 20 27 74 69 74 6c 65 5f 63 61 73 65 5f 6c 6f 77 65 72 27 29 2c 20 __CLASS__,.'title_case_lower'),.
10cd60 24 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 4d 42 5f 43 41 53 45 5f 55 50 50 45 52 20 $s);.}.else.{.if.(MB_CASE_UPPER.
10cd80 3d 3d 20 24 6d 6f 64 65 29 20 7b 0a 73 74 61 74 69 63 20 24 75 70 70 65 72 20 3d 20 6e 75 6c 6c ==.$mode).{.static.$upper.=.null
10cda0 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 75 70 70 65 72 29 20 7b 0a 24 75 70 70 65 72 20 ;.if.(null.===.$upper).{.$upper.
10cdc0 3d 20 73 65 6c 66 3a 3a 67 65 74 44 61 74 61 28 27 75 70 70 65 72 43 61 73 65 27 29 3b 0a 7d 0a =.self::getData('upperCase');.}.
10cde0 24 6d 61 70 20 3d 20 24 75 70 70 65 72 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 73 65 6c 66 $map.=.$upper;.}.else.{.if.(self
10ce00 3a 3a 4d 42 5f 43 41 53 45 5f 46 4f 4c 44 20 3d 3d 3d 20 24 6d 6f 64 65 29 20 7b 0a 24 73 20 3d ::MB_CASE_FOLD.===.$mode).{.$s.=
10ce20 20 73 74 72 5f 72 65 70 6c 61 63 65 28 73 65 6c 66 3a 3a 24 63 61 73 65 46 6f 6c 64 5b 30 5d 2c .str_replace(self::$caseFold[0],
10ce40 20 73 65 6c 66 3a 3a 24 63 61 73 65 46 6f 6c 64 5b 31 5d 2c 20 24 73 29 3b 0a 7d 0a 0a 73 74 61 .self::$caseFold[1],.$s);.}..sta
10ce60 74 69 63 20 24 6c 6f 77 65 72 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 tic.$lower.=.null;.if.(null.===.
10ce80 24 6c 6f 77 65 72 29 20 7b 0a 24 6c 6f 77 65 72 20 3d 20 73 65 6c 66 3a 3a 67 65 74 44 61 74 61 $lower).{.$lower.=.self::getData
10cea0 28 27 6c 6f 77 65 72 43 61 73 65 27 29 3b 0a 7d 0a 24 6d 61 70 20 3d 20 24 6c 6f 77 65 72 3b 0a ('lowerCase');.}.$map.=.$lower;.
10cec0 7d 0a 0a 73 74 61 74 69 63 20 24 75 6c 65 6e 4d 61 73 6b 20 3d 20 61 72 72 61 79 28 22 5c 78 43 }..static.$ulenMask.=.array("\xC
10cee0 30 22 20 3d 3e 20 32 2c 20 22 5c 78 44 30 22 20 3d 3e 20 32 2c 20 22 5c 78 45 30 22 20 3d 3e 20 0".=>.2,."\xD0".=>.2,."\xE0".=>.
10cf00 33 2c 20 22 5c 78 46 30 22 20 3d 3e 20 34 29 3b 0a 0a 24 69 20 3d 20 30 3b 0a 24 6c 65 6e 20 3d 3,."\xF0".=>.4);..$i.=.0;.$len.=
10cf20 20 73 74 72 6c 65 6e 28 24 73 29 3b 0a 0a 77 68 69 6c 65 20 28 24 69 20 3c 20 24 6c 65 6e 29 20 .strlen($s);..while.($i.<.$len).
10cf40 7b 0a 24 75 6c 65 6e 20 3d 20 24 73 5b 24 69 5d 20 3c 20 22 5c 78 38 30 22 20 3f 20 31 20 3a 20 {.$ulen.=.$s[$i].<."\x80".?.1.:.
10cf60 24 75 6c 65 6e 4d 61 73 6b 5b 24 73 5b 24 69 5d 20 26 20 22 5c 78 46 30 22 5d 3b 0a 24 75 63 68 $ulenMask[$s[$i].&."\xF0"];.$uch
10cf80 72 20 3d 20 73 75 62 73 74 72 28 24 73 2c 20 24 69 2c 20 24 75 6c 65 6e 29 3b 0a 24 69 20 2b 3d r.=.substr($s,.$i,.$ulen);.$i.+=
10cfa0 20 24 75 6c 65 6e 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 6d 61 70 5b 24 75 63 68 72 5d 29 29 .$ulen;..if.(isset($map[$uchr]))
10cfc0 20 7b 0a 24 75 63 68 72 20 3d 20 24 6d 61 70 5b 24 75 63 68 72 5d 3b 0a 24 6e 6c 65 6e 20 3d 20 .{.$uchr.=.$map[$uchr];.$nlen.=.
10cfe0 73 74 72 6c 65 6e 28 24 75 63 68 72 29 3b 0a 0a 69 66 20 28 24 6e 6c 65 6e 20 3d 3d 20 24 75 6c strlen($uchr);..if.($nlen.==.$ul
10d000 65 6e 29 20 7b 0a 24 6e 6c 65 6e 20 3d 20 24 69 3b 0a 64 6f 20 7b 0a 24 73 5b 2d 2d 24 6e 6c 65 en).{.$nlen.=.$i;.do.{.$s[--$nle
10d020 6e 5d 20 3d 20 24 75 63 68 72 5b 2d 2d 24 75 6c 65 6e 5d 3b 0a 7d 20 77 68 69 6c 65 20 28 24 75 n].=.$uchr[--$ulen];.}.while.($u
10d040 6c 65 6e 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 20 3d 20 73 75 62 73 74 72 5f 72 65 70 6c 61 len);.}.else.{.$s.=.substr_repla
10d060 63 65 28 24 73 2c 20 24 75 63 68 72 2c 20 24 69 20 2d 20 24 75 6c 65 6e 2c 20 24 75 6c 65 6e 29 ce($s,.$uchr,.$i.-.$ulen,.$ulen)
10d080 3b 0a 24 6c 65 6e 20 2b 3d 20 24 6e 6c 65 6e 20 2d 20 24 75 6c 65 6e 3b 0a 24 69 20 2b 3d 20 24 ;.$len.+=.$nlen.-.$ulen;.$i.+=.$
10d0a0 6e 6c 65 6e 20 2d 20 24 75 6c 65 6e 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 nlen.-.$ulen;.}.}.}.}..if.(null.
10d0c0 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 24 73 3b 0a 7d 0a 0a 72 ===.$encoding).{.return.$s;.}..r
10d0e0 65 74 75 72 6e 20 69 63 6f 6e 76 28 27 55 54 46 2d 38 27 2c 20 24 65 6e 63 6f 64 69 6e 67 2c 20 eturn.iconv('UTF-8',.$encoding,.
10d100 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 6d $s);.}..public.static.function.m
10d120 62 5f 69 6e 74 65 72 6e 61 6c 5f 65 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f 64 69 6e 67 20 3d 20 b_internal_encoding($encoding.=.
10d140 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 29 20 null).{.if.(null.===.$encoding).
10d160 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 69 6e 74 65 72 6e 61 6c 45 6e 63 6f 64 69 6e 67 {.return.self::$internalEncoding
10d180 3b 0a 7d 0a 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 ;.}..$encoding.=.self::getEncodi
10d1a0 6e 67 28 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 3d 3d 3d 20 ng($encoding);..if.('UTF-8'.===.
10d1c0 24 65 6e 63 6f 64 69 6e 67 20 7c 7c 20 66 61 6c 73 65 20 21 3d 3d 20 40 69 63 6f 6e 76 28 24 65 $encoding.||.false.!==.@iconv($e
10d1e0 6e 63 6f 64 69 6e 67 2c 20 24 65 6e 63 6f 64 69 6e 67 2c 20 27 20 27 29 29 20 7b 0a 73 65 6c 66 ncoding,.$encoding,.'.')).{.self
10d200 3a 3a 24 69 6e 74 65 72 6e 61 6c 45 6e 63 6f 64 69 6e 67 20 3d 20 24 65 6e 63 6f 64 69 6e 67 3b ::$internalEncoding.=.$encoding;
10d220 0a 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 3b 0a ..return.true;.}..return.false;.
10d240 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 6c 61 6e }..public.static.function.mb_lan
10d260 67 75 61 67 65 28 24 6c 61 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d guage($lang.=.null).{.if.(null.=
10d280 3d 3d 20 24 6c 61 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 6c 61 6e 67 75 61 ==.$lang).{.return.self::$langua
10d2a0 67 65 3b 0a 7d 0a 0a 73 77 69 74 63 68 20 28 24 6c 61 6e 67 20 3d 20 73 74 72 74 6f 6c 6f 77 65 ge;.}..switch.($lang.=.strtolowe
10d2c0 72 28 24 6c 61 6e 67 29 29 20 7b 0a 63 61 73 65 20 27 75 6e 69 27 3a 0a 63 61 73 65 20 27 6e 65 r($lang)).{.case.'uni':.case.'ne
10d2e0 75 74 72 61 6c 27 3a 0a 73 65 6c 66 3a 3a 24 6c 61 6e 67 75 61 67 65 20 3d 20 24 6c 61 6e 67 3b utral':.self::$language.=.$lang;
10d300 0a 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 3b 0a ..return.true;.}..return.false;.
10d320 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 6c 69 73 }..public.static.function.mb_lis
10d340 74 5f 65 6e 63 6f 64 69 6e 67 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 55 54 t_encodings().{.return.array('UT
10d360 46 2d 38 27 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 F-8');.}..public.static.function
10d380 20 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 0a .mb_encoding_aliases($encoding).
10d3a0 7b 0a 73 77 69 74 63 68 20 28 73 74 72 74 6f 75 70 70 65 72 28 24 65 6e 63 6f 64 69 6e 67 29 29 {.switch.(strtoupper($encoding))
10d3c0 20 7b 0a 63 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 72 65 .{.case.'UTF8':.case.'UTF-8':.re
10d3e0 74 75 72 6e 20 61 72 72 61 79 28 27 75 74 66 38 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 turn.array('utf8');.}..return.fa
10d400 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 20 6d lse;.}..public.static.function.m
10d420 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
10d440 6e 63 6f 64 69 6e 67 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 ncoding.=.null).{.if.(null.===.$
10d460 65 6e 63 6f 64 69 6e 67 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 72 29 20 7b encoding).{.if.(null.===.$var).{
10d480 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 73 65 6c .return.false;.}.$encoding.=.sel
10d4a0 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 72 65 74 75 72 6e 20 f::$internalEncoding;.}..return.
10d4c0 73 65 6c 66 3a 3a 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 76 61 72 2c 20 61 self::mb_detect_encoding($var,.a
10d4e0 72 72 61 79 28 24 65 6e 63 6f 64 69 6e 67 29 29 20 7c 7c 20 66 61 6c 73 65 20 21 3d 3d 20 40 69 rray($encoding)).||.false.!==.@i
10d500 63 6f 6e 76 28 24 65 6e 63 6f 64 69 6e 67 2c 20 24 65 6e 63 6f 64 69 6e 67 2c 20 24 76 61 72 29 conv($encoding,.$encoding,.$var)
10d520 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 5f 64 ;.}..public.static.function.mb_d
10d540 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 74 72 2c 20 24 65 6e 63 6f 64 69 6e 67 4c 69 etect_encoding($str,.$encodingLi
10d560 73 74 20 3d 20 6e 75 6c 6c 2c 20 24 73 74 72 69 63 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 st.=.null,.$strict.=.false).{.if
10d580 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 29 20 7b 0a 24 65 6e 63 .(null.===.$encodingList).{.$enc
10d5a0 6f 64 69 6e 67 4c 69 73 74 20 3d 20 73 65 6c 66 3a 3a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 3b odingList.=.self::$encodingList;
10d5c0 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 65 6e 63 6f 64 69 6e .}.else.{.if.(!is_array($encodin
10d5e0 67 4c 69 73 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 gList)).{.$encodingList.=.array_
10d600 6d 61 70 28 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 map('trim',.explode(',',.$encodi
10d620 6e 67 4c 69 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 ngList));.}.$encodingList.=.arra
10d640 79 5f 6d 61 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 y_map('strtoupper',.$encodingLis
10d660 74 29 3b 0a 7d 0a 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 t);.}..foreach.($encodingList.as
10d680 20 24 65 6e 63 29 20 7b 0a 73 77 69 74 63 68 20 28 24 65 6e 63 29 20 7b 0a 63 61 73 65 20 27 41 .$enc).{.switch.($enc).{.case.'A
10d6a0 53 43 49 49 27 3a 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5b 5c 78 38 30 2d 5c SCII':.if.(!preg_match('/[\x80-\
10d6c0 78 46 46 5d 2f 27 2c 20 24 73 74 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 65 6e 63 3b 0a 7d 0a xFF]/',.$str)).{.return.$enc;.}.
10d6e0 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 55 54 46 38 27 3a 0a 63 61 73 65 20 27 55 54 46 2d 38 break;..case.'UTF8':.case.'UTF-8
10d700 27 3a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 2f 75 27 2c 20 24 73 74 72 29 29 20 ':.if.(preg_match('//u',.$str)).
10d720 7b 0a 72 65 74 75 72 6e 20 27 55 54 46 2d 38 27 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 {.return.'UTF-8';.}.break;..defa
10d740 75 6c 74 3a 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 6e 63 6d 70 28 24 65 6e 63 2c 20 27 49 53 ult:.if.(0.===.strncmp($enc,.'IS
10d760 4f 2d 38 38 35 39 2d 27 2c 20 39 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 65 6e 63 3b 0a 7d 0a 7d O-8859-',.9)).{.return.$enc;.}.}
10d780 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 74 .}..return.false;.}..public.stat
10d7a0 69 63 20 66 75 6e 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 ic.function.mb_detect_order($enc
10d7c0 6f 64 69 6e 67 4c 69 73 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d odingList.=.null).{.if.(null.===
10d7e0 20 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 .$encodingList).{.return.self::$
10d800 65 6e 63 6f 64 69 6e 67 4c 69 73 74 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 encodingList;.}..if.(!is_array($
10d820 65 6e 63 6f 64 69 6e 67 4c 69 73 74 29 29 20 7b 0a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d encodingList)).{.$encodingList.=
10d840 20 61 72 72 61 79 5f 6d 61 70 28 27 74 72 69 6d 27 2c 20 65 78 70 6c 6f 64 65 28 27 2c 27 2c 20 .array_map('trim',.explode(',',.
10d860 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 29 29 3b 0a 7d 0a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 $encodingList));.}.$encodingList
10d880 20 3d 20 61 72 72 61 79 5f 6d 61 70 28 27 73 74 72 74 6f 75 70 70 65 72 27 2c 20 24 65 6e 63 6f .=.array_map('strtoupper',.$enco
10d8a0 64 69 6e 67 4c 69 73 74 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 65 6e 63 6f 64 69 6e 67 4c 69 dingList);..foreach.($encodingLi
10d8c0 73 74 20 61 73 20 24 65 6e 63 29 20 7b 0a 73 77 69 74 63 68 20 28 24 65 6e 63 29 20 7b 0a 64 65 st.as.$enc).{.switch.($enc).{.de
10d8e0 66 61 75 6c 74 3a 0a 69 66 20 28 73 74 72 6e 63 6d 70 28 24 65 6e 63 2c 20 27 49 53 4f 2d 38 38 fault:.if.(strncmp($enc,.'ISO-88
10d900 35 39 2d 27 2c 20 39 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 63 61 73 65 59-',.9)).{.return.false;.}.case
10d920 20 27 41 53 43 49 49 27 3a 0a 63 61 73 65 20 27 55 54 46 38 27 3a 0a 63 61 73 65 20 27 55 54 46 .'ASCII':.case.'UTF8':.case.'UTF
10d940 2d 38 27 3a 0a 7d 0a 7d 0a 0a 73 65 6c 66 3a 3a 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d 20 -8':.}.}..self::$encodingList.=.
10d960 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a $encodingList;..return.true;.}..
10d980 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 6c 65 6e public.static.function.mb_strlen
10d9a0 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 24 65 6e 63 6f 64 69 ($s,.$encoding.=.null).{.$encodi
10d9c0 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 67 ng.=.self::getEncoding($encoding
10d9e0 29 3b 0a 0a 72 65 74 75 72 6e 20 69 63 6f 6e 76 5f 73 74 72 6c 65 6e 28 24 73 2c 20 24 65 6e 63 );..return.iconv_strlen($s,.$enc
10da00 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 74 69 6f oding);.}..public.static.functio
10da20 6e 20 6d 62 5f 73 74 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 n.mb_strpos($haystack,.$needle,.
10da40 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).{
10da60 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($
10da80 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 20 28 27 27 20 3d 3d 3d 20 24 6e 65 65 64 6c 65 20 2e encoding);..if.(''.===.$needle..
10daa0 3d 20 27 27 29 20 7b 0a 74 72 69 67 67 65 72 5f 65 72 72 6f 72 28 5f 5f 4d 45 54 48 4f 44 5f 5f =.'').{.trigger_error(__METHOD__
10dac0 2e 27 3a 20 45 6d 70 74 79 20 64 65 6c 69 6d 69 74 65 72 27 2c 20 45 5f 55 53 45 52 5f 57 41 52 .':.Empty.delimiter',.E_USER_WAR
10dae0 4e 49 4e 47 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 NING);..return.false;.}..return.
10db00 69 63 6f 6e 76 5f 73 74 72 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c iconv_strpos($haystack,.$needle,
10db20 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 69 63 20 .$offset,.$encoding);.}..public.
10db40 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 72 70 6f 73 28 24 68 61 79 73 static.function.mb_strrpos($hays
10db60 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 2c 20 24 65 6e 63 tack,.$needle,.$offset.=.0,.$enc
10db80 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 3d 20 73 65 6c 66 oding.=.null).{.$encoding.=.self
10dba0 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 0a 69 66 20 28 24 ::getEncoding($encoding);..if.($
10dbc0 6f 66 66 73 65 74 20 21 3d 20 28 69 6e 74 29 20 24 6f 66 66 73 65 74 29 20 7b 0a 24 6f 66 66 73 offset.!=.(int).$offset).{.$offs
10dbe0 65 74 20 3d 20 30 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 6f 66 66 73 65 74 20 3d 20 28 69 6e 74 et.=.0;.}.elseif.($offset.=.(int
10dc00 29 20 24 6f 66 66 73 65 74 29 20 7b 0a 69 66 20 28 24 6f 66 66 73 65 74 20 3c 20 30 29 20 7b 0a ).$offset).{.if.($offset.<.0).{.
10dc20 24 68 61 79 73 74 61 63 6b 20 3d 20 73 65 6c 66 3a 3a 6d 62 5f 73 75 62 73 74 72 28 24 68 61 79 $haystack.=.self::mb_substr($hay
10dc40 73 74 61 63 6b 2c 20 30 2c 20 24 6f 66 66 73 65 74 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 24 stack,.0,.$offset,.$encoding);.$
10dc60 6f 66 66 73 65 74 20 3d 20 30 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 68 61 79 73 74 61 63 6b 20 3d offset.=.0;.}.else.{.$haystack.=
10dc80 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 24 6f 66 66 .self::mb_substr($haystack,.$off
10dca0 73 65 74 2c 20 32 31 34 37 34 38 33 36 34 37 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 7d set,.2147483647,.$encoding);.}.}
10dcc0 0a 0a 24 70 6f 73 20 3d 20 69 63 6f 6e 76 5f 73 74 72 72 70 6f 73 28 24 68 61 79 73 74 61 63 6b ..$pos.=.iconv_strrpos($haystack
10dce0 2c 20 24 6e 65 65 64 6c 65 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 72 65 74 75 72 6e 20 66 ,.$needle,.$encoding);..return.f
10dd00 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 3f 20 24 6f 66 66 73 65 74 20 2b 20 24 70 6f 73 20 3a alse.!==.$pos.?.$offset.+.$pos.:
10dd20 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
10dd40 6e 20 6d 62 5f 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 n.mb_strtolower($s,.$encoding.=.
10dd60 6e 75 6c 6c 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 72 74 5f null).{.return.self::mb_convert_
10dd80 63 61 73 65 28 24 73 2c 20 4d 42 5f 43 41 53 45 5f 4c 4f 57 45 52 2c 20 24 65 6e 63 6f 64 69 6e case($s,.MB_CASE_LOWER,.$encodin
10dda0 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
10ddc0 5f 73 74 72 74 6f 75 70 70 65 72 28 24 73 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c _strtoupper($s,.$encoding.=.null
10dde0 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 72 74 5f 63 61 73 65 ).{.return.self::mb_convert_case
10de00 28 24 73 2c 20 4d 42 5f 43 41 53 45 5f 55 50 50 45 52 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a ($s,.MB_CASE_UPPER,.$encoding);.
10de20 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 62 }..public.static.function.mb_sub
10de40 73 74 69 74 75 74 65 5f 63 68 61 72 61 63 74 65 72 28 24 63 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 stitute_character($c.=.null).{.i
10de60 66 20 28 30 20 3d 3d 3d 20 73 74 72 63 61 73 65 63 6d 70 28 24 63 2c 20 27 6e 6f 6e 65 27 29 29 f.(0.===.strcasecmp($c,.'none'))
10de80 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 20 21 .{.return.true;.}..return.null.!
10dea0 3d 3d 20 24 63 20 3f 20 66 61 6c 73 65 20 3a 20 27 6e 6f 6e 65 27 3b 0a 7d 0a 0a 70 75 62 6c 69 ==.$c.?.false.:.'none';.}..publi
10dec0 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 75 62 73 74 72 28 24 73 2c 20 c.static.function.mb_substr($s,.
10dee0 24 73 74 61 72 74 2c 20 24 6c 65 6e 67 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 65 6e 63 6f 64 69 6e $start,.$length.=.null,.$encodin
10df00 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 65 g.=.null).{.$encoding.=.self::ge
10df20 74 45 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 20 28 24 73 74 61 72 tEncoding($encoding);..if.($star
10df40 74 20 3c 20 30 29 20 7b 0a 24 73 74 61 72 74 20 3d 20 69 63 6f 6e 76 5f 73 74 72 6c 65 6e 28 24 t.<.0).{.$start.=.iconv_strlen($
10df60 73 2c 20 24 65 6e 63 6f 64 69 6e 67 29 20 2b 20 24 73 74 61 72 74 3b 0a 69 66 20 28 24 73 74 61 s,.$encoding).+.$start;.if.($sta
10df80 72 74 20 3c 20 30 29 20 7b 0a 24 73 74 61 72 74 20 3d 20 30 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 6e rt.<.0).{.$start.=.0;.}.}..if.(n
10dfa0 75 6c 6c 20 3d 3d 3d 20 24 6c 65 6e 67 74 68 29 20 7b 0a 24 6c 65 6e 67 74 68 20 3d 20 32 31 34 ull.===.$length).{.$length.=.214
10dfc0 37 34 38 33 36 34 37 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 6c 65 6e 67 74 68 20 3c 20 30 29 20 7483647;.}.elseif.($length.<.0).
10dfe0 7b 0a 24 6c 65 6e 67 74 68 20 3d 20 69 63 6f 6e 76 5f 73 74 72 6c 65 6e 28 24 73 2c 20 24 65 6e {.$length.=.iconv_strlen($s,.$en
10e000 63 6f 64 69 6e 67 29 20 2b 20 24 6c 65 6e 67 74 68 20 2d 20 24 73 74 61 72 74 3b 0a 69 66 20 28 coding).+.$length.-.$start;.if.(
10e020 24 6c 65 6e 67 74 68 20 3c 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 7d 0a 0a 72 $length.<.0).{.return.'';.}.}..r
10e040 65 74 75 72 6e 20 69 63 6f 6e 76 5f 73 75 62 73 74 72 28 24 73 2c 20 24 73 74 61 72 74 2c 20 24 eturn.iconv_substr($s,.$start,.$
10e060 6c 65 6e 67 74 68 2c 20 24 65 6e 63 6f 64 69 6e 67 29 2e 27 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 length,.$encoding).'';.}..public
10e080 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 69 70 6f 73 28 24 68 61 79 .static.function.mb_stripos($hay
10e0a0 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 2c 20 24 65 6e stack,.$needle,.$offset.=.0,.$en
10e0c0 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 68 61 79 73 74 61 63 6b 20 3d 20 73 65 6c coding.=.null).{.$haystack.=.sel
10e0e0 66 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 68 61 79 73 74 61 63 6b 2c 20 73 65 f::mb_convert_case($haystack,.se
10e100 6c 66 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 24 6e lf::MB_CASE_FOLD,.$encoding);.$n
10e120 65 65 64 6c 65 20 3d 20 73 65 6c 66 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 6e eedle.=.self::mb_convert_case($n
10e140 65 65 64 6c 65 2c 20 73 65 6c 66 3a 3a 4d 42 5f 43 41 53 45 5f 46 4f 4c 44 2c 20 24 65 6e 63 6f eedle,.self::MB_CASE_FOLD,.$enco
10e160 64 69 6e 67 29 3b 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 6d 62 5f 73 74 72 70 6f 73 28 24 ding);..return.self::mb_strpos($
10e180 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 65 6e 63 haystack,.$needle,.$offset,.$enc
10e1a0 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 74 69 6f oding);.}..public.static.functio
10e1c0 6e 20 6d 62 5f 73 74 72 69 73 74 72 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c n.mb_stristr($haystack,.$needle,
10e1e0 20 24 70 61 72 74 20 3d 20 66 61 6c 73 65 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c .$part.=.false,.$encoding.=.null
10e200 29 0a 7b 0a 24 70 6f 73 20 3d 20 73 65 6c 66 3a 3a 6d 62 5f 73 74 72 69 70 6f 73 28 24 68 61 79 ).{.$pos.=.self::mb_stripos($hay
10e220 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 30 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a stack,.$needle,.0,.$encoding);..
10e240 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 24 70 return.self::getSubpart($pos,.$p
10e260 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 0a 70 art,.$haystack,.$encoding);.}..p
10e280 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 63 68 72 ublic.static.function.mb_strrchr
10e2a0 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 6c ($haystack,.$needle,.$part.=.fal
10e2c0 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 65 6e 63 6f 64 69 6e se,.$encoding.=.null).{.$encodin
10e2e0 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 67 29 g.=.self::getEncoding($encoding)
10e300 3b 0a 24 6e 65 65 64 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 ;.$needle.=.self::mb_substr($nee
10e320 64 6c 65 2c 20 30 2c 20 31 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 24 70 6f 73 20 3d 20 69 63 dle,.0,.1,.$encoding);.$pos.=.ic
10e340 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,.
10e360 24 65 6e 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 $encoding);..return.self::getSub
10e380 70 61 72 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 part($pos,.$part,.$haystack,.$en
10e3a0 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 74 69 coding);.}..public.static.functi
10e3c0 6f 6e 20 6d 62 5f 73 74 72 72 69 63 68 72 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c on.mb_strrichr($haystack,.$needl
10e3e0 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 6e 67 20 3d 20 6e 75 e,.$part.=.false,.$encoding.=.nu
10e400 6c 6c 29 0a 7b 0a 24 6e 65 65 64 6c 65 20 3d 20 73 65 6c 66 3a 3a 6d 62 5f 73 75 62 73 74 72 28 ll).{.$needle.=.self::mb_substr(
10e420 24 6e 65 65 64 6c 65 2c 20 30 2c 20 31 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 24 70 6f 73 20 $needle,.0,.1,.$encoding);.$pos.
10e440 3d 20 73 65 6c 66 3a 3a 6d 62 5f 73 74 72 72 69 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 =.self::mb_strripos($haystack,.$
10e460 6e 65 65 64 6c 65 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 needle,.$encoding);..return.self
10e480 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
10e4a0 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
10e4c0 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 72 69 70 6f 73 28 24 68 61 79 73 74 61 63 6b c.function.mb_strripos($haystack
10e4e0 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 6f 64 69 6e ,.$needle,.$offset.=.0,.$encodin
10e500 67 20 3d 20 6e 75 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 g.=.null).{.$haystack.=.self::mb
10e520 5f 63 6f 6e 76 65 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 _convert_case($haystack,.self::M
10e540 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 24 6e 65 65 64 6c 65 B_CASE_FOLD,.$encoding);.$needle
10e560 20 3d 20 73 65 6c 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 .=.self::mb_convert_case($needle
10e580 2c 20 73 65 6c 66 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 ,.self::MB_CASE_FOLD,.$encoding)
10e5a0 3b 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 6d 62 5f 73 74 72 72 70 6f 73 28 24 68 61 79 73 ;..return.self::mb_strrpos($hays
10e5c0 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 65 6e 63 6f 64 69 6e tack,.$needle,.$offset,.$encodin
10e5e0 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
10e600 5f 73 74 72 73 74 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 _strstr($haystack,.$needle,.$par
10e620 74 20 3d 20 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 t.=.false,.$encoding.=.null).{.$
10e640 70 6f 73 20 3d 20 73 74 72 70 6f 73 28 24 68 61 79 73 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 29 pos.=.strpos($haystack,.$needle)
10e660 3b 0a 69 66 20 28 66 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 ;.if.(false.===.$pos).{.return.f
10e680 61 6c 73 65 3b 0a 7d 0a 69 66 20 28 24 70 61 72 74 29 20 7b 0a 72 65 74 75 72 6e 20 73 75 62 73 alse;.}.if.($part).{.return.subs
10e6a0 74 72 28 24 68 61 79 73 74 61 63 6b 2c 20 30 2c 20 24 70 6f 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 tr($haystack,.0,.$pos);.}..retur
10e6c0 6e 20 73 75 62 73 74 72 28 24 68 61 79 73 74 61 63 6b 2c 20 24 70 6f 73 29 3b 0a 7d 0a 0a 70 75 n.substr($haystack,.$pos);.}..pu
10e6e0 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 67 65 74 5f 69 6e 66 6f blic.static.function.mb_get_info
10e700 28 24 74 79 70 65 20 3d 20 27 61 6c 6c 27 29 0a 7b 0a 24 69 6e 66 6f 20 3d 20 61 72 72 61 79 28 ($type.=.'all').{.$info.=.array(
10e720 0a 27 69 6e 74 65 72 6e 61 6c 5f 65 6e 63 6f 64 69 6e 67 27 20 3d 3e 20 73 65 6c 66 3a 3a 24 69 .'internal_encoding'.=>.self::$i
10e740 6e 74 65 72 6e 61 6c 45 6e 63 6f 64 69 6e 67 2c 0a 27 68 74 74 70 5f 6f 75 74 70 75 74 27 20 3d nternalEncoding,.'http_output'.=
10e760 3e 20 27 70 61 73 73 27 2c 0a 27 68 74 74 70 5f 6f 75 74 70 75 74 5f 63 6f 6e 76 5f 6d 69 6d 65 >.'pass',.'http_output_conv_mime
10e780 74 79 70 65 73 27 20 3d 3e 20 27 5e 28 74 65 78 74 2f 7c 61 70 70 6c 69 63 61 74 69 6f 6e 2f 78 types'.=>.'^(text/|application/x
10e7a0 68 74 6d 6c 5c 2b 78 6d 6c 29 27 2c 0a 27 66 75 6e 63 5f 6f 76 65 72 6c 6f 61 64 27 20 3d 3e 20 html\+xml)',.'func_overload'.=>.
10e7c0 30 2c 0a 27 66 75 6e 63 5f 6f 76 65 72 6c 6f 61 64 5f 6c 69 73 74 27 20 3d 3e 20 27 6e 6f 20 6f 0,.'func_overload_list'.=>.'no.o
10e7e0 76 65 72 6c 6f 61 64 27 2c 0a 27 6d 61 69 6c 5f 63 68 61 72 73 65 74 27 20 3d 3e 20 27 55 54 46 verload',.'mail_charset'.=>.'UTF
10e800 2d 38 27 2c 0a 27 6d 61 69 6c 5f 68 65 61 64 65 72 5f 65 6e 63 6f 64 69 6e 67 27 20 3d 3e 20 27 -8',.'mail_header_encoding'.=>.'
10e820 42 41 53 45 36 34 27 2c 0a 27 6d 61 69 6c 5f 62 6f 64 79 5f 65 6e 63 6f 64 69 6e 67 27 20 3d 3e BASE64',.'mail_body_encoding'.=>
10e840 20 27 42 41 53 45 36 34 27 2c 0a 27 69 6c 6c 65 67 61 6c 5f 63 68 61 72 73 27 20 3d 3e 20 30 2c .'BASE64',.'illegal_chars'.=>.0,
10e860 0a 27 65 6e 63 6f 64 69 6e 67 5f 74 72 61 6e 73 6c 61 74 69 6f 6e 27 20 3d 3e 20 27 4f 66 66 27 .'encoding_translation'.=>.'Off'
10e880 2c 0a 27 6c 61 6e 67 75 61 67 65 27 20 3d 3e 20 73 65 6c 66 3a 3a 24 6c 61 6e 67 75 61 67 65 2c ,.'language'.=>.self::$language,
10e8a0 0a 27 64 65 74 65 63 74 5f 6f 72 64 65 72 27 20 3d 3e 20 73 65 6c 66 3a 3a 24 65 6e 63 6f 64 69 .'detect_order'.=>.self::$encodi
10e8c0 6e 67 4c 69 73 74 2c 0a 27 73 75 62 73 74 69 74 75 74 65 5f 63 68 61 72 61 63 74 65 72 27 20 3d ngList,.'substitute_character'.=
10e8e0 3e 20 27 6e 6f 6e 65 27 2c 0a 27 73 74 72 69 63 74 5f 64 65 74 65 63 74 69 6f 6e 27 20 3d 3e 20 >.'none',.'strict_detection'.=>.
10e900 27 4f 66 66 27 2c 0a 29 3b 0a 0a 69 66 20 28 27 61 6c 6c 27 20 3d 3d 3d 20 24 74 79 70 65 29 20 'Off',.);..if.('all'.===.$type).
10e920 7b 0a 72 65 74 75 72 6e 20 24 69 6e 66 6f 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 66 {.return.$info;.}.if.(isset($inf
10e940 6f 5b 24 74 79 70 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 69 6e 66 6f 5b 24 74 79 70 65 5d o[$type])).{.return.$info[$type]
10e960 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 74 61 ;.}..return.false;.}..public.sta
10e980 74 69 63 20 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 tic.function.mb_http_input($type
10e9a0 20 3d 20 27 27 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 .=.'').{.return.false;.}..public
10e9c0 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 68 74 74 70 5f 6f 75 74 70 75 74 28 .static.function.mb_http_output(
10e9e0 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 6e 75 6c 6c 20 $encoding.=.null).{.return.null.
10ea00 21 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 20 3f 20 27 70 61 73 73 27 20 3d 3d 3d 20 24 65 6e 63 6f !==.$encoding.?.'pass'.===.$enco
10ea20 64 69 6e 67 20 3a 20 27 70 61 73 73 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 ding.:.'pass';.}..public.static.
10ea40 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 6f 64 69 function.mb_strwidth($s,.$encodi
10ea60 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
10ea80 65 74 45 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 0a 69 66 20 28 27 55 54 46 etEncoding($encoding);..if.('UTF
10eaa0 2d 38 27 20 21 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 29 20 7b 0a 24 73 20 3d 20 69 63 6f 6e 76 28 -8'.!==.$encoding).{.$s.=.iconv(
10eac0 24 65 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 24 73 20 3d $encoding,.'UTF-8',.$s);.}..$s.=
10eae0 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 5b 5c 78 7b 31 31 30 30 7d 2d 5c 78 7b 31 31 35 .preg_replace('/[\x{1100}-\x{115
10eb00 46 7d 5c 78 7b 32 33 32 39 7d 5c 78 7b 32 33 32 41 7d 5c 78 7b 32 45 38 30 7d 2d 5c 78 7b 33 30 F}\x{2329}\x{232A}\x{2E80}-\x{30
10eb20 33 45 7d 5c 78 7b 33 30 34 30 7d 2d 5c 78 7b 41 34 43 46 7d 5c 78 7b 41 43 30 30 7d 2d 5c 78 7b 3E}\x{3040}-\x{A4CF}\x{AC00}-\x{
10eb40 44 37 41 33 7d 5c 78 7b 46 39 30 30 7d 2d 5c 78 7b 46 41 46 46 7d 5c 78 7b 46 45 31 30 7d 2d 5c D7A3}\x{F900}-\x{FAFF}\x{FE10}-\
10eb60 78 7b 46 45 31 39 7d 5c 78 7b 46 45 33 30 7d 2d 5c 78 7b 46 45 36 46 7d 5c 78 7b 46 46 30 30 7d x{FE19}\x{FE30}-\x{FE6F}\x{FF00}
10eb80 2d 5c 78 7b 46 46 36 30 7d 5c 78 7b 46 46 45 30 7d 2d 5c 78 7b 46 46 45 36 7d 5c 78 7b 32 30 30 -\x{FF60}\x{FFE0}-\x{FFE6}\x{200
10eba0 30 30 7d 2d 5c 78 7b 32 46 46 46 44 7d 5c 78 7b 33 30 30 30 30 7d 2d 5c 78 7b 33 46 46 46 44 7d 00}-\x{2FFFD}\x{30000}-\x{3FFFD}
10ebc0 5d 2f 75 27 2c 20 27 27 2c 20 24 73 2c 20 2d 31 2c 20 24 77 69 64 65 29 3b 0a 0a 72 65 74 75 72 ]/u',.'',.$s,.-1,.$wide);..retur
10ebe0 6e 20 28 24 77 69 64 65 20 3c 3c 20 31 29 20 2b 20 69 63 6f 6e 76 5f 73 74 72 6c 65 6e 28 24 73 n.($wide.<<.1).+.iconv_strlen($s
10ec00 2c 20 27 55 54 46 2d 38 27 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e ,.'UTF-8');.}..public.static.fun
10ec20 63 74 69 6f 6e 20 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 ction.mb_substr_count($haystack,
10ec40 20 24 6e 65 65 64 6c 65 2c 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 .$needle,.$encoding.=.null).{.re
10ec60 74 75 72 6e 20 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 turn.substr_count($haystack,.$ne
10ec80 65 64 6c 65 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 edle);.}..public.static.function
10eca0 20 6d 62 5f 6f 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 .mb_output_handler($contents,.$s
10ecc0 74 61 74 75 73 29 0a 7b 0a 72 65 74 75 72 6e 20 24 63 6f 6e 74 65 6e 74 73 3b 0a 7d 0a 0a 70 72 tatus).{.return.$contents;.}..pr
10ece0 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 53 75 62 70 61 72 74 ivate.static.function.getSubpart
10ed00 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 69 ($pos,.$part,.$haystack,.$encodi
10ed20 6e 67 29 0a 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 70 6f 73 29 20 7b 0a 72 65 74 75 ng).{.if.(false.===.$pos).{.retu
10ed40 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 69 66 20 28 24 70 61 72 74 29 20 7b 0a 72 65 74 75 72 6e 20 rn.false;.}.if.($part).{.return.
10ed60 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 70 self::mb_substr($haystack,.0,.$p
10ed80 6f 73 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a os,.$encoding);.}..return.self::
10eda0 6d 62 5f 73 75 62 73 74 72 28 24 68 61 79 73 74 61 63 6b 2c 20 24 70 6f 73 2c 20 6e 75 6c 6c 2c mb_substr($haystack,.$pos,.null,
10edc0 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 .$encoding);.}..private.static.f
10ede0 75 6e 63 74 69 6f 6e 20 68 74 6d 6c 5f 65 6e 63 6f 64 69 6e 67 5f 63 61 6c 6c 62 61 63 6b 28 24 unction.html_encoding_callback($
10ee00 6d 29 0a 7b 0a 24 69 20 3d 20 31 3b 0a 24 65 6e 74 69 74 69 65 73 20 3d 20 27 27 3b 0a 24 6d 20 m).{.$i.=.1;.$entities.=.'';.$m.
10ee20 3d 20 75 6e 70 61 63 6b 28 27 43 2a 27 2c 20 68 74 6d 6c 65 6e 74 69 74 69 65 73 28 24 6d 5b 30 =.unpack('C*',.htmlentities($m[0
10ee40 5d 2c 20 45 4e 54 5f 43 4f 4d 50 41 54 2c 20 27 55 54 46 2d 38 27 29 29 3b 0a 0a 77 68 69 6c 65 ],.ENT_COMPAT,.'UTF-8'));..while
10ee60 20 28 69 73 73 65 74 28 24 6d 5b 24 69 5d 29 29 20 7b 0a 69 66 20 28 30 78 38 30 20 3e 20 24 6d .(isset($m[$i])).{.if.(0x80.>.$m
10ee80 5b 24 69 5d 29 20 7b 0a 24 65 6e 74 69 74 69 65 73 20 2e 3d 20 63 68 72 28 24 6d 5b 24 69 2b 2b [$i]).{.$entities..=.chr($m[$i++
10eea0 5d 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 30 78 46 30 20 3c 3d 20 24 6d 5b 24 ]);.continue;.}.if.(0xF0.<=.$m[$
10eec0 69 5d 29 20 7b 0a 24 63 20 3d 20 28 28 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 46 30 29 20 3c 3c i]).{.$c.=.(($m[$i++].-.0xF0).<<
10eee0 20 31 38 29 20 2b 20 28 28 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 38 30 29 20 3c 3c 20 31 32 29 .18).+.(($m[$i++].-.0x80).<<.12)
10ef00 20 2b 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 .+.(($m[$i++].-.0x80).<<.6).+.$m
10ef20 5b 24 69 2b 2b 5d 20 2d 20 30 78 38 30 3b 0a 7d 20 65 6c 73 65 69 66 20 28 30 78 45 30 20 3c 3d [$i++].-.0x80;.}.elseif.(0xE0.<=
10ef40 20 24 6d 5b 24 69 5d 29 20 7b 0a 24 63 20 3d 20 28 28 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 45 .$m[$i]).{.$c.=.(($m[$i++].-.0xE
10ef60 30 29 20 3c 3c 20 31 32 29 20 2b 20 28 28 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 38 30 29 20 3c 0).<<.12).+.(($m[$i++].-.0x80).<
10ef80 3c 20 36 29 20 2b 20 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 38 30 3b 0a 7d 20 65 6c 73 65 20 7b <.6).+.$m[$i++].-.0x80;.}.else.{
10efa0 0a 24 63 20 3d 20 28 28 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 43 30 29 20 3c 3c 20 36 29 20 2b .$c.=.(($m[$i++].-.0xC0).<<.6).+
10efc0 20 24 6d 5b 24 69 2b 2b 5d 20 2d 20 30 78 38 30 3b 0a 7d 0a 0a 24 65 6e 74 69 74 69 65 73 20 2e .$m[$i++].-.0x80;.}..$entities..
10efe0 3d 20 27 26 23 27 2e 24 63 2e 27 3b 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 6e 74 69 74 69 =.'&#'.$c.';';.}..return.$entiti
10f000 65 73 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 74 es;.}..private.static.function.t
10f020 69 74 6c 65 5f 63 61 73 65 5f 6c 6f 77 65 72 28 24 73 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c itle_case_lower($s).{.return.sel
10f040 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 5f 43 41 53 f::mb_convert_case($s[0],.MB_CAS
10f060 45 5f 4c 4f 57 45 52 2c 20 27 55 54 46 2d 38 27 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 E_LOWER,.'UTF-8');.}..private.st
10f080 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 75 70 70 65 72 28 24 atic.function.title_case_upper($
10f0a0 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 72 74 5f 63 61 73 s).{.return.self::mb_convert_cas
10f0c0 65 28 24 73 5b 30 5d 2c 20 4d 42 5f 43 41 53 45 5f 55 50 50 45 52 2c 20 27 55 54 46 2d 38 27 29 e($s[0],.MB_CASE_UPPER,.'UTF-8')
10f0e0 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 67 65 74 ;.}..private.static.function.get
10f100 44 61 74 61 28 24 66 69 6c 65 29 0a 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 Data($file).{.if.(file_exists($f
10f120 69 6c 65 20 3d 20 5f 5f 44 49 52 5f 5f 2e 27 2f 52 65 73 6f 75 72 63 65 73 2f 75 6e 69 64 61 74 ile.=.__DIR__.'/Resources/unidat
10f140 61 2f 27 2e 24 66 69 6c 65 2e 27 2e 73 65 72 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 75 6e 73 65 a/'.$file.'.ser')).{.return.unse
10f160 72 69 61 6c 69 7a 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 rialize(file_get_contents($file)
10f180 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 69 76 61 74 65 20 73 );.}..return.false;.}..private.s
10f1a0 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 6e 63 6f 64 69 6e 67 28 24 65 6e 63 6f tatic.function.getEncoding($enco
10f1c0 64 69 6e 67 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 ding).{.if.(null.===.$encoding).
10f1e0 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 24 69 6e 74 65 72 6e 61 6c 45 6e 63 6f 64 69 6e 67 {.return.self::$internalEncoding
10f200 3b 0a 7d 0a 0a 24 65 6e 63 6f 64 69 6e 67 20 3d 20 73 74 72 74 6f 75 70 70 65 72 28 24 65 6e 63 ;.}..$encoding.=.strtoupper($enc
10f220 6f 64 69 6e 67 29 3b 0a 0a 69 66 20 28 27 38 42 49 54 27 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e oding);..if.('8BIT'.===.$encodin
10f240 67 20 7c 7c 20 27 42 49 4e 41 52 59 27 20 3d 3d 3d 20 24 65 6e 63 6f 64 69 6e 67 29 20 7b 0a 72 g.||.'BINARY'.===.$encoding).{.r
10f260 65 74 75 72 6e 20 27 43 50 38 35 30 27 3b 0a 7d 0a 69 66 20 28 27 55 54 46 38 27 20 3d 3d 3d 20 eturn.'CP850';.}.if.('UTF8'.===.
10f280 24 65 6e 63 6f 64 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 27 55 54 46 2d 38 27 3b 0a 7d 0a 0a $encoding).{.return.'UTF-8';.}..
10f2a0 72 65 74 75 72 6e 20 24 65 6e 63 6f 64 69 6e 67 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a return.$encoding;.}.}.<?php.....
10f2c0 0a 0a 0a 0a 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 50 6f 6c 79 66 69 6c 6c 5c 4d 62 73 74 72 ......use.Symfony\Polyfill\Mbstr
10f2e0 69 6e 67 20 61 73 20 70 3b 0a 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 ing.as.p;..if.(!function_exists(
10f300 27 6d 62 5f 73 74 72 6c 65 6e 27 29 29 20 7b 0a 64 65 66 69 6e 65 28 27 4d 42 5f 43 41 53 45 5f 'mb_strlen')).{.define('MB_CASE_
10f320 55 50 50 45 52 27 2c 20 30 29 3b 0a 64 65 66 69 6e 65 28 27 4d 42 5f 43 41 53 45 5f 4c 4f 57 45 UPPER',.0);.define('MB_CASE_LOWE
10f340 52 27 2c 20 31 29 3b 0a 64 65 66 69 6e 65 28 27 4d 42 5f 43 41 53 45 5f 54 49 54 4c 45 27 2c 20 R',.1);.define('MB_CASE_TITLE',.
10f360 32 29 3b 0a 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f 64 69 6e 2);..function.mb_convert_encodin
10f380 67 28 24 73 2c 20 24 74 6f 2c 20 24 66 72 6f 6d 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 g($s,.$to,.$from.=.null).{.retur
10f3a0 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f 64 69 6e n.p\Mbstring::mb_convert_encodin
10f3c0 67 28 24 73 2c 20 24 74 6f 2c 20 24 66 72 6f 6d 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 g($s,.$to,.$from);.}.function.mb
10f3e0 5f 64 65 63 6f 64 65 5f 6d 69 6d 65 68 65 61 64 65 72 28 24 73 29 20 7b 20 72 65 74 75 72 6e 20 _decode_mimeheader($s).{.return.
10f400 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 64 65 63 6f 64 65 5f 6d 69 6d 65 68 65 61 64 65 72 p\Mbstring::mb_decode_mimeheader
10f420 28 24 73 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 65 6e 63 6f 64 65 5f 6d 69 6d 65 68 ($s);.}.function.mb_encode_mimeh
10f440 65 61 64 65 72 28 24 73 2c 20 24 63 68 61 72 73 65 74 20 3d 20 6e 75 6c 6c 2c 20 24 74 72 61 6e eader($s,.$charset.=.null,.$tran
10f460 73 66 65 72 45 6e 63 20 3d 20 6e 75 6c 6c 2c 20 24 6c 66 20 3d 20 6e 75 6c 6c 2c 20 24 69 6e 64 sferEnc.=.null,.$lf.=.null,.$ind
10f480 65 6e 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 ent.=.null).{.return.p\Mbstring:
10f4a0 3a 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 63 68 61 72 73 :mb_encode_mimeheader($s,.$chars
10f4c0 65 74 2c 20 24 74 72 61 6e 73 66 65 72 45 6e 63 2c 20 24 6c 66 2c 20 24 69 6e 64 65 6e 74 29 3b et,.$transferEnc,.$lf,.$indent);
10f4e0 20 7d 0a 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 .}.function.mb_convert_case($s,.
10f500 24 6d 6f 64 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 $mode,.$enc.=.null).{.return.p\M
10f520 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 63 61 73 65 28 24 73 2c 20 24 6d 6f bstring::mb_convert_case($s,.$mo
10f540 64 65 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 69 6e 74 65 72 6e 61 de,.$enc);.}.function.mb_interna
10f560 6c 5f 65 6e 63 6f 64 69 6e 67 28 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e l_encoding($enc.=.null).{.return
10f580 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 69 6e 74 65 72 6e 61 6c 5f 65 6e 63 6f 64 69 6e .p\Mbstring::mb_internal_encodin
10f5a0 67 28 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 6c 61 6e 67 75 61 67 65 28 g($enc);.}.function.mb_language(
10f5c0 24 6c 61 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 69 6e $lang.=.null).{.return.p\Mbstrin
10f5e0 67 3a 3a 6d 62 5f 6c 61 6e 67 75 61 67 65 28 24 6c 61 6e 67 29 3b 20 7d 0a 66 75 6e 63 74 69 6f g::mb_language($lang);.}.functio
10f600 6e 20 6d 62 5f 6c 69 73 74 5f 65 6e 63 6f 64 69 6e 67 73 28 29 20 7b 20 72 65 74 75 72 6e 20 70 n.mb_list_encodings().{.return.p
10f620 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 6c 69 73 74 5f 65 6e 63 6f 64 69 6e 67 73 28 29 3b 20 \Mbstring::mb_list_encodings();.
10f640 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 65 6e 63 6f 64 69 6e 67 5f 61 6c 69 61 73 65 73 28 24 }.function.mb_encoding_aliases($
10f660 65 6e 63 6f 64 69 6e 67 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d encoding).{.return.p\Mbstring::m
10f680 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 3b 20 7d b_encoding_aliases($encoding);.}
10f6a0 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 63 68 65 63 6b 5f 65 6e 63 6f 64 69 6e 67 28 24 76 61 72 .function.mb_check_encoding($var
10f6c0 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 20 7b 20 72 65 74 .=.null,.$encoding.=.null).{.ret
10f6e0 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 63 68 65 63 6b 5f 65 6e 63 6f 64 69 6e urn.p\Mbstring::mb_check_encodin
10f700 67 28 24 76 61 72 2c 20 24 65 6e 63 6f 64 69 6e 67 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d g($var,.$encoding);.}.function.m
10f720 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 74 72 2c 20 24 65 6e 63 6f 64 69 6e b_detect_encoding($str,.$encodin
10f740 67 4c 69 73 74 20 3d 20 6e 75 6c 6c 2c 20 24 73 74 72 69 63 74 20 3d 20 66 61 6c 73 65 29 20 7b gList.=.null,.$strict.=.false).{
10f760 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 64 65 74 65 63 74 5f 65 6e .return.p\Mbstring::mb_detect_en
10f780 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 2c 20 24 73 74 72 coding($str,.$encodingList,.$str
10f7a0 69 63 74 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 64 65 74 65 63 74 5f 6f 72 64 65 72 ict);.}.function.mb_detect_order
10f7c0 28 24 65 6e 63 6f 64 69 6e 67 4c 69 73 74 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 20 ($encodingList.=.null).{.return.
10f7e0 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 64 65 74 65 63 74 5f 6f 72 64 65 72 28 24 65 6e 63 p\Mbstring::mb_detect_order($enc
10f800 6f 64 69 6e 67 4c 69 73 74 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 70 61 72 73 65 5f odingList);.}.function.mb_parse_
10f820 73 74 72 28 24 73 2c 20 26 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 29 20 7b 20 70 61 str($s,.&$result.=.array()).{.pa
10f840 72 73 65 5f 73 74 72 28 24 73 2c 20 24 72 65 73 75 6c 74 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e rse_str($s,.$result);.}.function
10f860 20 6d 62 5f 73 74 72 6c 65 6e 28 24 73 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 .mb_strlen($s,.$enc.=.null).{.re
10f880 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 6c 65 6e 28 24 73 2c 20 24 turn.p\Mbstring::mb_strlen($s,.$
10f8a0 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 70 6f 73 28 24 73 2c 20 24 enc);.}.function.mb_strpos($s,.$
10f8c0 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 75 6c 6c needle,.$offset.=.0,.$enc.=.null
10f8e0 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 70 6f 73 ).{.return.p\Mbstring::mb_strpos
10f900 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 3b 20 7d 0a ($s,.$needle,.$offset,.$enc);.}.
10f920 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 2c 20 24 65 6e 63 20 function.mb_strtolower($s,.$enc.
10f940 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 5f =.null).{.return.p\Mbstring::mb_
10f960 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e strtolower($s,.$enc);.}.function
10f980 20 6d 62 5f 73 74 72 74 6f 75 70 70 65 72 28 24 73 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 .mb_strtoupper($s,.$enc.=.null).
10f9a0 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 74 6f 75 70 70 {.return.p\Mbstring::mb_strtoupp
10f9c0 65 72 28 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 75 62 73 er($s,.$enc);.}.function.mb_subs
10f9e0 74 69 74 75 74 65 5f 63 68 61 72 61 63 74 65 72 28 24 63 68 61 72 20 3d 20 6e 75 6c 6c 29 20 7b titute_character($char.=.null).{
10fa00 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 75 62 73 74 69 74 75 74 .return.p\Mbstring::mb_substitut
10fa20 65 5f 63 68 61 72 61 63 74 65 72 28 24 63 68 61 72 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d e_character($char);.}.function.m
10fa40 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 20 3d 20 32 b_substr($s,.$start,.$length.=.2
10fa60 31 34 37 34 38 33 36 34 37 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 74 75 72 6e 147483647,.$enc.=.null).{.return
10fa80 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 75 62 73 74 72 28 24 73 2c 20 24 73 74 61 72 .p\Mbstring::mb_substr($s,.$star
10faa0 74 2c 20 24 6c 65 6e 67 74 68 2c 20 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 t,.$length,.$enc);.}.function.mb
10fac0 5f 73 74 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 _stripos($s,.$needle,.$offset.=.
10fae0 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
10fb00 69 6e 67 3a 3a 6d 62 5f 73 74 72 69 70 6f 73 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 6f 66 ing::mb_stripos($s,.$needle,.$of
10fb20 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 69 73 fset,.$enc);.}.function.mb_stris
10fb40 74 72 28 24 73 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 24 tr($s,.$needle,.$part.=.false,.$
10fb60 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 3a enc.=.null).{.return.p\Mbstring:
10fb80 3a 6d 62 5f 73 74 72 69 73 74 72 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 2c 20 :mb_stristr($s,.$needle,.$part,.
10fba0 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 63 68 72 28 24 73 2c $enc);.}.function.mb_strrchr($s,
10fbc0 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.=.
10fbe0 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
10fc00 72 72 63 68 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 rrchr($s,.$needle,.$part,.$enc);
10fc20 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 72 69 63 68 72 28 24 73 2c 20 24 6e 65 65 .}.function.mb_strrichr($s,.$nee
10fc40 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)
10fc60 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 72 69 63 68 .{.return.p\Mbstring::mb_strrich
10fc80 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 7d 0a 66 r($s,.$needle,.$part,.$enc);.}.f
10fca0 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 72 69 70 6f 73 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c unction.mb_strripos($s,.$needle,
10fcc0 20 24 6f 66 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 .$offset.=.0,.$enc.=.null).{.ret
10fce0 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 72 69 70 6f 73 28 24 73 2c 20 urn.p\Mbstring::mb_strripos($s,.
10fd00 24 6e 65 65 64 6c 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 $needle,.$offset,.$enc);.}.funct
10fd20 69 6f 6e 20 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 ion.mb_strrpos($s,.$needle,.$off
10fd40 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 70 set.=.0,.$enc.=.null).{.return.p
10fd60 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 72 70 6f 73 28 24 73 2c 20 24 6e 65 65 64 6c \Mbstring::mb_strrpos($s,.$needl
10fd80 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
10fda0 5f 73 74 72 73 74 72 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 72 74 20 3d 20 66 61 6c _strstr($s,.$needle,.$part.=.fal
10fdc0 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 5c 4d 62 73 74 se,.$enc.=.null).{.return.p\Mbst
10fde0 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 73 74 72 28 24 73 2c 20 24 6e 65 65 64 6c 65 2c 20 24 70 61 ring::mb_strstr($s,.$needle,.$pa
10fe00 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 67 65 74 5f 69 6e 66 rt,.$enc);.}.function.mb_get_inf
10fe20 6f 28 24 74 79 70 65 20 3d 20 27 61 6c 6c 27 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 o($type.=.'all').{.return.p\Mbst
10fe40 72 69 6e 67 3a 3a 6d 62 5f 67 65 74 5f 69 6e 66 6f 28 24 74 79 70 65 29 3b 20 7d 0a 66 75 6e 63 ring::mb_get_info($type);.}.func
10fe60 74 69 6f 6e 20 6d 62 5f 68 74 74 70 5f 6f 75 74 70 75 74 28 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 tion.mb_http_output($enc.=.null)
10fe80 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 6f 75 .{.return.p\Mbstring::mb_http_ou
10fea0 74 70 75 74 28 24 65 6e 63 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 74 72 77 69 64 tput($enc);.}.function.mb_strwid
10fec0 74 68 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 4d th($s,.$enc.=.null).{.return.p\M
10fee0 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 74 72 77 69 64 74 68 28 24 73 2c 20 24 65 6e 63 29 3b 20 bstring::mb_strwidth($s,.$enc);.
10ff00 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 68 61 79 73 }.function.mb_substr_count($hays
10ff20 74 61 63 6b 2c 20 24 6e 65 65 64 6c 65 2c 20 24 65 6e 63 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 65 tack,.$needle,.$enc.=.null).{.re
10ff40 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 73 75 62 73 74 72 5f 63 6f 75 6e 74 turn.p\Mbstring::mb_substr_count
10ff60 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 29 3b 20 7d 0a 66 75 ($haystack,.$needle,.$enc);.}.fu
10ff80 6e 63 74 69 6f 6e 20 6d 62 5f 6f 75 74 70 75 74 5f 68 61 6e 64 6c 65 72 28 24 63 6f 6e 74 65 6e nction.mb_output_handler($conten
10ffa0 74 73 2c 20 24 73 74 61 74 75 73 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 ts,.$status).{.return.p\Mbstring
10ffc0 3a 3a 6d 62 5f 6f 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 ::mb_output_handler($contents,.$
10ffe0 73 74 61 74 75 73 29 3b 20 7d 0a 66 75 6e 63 74 69 6f 6e 20 6d 62 5f 68 74 74 70 5f 69 6e 70 75 status);.}.function.mb_http_inpu
110000 74 28 24 74 79 70 65 20 3d 20 27 27 29 20 7b 20 72 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e t($type.=.'').{.return.p\Mbstrin
110020 67 3a 3a 6d 62 5f 68 74 74 70 5f 69 6e 70 75 74 28 24 74 79 70 65 29 3b 20 7d 0a 66 75 6e 63 74 g::mb_http_input($type);.}.funct
110040 69 6f 6e 20 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 ion.mb_convert_variables($toEnco
110060 64 69 6e 67 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 ding,.$fromEncoding,.&$a.=.null,
110080 20 26 24 62 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 .&$b.=.null,.&$c.=.null,.&$d.=.n
1100a0 75 6c 6c 2c 20 26 24 65 20 3d 20 6e 75 6c 6c 2c 20 26 24 66 20 3d 20 6e 75 6c 6c 29 20 7b 20 72 ull,.&$e.=.null,.&$f.=.null).{.r
1100c0 65 74 75 72 6e 20 70 5c 4d 62 73 74 72 69 6e 67 3a 3a 6d 62 5f 63 6f 6e 76 65 72 74 5f 76 61 72 eturn.p\Mbstring::mb_convert_var
1100e0 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 45 6e 63 6f 64 69 6e iables($toEncoding,.$fromEncodin
110100 67 2c 20 24 76 30 2c 20 24 61 2c 20 24 62 2c 20 24 63 2c 20 24 64 2c 20 24 65 2c 20 24 66 29 3b g,.$v0,.$a,.$b,.$c,.$d,.$e,.$f);
110120 20 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
110140 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 74 69 ymfony\Component\Process\Excepti
110160 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 49 6e 74 on;.......interface.ExceptionInt
110180 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
1101a0 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 5c 45 pace.Symfony\Component\Process\E
1101c0 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 76 61 6c 69 64 41 72 67 xception;.......class.InvalidArg
1101e0 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 76 61 6c 69 64 41 umentException.extends.\InvalidA
110200 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 73 20 45 78 63 65 rgumentException.implements.Exce
110220 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........
110240 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
110260 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 4c 6f rocess\Exception;.......class.Lo
110280 67 69 63 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 4c 6f 67 69 63 45 78 63 65 70 gicException.extends.\LogicExcep
1102a0 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
1102c0 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
1102e0 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
110300 74 69 6f 6e 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 50 72 6f tion;..use.Symfony\Component\Pro
110320 63 65 73 73 5c 50 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 cess\Process;.......class.Proces
110340 73 46 61 69 6c 65 64 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 52 75 6e 74 69 6d 65 sFailedException.extends.Runtime
110360 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 3b 0a 0a 70 Exception.{.private.$process;..p
110380 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 72 6f 63 65 ublic.function.__construct(Proce
1103a0 73 73 20 24 70 72 6f 63 65 73 73 29 0a 7b 0a 69 66 20 28 24 70 72 6f 63 65 73 73 2d 3e 69 73 53 ss.$process).{.if.($process->isS
1103c0 75 63 63 65 73 73 66 75 6c 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 uccessful()).{.throw.new.Invalid
1103e0 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 45 78 70 65 63 74 65 64 20 61 20 66 61 ArgumentException('Expected.a.fa
110400 69 6c 65 64 20 70 72 6f 63 65 73 73 2c 20 62 75 74 20 74 68 65 20 67 69 76 65 6e 20 70 72 6f 63 iled.process,.but.the.given.proc
110420 65 73 73 20 77 61 73 20 73 75 63 63 65 73 73 66 75 6c 2e 27 29 3b 0a 7d 0a 0a 24 65 72 72 6f 72 ess.was.successful.');.}..$error
110440 20 3d 20 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 66 61 69 .=.sprintf('The.command."%s".fai
110460 6c 65 64 2e 27 2e 22 5c 6e 5c 6e 45 78 69 74 20 43 6f 64 65 3a 20 25 73 28 25 73 29 5c 6e 5c 6e led.'."\n\nExit.Code:.%s(%s)\n\n
110480 57 6f 72 6b 69 6e 67 20 64 69 72 65 63 74 6f 72 79 3a 20 25 73 22 2c 0a 24 70 72 6f 63 65 73 73 Working.directory:.%s",.$process
1104a0 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 29 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 ->getCommandLine(),.$process->ge
1104c0 74 45 78 69 74 43 6f 64 65 28 29 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 78 69 74 43 6f tExitCode(),.$process->getExitCo
1104e0 64 65 54 65 78 74 28 29 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 57 6f 72 6b 69 6e 67 44 69 deText(),.$process->getWorkingDi
110500 72 65 63 74 6f 72 79 28 29 0a 29 3b 0a 0a 69 66 20 28 21 24 70 72 6f 63 65 73 73 2d 3e 69 73 4f rectory().);..if.(!$process->isO
110520 75 74 70 75 74 44 69 73 61 62 6c 65 64 28 29 29 20 7b 0a 24 65 72 72 6f 72 20 2e 3d 20 73 70 72 utputDisabled()).{.$error..=.spr
110540 69 6e 74 66 28 22 5c 6e 5c 6e 4f 75 74 70 75 74 3a 5c 6e 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d intf("\n\nOutput:\n=============
110560 3d 3d 3d 5c 6e 25 73 5c 6e 5c 6e 45 72 72 6f 72 20 4f 75 74 70 75 74 3a 5c 6e 3d 3d 3d 3d 3d 3d ===\n%s\n\nError.Output:\n======
110580 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 5c 6e 25 73 22 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 4f 75 ==========\n%s",.$process->getOu
1105a0 74 70 75 74 28 29 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 tput(),.$process->getErrorOutput
1105c0 28 29 0a 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 28 24 65 72 ().);.}..parent::__construct($er
1105e0 72 6f 72 29 3b 0a 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 ror);..$this->process.=.$process
110600 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 28 ;.}..public.function.getProcess(
110620 29 0a 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 7d 0a 3c ).{.return.$this->process;.}.}.<
110640 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
110660 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 75 \Component\Process\Exception;..u
110680 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 6f se.Symfony\Component\Process\Pro
1106a0 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 54 69 6d 65 64 4f 75 cess;.......class.ProcessTimedOu
1106c0 74 45 78 63 65 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 tException.extends.RuntimeExcept
1106e0 69 6f 6e 0a 7b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 47 45 4e 45 52 41 4c 20 3d 20 31 3b 0a 63 6f ion.{.const.TYPE_GENERAL.=.1;.co
110700 6e 73 74 20 54 59 50 45 5f 49 44 4c 45 20 3d 20 32 3b 0a 0a 70 72 69 76 61 74 65 20 24 70 72 6f nst.TYPE_IDLE.=.2;..private.$pro
110720 63 65 73 73 3b 0a 70 72 69 76 61 74 65 20 24 74 69 6d 65 6f 75 74 54 79 70 65 3b 0a 0a 70 75 62 cess;.private.$timeoutType;..pub
110740 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 72 6f 63 65 73 73 lic.function.__construct(Process
110760 20 24 70 72 6f 63 65 73 73 2c 20 24 74 69 6d 65 6f 75 74 54 79 70 65 29 0a 7b 0a 24 74 68 69 73 .$process,.$timeoutType).{.$this
110780 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 74 69 6d ->process.=.$process;.$this->tim
1107a0 65 6f 75 74 54 79 70 65 20 3d 20 24 74 69 6d 65 6f 75 74 54 79 70 65 3b 0a 0a 70 61 72 65 6e 74 eoutType.=.$timeoutType;..parent
1107c0 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 73 70 72 69 6e 74 66 28 0a 27 54 68 65 20 70 72 6f 63 ::__construct(sprintf(.'The.proc
1107e0 65 73 73 20 22 25 73 22 20 65 78 63 65 65 64 65 64 20 74 68 65 20 74 69 6d 65 6f 75 74 20 6f 66 ess."%s".exceeded.the.timeout.of
110800 20 25 73 20 73 65 63 6f 6e 64 73 2e 27 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 43 6f 6d 6d .%s.seconds.',.$process->getComm
110820 61 6e 64 4c 69 6e 65 28 29 2c 0a 24 74 68 69 73 2d 3e 67 65 74 45 78 63 65 65 64 65 64 54 69 6d andLine(),.$this->getExceededTim
110840 65 6f 75 74 28 29 0a 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 eout().));.}..public.function.ge
110860 74 50 72 6f 63 65 73 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 tProcess().{.return.$this->proce
110880 73 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 47 65 6e 65 72 61 6c ss;.}..public.function.isGeneral
1108a0 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
1108c0 74 54 79 70 65 20 3d 3d 3d 20 73 65 6c 66 3a 3a 54 59 50 45 5f 47 45 4e 45 52 41 4c 3b 0a 7d 0a tType.===.self::TYPE_GENERAL;.}.
1108e0 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 64 6c 65 54 69 6d 65 6f 75 74 28 29 .public.function.isIdleTimeout()
110900 0a 7b 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 .{.return.$this->timeoutType.===
110920 20 73 65 6c 66 3a 3a 54 59 50 45 5f 49 44 4c 45 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 .self::TYPE_IDLE;.}..public.func
110940 74 69 6f 6e 20 67 65 74 45 78 63 65 65 64 65 64 54 69 6d 65 6f 75 74 28 29 0a 7b 0a 73 77 69 74 tion.getExceededTimeout().{.swit
110960 63 68 20 28 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 54 79 70 65 29 20 7b 0a 63 61 73 65 20 73 ch.($this->timeoutType).{.case.s
110980 65 6c 66 3a 3a 54 59 50 45 5f 47 45 4e 45 52 41 4c 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d elf::TYPE_GENERAL:.return.$this-
1109a0 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 54 69 6d 65 6f 75 74 28 29 3b 0a 0a 63 61 73 65 20 73 65 >process->getTimeout();..case.se
1109c0 6c 66 3a 3a 54 59 50 45 5f 49 44 4c 45 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f lf::TYPE_IDLE:.return.$this->pro
1109e0 63 65 73 73 2d 3e 67 65 74 49 64 6c 65 54 69 6d 65 6f 75 74 28 29 3b 0a 0a 64 65 66 61 75 6c 74 cess->getIdleTimeout();..default
110a00 3a 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 73 70 72 69 :.throw.new.\LogicException(spri
110a20 6e 74 66 28 27 55 6e 6b 6e 6f 77 6e 20 74 69 6d 65 6f 75 74 20 74 79 70 65 20 22 25 64 22 2e 27 ntf('Unknown.timeout.type."%d".'
110a40 2c 20 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 54 79 70 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f ,.$this->timeoutType));.}.}.}.<?
110a60 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\
110a80 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 0a 0a Component\Process\Exception;....
110aa0 0a 0a 0a 63 6c 61 73 73 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 ...class.RuntimeException.extend
110ac0 73 20 5c 52 75 6e 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 s.\RuntimeException.implements.E
110ae0 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 0a 0a 0a xceptionInterface.{.}.<?php.....
110b00 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
110b20 74 5c 50 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 78 65 63 75 74 61 62 t\Process;........class.Executab
110b40 6c 65 46 69 6e 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 73 75 66 66 69 78 65 73 20 3d 20 61 leFinder.{.private.$suffixes.=.a
110b60 72 72 61 79 28 27 2e 65 78 65 27 2c 20 27 2e 62 61 74 27 2c 20 27 2e 63 6d 64 27 2c 20 27 2e 63 rray('.exe',.'.bat',.'.cmd',.'.c
110b80 6f 6d 27 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 53 om');.......public.function.setS
110ba0 75 66 66 69 78 65 73 28 61 72 72 61 79 20 24 73 75 66 66 69 78 65 73 29 0a 7b 0a 24 74 68 69 73 uffixes(array.$suffixes).{.$this
110bc0 2d 3e 73 75 66 66 69 78 65 73 20 3d 20 24 73 75 66 66 69 78 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a ->suffixes.=.$suffixes;.}.......
110be0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 53 75 66 66 69 78 28 24 73 75 66 66 69 public.function.addSuffix($suffi
110c00 78 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 75 66 66 69 78 65 73 5b 5d 20 3d 20 24 73 75 66 66 69 78 x).{.$this->suffixes[].=.$suffix
110c20 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 69 ;.}...........public.function.fi
110c40 6e 64 28 24 6e 61 6d 65 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 nd($name,.$default.=.null,.array
110c60 20 24 65 78 74 72 61 44 69 72 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 69 6e 69 .$extraDirs.=.array()).{.if.(ini
110c80 5f 67 65 74 28 27 6f 70 65 6e 5f 62 61 73 65 64 69 72 27 29 29 20 7b 0a 24 73 65 61 72 63 68 50 _get('open_basedir')).{.$searchP
110ca0 61 74 68 20 3d 20 65 78 70 6c 6f 64 65 28 50 41 54 48 5f 53 45 50 41 52 41 54 4f 52 2c 20 69 6e ath.=.explode(PATH_SEPARATOR,.in
110cc0 69 5f 67 65 74 28 27 6f 70 65 6e 5f 62 61 73 65 64 69 72 27 29 29 3b 0a 24 64 69 72 73 20 3d 20 i_get('open_basedir'));.$dirs.=.
110ce0 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 73 65 61 72 63 68 50 61 74 68 20 61 73 array();.foreach.($searchPath.as
110d00 20 24 70 61 74 68 29 20 7b 0a 0a 20 69 66 20 28 40 69 73 5f 64 69 72 28 24 70 61 74 68 29 29 20 .$path).{...if.(@is_dir($path)).
110d20 7b 0a 24 64 69 72 73 5b 5d 20 3d 20 24 70 61 74 68 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 {.$dirs[].=.$path;.}.else.{.if.(
110d40 62 61 73 65 6e 61 6d 65 28 24 70 61 74 68 29 20 3d 3d 20 24 6e 61 6d 65 20 26 26 20 69 73 5f 65 basename($path).==.$name.&&.is_e
110d60 78 65 63 75 74 61 62 6c 65 28 24 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 74 68 xecutable($path)).{.return.$path
110d80 3b 0a 7d 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 69 72 73 20 3d 20 61 72 72 61 79 5f 6d ;.}.}.}.}.else.{.$dirs.=.array_m
110da0 65 72 67 65 28 0a 65 78 70 6c 6f 64 65 28 50 41 54 48 5f 53 45 50 41 52 41 54 4f 52 2c 20 67 65 erge(.explode(PATH_SEPARATOR,.ge
110dc0 74 65 6e 76 28 27 50 41 54 48 27 29 20 3f 3a 20 67 65 74 65 6e 76 28 27 50 61 74 68 27 29 29 2c tenv('PATH').?:.getenv('Path')),
110de0 0a 24 65 78 74 72 61 44 69 72 73 0a 29 3b 0a 7d 0a 0a 24 73 75 66 66 69 78 65 73 20 3d 20 61 72 .$extraDirs.);.}..$suffixes.=.ar
110e00 72 61 79 28 27 27 29 3b 0a 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f ray('');.if.('\\'.===.DIRECTORY_
110e20 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 24 70 61 74 68 45 78 74 20 3d 20 67 65 74 65 6e 76 28 27 SEPARATOR).{.$pathExt.=.getenv('
110e40 50 41 54 48 45 58 54 27 29 3b 0a 24 73 75 66 66 69 78 65 73 20 3d 20 24 70 61 74 68 45 78 74 20 PATHEXT');.$suffixes.=.$pathExt.
110e60 3f 20 65 78 70 6c 6f 64 65 28 50 41 54 48 5f 53 45 50 41 52 41 54 4f 52 2c 20 24 70 61 74 68 45 ?.explode(PATH_SEPARATOR,.$pathE
110e80 78 74 29 20 3a 20 24 74 68 69 73 2d 3e 73 75 66 66 69 78 65 73 3b 0a 7d 0a 66 6f 72 65 61 63 68 xt).:.$this->suffixes;.}.foreach
110ea0 20 28 24 73 75 66 66 69 78 65 73 20 61 73 20 24 73 75 66 66 69 78 29 20 7b 0a 66 6f 72 65 61 63 .($suffixes.as.$suffix).{.foreac
110ec0 68 20 28 24 64 69 72 73 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 69 73 5f 66 69 6c 65 28 h.($dirs.as.$dir).{.if.(is_file(
110ee0 24 66 69 6c 65 20 3d 20 24 64 69 72 2e 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 $file.=.$dir.DIRECTORY_SEPARATOR
110f00 2e 24 6e 61 6d 65 2e 24 73 75 66 66 69 78 29 20 26 26 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 .$name.$suffix).&&.('\\'.===.DIR
110f20 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 7c 7c 20 69 73 5f 65 78 65 63 75 74 61 62 6c ECTORY_SEPARATOR.||.is_executabl
110f40 65 28 24 66 69 6c 65 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 3b 0a 7d 0a 7d 0a 7d e($file))).{.return.$file;.}.}.}
110f60 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 ..return.$default;.}.}.Copyright
110f80 20 28 63 29 20 32 30 30 34 2d 32 30 31 35 20 46 61 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 72 0a .(c).2004-2015.Fabien.Potencier.
110fa0 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
110fc0 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
110fe0 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
111000 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
111020 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
111040 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,
111060 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
111080 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
1110a0 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
1110c0 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
1110e0 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
111100 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
111120 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
111140 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
111160 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
111180 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
1111a0 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
1111c0 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.
1111e0 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
111200 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
111220 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
111240 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
111260 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.
111280 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.
1112a0 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
1112c0 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
1112e0 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
111300 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
111320 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
111340 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.
111360 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.
111380 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..
1113a0 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
1113c0 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 y\Component\Process;........clas
1113e0 73 20 50 68 70 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 s.PhpExecutableFinder.{.private.
111400 24 65 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 $executableFinder;..public.funct
111420 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 65 78 65 63 75 ion.__construct().{.$this->execu
111440 74 61 62 6c 65 46 69 6e 64 65 72 20 3d 20 6e 65 77 20 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 tableFinder.=.new.ExecutableFind
111460 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 63 74 69 6f 6e 20 er();.}.........public.function.
111480 66 69 6e 64 28 24 69 6e 63 6c 75 64 65 41 72 67 73 20 3d 20 74 72 75 65 29 0a 7b 0a 24 61 72 67 find($includeArgs.=.true).{.$arg
1114a0 73 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 41 72 67 75 6d 65 6e 74 73 28 29 3b 0a 24 61 72 67 s.=.$this->findArguments();.$arg
1114c0 73 20 3d 20 24 69 6e 63 6c 75 64 65 41 72 67 73 20 26 26 20 24 61 72 67 73 20 3f 20 27 20 27 2e s.=.$includeArgs.&&.$args.?.'.'.
1114e0 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 24 61 72 67 73 29 20 3a 20 27 27 3b 0a 0a 0a 20 69 66 20 implode('.',.$args).:.'';....if.
111500 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 72 65 74 75 (defined('HHVM_VERSION')).{.retu
111520 72 6e 20 28 67 65 74 65 6e 76 28 27 50 48 50 5f 42 49 4e 41 52 59 27 29 20 3f 3a 20 50 48 50 5f rn.(getenv('PHP_BINARY').?:.PHP_
111540 42 49 4e 41 52 59 29 2e 24 61 72 67 73 3b 0a 7d 0a 0a 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 BINARY).$args;.}....if.(defined(
111560 27 50 48 50 5f 42 49 4e 41 52 59 27 29 20 26 26 20 50 48 50 5f 42 49 4e 41 52 59 20 26 26 20 69 'PHP_BINARY').&&.PHP_BINARY.&&.i
111580 6e 5f 61 72 72 61 79 28 50 48 50 5f 53 41 50 49 2c 20 61 72 72 61 79 28 27 63 6c 69 27 2c 20 27 n_array(PHP_SAPI,.array('cli',.'
1115a0 63 6c 69 2d 73 65 72 76 65 72 27 2c 20 27 70 68 70 64 62 67 27 29 29 20 26 26 20 69 73 5f 66 69 cli-server',.'phpdbg')).&&.is_fi
1115c0 6c 65 28 50 48 50 5f 42 49 4e 41 52 59 29 29 20 7b 0a 72 65 74 75 72 6e 20 50 48 50 5f 42 49 4e le(PHP_BINARY)).{.return.PHP_BIN
1115e0 41 52 59 2e 24 61 72 67 73 3b 0a 7d 0a 0a 69 66 20 28 24 70 68 70 20 3d 20 67 65 74 65 6e 76 28 ARY.$args;.}..if.($php.=.getenv(
111600 27 50 48 50 5f 50 41 54 48 27 29 29 20 7b 0a 69 66 20 28 21 69 73 5f 65 78 65 63 75 74 61 62 6c 'PHP_PATH')).{.if.(!is_executabl
111620 65 28 24 70 68 70 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 e($php)).{.return.false;.}..retu
111640 72 6e 20 24 70 68 70 3b 0a 7d 0a 0a 69 66 20 28 24 70 68 70 20 3d 20 67 65 74 65 6e 76 28 27 50 rn.$php;.}..if.($php.=.getenv('P
111660 48 50 5f 50 45 41 52 5f 50 48 50 5f 42 49 4e 27 29 29 20 7b 0a 69 66 20 28 69 73 5f 65 78 65 63 HP_PEAR_PHP_BIN')).{.if.(is_exec
111680 75 74 61 62 6c 65 28 24 70 68 70 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 68 70 3b 0a 7d 0a 7d utable($php)).{.return.$php;.}.}
1116a0 0a 0a 24 64 69 72 73 20 3d 20 61 72 72 61 79 28 50 48 50 5f 42 49 4e 44 49 52 29 3b 0a 69 66 20 ..$dirs.=.array(PHP_BINDIR);.if.
1116c0 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 7b ('\\'.===.DIRECTORY_SEPARATOR).{
1116e0 0a 24 64 69 72 73 5b 5d 20 3d 20 27 43 3a 5c 78 61 6d 70 70 5c 70 68 70 5c 5c 27 3b 0a 7d 0a 0a .$dirs[].=.'C:\xampp\php\\';.}..
111700 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 2d 3e return.$this->executableFinder->
111720 66 69 6e 64 28 27 70 68 70 27 2c 20 66 61 6c 73 65 2c 20 24 64 69 72 73 29 3b 0a 7d 0a 0a 0a 0a find('php',.false,.$dirs);.}....
111740 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 41 72 67 75 6d 65 6e 74 73 ...public.function.findArguments
111760 28 29 0a 7b 0a 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 ().{.$arguments.=.array();..if.(
111780 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 61 72 67 75 defined('HHVM_VERSION')).{.$argu
1117a0 6d 65 6e 74 73 5b 5d 20 3d 20 27 2d 2d 70 68 70 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 70 68 ments[].=.'--php';.}.elseif.('ph
1117c0 70 64 62 67 27 20 3d 3d 3d 20 50 48 50 5f 53 41 50 49 29 20 7b 0a 24 61 72 67 75 6d 65 6e 74 73 pdbg'.===.PHP_SAPI).{.$arguments
1117e0 5b 5d 20 3d 20 27 2d 71 72 72 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 72 67 75 6d 65 6e 74 [].=.'-qrr';.}..return.$argument
111800 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 65 73 70 61 63 65 s;.}.}.<?php...........namespace
111820 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 0a 75 73 65 .Symfony\Component\Process;..use
111840 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
111860 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 0a 0a 0a 0a 0a 0a tion\RuntimeException;..........
111880 0a 63 6c 61 73 73 20 50 68 70 50 72 6f 63 65 73 73 20 65 78 74 65 6e 64 73 20 50 72 6f 63 65 73 .class.PhpProcess.extends.Proces
1118a0 73 0a 7b 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 s.{..........public.function.__c
1118c0 6f 6e 73 74 72 75 63 74 28 24 73 63 72 69 70 74 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 2c 20 61 onstruct($script,.$cwd.=.null,.a
1118e0 72 72 61 79 20 24 65 6e 76 20 3d 20 6e 75 6c 6c 2c 20 24 74 69 6d 65 6f 75 74 20 3d 20 36 30 2c rray.$env.=.null,.$timeout.=.60,
111900 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 0a 24 65 78 .array.$options.=.array()).{.$ex
111920 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 20 3d 20 6e 65 77 20 50 68 70 45 78 65 63 75 74 61 62 ecutableFinder.=.new.PhpExecutab
111940 6c 65 46 69 6e 64 65 72 28 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 70 68 70 20 3d leFinder();.if.(false.===.$php.=
111960 20 24 65 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 2d 3e 66 69 6e 64 28 29 29 20 7b 0a 24 70 .$executableFinder->find()).{.$p
111980 68 70 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 69 66 20 28 27 70 68 70 64 62 67 27 20 3d 3d 3d 20 50 48 hp.=.null;.}.if.('phpdbg'.===.PH
1119a0 50 5f 53 41 50 49 29 20 7b 0a 24 66 69 6c 65 20 3d 20 74 65 6d 70 6e 61 6d 28 73 79 73 5f 67 65 P_SAPI).{.$file.=.tempnam(sys_ge
1119c0 74 5f 74 65 6d 70 5f 64 69 72 28 29 2c 20 27 64 62 67 27 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 t_temp_dir(),.'dbg');.file_put_c
1119e0 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 2c 20 24 73 63 72 69 70 74 29 3b 0a 72 65 67 69 73 74 65 ontents($file,.$script);.registe
111a00 72 5f 73 68 75 74 64 6f 77 6e 5f 66 75 6e 63 74 69 6f 6e 28 27 75 6e 6c 69 6e 6b 27 2c 20 24 66 r_shutdown_function('unlink',.$f
111a20 69 6c 65 29 3b 0a 24 70 68 70 20 2e 3d 20 27 20 27 2e 50 72 6f 63 65 73 73 55 74 69 6c 73 3a 3a ile);.$php..=.'.'.ProcessUtils::
111a40 65 73 63 61 70 65 41 72 67 75 6d 65 6e 74 28 24 66 69 6c 65 29 3b 0a 24 73 63 72 69 70 74 20 3d escapeArgument($file);.$script.=
111a60 20 6e 75 6c 6c 3b 0a 7d 0a 69 66 20 28 27 5c 5c 27 20 21 3d 3d 20 44 49 52 45 43 54 4f 52 59 5f .null;.}.if.('\\'.!==.DIRECTORY_
111a80 53 45 50 41 52 41 54 4f 52 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 70 68 70 29 20 7b 0a 0a 20 SEPARATOR.&&.null.!==.$php).{...
111aa0 0a 20 0a 20 24 70 68 70 20 3d 20 27 65 78 65 63 20 27 2e 24 70 68 70 3b 0a 7d 0a 0a 70 61 72 65 ....$php.=.'exec.'.$php;.}..pare
111ac0 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 68 70 2c 20 24 63 77 64 2c 20 24 65 6e 76 nt::__construct($php,.$cwd,.$env
111ae0 2c 20 24 73 63 72 69 70 74 2c 20 24 74 69 6d 65 6f 75 74 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a ,.$script,.$timeout,.$options);.
111b00 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 68 70 42 69 6e 61 }.....public.function.setPhpBina
111b20 72 79 28 24 70 68 70 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 ry($php).{.$this->setCommandLine
111b40 28 24 70 68 70 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 74 ($php);.}.....public.function.st
111b60 61 72 74 28 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c art($callback.=.null).{.if.(null
111b80 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 29 29 20 7b 0a .===.$this->getCommandLine()).{.
111ba0 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
111bc0 6c 65 20 74 6f 20 66 69 6e 64 20 74 68 65 20 50 48 50 20 65 78 65 63 75 74 61 62 6c 65 2e 27 29 le.to.find.the.PHP.executable.')
111be0 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 73 74 61 72 74 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 7d ;.}..parent::start($callback);.}
111c00 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
111c20 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 3b 0a 0a 0a fony\Component\Process\Pipes;...
111c40 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 50 69 70 65 73 ....abstract.class.AbstractPipes
111c60 20 69 6d 70 6c 65 6d 65 6e 74 73 20 50 69 70 65 73 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 70 75 .implements.PipesInterface.{..pu
111c80 62 6c 69 63 20 24 70 69 70 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 70 72 6f 74 65 63 74 blic.$pipes.=.array();...protect
111ca0 65 64 20 24 69 6e 70 75 74 42 75 66 66 65 72 20 3d 20 27 27 3b 0a 0a 70 72 6f 74 65 63 74 65 64 ed.$inputBuffer.=.'';..protected
111cc0 20 24 69 6e 70 75 74 3b 0a 0a 0a 70 72 69 76 61 74 65 20 24 62 6c 6f 63 6b 65 64 20 3d 20 74 72 .$input;...private.$blocked.=.tr
111ce0 75 65 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 6f 73 65 28 29 0a ue;.....public.function.close().
111d00 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 69 70 65 73 20 61 73 20 24 70 69 70 65 {.foreach.($this->pipes.as.$pipe
111d20 29 20 7b 0a 66 63 6c 6f 73 65 28 24 70 69 70 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 69 70 65 ).{.fclose($pipe);.}.$this->pipe
111d40 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 s.=.array();.}.......protected.f
111d60 75 6e 63 74 69 6f 6e 20 68 61 73 53 79 73 74 65 6d 43 61 6c 6c 42 65 65 6e 49 6e 74 65 72 72 75 unction.hasSystemCallBeenInterru
111d80 70 74 65 64 28 29 0a 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 pted().{.$lastError.=.error_get_
111da0 6c 61 73 74 28 29 3b 0a 0a 0a 20 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 61 73 74 45 72 72 last();....return.isset($lastErr
111dc0 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 29 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 69 or['message']).&&.false.!==.stri
111de0 70 6f 73 28 24 6c 61 73 74 45 72 72 6f 72 5b 27 6d 65 73 73 61 67 65 27 5d 2c 20 27 69 6e 74 65 pos($lastError['message'],.'inte
111e00 72 72 75 70 74 65 64 20 73 79 73 74 65 6d 20 63 61 6c 6c 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f rrupted.system.call');.}.....pro
111e20 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 75 6e 62 6c 6f 63 6b 28 29 0a 7b 0a 69 66 20 28 tected.function.unblock().{.if.(
111e40 21 24 74 68 69 73 2d 3e 62 6c 6f 63 6b 65 64 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 66 6f !$this->blocked).{.return;.}..fo
111e60 72 65 61 63 68 20 28 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 reach.($this->pipes.as.$pipe).{.
111e80 73 74 72 65 61 6d 5f 73 65 74 5f 62 6c 6f 63 6b 69 6e 67 28 24 70 69 70 65 2c 20 30 29 3b 0a 7d stream_set_blocking($pipe,.0);.}
111ea0 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 0a 73 74 .if.(null.!==.$this->input).{.st
111ec0 72 65 61 6d 5f 73 65 74 5f 62 6c 6f 63 6b 69 6e 67 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 ream_set_blocking($this->input,.
111ee0 30 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 62 6c 6f 63 6b 65 64 20 3d 20 66 61 6c 73 65 3b 0a 7d 0);.}..$this->blocked.=.false;.}
111f00 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
111f20 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 3b 0a 0a 0a fony\Component\Process\Pipes;...
111f40 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 50 69 70 65 73 49 6e 74 65 72 66 61 63 65 0a 7b ......interface.PipesInterface.{
111f60 0a 63 6f 6e 73 74 20 43 48 55 4e 4b 5f 53 49 5a 45 20 3d 20 31 36 33 38 34 3b 0a 0a 0a 0a 0a 0a .const.CHUNK_SIZE.=.16384;......
111f80 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 28 .public.function.getDescriptors(
111fa0 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 46 69 6c 65 );.......public.function.getFile
111fc0 73 28 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 72 65 s();..........public.function.re
111fe0 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 6f 73 65 20 3d 20 66 adAndWrite($blocking,.$close.=.f
112000 61 6c 73 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 61 72 65 alse);.......public.function.are
112020 4f 70 65 6e 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 6f 73 Open();.....public.function.clos
112040 65 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 63 65 e();.}.<?php...........namespace
112060 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
112080 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 50 72 6f 63 65 73 73 ;..use.Symfony\Component\Process
1120a0 5c 50 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 6e 69 78 50 69 70 65 \Process;.........class.UnixPipe
1120c0 73 20 65 78 74 65 6e 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 s.extends.AbstractPipes.{..priva
1120e0 74 65 20 24 74 74 79 4d 6f 64 65 3b 0a 0a 70 72 69 76 61 74 65 20 24 70 74 79 4d 6f 64 65 3b 0a te.$ttyMode;..private.$ptyMode;.
112100 0a 70 72 69 76 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 .private.$disableOutput;..public
112120 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 74 74 79 4d 6f 64 65 2c 20 .function.__construct($ttyMode,.
112140 24 70 74 79 4d 6f 64 65 2c 20 24 69 6e 70 75 74 2c 20 24 64 69 73 61 62 6c 65 4f 75 74 70 75 74 $ptyMode,.$input,.$disableOutput
112160 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 74 79 4d 6f 64 65 20 3d 20 28 62 6f 6f 6c 29 20 24 74 74 79 ).{.$this->ttyMode.=.(bool).$tty
112180 4d 6f 64 65 3b 0a 24 74 68 69 73 2d 3e 70 74 79 4d 6f 64 65 20 3d 20 28 62 6f 6f 6c 29 20 24 70 Mode;.$this->ptyMode.=.(bool).$p
1121a0 74 79 4d 6f 64 65 3b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 4f 75 74 70 75 74 20 3d 20 28 tyMode;.$this->disableOutput.=.(
1121c0 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 69 73 5f 72 65 bool).$disableOutput;..if.(is_re
1121e0 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 74 20 3d source($input)).{.$this->input.=
112200 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 74 42 75 .$input;.}.else.{.$this->inputBu
112220 66 66 65 72 20 3d 20 28 73 74 72 69 6e 67 29 20 24 69 6e 70 75 74 3b 0a 7d 0a 7d 0a 0a 70 75 62 ffer.=.(string).$input;.}.}..pub
112240 6c 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 lic.function.__destruct().{.$thi
112260 73 2d 3e 63 6c 6f 73 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 s->close();.}.....public.functio
112280 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 24 74 68 69 73 2d 3e n.getDescriptors().{.if.($this->
1122a0 64 69 73 61 62 6c 65 4f 75 74 70 75 74 29 20 7b 0a 24 6e 75 6c 6c 73 74 72 65 61 6d 20 3d 20 66 disableOutput).{.$nullstream.=.f
1122c0 6f 70 65 6e 28 27 2f 64 65 76 2f 6e 75 6c 6c 27 2c 20 27 63 27 29 3b 0a 0a 72 65 74 75 72 6e 20 open('/dev/null',.'c');..return.
1122e0 61 72 72 61 79 28 0a 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 72 27 29 2c 0a 24 6e 75 6c 6c array(.array('pipe',.'r'),.$null
112300 73 74 72 65 61 6d 2c 0a 24 6e 75 6c 6c 73 74 72 65 61 6d 2c 0a 29 3b 0a 7d 0a 0a 69 66 20 28 24 stream,.$nullstream,.);.}..if.($
112320 74 68 69 73 2d 3e 74 74 79 4d 6f 64 65 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 61 this->ttyMode).{.return.array(.a
112340 72 72 61 79 28 27 66 69 6c 65 27 2c 20 27 2f 64 65 76 2f 74 74 79 27 2c 20 27 72 27 29 2c 0a 61 rray('file',.'/dev/tty',.'r'),.a
112360 72 72 61 79 28 27 66 69 6c 65 27 2c 20 27 2f 64 65 76 2f 74 74 79 27 2c 20 27 77 27 29 2c 0a 61 rray('file',.'/dev/tty',.'w'),.a
112380 72 72 61 79 28 27 66 69 6c 65 27 2c 20 27 2f 64 65 76 2f 74 74 79 27 2c 20 27 77 27 29 2c 0a 29 rray('file',.'/dev/tty',.'w'),.)
1123a0 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 74 79 4d 6f 64 65 20 26 26 20 50 72 6f 63 65 ;.}..if.($this->ptyMode.&&.Proce
1123c0 73 73 3a 3a 69 73 50 74 79 53 75 70 70 6f 72 74 65 64 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 ss::isPtySupported()).{.return.a
1123e0 72 72 61 79 28 0a 61 72 72 61 79 28 27 70 74 79 27 29 2c 0a 61 72 72 61 79 28 27 70 74 79 27 29 rray(.array('pty'),.array('pty')
112400 2c 0a 61 72 72 61 79 28 27 70 74 79 27 29 2c 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 ,.array('pty'),.);.}..return.arr
112420 61 79 28 0a 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 72 27 29 2c 0a 61 72 72 61 79 28 27 70 ay(.array('pipe',.'r'),.array('p
112440 69 70 65 27 2c 20 27 77 27 29 2c 20 0a 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 ipe',.'w'),...array('pipe',.'w')
112460 2c 20 0a 20 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 ,...);.}.....public.function.get
112480 46 69 6c 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a Files().{.return.array();.}.....
1124a0 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 24 62 6c public.function.readAndWrite($bl
1124c0 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 0a 20 0a 20 69 66 ocking,.$close.=.false).{.....if
1124e0 20 28 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 70 69 70 65 73 29 20 26 26 20 61 .(1.===.count($this->pipes).&&.a
112500 72 72 61 79 28 30 29 20 3d 3d 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 70 69 rray(0).===.array_keys($this->pi
112520 70 65 73 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 pes)).{.fclose($this->pipes[0]);
112540 0a 75 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 0a 69 66 20 28 .unset($this->pipes[0]);.}..if.(
112560 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 70 69 70 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 empty($this->pipes)).{.return.ar
112580 72 61 79 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 6e 62 6c 6f 63 6b 28 29 3b 0a 0a 24 72 65 ray();.}..$this->unblock();..$re
1125a0 61 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 ad.=.array();..if.(null.!==.$thi
1125c0 73 2d 3e 69 6e 70 75 74 29 20 7b 0a 0a 20 0a 20 24 72 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 s->input).{.....$r.=.array_merge
1125e0 28 24 74 68 69 73 2d 3e 70 69 70 65 73 2c 20 61 72 72 61 79 28 27 69 6e 70 75 74 27 20 3d 3e 20 ($this->pipes,.array('input'.=>.
112600 24 74 68 69 73 2d 3e 69 6e 70 75 74 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 20 3d 20 24 74 $this->input));.}.else.{.$r.=.$t
112620 68 69 73 2d 3e 70 69 70 65 73 3b 0a 7d 0a 0a 20 75 6e 73 65 74 28 24 72 5b 30 5d 29 3b 0a 0a 24 his->pipes;.}...unset($r[0]);..$
112640 77 20 3d 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 20 3f 20 61 72 72 w.=.isset($this->pipes[0]).?.arr
112660 61 79 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 20 3a 20 6e 75 6c 6c 3b 0a 24 65 20 3d ay($this->pipes[0]).:.null;.$e.=
112680 20 6e 75 6c 6c 3b 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 6e 20 3d 20 40 73 74 .null;....if.(false.===.$n.=.@st
1126a0 72 65 61 6d 5f 73 65 6c 65 63 74 28 24 72 2c 20 24 77 2c 20 24 65 2c 20 30 2c 20 24 62 6c 6f 63 ream_select($r,.$w,.$e,.0,.$bloc
1126c0 6b 69 6e 67 20 3f 20 50 72 6f 63 65 73 73 3a 3a 54 49 4d 45 4f 55 54 5f 50 52 45 43 49 53 49 4f king.?.Process::TIMEOUT_PRECISIO
1126e0 4e 20 2a 20 31 45 36 20 3a 20 30 29 29 20 7b 0a 0a 20 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e N.*.1E6.:.0)).{.....if.(!$this->
112700 68 61 73 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 29 20 hasSystemCallBeenInterrupted()).
112720 7b 0a 24 74 68 69 73 2d 3e 70 69 70 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 72 65 74 {.$this->pipes.=.array();.}..ret
112740 75 72 6e 20 24 72 65 61 64 3b 0a 7d 0a 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 24 6e 29 20 7b 0a urn.$read;.}....if.(0.===.$n).{.
112760 72 65 74 75 72 6e 20 24 72 65 61 64 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 20 61 73 20 return.$read;.}..foreach.($r.as.
112780 24 70 69 70 65 29 20 7b 0a 0a 20 0a 20 24 74 79 70 65 20 3d 20 28 66 61 6c 73 65 20 21 3d 3d 20 $pipe).{.....$type.=.(false.!==.
1127a0 24 66 6f 75 6e 64 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 70 69 70 65 2c 20 24 74 68 $found.=.array_search($pipe,.$th
1127c0 69 73 2d 3e 70 69 70 65 73 29 29 20 3f 20 24 66 6f 75 6e 64 20 3a 20 27 69 6e 70 75 74 27 3b 0a is->pipes)).?.$found.:.'input';.
1127e0 24 64 61 74 61 20 3d 20 27 27 3b 0a 77 68 69 6c 65 20 28 27 27 20 21 3d 3d 20 24 64 61 74 61 72 $data.=.'';.while.(''.!==.$datar
112800 65 61 64 20 3d 20 28 73 74 72 69 6e 67 29 20 66 72 65 61 64 28 24 70 69 70 65 2c 20 73 65 6c 66 ead.=.(string).fread($pipe,.self
112820 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 61 74 61 72 ::CHUNK_SIZE)).{.$data..=.$datar
112840 65 61 64 3b 0a 7d 0a 0a 69 66 20 28 27 27 20 21 3d 3d 20 24 64 61 74 61 29 20 7b 0a 69 66 20 28 ead;.}..if.(''.!==.$data).{.if.(
112860 24 74 79 70 65 20 3d 3d 3d 20 27 69 6e 70 75 74 27 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 $type.===.'input').{.$this->inpu
112880 74 42 75 66 66 65 72 20 2e 3d 20 24 64 61 74 61 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 61 64 tBuffer..=.$data;.}.else.{.$read
1128a0 5b 24 74 79 70 65 5d 20 3d 20 24 64 61 74 61 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 [$type].=.$data;.}.}..if.(false.
1128c0 3d 3d 3d 20 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 ===.$data.||.(true.===.$close.&&
1128e0 20 66 65 6f 66 28 24 70 69 70 65 29 20 26 26 20 27 27 20 3d 3d 3d 20 24 64 61 74 61 29 29 20 7b .feof($pipe).&&.''.===.$data)).{
112900 0a 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 27 69 6e 70 75 74 27 29 20 7b 0a 0a 20 0a 20 24 74 .if.($type.===.'input').{.....$t
112920 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 63 6c 6f his->input.=.null;.}.else.{.fclo
112940 73 65 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 24 74 79 70 65 5d 29 3b 0a 75 6e 73 65 74 28 24 se($this->pipes[$type]);.unset($
112960 74 68 69 73 2d 3e 70 69 70 65 73 5b 24 74 79 70 65 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 this->pipes[$type]);.}.}.}..if.(
112980 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 29 29 20 7b 0a null.!==.$w.&&.0.<.count($w)).{.
1129a0 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 75 66 66 65 72 while.(strlen($this->inputBuffer
1129c0 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 5d 2c 20 24 74 )).{.$written.=.fwrite($w[0],.$t
1129e0 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 20 0a 20 69 66 his->inputBuffer,.2.<<.18);...if
112a00 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 74 42 75 .($written.>.0).{.$this->inputBu
112a20 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 3e 69 6e ffer.=.(string).substr($this->in
112a40 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 7b 0a 62 putBuffer,.$written);.}.else.{.b
112a60 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 69 73 2d reak;.}.}.}....if.(''.===.$this-
112a80 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 73 2d 3e >inputBuffer.&&.null.===.$this->
112aa0 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 5d 29 29 input.&&.isset($this->pipes[0]))
112ac0 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 6e 73 65 .{.fclose($this->pipes[0]);.unse
112ae0 74 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 t($this->pipes[0]);.}..return.$r
112b00 65 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 61 72 65 4f 70 ead;.}.....public.function.areOp
112b20 65 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 29 20 24 74 68 69 73 2d 3e 70 69 70 65 en().{.return.(bool).$this->pipe
112b40 73 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 63 s;.}..........public.static.func
112b60 74 69 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 tion.create(Process.$process,.$i
112b80 6e 70 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 nput).{.return.new.static($proce
112ba0 73 73 2d 3e 69 73 54 74 79 28 29 2c 20 24 70 72 6f 63 65 73 73 2d 3e 69 73 50 74 79 28 29 2c 20 ss->isTty(),.$process->isPty(),.
112bc0 24 69 6e 70 75 74 2c 20 24 70 72 6f 63 65 73 73 2d 3e 69 73 4f 75 74 70 75 74 44 69 73 61 62 6c $input,.$process->isOutputDisabl
112be0 65 64 28 29 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 ed());.}.}.<?php...........names
112c00 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 5c 50 pace.Symfony\Component\Process\P
112c20 69 70 65 73 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 50 72 6f ipes;..use.Symfony\Component\Pro
112c40 63 65 73 73 5c 50 72 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 cess\Process;.use.Symfony\Compon
112c60 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 63 ent\Process\Exception\RuntimeExc
112c80 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 57 69 6e 64 6f 77 73 eption;............class.Windows
112ca0 50 69 70 65 73 20 65 78 74 65 6e 64 73 20 41 62 73 74 72 61 63 74 50 69 70 65 73 0a 7b 0a 0a 70 Pipes.extends.AbstractPipes.{..p
112cc0 72 69 76 61 74 65 20 24 66 69 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 69 76 61 74 rivate.$files.=.array();..privat
112ce0 65 20 24 66 69 6c 65 48 61 6e 64 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 69 76 61 e.$fileHandles.=.array();..priva
112d00 74 65 20 24 72 65 61 64 42 79 74 65 73 20 3d 20 61 72 72 61 79 28 0a 50 72 6f 63 65 73 73 3a 3a te.$readBytes.=.array(.Process::
112d20 53 54 44 4f 55 54 20 3d 3e 20 30 2c 0a 50 72 6f 63 65 73 73 3a 3a 53 54 44 45 52 52 20 3d 3e 20 STDOUT.=>.0,.Process::STDERR.=>.
112d40 30 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 64 69 73 61 62 6c 65 4f 75 74 70 75 74 3b 0a 0a 0,.);..private.$disableOutput;..
112d60 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 64 69 73 public.function.__construct($dis
112d80 61 62 6c 65 4f 75 74 70 75 74 2c 20 24 69 6e 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 ableOutput,.$input).{.$this->dis
112da0 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 62 6c 65 4f 75 74 70 ableOutput.=.(bool).$disableOutp
112dc0 75 74 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 4f 75 74 70 75 74 29 20 ut;..if.(!$this->disableOutput).
112de0 7b 0a 0a 20 0a 20 0a 20 0a 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 20 3d 20 61 72 72 61 79 28 0a {.........$this->files.=.array(.
112e00 50 72 6f 63 65 73 73 3a 3a 53 54 44 4f 55 54 20 3d 3e 20 74 65 6d 70 6e 61 6d 28 73 79 73 5f 67 Process::STDOUT.=>.tempnam(sys_g
112e20 65 74 5f 74 65 6d 70 5f 64 69 72 28 29 2c 20 27 6f 75 74 5f 73 66 5f 70 72 6f 63 27 29 2c 0a 50 et_temp_dir(),.'out_sf_proc'),.P
112e40 72 6f 63 65 73 73 3a 3a 53 54 44 45 52 52 20 3d 3e 20 74 65 6d 70 6e 61 6d 28 73 79 73 5f 67 65 rocess::STDERR.=>.tempnam(sys_ge
112e60 74 5f 74 65 6d 70 5f 64 69 72 28 29 2c 20 27 65 72 72 5f 73 66 5f 70 72 6f 63 27 29 2c 0a 29 3b t_temp_dir(),.'err_sf_proc'),.);
112e80 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 6f 66 66 73 65 .foreach.($this->files.as.$offse
112ea0 74 20 3d 3e 20 24 66 69 6c 65 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 66 69 6c t.=>.$file).{.if.(false.===.$fil
112ec0 65 20 7c 7c 20 66 61 6c 73 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 e.||.false.===.$this->fileHandle
112ee0 73 5b 24 6f 66 66 73 65 74 5d 20 3d 20 66 6f 70 65 6e 28 24 66 69 6c 65 2c 20 27 72 62 27 29 29 s[$offset].=.fopen($file,.'rb'))
112f00 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 41 .{.throw.new.RuntimeException('A
112f20 20 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 6f 70 65 .temporary.file.could.not.be.ope
112f40 6e 65 64 20 74 6f 20 77 72 69 74 65 20 74 68 65 20 70 72 6f 63 65 73 73 20 6f 75 74 70 75 74 20 ned.to.write.the.process.output.
112f60 74 6f 2c 20 76 65 72 69 66 79 20 74 68 61 74 20 79 6f 75 72 20 54 45 4d 50 20 65 6e 76 69 72 6f to,.verify.that.your.TEMP.enviro
112f80 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 20 69 73 20 77 72 69 74 61 62 6c 65 27 29 3b 0a 7d 0a nment.variable.is.writable');.}.
112fa0 7d 0a 7d 0a 0a 69 66 20 28 69 73 5f 72 65 73 6f 75 72 63 65 28 24 69 6e 70 75 74 29 29 20 7b 0a }.}..if.(is_resource($input)).{.
112fc0 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 65 6c 73 65 20 7b 0a $this->input.=.$input;.}.else.{.
112fe0 24 74 68 69 73 2d 3e 69 6e 70 75 74 42 75 66 66 65 72 20 3d 20 24 69 6e 70 75 74 3b 0a 7d 0a 7d $this->inputBuffer.=.$input;.}.}
113000 0a 0a 70 75 62 6c 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 ..public.function.__destruct().{
113020 0a 24 74 68 69 73 2d 3e 63 6c 6f 73 65 28 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 46 69 .$this->close();.$this->removeFi
113040 6c 65 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 65 74 les();.}.....public.function.get
113060 44 65 73 63 72 69 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 Descriptors().{.if.($this->disab
113080 6c 65 4f 75 74 70 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 leOutput).{.$nullstream.=.fopen(
1130a0 27 4e 55 4c 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 'NUL',.'c');..return.array(.arra
1130c0 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
1130e0 6c 6c 73 74 72 65 61 6d 2c 0a 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 72 65 74 75 72 6e 20 61 72 72 llstream,.);.}........return.arr
113100 61 79 28 0a 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 72 27 29 2c 0a 61 72 72 61 79 28 27 66 ay(.array('pipe',.'r'),.array('f
113120 69 6c 65 27 2c 20 27 4e 55 4c 27 2c 20 27 77 27 29 2c 0a 61 72 72 61 79 28 27 66 69 6c 65 27 2c ile',.'NUL',.'w'),.array('file',
113140 20 27 4e 55 4c 27 2c 20 27 77 27 29 2c 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 .'NUL',.'w'),.);.}.....public.fu
113160 6e 63 74 69 6f 6e 20 67 65 74 46 69 6c 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 nction.getFiles().{.return.$this
113180 2d 3e 66 69 6c 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 72 ->files;.}.....public.function.r
1131a0 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 6f 73 65 20 3d 20 eadAndWrite($blocking,.$close.=.
1131c0 66 61 6c 73 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 24 62 6c 6f 63 6b 69 6e 67 2c false).{.$this->write($blocking,
1131e0 20 24 63 6c 6f 73 65 29 3b 0a 0a 24 72 65 61 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 66 68 20 .$close);..$read.=.array();.$fh.
113200 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 3b 0a 66 6f 72 65 61 63 68 20 28 24 =.$this->fileHandles;.foreach.($
113220 66 68 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 66 69 6c 65 48 61 6e 64 6c 65 29 20 7b 0a 69 66 fh.as.$type.=>.$fileHandle).{.if
113240 20 28 30 20 21 3d 3d 20 66 73 65 65 6b 28 24 66 69 6c 65 48 61 6e 64 6c 65 2c 20 24 74 68 69 73 .(0.!==.fseek($fileHandle,.$this
113260 2d 3e 72 65 61 64 42 79 74 65 73 5b 24 74 79 70 65 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b ->readBytes[$type])).{.continue;
113280 0a 7d 0a 24 64 61 74 61 20 3d 20 27 27 3b 0a 24 64 61 74 61 72 65 61 64 20 3d 20 6e 75 6c 6c 3b .}.$data.=.'';.$dataread.=.null;
1132a0 0a 77 68 69 6c 65 20 28 21 66 65 6f 66 28 24 66 69 6c 65 48 61 6e 64 6c 65 29 29 20 7b 0a 69 66 .while.(!feof($fileHandle)).{.if
1132c0 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 64 61 74 61 72 65 61 64 20 3d 20 66 72 65 61 64 28 24 66 .(false.!==.$dataread.=.fread($f
1132e0 69 6c 65 48 61 6e 64 6c 65 2c 20 73 65 6c 66 3a 3a 43 48 55 4e 4b 5f 53 49 5a 45 29 29 20 7b 0a ileHandle,.self::CHUNK_SIZE)).{.
113300 24 64 61 74 61 20 2e 3d 20 24 64 61 74 61 72 65 61 64 3b 0a 7d 0a 7d 0a 69 66 20 28 30 20 3c 20 $data..=.$dataread;.}.}.if.(0.<.
113320 24 6c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 64 61 74 61 29 29 20 7b 0a 24 74 68 69 73 $length.=.strlen($data)).{.$this
113340 2d 3e 72 65 61 64 42 79 74 65 73 5b 24 74 79 70 65 5d 20 2b 3d 20 24 6c 65 6e 67 74 68 3b 0a 24 ->readBytes[$type].+=.$length;.$
113360 72 65 61 64 5b 24 74 79 70 65 5d 20 3d 20 24 64 61 74 61 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 read[$type].=.$data;.}..if.(fals
113380 65 20 3d 3d 3d 20 24 64 61 74 61 72 65 61 64 20 7c 7c 20 28 74 72 75 65 20 3d 3d 3d 20 24 63 6c e.===.$dataread.||.(true.===.$cl
1133a0 6f 73 65 20 26 26 20 66 65 6f 66 28 24 66 69 6c 65 48 61 6e 64 6c 65 29 20 26 26 20 27 27 20 3d ose.&&.feof($fileHandle).&&.''.=
1133c0 3d 3d 20 24 64 61 74 61 29 29 20 7b 0a 66 63 6c 6f 73 65 28 24 74 68 69 73 2d 3e 66 69 6c 65 48 ==.$data)).{.fclose($this->fileH
1133e0 61 6e 64 6c 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 66 69 6c andles[$type]);.unset($this->fil
113400 65 48 61 6e 64 6c 65 73 5b 24 74 79 70 65 5d 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 eHandles[$type]);.}.}..return.$r
113420 65 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 61 72 65 4f 70 ead;.}.....public.function.areOp
113440 65 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 29 20 24 74 68 69 73 2d 3e 70 69 70 65 en().{.return.(bool).$this->pipe
113460 73 20 26 26 20 28 62 6f 6f 6c 29 20 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 3b 0a s.&&.(bool).$this->fileHandles;.
113480 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 6f 73 65 28 29 0a 7b 0a }.....public.function.close().{.
1134a0 70 61 72 65 6e 74 3a 3a 63 6c 6f 73 65 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d parent::close();.foreach.($this-
1134c0 3e 66 69 6c 65 48 61 6e 64 6c 65 73 20 61 73 20 24 68 61 6e 64 6c 65 29 20 7b 0a 66 63 6c 6f 73 >fileHandles.as.$handle).{.fclos
1134e0 65 28 24 68 61 6e 64 6c 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 e($handle);.}.$this->fileHandles
113500 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 73 74 .=.array();.}..........public.st
113520 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 28 50 72 6f 63 65 73 73 20 24 70 72 atic.function.create(Process.$pr
113540 6f 63 65 73 73 2c 20 24 69 6e 70 75 74 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 74 61 74 ocess,.$input).{.return.new.stat
113560 69 63 28 24 70 72 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 2c ic($process->isOutputDisabled(),
113580 20 24 69 6e 70 75 74 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 .$input);.}.....private.function
1135a0 20 72 65 6d 6f 76 65 46 69 6c 65 73 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d .removeFiles().{.foreach.($this-
1135c0 3e 66 69 6c 65 73 20 61 73 20 24 66 69 6c 65 6e 61 6d 65 29 20 7b 0a 69 66 20 28 66 69 6c 65 5f >files.as.$filename).{.if.(file_
1135e0 65 78 69 73 74 73 28 24 66 69 6c 65 6e 61 6d 65 29 29 20 7b 0a 40 75 6e 6c 69 6e 6b 28 24 66 69 exists($filename)).{.@unlink($fi
113600 6c 65 6e 61 6d 65 29 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 20 3d 20 61 72 72 61 lename);.}.}.$this->files.=.arra
113620 79 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 77 y();.}........private.function.w
113640 72 69 74 65 28 24 62 6c 6f 63 6b 69 6e 67 2c 20 24 63 6c 6f 73 65 29 0a 7b 0a 69 66 20 28 65 6d rite($blocking,.$close).{.if.(em
113660 70 74 79 28 24 74 68 69 73 2d 3e 70 69 70 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a pty($this->pipes)).{.return;.}..
113680 24 74 68 69 73 2d 3e 75 6e 62 6c 6f 63 6b 28 29 3b 0a 0a 24 72 20 3d 20 6e 75 6c 6c 20 21 3d 3d $this->unblock();..$r.=.null.!==
1136a0 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3f 20 61 72 72 61 79 28 27 69 6e 70 75 74 27 20 3d 3e .$this->input.?.array('input'.=>
1136c0 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 29 20 3a 20 6e 75 6c 6c 3b 0a 24 77 20 3d 20 69 73 73 65 .$this->input).:.null;.$w.=.isse
1136e0 74 28 24 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 t($this->pipes[0]).?.array($this
113700 2d 3e 70 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 ->pipes[0]).:.null;.$e.=.null;..
113720 0a 20 69 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 ..if.(false.===.$n.=.@stream_sel
113740 65 63 74 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 ect($r,.$w,.$e,.0,.$blocking.?.P
113760 72 6f 63 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 rocess::TIMEOUT_PRECISION.*.1E6.
113780 3a 20 30 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 :.0)).{.....if.(!$this->hasSyste
1137a0 6d 43 61 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 mCallBeenInterrupted()).{.$this-
1137c0 3e 70 69 70 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a >pipes.=.array();.}..return;.}..
1137e0 0a 20 69 66 20 28 30 20 3d 3d 3d 20 24 6e 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 ..if.(0.===.$n).{.return;.}..if.
113800 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 72 29 29 20 7b (null.!==.$w.&&.0.<.count($r)).{
113820 0a 24 64 61 74 61 20 3d 20 27 27 3b 0a 77 68 69 6c 65 20 28 24 64 61 74 61 72 65 61 64 20 3d 20 .$data.=.'';.while.($dataread.=.
113840 66 72 65 61 64 28 24 72 5b 27 69 6e 70 75 74 27 5d 2c 20 73 65 6c 66 3a 3a 43 48 55 4e 4b 5f 53 fread($r['input'],.self::CHUNK_S
113860 49 5a 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 24 IZE)).{.$data..=.$dataread;.}..$
113880 74 68 69 73 2d 3e 69 6e 70 75 74 42 75 66 66 65 72 20 2e 3d 20 24 64 61 74 61 3b 0a 0a 69 66 20 this->inputBuffer..=.$data;..if.
1138a0 28 66 61 6c 73 65 20 3d 3d 3d 20 24 64 61 74 61 20 7c 7c 20 28 74 72 75 65 20 3d 3d 3d 20 24 63 (false.===.$data.||.(true.===.$c
1138c0 6c 6f 73 65 20 26 26 20 66 65 6f 66 28 24 72 5b 27 69 6e 70 75 74 27 5d 29 20 26 26 20 27 27 20 lose.&&.feof($r['input']).&&.''.
1138e0 3d 3d 3d 20 24 64 61 74 61 29 29 20 7b 0a 0a 20 0a 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d ===.$data)).{.....$this->input.=
113900 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 77 20 26 26 20 30 .null;.}.}..if.(null.!==.$w.&&.0
113920 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 65 6e 28 24 74 .<.count($w)).{.while.(strlen($t
113940 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 65 6e 20 3d 20 his->inputBuffer)).{.$written.=.
113960 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 75 66 66 65 72 fwrite($w[0],.$this->inputBuffer
113980 2c 20 32 20 3c 3c 20 31 38 29 3b 0a 69 66 20 28 24 77 72 69 74 74 65 6e 20 3e 20 30 29 20 7b 0a ,.2.<<.18);.if.($written.>.0).{.
1139a0 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 69 6e 67 29 20 73 75 $this->inputBuffer.=.(string).su
1139c0 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 24 77 72 69 74 74 65 bstr($this->inputBuffer,.$writte
1139e0 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 0a 0a 0a 20 69 66 20 n);.}.else.{.break;.}.}.}....if.
113a00 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 72 20 26 26 20 6e 75 (''.===.$this->inputBuffer.&&.nu
113a20 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 73 65 74 28 24 74 68 ll.===.$this->input.&&.isset($th
113a40 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 74 68 69 73 2d 3e 70 is->pipes[0])).{.fclose($this->p
113a60 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 70 65 73 5b 30 5d 29 ipes[0]);.unset($this->pipes[0])
113a80 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 70 61 63 ;.}.}.}.<?php...........namespac
113aa0 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 0a 75 73 e.Symfony\Component\Process;..us
113ac0 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
113ae0 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 74 69 6f 6e 3b 0a ption\InvalidArgumentException;.
113b00 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
113b20 63 65 70 74 69 6f 6e 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 ception\LogicException;.use.Symf
113b40 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\
113b60 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 20 53 79 6d 66 ProcessFailedException;.use.Symf
113b80 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\
113ba0 50 72 6f 63 65 73 73 54 69 6d 65 64 4f 75 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 ProcessTimedOutException;.use.Sy
113bc0 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 74 69 6f mfony\Component\Process\Exceptio
113be0 6e 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 n\RuntimeException;.use.Symfony\
113c00 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 69 70 65 73 5c 50 69 70 65 73 49 6e 74 Component\Process\Pipes\PipesInt
113c20 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 50 72 erface;.use.Symfony\Component\Pr
113c40 6f 63 65 73 73 5c 50 69 70 65 73 5c 55 6e 69 78 50 69 70 65 73 3b 0a 75 73 65 20 53 79 6d 66 6f ocess\Pipes\UnixPipes;.use.Symfo
113c60 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 5c 57 69 6e 64 6f ny\Component\Process\Pipes\Windo
113c80 77 73 50 69 70 65 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 0a 7b wsPipes;.........class.Process.{
113ca0 0a 63 6f 6e 73 74 20 45 52 52 20 3d 20 27 65 72 72 27 3b 0a 63 6f 6e 73 74 20 4f 55 54 20 3d 20 .const.ERR.=.'err';.const.OUT.=.
113cc0 27 6f 75 74 27 3b 0a 0a 63 6f 6e 73 74 20 53 54 41 54 55 53 5f 52 45 41 44 59 20 3d 20 27 72 65 'out';..const.STATUS_READY.=.'re
113ce0 61 64 79 27 3b 0a 63 6f 6e 73 74 20 53 54 41 54 55 53 5f 53 54 41 52 54 45 44 20 3d 20 27 73 74 ady';.const.STATUS_STARTED.=.'st
113d00 61 72 74 65 64 27 3b 0a 63 6f 6e 73 74 20 53 54 41 54 55 53 5f 54 45 52 4d 49 4e 41 54 45 44 20 arted';.const.STATUS_TERMINATED.
113d20 3d 20 27 74 65 72 6d 69 6e 61 74 65 64 27 3b 0a 0a 63 6f 6e 73 74 20 53 54 44 49 4e 20 3d 20 30 =.'terminated';..const.STDIN.=.0
113d40 3b 0a 63 6f 6e 73 74 20 53 54 44 4f 55 54 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 53 54 44 45 52 52 ;.const.STDOUT.=.1;.const.STDERR
113d60 20 3d 20 32 3b 0a 0a 0a 20 63 6f 6e 73 74 20 54 49 4d 45 4f 55 54 5f 50 52 45 43 49 53 49 4f 4e .=.2;....const.TIMEOUT_PRECISION
113d80 20 3d 20 30 2e 32 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 61 6c 6c 62 61 63 6b 3b 0a 70 72 69 76 .=.0.2;..private.$callback;.priv
113da0 61 74 65 20 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 3b 0a 70 72 69 76 61 74 65 20 24 63 77 64 3b 0a ate.$commandline;.private.$cwd;.
113dc0 70 72 69 76 61 74 65 20 24 65 6e 76 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 70 75 74 3b 0a 70 72 private.$env;.private.$input;.pr
113de0 69 76 61 74 65 20 24 73 74 61 72 74 74 69 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 6c 61 73 74 4f ivate.$starttime;.private.$lastO
113e00 75 74 70 75 74 54 69 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 74 69 6d 65 6f 75 74 3b 0a 70 72 69 utputTime;.private.$timeout;.pri
113e20 76 61 74 65 20 24 69 64 6c 65 54 69 6d 65 6f 75 74 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 vate.$idleTimeout;.private.$opti
113e40 6f 6e 73 3b 0a 70 72 69 76 61 74 65 20 24 65 78 69 74 63 6f 64 65 3b 0a 70 72 69 76 61 74 65 20 ons;.private.$exitcode;.private.
113e60 24 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 $fallbackStatus.=.array();.priva
113e80 74 65 20 24 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 te.$processInformation;.private.
113ea0 24 6f 75 74 70 75 74 44 69 73 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 $outputDisabled.=.false;.private
113ec0 20 24 73 74 64 6f 75 74 3b 0a 70 72 69 76 61 74 65 20 24 73 74 64 65 72 72 3b 0a 70 72 69 76 61 .$stdout;.private.$stderr;.priva
113ee0 74 65 20 24 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 20 te.$enhanceWindowsCompatibility.
113f00 3d 20 74 72 75 65 3b 0a 70 72 69 76 61 74 65 20 24 65 6e 68 61 6e 63 65 53 69 67 63 68 69 6c 64 =.true;.private.$enhanceSigchild
113f20 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 3b Compatibility;.private.$process;
113f40 0a 70 72 69 76 61 74 65 20 24 73 74 61 74 75 73 20 3d 20 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f .private.$status.=.self::STATUS_
113f60 52 45 41 44 59 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 63 72 65 6d 65 6e 74 61 6c 4f 75 74 70 75 READY;.private.$incrementalOutpu
113f80 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 63 72 65 6d 65 6e 74 61 tOffset.=.0;.private.$incrementa
113fa0 6c 45 72 72 6f 72 4f 75 74 70 75 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 70 72 69 76 61 74 65 20 lErrorOutputOffset.=.0;.private.
113fc0 24 74 74 79 3b 0a 70 72 69 76 61 74 65 20 24 70 74 79 3b 0a 0a 70 72 69 76 61 74 65 20 24 75 73 $tty;.private.$pty;..private.$us
113fe0 65 46 69 6c 65 48 61 6e 64 6c 65 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 70 72 69 76 61 74 65 20 24 eFileHandles.=.false;..private.$
114000 70 72 6f 63 65 73 73 50 69 70 65 73 3b 0a 0a 70 72 69 76 61 74 65 20 24 6c 61 74 65 73 74 53 69 processPipes;..private.$latestSi
114020 67 6e 61 6c 3b 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 73 69 67 63 68 69 6c 64 3b gnal;..private.static.$sigchild;
114040 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 24 65 78 69 74 43 6f 64 65 .........public.static.$exitCode
114060 73 20 3d 20 61 72 72 61 79 28 0a 30 20 3d 3e 20 27 4f 4b 27 2c 0a 31 20 3d 3e 20 27 47 65 6e 65 s.=.array(.0.=>.'OK',.1.=>.'Gene
114080 72 61 6c 20 65 72 72 6f 72 27 2c 0a 32 20 3d 3e 20 27 4d 69 73 75 73 65 20 6f 66 20 73 68 65 6c ral.error',.2.=>.'Misuse.of.shel
1140a0 6c 20 62 75 69 6c 74 69 6e 73 27 2c 0a 0a 31 32 36 20 3d 3e 20 27 49 6e 76 6f 6b 65 64 20 63 6f l.builtins',..126.=>.'Invoked.co
1140c0 6d 6d 61 6e 64 20 63 61 6e 6e 6f 74 20 65 78 65 63 75 74 65 27 2c 0a 31 32 37 20 3d 3e 20 27 43 mmand.cannot.execute',.127.=>.'C
1140e0 6f 6d 6d 61 6e 64 20 6e 6f 74 20 66 6f 75 6e 64 27 2c 0a 31 32 38 20 3d 3e 20 27 49 6e 76 61 6c ommand.not.found',.128.=>.'Inval
114100 69 64 20 65 78 69 74 20 61 72 67 75 6d 65 6e 74 27 2c 0a 0a 0a 20 31 32 39 20 3d 3e 20 27 48 61 id.exit.argument',....129.=>.'Ha
114120 6e 67 75 70 27 2c 0a 31 33 30 20 3d 3e 20 27 49 6e 74 65 72 72 75 70 74 27 2c 0a 31 33 31 20 3d ngup',.130.=>.'Interrupt',.131.=
114140 3e 20 27 51 75 69 74 20 61 6e 64 20 64 75 6d 70 20 63 6f 72 65 27 2c 0a 31 33 32 20 3d 3e 20 27 >.'Quit.and.dump.core',.132.=>.'
114160 49 6c 6c 65 67 61 6c 20 69 6e 73 74 72 75 63 74 69 6f 6e 27 2c 0a 31 33 33 20 3d 3e 20 27 54 72 Illegal.instruction',.133.=>.'Tr
114180 61 63 65 2f 62 72 65 61 6b 70 6f 69 6e 74 20 74 72 61 70 27 2c 0a 31 33 34 20 3d 3e 20 27 50 72 ace/breakpoint.trap',.134.=>.'Pr
1141a0 6f 63 65 73 73 20 61 62 6f 72 74 65 64 27 2c 0a 31 33 35 20 3d 3e 20 27 42 75 73 20 65 72 72 6f ocess.aborted',.135.=>.'Bus.erro
1141c0 72 3a 20 22 61 63 63 65 73 73 20 74 6f 20 75 6e 64 65 66 69 6e 65 64 20 70 6f 72 74 69 6f 6e 20 r:."access.to.undefined.portion.
1141e0 6f 66 20 6d 65 6d 6f 72 79 20 6f 62 6a 65 63 74 22 27 2c 0a 31 33 36 20 3d 3e 20 27 46 6c 6f 61 of.memory.object"',.136.=>.'Floa
114200 74 69 6e 67 20 70 6f 69 6e 74 20 65 78 63 65 70 74 69 6f 6e 3a 20 22 65 72 72 6f 6e 65 6f 75 73 ting.point.exception:."erroneous
114220 20 61 72 69 74 68 6d 65 74 69 63 20 6f 70 65 72 61 74 69 6f 6e 22 27 2c 0a 31 33 37 20 3d 3e 20 .arithmetic.operation"',.137.=>.
114240 27 4b 69 6c 6c 20 28 74 65 72 6d 69 6e 61 74 65 20 69 6d 6d 65 64 69 61 74 65 6c 79 29 27 2c 0a 'Kill.(terminate.immediately)',.
114260 31 33 38 20 3d 3e 20 27 55 73 65 72 2d 64 65 66 69 6e 65 64 20 31 27 2c 0a 31 33 39 20 3d 3e 20 138.=>.'User-defined.1',.139.=>.
114280 27 53 65 67 6d 65 6e 74 61 74 69 6f 6e 20 76 69 6f 6c 61 74 69 6f 6e 27 2c 0a 31 34 30 20 3d 3e 'Segmentation.violation',.140.=>
1142a0 20 27 55 73 65 72 2d 64 65 66 69 6e 65 64 20 32 27 2c 0a 31 34 31 20 3d 3e 20 27 57 72 69 74 65 .'User-defined.2',.141.=>.'Write
1142c0 20 74 6f 20 70 69 70 65 20 77 69 74 68 20 6e 6f 20 6f 6e 65 20 72 65 61 64 69 6e 67 27 2c 0a 31 .to.pipe.with.no.one.reading',.1
1142e0 34 32 20 3d 3e 20 27 53 69 67 6e 61 6c 20 72 61 69 73 65 64 20 62 79 20 61 6c 61 72 6d 27 2c 0a 42.=>.'Signal.raised.by.alarm',.
114300 31 34 33 20 3d 3e 20 27 54 65 72 6d 69 6e 61 74 69 6f 6e 20 28 72 65 71 75 65 73 74 20 74 6f 20 143.=>.'Termination.(request.to.
114320 74 65 72 6d 69 6e 61 74 65 29 27 2c 0a 0a 20 31 34 35 20 3d 3e 20 27 43 68 69 6c 64 20 70 72 6f terminate)',...145.=>.'Child.pro
114340 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 2c 20 73 74 6f 70 70 65 64 20 28 6f 72 20 63 6f 6e cess.terminated,.stopped.(or.con
114360 74 69 6e 75 65 64 2a 29 27 2c 0a 31 34 36 20 3d 3e 20 27 43 6f 6e 74 69 6e 75 65 20 69 66 20 73 tinued*)',.146.=>.'Continue.if.s
114380 74 6f 70 70 65 64 27 2c 0a 31 34 37 20 3d 3e 20 27 53 74 6f 70 20 65 78 65 63 75 74 69 6e 67 20 topped',.147.=>.'Stop.executing.
1143a0 74 65 6d 70 6f 72 61 72 69 6c 79 27 2c 0a 31 34 38 20 3d 3e 20 27 54 65 72 6d 69 6e 61 6c 20 73 temporarily',.148.=>.'Terminal.s
1143c0 74 6f 70 20 73 69 67 6e 61 6c 27 2c 0a 31 34 39 20 3d 3e 20 27 42 61 63 6b 67 72 6f 75 6e 64 20 top.signal',.149.=>.'Background.
1143e0 70 72 6f 63 65 73 73 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 72 65 61 64 20 66 72 6f 6d 20 process.attempting.to.read.from.
114400 74 74 79 20 28 22 69 6e 22 29 27 2c 0a 31 35 30 20 3d 3e 20 27 42 61 63 6b 67 72 6f 75 6e 64 20 tty.("in")',.150.=>.'Background.
114420 70 72 6f 63 65 73 73 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 77 72 69 74 65 20 74 6f 20 74 process.attempting.to.write.to.t
114440 74 79 20 28 22 6f 75 74 22 29 27 2c 0a 31 35 31 20 3d 3e 20 27 55 72 67 65 6e 74 20 64 61 74 61 ty.("out")',.151.=>.'Urgent.data
114460 20 61 76 61 69 6c 61 62 6c 65 20 6f 6e 20 73 6f 63 6b 65 74 27 2c 0a 31 35 32 20 3d 3e 20 27 43 .available.on.socket',.152.=>.'C
114480 50 55 20 74 69 6d 65 20 6c 69 6d 69 74 20 65 78 63 65 65 64 65 64 27 2c 0a 31 35 33 20 3d 3e 20 PU.time.limit.exceeded',.153.=>.
1144a0 27 46 69 6c 65 20 73 69 7a 65 20 6c 69 6d 69 74 20 65 78 63 65 65 64 65 64 27 2c 0a 31 35 34 20 'File.size.limit.exceeded',.154.
1144c0 3d 3e 20 27 53 69 67 6e 61 6c 20 72 61 69 73 65 64 20 62 79 20 74 69 6d 65 72 20 63 6f 75 6e 74 =>.'Signal.raised.by.timer.count
1144e0 69 6e 67 20 76 69 72 74 75 61 6c 20 74 69 6d 65 3a 20 22 76 69 72 74 75 61 6c 20 74 69 6d 65 72 ing.virtual.time:."virtual.timer
114500 20 65 78 70 69 72 65 64 22 27 2c 0a 31 35 35 20 3d 3e 20 27 50 72 6f 66 69 6c 69 6e 67 20 74 69 .expired"',.155.=>.'Profiling.ti
114520 6d 65 72 20 65 78 70 69 72 65 64 27 2c 0a 0a 20 31 35 37 20 3d 3e 20 27 50 6f 6c 6c 61 62 6c 65 mer.expired',...157.=>.'Pollable
114540 20 65 76 65 6e 74 27 2c 0a 0a 20 31 35 39 20 3d 3e 20 27 42 61 64 20 73 79 73 63 61 6c 6c 27 2c .event',...159.=>.'Bad.syscall',
114560 0a 29 3b 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
114580 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 2c 20 24 63 77 64 20 .__construct($commandline,.$cwd.
1145a0 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 65 6e 76 20 3d 20 6e 75 6c 6c 2c 20 24 69 6e 70 75 =.null,.array.$env.=.null,.$inpu
1145c0 74 20 3d 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 t.=.null,.$timeout.=.60,.array.$
1145e0 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 21 66 75 6e 63 74 69 options.=.array()).{.if.(!functi
114600 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 74 68 72 6f 77 20 on_exists('proc_open')).{.throw.
114620 6e 65 77 20 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 50 72 6f 63 65 73 new.RuntimeException('The.Proces
114640 73 20 63 6c 61 73 73 20 72 65 6c 69 65 73 20 6f 6e 20 70 72 6f 63 5f 6f 70 65 6e 2c 20 77 68 69 s.class.relies.on.proc_open,.whi
114660 63 68 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 6f 6e 20 79 6f 75 72 20 50 48 50 20 ch.is.not.available.on.your.PHP.
114680 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 installation.');.}..$this->comma
1146a0 6e 64 6c 69 6e 65 20 3d 20 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 3b 0a 24 74 68 69 73 2d 3e 63 77 ndline.=.$commandline;.$this->cw
1146c0 64 20 3d 20 24 63 77 64 3b 0a 0a 0a 20 0a 20 0a 20 0a 20 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 d.=.$cwd;..........if.(null.===.
1146e0 24 74 68 69 73 2d 3e 63 77 64 20 26 26 20 28 64 65 66 69 6e 65 64 28 27 5a 45 4e 44 5f 54 48 52 $this->cwd.&&.(defined('ZEND_THR
114700 45 41 44 5f 53 41 46 45 27 29 20 7c 7c 20 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 59 EAD_SAFE').||.'\\'.===.DIRECTORY
114720 5f 53 45 50 41 52 41 54 4f 52 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 77 64 20 3d 20 67 65 74 63 _SEPARATOR)).{.$this->cwd.=.getc
114740 77 64 28 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 65 6e 76 29 20 7b 0a 24 74 68 wd();.}.if.(null.!==.$env).{.$th
114760 69 73 2d 3e 73 65 74 45 6e 76 28 24 65 6e 76 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 70 75 is->setEnv($env);.}..$this->inpu
114780 74 20 3d 20 24 69 6e 70 75 74 3b 0a 24 74 68 69 73 2d 3e 73 65 74 54 69 6d 65 6f 75 74 28 24 74 t.=.$input;.$this->setTimeout($t
1147a0 69 6d 65 6f 75 74 29 3b 0a 24 74 68 69 73 2d 3e 75 73 65 46 69 6c 65 48 61 6e 64 6c 65 73 20 3d imeout);.$this->useFileHandles.=
1147c0 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 3b 0a 24 .'\\'.===.DIRECTORY_SEPARATOR;.$
1147e0 74 68 69 73 2d 3e 70 74 79 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 this->pty.=.false;.$this->enhanc
114800 65 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 24 74 eWindowsCompatibility.=.true;.$t
114820 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
114840 79 20 3d 20 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 y.=.'\\'.!==.DIRECTORY_SEPARATOR
114860 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 6c 65 64 28 29 3b 0a .&&.$this->isSigchildEnabled();.
114880 24 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 28 61 $this->options.=.array_replace(a
1148a0 72 72 61 79 28 27 73 75 70 70 72 65 73 73 5f 65 72 72 6f 72 73 27 20 3d 3e 20 74 72 75 65 2c 20 rray('suppress_errors'.=>.true,.
1148c0 27 62 69 6e 61 72 79 5f 70 69 70 65 73 27 20 3d 3e 20 74 72 75 65 29 2c 20 24 6f 70 74 69 6f 6e 'binary_pipes'.=>.true),.$option
1148e0 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 64 65 73 74 72 75 63 s);.}..public.function.__destruc
114900 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 6f 70 28 30 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 t().{.$this->stop(0);.}..public.
114920 66 75 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 73 65 function.__clone().{.$this->rese
114940 74 50 72 6f 63 65 73 73 44 61 74 61 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a tProcessData();.}...............
114960 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 24 63 61 6c 6c 62 ......public.function.run($callb
114980 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 28 24 63 61 6c 6c ack.=.null).{.$this->start($call
1149a0 62 61 63 6b 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 77 61 69 74 28 29 3b 0a 7d 0a back);..return.$this->wait();.}.
1149c0 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 6d 75 ..............public.function.mu
1149e0 73 74 52 75 6e 28 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 24 stRun($callback.=.null).{.if.(!$
114a00 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 69 62 69 6c 69 this->enhanceSigchildCompatibili
114a20 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 6c 65 64 28 29 ty.&&.$this->isSigchildEnabled()
114a40 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('
114a60 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 77 69 74 68 20 This.PHP.has.been.compiled.with.
114a80 2d 2d 65 6e 61 62 6c 65 2d 73 69 67 63 68 69 6c 64 2e 20 59 6f 75 20 6d 75 73 74 20 75 73 65 20 --enable-sigchild..You.must.use.
114aa0 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 28 setEnhanceSigchildCompatibility(
114ac0 29 20 74 6f 20 75 73 65 20 74 68 69 73 20 6d 65 74 68 6f 64 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 ).to.use.this.method.');.}..if.(
114ae0 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 72 75 6e 28 24 63 61 6c 6c 62 61 63 6b 29 29 20 7b 0a 74 0.!==.$this->run($callback)).{.t
114b00 68 72 6f 77 20 6e 65 77 20 50 72 6f 63 65 73 73 46 61 69 6c 65 64 45 78 63 65 70 74 69 6f 6e 28 hrow.new.ProcessFailedException(
114b20 24 74 68 69 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 $this);.}..return.$this;.}......
114b40 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
114b60 6e 20 73 74 61 72 74 28 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 n.start($callback.=.null).{.if.(
114b80 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 20 6e 65 77 20 $this->isRunning()).{.throw.new.
114ba0 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 69 73 20 61 6c 72 RuntimeException('Process.is.alr
114bc0 65 61 64 79 20 72 75 6e 6e 69 6e 67 27 29 3b 0a 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 6f 75 74 eady.running');.}.if.($this->out
114be0 70 75 74 44 69 73 61 62 6c 65 64 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 63 61 6c 6c 62 61 63 putDisabled.&&.null.!==.$callbac
114c00 6b 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 4f k).{.throw.new.LogicException('O
114c20 75 74 70 75 74 20 68 61 73 20 62 65 65 6e 20 64 69 73 61 62 6c 65 64 2c 20 65 6e 61 62 6c 65 20 utput.has.been.disabled,.enable.
114c40 69 74 20 74 6f 20 61 6c 6c 6f 77 20 74 68 65 20 75 73 65 20 6f 66 20 61 20 63 61 6c 6c 62 61 63 it.to.allow.the.use.of.a.callbac
114c60 6b 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 73 65 74 50 72 6f 63 65 73 73 44 61 74 61 k.');.}..$this->resetProcessData
114c80 28 29 3b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 74 69 6d 65 20 3d 20 24 74 68 69 73 2d 3e 6c 61 ();.$this->starttime.=.$this->la
114ca0 73 74 4f 75 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 stOutputTime.=.microtime(true);.
114cc0 24 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 $this->callback.=.$this->buildCa
114ce0 6c 6c 62 61 63 6b 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 24 64 65 73 63 72 69 70 74 6f 72 73 20 llback($callback);.$descriptors.
114d00 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 65 73 63 72 69 70 74 6f 72 73 28 29 3b 0a 0a 24 63 6f 6d =.$this->getDescriptors();..$com
114d20 6d 61 6e 64 6c 69 6e 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 6c 69 6e 65 3b 0a 0a mandline.=.$this->commandline;..
114d40 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 52 if.('\\'.===.DIRECTORY_SEPARATOR
114d60 20 26 26 20 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d 70 61 74 69 .&&.$this->enhanceWindowsCompati
114d80 62 69 6c 69 74 79 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 3d 20 27 63 6d 64 20 2f 56 bility).{.$commandline.=.'cmd./V
114da0 3a 4f 4e 20 2f 45 3a 4f 4e 20 2f 44 20 2f 43 20 22 28 27 2e 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 :ON./E:ON./D./C."('.$commandline
114dc0 2e 27 29 27 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 50 69 70 .')';.foreach.($this->processPip
114de0 65 73 2d 3e 67 65 74 46 69 6c 65 73 28 29 20 61 73 20 24 6f 66 66 73 65 74 20 3d 3e 20 24 66 69 es->getFiles().as.$offset.=>.$fi
114e00 6c 65 6e 61 6d 65 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 2e 3d 20 27 20 27 2e 24 6f lename).{.$commandline..=.'.'.$o
114e20 66 66 73 65 74 2e 27 3e 27 2e 50 72 6f 63 65 73 73 55 74 69 6c 73 3a 3a 65 73 63 61 70 65 41 72 ffset.'>'.ProcessUtils::escapeAr
114e40 67 75 6d 65 6e 74 28 24 66 69 6c 65 6e 61 6d 65 29 3b 0a 7d 0a 24 63 6f 6d 6d 61 6e 64 6c 69 6e gument($filename);.}.$commandlin
114e60 65 20 2e 3d 20 27 22 27 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 e..=.'"';..if.(!isset($this->opt
114e80 69 6f 6e 73 5b 27 62 79 70 61 73 73 5f 73 68 65 6c 6c 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e ions['bypass_shell'])).{.$this->
114ea0 6f 70 74 69 6f 6e 73 5b 27 62 79 70 61 73 73 5f 73 68 65 6c 6c 27 5d 20 3d 20 74 72 75 65 3b 0a options['bypass_shell'].=.true;.
114ec0 7d 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 74 68 69 73 2d 3e 75 73 65 46 69 6c 65 48 61 6e 64 6c }.}.elseif.(!$this->useFileHandl
114ee0 65 73 20 26 26 20 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 es.&&.$this->enhanceSigchildComp
114f00 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 6e atibility.&&.$this->isSigchildEn
114f20 61 62 6c 65 64 28 29 29 20 7b 0a 0a 20 24 64 65 73 63 72 69 70 74 6f 72 73 5b 33 5d 20 3d 20 61 abled()).{...$descriptors[3].=.a
114f40 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 3b 0a 0a 0a 20 24 63 6f 6d 6d 61 6e 64 6c 69 rray('pipe',.'w');....$commandli
114f60 6e 65 20 3d 20 27 7b 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 6c 69 6e 65 2e 27 29 ne.=.'{.('.$this->commandline.')
114f80 20 3c 26 33 20 33 3c 26 2d 20 33 3e 2f 64 65 76 2f 6e 75 6c 6c 20 26 20 7d 20 33 3c 26 30 3b 27 .<&3.3<&-.3>/dev/null.&.}.3<&0;'
114fa0 3b 0a 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 2e 3d 20 27 70 69 64 3d 24 21 3b 20 65 63 68 6f 20 ;.$commandline..=.'pid=$!;.echo.
114fc0 24 70 69 64 20 3e 26 33 3b 20 77 61 69 74 20 24 70 69 64 3b 20 63 6f 64 65 3d 24 3f 3b 20 65 63 $pid.>&3;.wait.$pid;.code=$?;.ec
114fe0 68 6f 20 24 63 6f 64 65 20 3e 26 33 3b 20 65 78 69 74 20 24 63 6f 64 65 27 3b 0a 0a 0a 20 0a 20 ho.$code.>&3;.exit.$code';......
115000 24 70 74 73 57 6f 72 6b 61 72 6f 75 6e 64 20 3d 20 66 6f 70 65 6e 28 5f 5f 46 49 4c 45 5f 5f 2c $ptsWorkaround.=.fopen(__FILE__,
115020 20 27 72 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 70 72 6f 63 5f .'r');.}..$this->process.=.proc_
115040 6f 70 65 6e 28 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 2c 20 24 64 65 73 63 72 69 70 74 6f 72 73 2c open($commandline,.$descriptors,
115060 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 50 69 70 65 73 2d 3e 70 69 70 65 73 2c 20 24 74 68 .$this->processPipes->pipes,.$th
115080 69 73 2d 3e 63 77 64 2c 20 24 74 68 69 73 2d 3e 65 6e 76 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 is->cwd,.$this->env,.$this->opti
1150a0 6f 6e 73 29 3b 0a 0a 69 66 20 28 21 69 73 5f 72 65 73 6f 75 72 63 65 28 24 74 68 69 73 2d 3e 70 ons);..if.(!is_resource($this->p
1150c0 72 6f 63 65 73 73 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 rocess)).{.throw.new.RuntimeExce
1150e0 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 6c 61 75 6e 63 68 20 61 20 6e 65 77 20 70 72 ption('Unable.to.launch.a.new.pr
115100 6f 63 65 73 73 2e 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 73 74 61 74 75 73 20 3d 20 73 65 6c 66 ocess.');.}.$this->status.=.self
115120 3a 3a 53 54 41 54 55 53 5f 53 54 41 52 54 45 44 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 64 65 ::STATUS_STARTED;..if.(isset($de
115140 73 63 72 69 70 74 6f 72 73 5b 33 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b scriptors[3])).{.$this->fallback
115160 53 74 61 74 75 73 5b 27 70 69 64 27 5d 20 3d 20 28 69 6e 74 29 20 66 67 65 74 73 28 24 74 68 69 Status['pid'].=.(int).fgets($thi
115180 73 2d 3e 70 72 6f 63 65 73 73 50 69 70 65 73 2d 3e 70 69 70 65 73 5b 33 5d 29 3b 0a 7d 0a 0a 69 s->processPipes->pipes[3]);.}..i
1151a0 66 20 28 24 74 68 69 73 2d 3e 74 74 79 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 f.($this->tty).{.return;.}..$thi
1151c0 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 66 61 6c 73 65 29 3b 0a 24 74 68 69 73 2d 3e 63 s->updateStatus(false);.$this->c
1151e0 68 65 63 6b 54 69 6d 65 6f 75 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a heckTimeout();.}................
115200 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 74 61 72 74 28 24 63 61 6c 6c 62 61 .public.function.restart($callba
115220 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 6e 6e 69 6e ck.=.null).{.if.($this->isRunnin
115240 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 69 6f g()).{.throw.new.RuntimeExceptio
115260 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 67 27 29 3b n('Process.is.already.running');
115280 0a 7d 0a 0a 24 70 72 6f 63 65 73 73 20 3d 20 63 6c 6f 6e 65 20 24 74 68 69 73 3b 0a 24 70 72 6f .}..$process.=.clone.$this;.$pro
1152a0 63 65 73 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 75 72 6e 20 cess->start($callback);..return.
1152c0 24 70 72 6f 63 65 73 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 $process;.}.................publ
1152e0 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 61 69 74 28 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c ic.function.wait($callback.=.nul
115300 6c 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 l).{.$this->requireProcessIsStar
115320 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 75 70 64 61 74 ted(__FUNCTION__);..$this->updat
115340 65 53 74 61 74 75 73 28 66 61 6c 73 65 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 63 61 eStatus(false);.if.(null.!==.$ca
115360 6c 6c 62 61 63 6b 29 20 7b 0a 24 74 68 69 73 2d 3e 63 61 6c 6c 62 61 63 6b 20 3d 20 24 74 68 69 llback).{.$this->callback.=.$thi
115380 73 2d 3e 62 75 69 6c 64 43 61 6c 6c 62 61 63 6b 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 7d 0a 0a s->buildCallback($callback);.}..
1153a0 64 6f 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 54 69 6d 65 6f 75 74 28 29 3b 0a 24 72 75 6e do.{.$this->checkTimeout();.$run
1153c0 6e 69 6e 67 20 3d 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 ning.=.'\\'.===.DIRECTORY_SEPARA
1153e0 54 4f 52 20 3f 20 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 20 3a 20 24 74 68 69 73 TOR.?.$this->isRunning().:.$this
115400 2d 3e 70 72 6f 63 65 73 73 50 69 70 65 73 2d 3e 61 72 65 4f 70 65 6e 28 29 3b 0a 24 63 6c 6f 73 ->processPipes->areOpen();.$clos
115420 65 20 3d 20 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 e.=.'\\'.!==.DIRECTORY_SEPARATOR
115440 20 7c 7c 20 21 24 72 75 6e 6e 69 6e 67 3b 0a 24 74 68 69 73 2d 3e 72 65 61 64 50 69 70 65 73 28 .||.!$running;.$this->readPipes(
115460 74 72 75 65 2c 20 24 63 6c 6f 73 65 29 3b 0a 7d 20 77 68 69 6c 65 20 28 24 72 75 6e 6e 69 6e 67 true,.$close);.}.while.($running
115480 29 3b 0a 0a 77 68 69 6c 65 20 28 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 29 20 7b );..while.($this->isRunning()).{
1154a0 0a 75 73 6c 65 65 70 28 31 30 30 30 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f .usleep(1000);.}..if.($this->pro
1154c0 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 73 69 67 6e 61 6c 65 64 27 5d 20 26 26 20 24 cessInformation['signaled'].&&.$
1154e0 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 73 69 this->processInformation['termsi
115500 67 27 5d 20 21 3d 3d 20 24 74 68 69 73 2d 3e 6c 61 74 65 73 74 53 69 67 6e 61 6c 29 20 7b 0a 74 g'].!==.$this->latestSignal).{.t
115520 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 73 70 72 69 6e 74 hrow.new.RuntimeException(sprint
115540 66 28 27 54 68 65 20 70 72 6f 63 65 73 73 20 68 61 73 20 62 65 65 6e 20 73 69 67 6e 61 6c 65 64 f('The.process.has.been.signaled
115560 20 77 69 74 68 20 73 69 67 6e 61 6c 20 22 25 73 22 2e 27 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 .with.signal."%s".',.$this->proc
115580 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 29 3b 0a 7d 0a 0a essInformation['termsig']));.}..
1155a0 72 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 return.$this->exitcode;.}.......
1155c0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 69 64 28 29 0a 7b 0a 72 65 74 75 72 public.function.getPid().{.retur
1155e0 6e 20 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 20 3f 20 24 74 68 69 73 2d 3e 70 72 n.$this->isRunning().?.$this->pr
115600 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 70 69 64 27 5d 20 3a 20 6e 75 6c 6c 3b 0a ocessInformation['pid'].:.null;.
115620 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 73 69 }.............public.function.si
115640 67 6e 61 6c 28 24 73 69 67 6e 61 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 6f 53 69 67 6e 61 6c 28 gnal($signal).{.$this->doSignal(
115660 24 73 69 67 6e 61 6c 2c 20 74 72 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d $signal,.true);..return.$this;.}
115680 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 73 61 62 6c ..........public.function.disabl
1156a0 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 69 6e 67 eOutput().{.if.($this->isRunning
1156c0 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 69 6f 6e ()).{.throw.new.RuntimeException
1156e0 28 27 44 69 73 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 72 6f ('Disabling.output.while.the.pro
115700 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 65 2e cess.is.running.is.not.possible.
115720 27 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 69 64 6c 65 54 69 ');.}.if.(null.!==.$this->idleTi
115740 6d 65 6f 75 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 meout).{.throw.new.LogicExceptio
115760 6e 28 27 4f 75 74 70 75 74 20 63 61 6e 20 6e 6f 74 20 62 65 20 64 69 73 61 62 6c 65 64 20 77 68 n('Output.can.not.be.disabled.wh
115780 69 6c 65 20 61 6e 20 69 64 6c 65 20 74 69 6d 65 6f 75 74 20 69 73 20 73 65 74 2e 27 29 3b 0a 7d ile.an.idle.timeout.is.set.');.}
1157a0 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 20 74 72 75 65 3b 0a ..$this->outputDisabled.=.true;.
1157c0 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.
1157e0 66 75 6e 63 74 69 6f 6e 20 65 6e 61 62 6c 65 4f 75 74 70 75 74 28 29 0a 7b 0a 69 66 20 28 24 74 function.enableOutput().{.if.($t
115800 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 20 6e 65 77 20 52 75 his->isRunning()).{.throw.new.Ru
115820 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 45 6e 61 62 6c 69 6e 67 20 6f 75 74 70 75 74 20 ntimeException('Enabling.output.
115840 77 68 69 6c 65 20 74 68 65 20 70 72 6f 63 65 73 73 20 69 73 20 72 75 6e 6e 69 6e 67 20 69 73 20 while.the.process.is.running.is.
115860 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 not.possible.');.}..$this->outpu
115880 74 44 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 tDisabled.=.false;..return.$this
1158a0 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 4f 75 74 70 ;.}.......public.function.isOutp
1158c0 75 74 44 69 73 61 62 6c 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 utDisabled().{.return.$this->out
1158e0 70 75 74 44 69 73 61 62 6c 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 putDisabled;.}..........public.f
115900 75 6e 63 74 69 6f 6e 20 67 65 74 4f 75 74 70 75 74 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d unction.getOutput().{.if.($this-
115920 3e 6f 75 74 70 75 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 >outputDisabled).{.throw.new.Log
115940 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 65 65 6e 20 64 69 73 icException('Output.has.been.dis
115960 61 62 6c 65 64 2e 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 abled.');.}..$this->requireProce
115980 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 74 68 69 ssIsStarted(__FUNCTION__);..$thi
1159a0 73 2d 3e 72 65 61 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 s->readPipes(false,.'\\'.===.DIR
1159c0 45 43 54 4f 52 59 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 ECTORY_SEPARATOR.?.!$this->proce
1159e0 73 73 49 6e 66 6f 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 ssInformation['running'].:.true)
115a00 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 64 6f 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a ;..return.$this->stdout;.}......
115a20 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 63 72 65 6d .......public.function.getIncrem
115a40 65 6e 74 61 6c 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 entalOutput().{.$this->requirePr
115a60 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__);..$
115a80 64 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4f 75 74 70 75 74 28 29 3b 0a 0a 24 6c 61 74 data.=.$this->getOutput();..$lat
115aa0 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 69 6e 63 72 65 est.=.substr($data,.$this->incre
115ac0 6d 65 6e 74 61 6c 4f 75 74 70 75 74 4f 66 66 73 65 74 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 mentalOutputOffset);..if.(false.
115ae0 3d 3d 3d 20 24 6c 61 74 65 73 74 29 20 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 0a 24 74 68 ===.$latest).{.return.'';.}..$th
115b00 69 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 73 74 is->incrementalOutputOffset.=.st
115b20 72 6c 65 6e 28 24 64 61 74 61 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6c 61 74 65 73 74 3b 0a 7d 0a rlen($data);..return.$latest;.}.
115b40 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 4f 75 74 70 75 ......public.function.clearOutpu
115b60 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 64 6f 75 74 20 3d 20 27 27 3b 0a 24 74 68 69 73 2d t().{.$this->stdout.=.'';.$this-
115b80 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 0a 72 >incrementalOutputOffset.=.0;..r
115ba0 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
115bc0 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 0a 7b 0a 69 66 20 28 24 unction.getErrorOutput().{.if.($
115be0 74 68 69 73 2d 3e 6f 75 74 70 75 74 44 69 73 61 62 6c 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 this->outputDisabled).{.throw.ne
115c00 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 65 65 w.LogicException('Output.has.bee
115c20 6e 20 64 69 73 61 62 6c 65 64 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 n.disabled.');.}..$this->require
115c40 50 72 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 ProcessIsStarted(__FUNCTION__);.
115c60 0a 24 74 68 69 73 2d 3e 72 65 61 64 50 69 70 65 73 28 66 61 6c 73 65 2c 20 27 5c 5c 27 20 3d 3d .$this->readPipes(false,.'\\'.==
115c80 3d 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 3f 20 21 24 74 68 69 73 2d 3e =.DIRECTORY_SEPARATOR.?.!$this->
115ca0 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 72 75 6e 6e 69 6e 67 27 5d 20 3a 20 processInformation['running'].:.
115cc0 74 72 75 65 29 3b 0a 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 true);..return.$this->stderr;.}.
115ce0 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 67 65 74 .............public.function.get
115d00 49 6e 63 72 65 6d 65 6e 74 61 6c 45 72 72 6f 72 4f 75 74 70 75 74 28 29 0a 7b 0a 24 74 68 69 73 IncrementalErrorOutput().{.$this
115d20 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 28 5f 5f 46 55 4e 43 ->requireProcessIsStarted(__FUNC
115d40 54 49 4f 4e 5f 5f 29 3b 0a 0a 24 64 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f TION__);..$data.=.$this->getErro
115d60 72 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 72 28 24 64 61 rOutput();..$latest.=.substr($da
115d80 74 61 2c 20 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 ta,.$this->incrementalErrorOutpu
115da0 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
115dc0 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
115de0 6e 74 61 6c 45 72 72 6f 72 4f 75 74 70 75 74 4f 66 66 73 65 74 20 3d 20 73 74 72 6c 65 6e 28 24 ntalErrorOutputOffset.=.strlen($
115e00 64 61 74 61 29 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 data);..return.$latest;.}.......
115e20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 72 45 72 72 6f 72 4f 75 74 70 75 74 public.function.clearErrorOutput
115e40 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 20 3d 20 27 27 3b 0a 24 74 68 69 73 2d 3e ().{.$this->stderr.=.'';.$this->
115e60 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 20 3d 20 30 incrementalErrorOutputOffset.=.0
115e80 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 69 ;..return.$this;.}.........publi
115ea0 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 69 66 20 28 21 c.function.getExitCode().{.if.(!
115ec0 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 69 62 69 6c $this->enhanceSigchildCompatibil
115ee0 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 6c 65 64 28 ity.&&.$this->isSigchildEnabled(
115f00 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 69 6f 6e 28 )).{.throw.new.RuntimeException(
115f20 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 77 69 74 68 'This.PHP.has.been.compiled.with
115f40 20 2d 2d 65 6e 61 62 6c 65 2d 73 69 67 63 68 69 6c 64 2e 20 59 6f 75 20 6d 75 73 74 20 75 73 65 .--enable-sigchild..You.must.use
115f60 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
115f80 28 29 20 74 6f 20 75 73 65 20 74 68 69 73 20 6d 65 74 68 6f 64 2e 27 29 3b 0a 7d 0a 0a 24 74 68 ().to.use.this.method.');.}..$th
115fa0 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 66 61 6c 73 65 29 3b 0a 0a 72 65 74 75 72 6e is->updateStatus(false);..return
115fc0 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 0a 0a 0a 0a 0a 0a .$this->exitcode;.}.............
115fe0 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 54 65 78 74 28 public.function.getExitCodeText(
116000 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 65 78 69 74 63 6f 64 65 20 3d 20 24 74 68 ).{.if.(null.===.$exitcode.=.$th
116020 69 73 2d 3e 67 65 74 45 78 69 74 43 6f 64 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a is->getExitCode()).{.return;.}..
116040 72 65 74 75 72 6e 20 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 65 78 69 74 43 6f 64 65 73 5b 24 65 return.isset(self::$exitCodes[$e
116060 78 69 74 63 6f 64 65 5d 29 20 3f 20 73 65 6c 66 3a 3a 24 65 78 69 74 43 6f 64 65 73 5b 24 65 78 xitcode]).?.self::$exitCodes[$ex
116080 69 74 63 6f 64 65 5d 20 3a 20 27 55 6e 6b 6e 6f 77 6e 20 65 72 72 6f 72 27 3b 0a 7d 0a 0a 0a 0a itcode].:.'Unknown.error';.}....
1160a0 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 53 75 63 63 65 73 73 66 75 6c 28 ...public.function.isSuccessful(
1160c0 29 0a 7b 0a 72 65 74 75 72 6e 20 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 78 69 74 43 ).{.return.0.===.$this->getExitC
1160e0 6f 64 65 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 ode();.}............public.funct
116100 69 6f 6e 20 68 61 73 42 65 65 6e 53 69 67 6e 61 6c 65 64 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 ion.hasBeenSignaled().{.$this->r
116120 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 5f 46 55 4e 43 equireProcessIsTerminated(__FUNC
116140 54 49 4f 4e 5f 5f 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 65 53 69 67 TION__);..if.(!$this->enhanceSig
116160 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 3e 69 73 53 childCompatibility.&&.$this->isS
116180 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 65 77 20 52 75 igchildEnabled()).{.throw.new.Ru
1161a0 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 73 20 62 65 65 ntimeException('This.PHP.has.bee
1161c0 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 67 63 68 69 6c n.compiled.with.--enable-sigchil
1161e0 64 2e 20 54 65 72 6d 20 73 69 67 6e 61 6c 20 63 61 6e 20 6e 6f 74 20 62 65 20 72 65 74 72 69 65 d..Term.signal.can.not.be.retrie
116200 76 65 64 2e 27 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 ved.');.}..return.$this->process
116220 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 73 69 67 6e 61 6c 65 64 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a Information['signaled'];.}......
116240 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 6d 53 69 67 ......public.function.getTermSig
116260 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 73 54 nal().{.$this->requireProcessIsT
116280 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 66 20 28 24 74 erminated(__FUNCTION__);..if.($t
1162a0 68 69 73 2d 3e 69 73 53 69 67 63 68 69 6c 64 45 6e 61 62 6c 65 64 28 29 20 26 26 20 28 21 24 74 his->isSigchildEnabled().&&.(!$t
1162c0 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
1162e0 79 20 7c 7c 20 2d 31 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d y.||.-1.===.$this->processInform
116300 61 74 69 6f 6e 5b 27 74 65 72 6d 73 69 67 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 ation['termsig'])).{.throw.new.R
116320 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 73 20 62 65 untimeException('This.PHP.has.be
116340 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 67 63 68 69 en.compiled.with.--enable-sigchi
116360 6c 64 2e 20 54 65 72 6d 20 73 69 67 6e 61 6c 20 63 61 6e 20 6e 6f 74 20 62 65 20 72 65 74 72 69 ld..Term.signal.can.not.be.retri
116380 65 76 65 64 2e 27 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 eved.');.}..return.$this->proces
1163a0 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 0a 0a 0a 0a 0a 0a sInformation['termsig'];.}......
1163c0 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 53 74 6f 70 .....public.function.hasBeenStop
1163e0 70 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 73 73 49 73 54 ped().{.$this->requireProcessIsT
116400 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 72 6e erminated(__FUNCTION__);..return
116420 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 6f 70 .$this->processInformation['stop
116440 70 65 64 27 5d 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 ped'];.}...........public.functi
116460 6f 6e 20 67 65 74 53 74 6f 70 53 69 67 6e 61 6c 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 71 75 on.getStopSignal().{.$this->requ
116480 69 72 65 50 72 6f 63 65 73 73 49 73 54 65 72 6d 69 6e 61 74 65 64 28 5f 5f 46 55 4e 43 54 49 4f ireProcessIsTerminated(__FUNCTIO
1164a0 4e 5f 5f 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 49 6e 66 6f N__);..return.$this->processInfo
1164c0 72 6d 61 74 69 6f 6e 5b 27 73 74 6f 70 73 69 67 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c rmation['stopsig'];.}.......publ
1164e0 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 52 75 6e 6e 69 6e 67 28 29 0a 7b 0a 69 66 20 28 73 65 ic.function.isRunning().{.if.(se
116500 6c 66 3a 3a 53 54 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 lf::STATUS_STARTED.!==.$this->st
116520 61 74 75 73 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e atus).{.return.false;.}..$this->
116540 75 70 64 61 74 65 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 updateStatus(false);..return.$th
116560 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 72 75 6e 6e 69 6e 67 27 is->processInformation['running'
116580 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 69 73 53 74 61 ];.}.......public.function.isSta
1165a0 72 74 65 64 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 20 21 3d rted().{.return.$this->status.!=
1165c0 20 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f 52 45 41 44 59 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 .self::STATUS_READY;.}.......pub
1165e0 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 54 65 72 6d 69 6e 61 74 65 64 28 29 0a 7b 0a 24 74 lic.function.isTerminated().{.$t
116600 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 66 61 6c 73 65 29 3b 0a 0a 72 65 74 75 72 his->updateStatus(false);..retur
116620 6e 20 24 74 68 69 73 2d 3e 73 74 61 74 75 73 20 3d 3d 20 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f n.$this->status.==.self::STATUS_
116640 54 45 52 4d 49 4e 41 54 45 44 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e TERMINATED;.}.........public.fun
116660 63 74 69 6f 6e 20 67 65 74 53 74 61 74 75 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 ction.getStatus().{.$this->updat
116680 65 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 eStatus(false);..return.$this->s
1166a0 74 61 74 75 73 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 tatus;.}..........public.functio
1166c0 6e 20 73 74 6f 70 28 24 74 69 6d 65 6f 75 74 20 3d 20 31 30 2c 20 24 73 69 67 6e 61 6c 20 3d 20 n.stop($timeout.=.10,.$signal.=.
1166e0 6e 75 6c 6c 29 0a 7b 0a 24 74 69 6d 65 6f 75 74 4d 69 63 72 6f 20 3d 20 6d 69 63 72 6f 74 69 6d null).{.$timeoutMicro.=.microtim
116700 65 28 74 72 75 65 29 20 2b 20 24 74 69 6d 65 6f 75 74 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 e(true).+.$timeout;.if.($this->i
116720 73 52 75 6e 6e 69 6e 67 28 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 64 6f 53 69 67 6e 61 6c 28 sRunning()).{...$this->doSignal(
116740 31 35 2c 20 66 61 6c 73 65 29 3b 0a 64 6f 20 7b 0a 75 73 6c 65 65 70 28 31 30 30 30 29 3b 0a 7d 15,.false);.do.{.usleep(1000);.}
116760 20 77 68 69 6c 65 20 28 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 20 26 26 20 6d 69 .while.($this->isRunning().&&.mi
116780 63 72 6f 74 69 6d 65 28 74 72 75 65 29 20 3c 20 24 74 69 6d 65 6f 75 74 4d 69 63 72 6f 29 3b 0a crotime(true).<.$timeoutMicro);.
1167a0 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 0a 20 0a 20 24 .if.($this->isRunning()).{.....$
1167c0 74 68 69 73 2d 3e 64 6f 53 69 67 6e 61 6c 28 24 73 69 67 6e 61 6c 20 3f 3a 20 39 2c 20 66 61 6c this->doSignal($signal.?:.9,.fal
1167e0 73 65 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 66 61 se);.}.}..$this->updateStatus(fa
116800 6c 73 65 29 3b 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 lse);.if.($this->processInformat
116820 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 6f 73 65 28 29 ion['running']).{.$this->close()
116840 3b 0a 7d 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 0a 7d 0a 0a ;.}..return.$this->exitcode;.}..
116860 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 75 74 70 75 74 28 24 .....public.function.addOutput($
116880 6c 69 6e 65 29 0a 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 line).{.$this->lastOutputTime.=.
1168a0 6d 69 63 72 6f 74 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 microtime(true);.$this->stdout..
1168c0 3d 20 24 6c 69 6e 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 =.$line;.}.......public.function
1168e0 20 61 64 64 45 72 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 .addErrorOutput($line).{.$this->
116900 6c 61 73 74 4f 75 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 lastOutputTime.=.microtime(true)
116920 3b 0a 24 74 68 69 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 ;.$this->stderr..=.$line;.}.....
116940 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 4c 69 6e 65 ..public.function.getCommandLine
116960 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 64 6c 69 6e 65 3b 0a ().{.return.$this->commandline;.
116980 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 43 6f 6d }.........public.function.setCom
1169a0 6d 61 6e 64 4c 69 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 mandLine($commandline).{.$this->
1169c0 63 6f 6d 6d 61 6e 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 commandline.=.$commandline;..ret
1169e0 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 69 urn.$this;.}.......public.functi
116a00 6f 6e 20 67 65 74 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 on.getTimeout().{.return.$this->
116a20 74 69 6d 65 6f 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 timeout;.}.......public.function
116a40 20 67 65 74 49 64 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 .getIdleTimeout().{.return.$this
116a60 2d 3e 69 64 6c 65 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 ->idleTimeout;.}.............pub
116a80 6c 69 63 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 lic.function.setTimeout($timeout
116aa0 29 0a 7b 0a 24 74 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 ).{.$this->timeout.=.$this->vali
116ac0 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 74 75 72 6e 20 24 dateTimeout($timeout);..return.$
116ae0 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 63 this;.}..............public.func
116b00 74 69 6f 6e 20 73 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 tion.setIdleTimeout($timeout).{.
116b20 69 66 20 28 6e 75 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 if.(null.!==.$timeout.&&.$this->
116b40 6f 75 74 70 75 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 outputDisabled).{.throw.new.Logi
116b60 63 45 78 63 65 70 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 cException('Idle.timeout.can.not
116b80 20 62 65 20 73 65 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 .be.set.while.the.output.is.disa
116ba0 62 6c 65 64 2e 27 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 bled.');.}..$this->idleTimeout.=
116bc0 20 24 74 68 69 73 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 .$this->validateTimeout($timeout
116be0 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 75 );..return.$this;.}...........pu
116c00 62 6c 69 63 20 66 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 blic.function.setTty($tty).{.if.
116c20 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 20 26 26 ('\\'.===.DIRECTORY_SEPARATOR.&&
116c40 20 24 74 74 79 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 .$tty).{.throw.new.RuntimeExcept
116c60 69 6f 6e 28 27 54 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 ion('TTY.mode.is.not.supported.o
116c80 6e 20 57 69 6e 64 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 n.Windows.platform.');.}.if.($tt
116ca0 79 20 26 26 20 28 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 y.&&.(!file_exists('/dev/tty').|
116cc0 7c 20 21 69 73 5f 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 |.!is_readable('/dev/tty'))).{.t
116ce0 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 54 59 20 6d hrow.new.RuntimeException('TTY.m
116d00 6f 64 65 20 72 65 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 ode.requires./dev/tty.to.be.read
116d20 61 62 6c 65 2e 27 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 able.');.}..$this->tty.=.(bool).
116d40 24 74 74 79 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 $tty;..return.$this;.}.......pub
116d60 6c 69 63 20 66 75 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 lic.function.isTty().{.return.$t
116d80 68 69 73 2d 3e 74 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 his->tty;.}.........public.funct
116da0 69 6f 6e 20 73 65 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 ion.setPty($bool).{.$this->pty.=
116dc0 20 28 62 6f 6f 6c 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 .(bool).$bool;..return.$this;.}.
116de0 0a 0a 0a 0a 0a 0a 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 ......public.function.isPty().{.
116e00 72 65 74 75 72 6e 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 return.$this->pty;.}.......publi
116e20 63 20 66 75 6e 63 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 c.function.getWorkingDirectory()
116e40 0a 7b 0a 69 66 20 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 .{.if.(null.===.$this->cwd).{...
116e60 0a 20 72 65 74 75 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 ..return.getcwd().?:.null;.}..re
116e80 74 75 72 6e 20 24 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 turn.$this->cwd;.}.........publi
116ea0 63 20 66 75 6e 63 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 c.function.setWorkingDirectory($
116ec0 63 77 64 29 0a 7b 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 cwd).{.$this->cwd.=.$cwd;..retur
116ee0 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
116f00 20 67 65 74 45 6e 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 .getEnv().{.return.$this->env;.}
116f20 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 73 ...............public.function.s
116f40 65 74 45 6e 76 28 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 etEnv(array.$env).{...$env.=.arr
116f60 61 79 5f 66 69 6c 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 ay_filter($env,.function.($value
116f80 29 20 7b 0a 72 65 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 ).{.return.!is_array($value);.})
116fa0 3b 0a 0a 24 74 68 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 ;..$this->env.=.array();.foreach
116fc0 20 28 24 65 6e 76 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 .($env.as.$key.=>.$value).{.$thi
116fe0 73 2d 3e 65 6e 76 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 s->env[$key].=.(string).$value;.
117000 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 0a 0a 0a 70 75 62 }..return.$this;.}...........pub
117020 6c 69 63 20 66 75 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 lic.function.getStdin().{.@trigg
117040 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 74 er_error('The.'.__METHOD__.'.met
117060 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 20 hod.is.deprecated.since.version.
117080 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 20 2.5.and.will.be.removed.in.3.0..
1170a0 55 73 65 20 74 68 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 Use.the.getInput().method.instea
1170c0 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 6e d.',.E_USER_DEPRECATED);..return
1170e0 20 24 74 68 69 73 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 .$this->getInput();.}.......publ
117100 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 74 75 72 6e 20 ic.function.getInput().{.return.
117120 24 74 68 69 73 2d 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 $this->input;.}...............pu
117140 62 6c 69 63 20 66 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 blic.function.setStdin($stdin).{
117160 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 4f 44 5f .@trigger_error('The.'.__METHOD_
117180 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 65 20 76 _.'.method.is.deprecated.since.v
1171a0 65 72 73 69 6f 6e 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 ersion.2.5.and.will.be.removed.i
1171c0 6e 20 33 2e 30 2e 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 n.3.0..Use.the.setInput().method
1171e0 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);.
117200 0a 72 65 74 75 72 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 .return.$this->setInput($stdin);
117220 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
117240 20 73 65 74 49 6e 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 .setInput($input).{.if.($this->i
117260 73 52 75 6e 6e 69 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 sRunning()).{.throw.new.LogicExc
117280 65 70 74 69 6f 6e 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 eption('Input.can.not.be.set.whi
1172a0 6c 65 20 74 68 65 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 le.the.process.is.running.');.}.
1172c0 0a 24 74 68 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 .$this->input.=.ProcessUtils::va
1172e0 6c 69 64 61 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 lidateInput(sprintf('%s::%s',.__
117300 43 4c 41 53 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 CLASS__,.__FUNCTION__),.$input);
117320 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
117340 75 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 24 74 unction.getOptions().{.return.$t
117360 68 69 73 2d 3e 6f 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 his->options;.}.........public.f
117380 75 6e 63 74 69 6f 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 unction.setOptions(array.$option
1173a0 73 29 0a 7b 0a 24 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 s).{.$this->options.=.$options;.
1173c0 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.
1173e0 66 75 6e 63 74 69 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 function.getEnhanceWindowsCompat
117400 69 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 65 6e 68 61 6e 63 ibility().{.return.$this->enhanc
117420 65 57 69 6e 64 6f 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 eWindowsCompatibility;.}........
117440 0a 70 75 62 6c 69 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 .public.function.setEnhanceWindo
117460 77 73 43 6f 6d 70 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 wsCompatibility($enhance).{.$thi
117480 73 2d 3e 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 20 3d s->enhanceWindowsCompatibility.=
1174a0 20 28 62 6f 6f 6c 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 .(bool).$enhance;..return.$this;
1174c0 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 68 61 .}.......public.function.getEnha
1174e0 6e 63 65 53 69 67 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 nceSigchildCompatibility().{.ret
117500 75 72 6e 20 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 urn.$this->enhanceSigchildCompat
117520 69 62 69 6c 69 74 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 ibility;.}.............public.fu
117540 6e 63 74 69 6f 6e 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 nction.setEnhanceSigchildCompati
117560 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 61 6e 63 bility($enhance).{.$this->enhanc
117580 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 28 62 6f 6f 6c 29 20 eSigchildCompatibility.=.(bool).
1175a0 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 0a 0a $enhance;..return.$this;.}......
1175c0 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 54 69 6d 65 6f 75 74 ....public.function.checkTimeout
1175e0 28 29 0a 7b 0a 69 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 ().{.if.($this->status.!==.self:
117600 3a 53 54 41 54 55 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 :STATUS_STARTED).{.return;.}..if
117620 20 28 6e 75 6c 6c 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 .(null.!==.$this->timeout.&&.$th
117640 69 73 2d 3e 74 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 is->timeout.<.microtime(true).-.
117660 24 74 68 69 73 2d 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 $this->starttime).{.$this->stop(
117680 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 75 74 45 78 0);..throw.new.ProcessTimedOutEx
1176a0 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 75 74 45 78 ception($this,.ProcessTimedOutEx
1176c0 63 65 70 74 69 6f 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 ception::TYPE_GENERAL);.}..if.(n
1176e0 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 20 26 26 20 24 74 ull.!==.$this->idleTimeout.&&.$t
117700 68 69 73 2d 3e 69 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 his->idleTimeout.<.microtime(tru
117720 65 29 20 2d 20 24 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 e).-.$this->lastOutputTime).{.$t
117740 68 69 73 2d 3e 73 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 his->stop(0);..throw.new.Process
117760 54 69 6d 65 64 4f 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 TimedOutException($this,.Process
117780 54 69 6d 65 64 4f 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 TimedOutException::TYPE_IDLE);.}
1177a0 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 63 74 69 6f 6e 20 .}.......public.static.function.
1177c0 69 73 50 74 79 53 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 isPtySupported().{.static.$resul
1177e0 74 3b 0a 0a 69 66 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 t;..if.(null.!==.$result).{.retu
117800 72 6e 20 24 72 65 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 rn.$result;.}..if.('\\'.===.DIRE
117820 43 54 4f 52 59 5f 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 CTORY_SEPARATOR).{.return.$resul
117840 74 20 3d 20 66 61 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 t.=.false;.}..return.$result.=.(
117860 62 6f 6f 6c 29 20 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 bool).@proc_open('echo.1',.array
117880 28 61 72 72 61 79 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 (array('pty'),.array('pty'),.arr
1178a0 61 79 28 27 70 74 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 ay('pty')),.$pipes);.}.......pri
1178c0 76 61 74 65 20 66 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 vate.function.getDescriptors().{
1178e0 0a 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
117900 52 29 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 57 69 6e 64 6f R).{.$this->processPipes.=.Windo
117920 77 73 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 6e wsPipes::create($this,.$this->in
117940 70 75 74 29 3b 0a 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 put);.}.else.{.$this->processPip
117960 65 73 20 3d 20 55 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 es.=.UnixPipes::create($this,.$t
117980 68 69 73 2d 3e 69 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 his->input);.}..return.$this->pr
1179a0 6f 63 65 73 73 50 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 ocessPipes->getDescriptors($this
1179c0 2d 3e 6f 75 74 70 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 ->outputDisabled);.}............
1179e0 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 61 6c 6c 62 61 63 6b protected.function.buildCallback
117a00 28 24 63 61 6c 6c 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 ($callback).{.$that.=.$this;.$ou
117a20 74 20 3d 20 73 65 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 t.=.self::OUT;.$callback.=.funct
117a40 69 6f 6e 20 28 24 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 ion.($type,.$data).use.($that,.$
117a60 63 61 6c 6c 62 61 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 callback,.$out).{.if.($out.==.$t
117a80 79 70 65 29 20 7b 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 ype).{.$that->addOutput($data);.
117aa0 7d 20 65 6c 73 65 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 }.else.{.$that->addErrorOutput($
117ac0 64 61 74 61 29 3b 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 data);.}..if.(null.!==.$callback
117ae0 29 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 ).{.call_user_func($callback,.$t
117b00 79 70 65 2c 20 24 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 ype,.$data);.}.};..return.$callb
117b20 61 63 6b 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 ack;.}.......protected.function.
117b40 75 70 64 61 74 65 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 updateStatus($blocking).{.if.(se
117b60 6c 66 3a 3a 53 54 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 lf::STATUS_STARTED.!==.$this->st
117b80 61 74 75 73 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 atus).{.return;.}..$this->proces
117ba0 73 49 6e 66 6f 72 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 sInformation.=.proc_get_status($
117bc0 74 68 69 73 2d 3e 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 this->process);..$this->readPipe
117be0 73 28 24 62 6c 6f 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 s($blocking,.'\\'.===.DIRECTORY_
117c00 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 72 SEPARATOR.?.!$this->processInfor
117c20 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 69 66 20 28 mation['running'].:.true);..if.(
117c40 24 74 68 69 73 2d 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 $this->fallbackStatus.&&.$this->
117c60 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 26 20 enhanceSigchildCompatibility.&&.
117c80 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 24 74 $this->isSigchildEnabled()).{.$t
117ca0 68 69 73 2d 3e 70 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 his->processInformation.=.$this-
117cc0 3e 66 61 6c 6c 62 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 >fallbackStatus.+.$this->process
117ce0 49 6e 66 6f 72 6d 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 Information;.}..if.(!$this->proc
117d00 65 73 73 49 6e 66 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 essInformation['running']).{.$th
117d20 69 73 2d 3e 63 6c 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 is->close();.}.}.......protected
117d40 20 66 75 6e 63 74 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 .function.isSigchildEnabled().{.
117d60 69 66 20 28 6e 75 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 if.(null.!==.self::$sigchild).{.
117d80 72 65 74 75 72 6e 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 return.self::$sigchild;.}..if.(!
117da0 66 75 6e 63 74 69 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 function_exists('phpinfo').||.de
117dc0 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 72 65 74 75 72 6e 20 fined('HHVM_VERSION')).{.return.
117de0 73 65 6c 66 3a 3a 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 self::$sigchild.=.false;.}..ob_s
117e00 74 61 72 74 28 29 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 tart();.phpinfo(INFO_GENERAL);..
117e20 72 65 74 75 72 6e 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 return.self::$sigchild.=.false.!
117e40 3d 3d 20 73 74 72 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 ==.strpos(ob_get_clean(),.'--ena
117e60 62 6c 65 2d 73 69 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 ble-sigchild');.}...........priv
117e80 61 74 65 20 66 75 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 ate.function.validateTimeout($ti
117ea0 6d 65 6f 75 74 29 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 meout).{.$timeout.=.(float).$tim
117ec0 65 6f 75 74 3b 0a 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 eout;..if.(0.0.===.$timeout).{.$
117ee0 74 69 6d 65 6f 75 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 timeout.=.null;.}.elseif.($timeo
117f00 75 74 20 3c 20 30 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 ut.<.0).{.throw.new.InvalidArgum
117f20 65 6e 74 45 78 63 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 entException('The.timeout.value.
117f40 6d 75 73 74 20 62 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 must.be.a.valid.positive.integer
117f60 20 6f 72 20 66 6c 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 .or.float.number.');.}..return.$
117f80 74 69 6d 65 6f 75 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 timeout;.}........private.functi
117fa0 6f 6e 20 72 65 61 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 on.readPipes($blocking,.$close).
117fc0 7b 0a 24 72 65 73 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 {.$result.=.$this->processPipes-
117fe0 3e 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 6f 73 65 29 >readAndWrite($blocking,.$close)
118000 3b 0a 0a 24 63 61 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 ;..$callback.=.$this->callback;.
118020 66 6f 72 65 61 63 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 foreach.($result.as.$type.=>.$da
118040 74 61 29 20 7b 0a 69 66 20 28 33 20 3d 3d 3d 20 24 74 79 70 65 29 20 7b 0a 24 74 68 69 73 2d 3e ta).{.if.(3.===.$type).{.$this->
118060 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 5b 27 72 75 6e 6e 69 6e 67 27 5d 20 3d 20 66 61 6c 73 fallbackStatus['running'].=.fals
118080 65 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 53 74 61 e;.if.(!isset($this->fallbackSta
1180a0 74 75 73 5b 27 73 69 67 6e 61 6c 65 64 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 tus['signaled'])).{.$this->fallb
1180c0 61 63 6b 53 74 61 74 75 73 5b 27 65 78 69 74 63 6f 64 65 27 5d 20 3d 20 28 69 6e 74 29 20 24 64 ackStatus['exitcode'].=.(int).$d
1180e0 61 74 61 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 61 6c 6c 62 61 63 6b 28 24 74 79 70 65 20 ata;.}.}.else.{.$callback($type.
118100 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 3a 20 73 ===.self::STDOUT.?.self::OUT.:.s
118120 65 6c 66 3a 3a 45 52 52 2c 20 24 64 61 74 61 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 elf::ERR,.$data);.}.}.}.......pr
118140 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6c 6f 73 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e ivate.function.close().{.$this->
118160 70 72 6f 63 65 73 73 50 69 70 65 73 2d 3e 63 6c 6f 73 65 28 29 3b 0a 69 66 20 28 69 73 5f 72 65 processPipes->close();.if.(is_re
118180 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 70 72 6f 63 5f 63 source($this->process)).{.proc_c
1181a0 6c 6f 73 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 65 lose($this->process);.}.$this->e
1181c0 78 69 74 63 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 xitcode.=.$this->processInformat
1181e0 69 6f 6e 5b 27 65 78 69 74 63 6f 64 65 27 5d 3b 0a 24 74 68 69 73 2d 3e 73 74 61 74 75 73 20 3d ion['exitcode'];.$this->status.=
118200 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 0a 0a 69 66 20 28 2d .self::STATUS_TERMINATED;..if.(-
118220 31 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 29 20 7b 0a 69 66 20 28 24 74 68 1.===.$this->exitcode).{.if.($th
118240 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 69 67 6e 61 6c 65 64 is->processInformation['signaled
118260 27 5d 20 26 26 20 30 20 3c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 '].&&.0.<.$this->processInformat
118280 69 6f 6e 5b 27 74 65 72 6d 73 69 67 27 5d 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 65 78 69 74 63 ion['termsig']).{...$this->exitc
1182a0 6f 64 65 20 3d 20 31 32 38 20 2b 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d ode.=.128.+.$this->processInform
1182c0 61 74 69 6f 6e 5b 27 74 65 72 6d 73 69 67 27 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 ation['termsig'];.}.elseif.($thi
1182e0 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 79 20 s->enhanceSigchildCompatibility.
118300 26 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 &&.$this->isSigchildEnabled()).{
118320 0a 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 69 67 6e .$this->processInformation['sign
118340 61 6c 65 64 27 5d 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 aled'].=.true;.$this->processInf
118360 6f 72 6d 61 74 69 6f 6e 5b 27 74 65 72 6d 73 69 67 27 5d 20 3d 20 2d 31 3b 0a 7d 0a 7d 0a 0a 0a ormation['termsig'].=.-1;.}.}...
118380 20 0a 20 0a 20 24 74 68 69 73 2d 3e 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 .....$this->callback.=.null;..re
1183a0 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 70 72 69 76 turn.$this->exitcode;.}.....priv
1183c0 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 50 72 6f 63 65 73 73 44 61 74 61 28 29 0a ate.function.resetProcessData().
1183e0 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 74 74 69 6d 65 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 {.$this->starttime.=.null;.$this
118400 2d 3e 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 65 78 69 74 63 6f ->callback.=.null;.$this->exitco
118420 64 65 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 53 74 61 74 75 73 de.=.null;.$this->fallbackStatus
118440 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d .=.array();.$this->processInform
118460 61 74 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 73 74 64 6f 75 74 20 3d 20 6e 75 ation.=.null;.$this->stdout.=.nu
118480 6c 6c 3b 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d ll;.$this->stderr.=.null;.$this-
1184a0 3e 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 6c 61 74 65 73 74 53 69 >process.=.null;.$this->latestSi
1184c0 67 6e 61 6c 20 3d 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 73 74 61 74 75 73 20 3d 20 73 65 6c gnal.=.null;.$this->status.=.sel
1184e0 66 3a 3a 53 54 41 54 55 53 5f 52 45 41 44 59 3b 0a 24 74 68 69 73 2d 3e 69 6e 63 72 65 6d 65 6e f::STATUS_READY;.$this->incremen
118500 74 61 6c 4f 75 74 70 75 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 69 6e 63 72 talOutputOffset.=.0;.$this->incr
118520 65 6d 65 6e 74 61 6c 45 72 72 6f 72 4f 75 74 70 75 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 7d 0a ementalErrorOutputOffset.=.0;.}.
118540 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 74 69 6f 6e 20 64 6f .............private.function.do
118560 53 69 67 6e 61 6c 28 24 73 69 67 6e 61 6c 2c 20 24 74 68 72 6f 77 45 78 63 65 70 74 69 6f 6e 29 Signal($signal,.$throwException)
118580 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 29 20 7b 0a 69 66 .{.if.(!$this->isRunning()).{.if
1185a0 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 4c .($throwException).{.throw.new.L
1185c0 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 43 61 6e 20 6e 6f 74 20 73 65 6e 64 20 73 69 67 6e ogicException('Can.not.send.sign
1185e0 61 6c 20 6f 6e 20 61 20 6e 6f 6e 20 72 75 6e 6e 69 6e 67 20 70 72 6f 63 65 73 73 2e 27 29 3b 0a al.on.a.non.running.process.');.
118600 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 27 5c 5c 27 20 3d 3d 3d }..return.false;.}..if.('\\'.===
118620 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 65 78 65 63 28 73 70 72 .DIRECTORY_SEPARATOR).{.exec(spr
118640 69 6e 74 66 28 27 74 61 73 6b 6b 69 6c 6c 20 2f 46 20 2f 54 20 2f 50 49 44 20 25 64 20 32 3e 26 intf('taskkill./F./T./PID.%d.2>&
118660 31 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 50 69 64 28 29 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 1',.$this->getPid()),.$output,.$
118680 65 78 69 74 43 6f 64 65 29 3b 0a 69 66 20 28 24 65 78 69 74 43 6f 64 65 20 26 26 20 24 74 68 69 exitCode);.if.($exitCode.&&.$thi
1186a0 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 29 20 7b 0a 69 66 20 28 24 74 68 72 6f 77 45 78 63 65 s->isRunning()).{.if.($throwExce
1186c0 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 65 70 74 ption).{.throw.new.RuntimeExcept
1186e0 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 61 62 6c 65 20 74 6f 20 6b 69 6c 6c 20 74 68 65 20 ion(sprintf('Unable.to.kill.the.
118700 70 72 6f 63 65 73 73 20 28 25 73 29 2e 27 2c 20 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 24 6f 75 process.(%s).',.implode('.',.$ou
118720 74 70 75 74 29 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 20 65 6c tput)));.}..return.false;.}.}.el
118740 73 65 20 7b 0a 69 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 se.{.if.(!$this->enhanceSigchild
118760 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 7c 7c 20 21 24 74 68 69 73 2d 3e 69 73 53 69 67 63 68 Compatibility.||.!$this->isSigch
118780 69 6c 64 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 24 6f 6b 20 3d 20 40 70 72 6f 63 5f 74 65 72 6d ildEnabled()).{.$ok.=.@proc_term
1187a0 69 6e 61 74 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2c 20 24 73 69 67 6e 61 6c 29 3b 0a inate($this->process,.$signal);.
1187c0 7d 20 65 6c 73 65 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 6f 73 69 78 }.elseif.(function_exists('posix
1187e0 5f 6b 69 6c 6c 27 29 29 20 7b 0a 24 6f 6b 20 3d 20 40 70 6f 73 69 78 5f 6b 69 6c 6c 28 24 74 68 _kill')).{.$ok.=.@posix_kill($th
118800 69 73 2d 3e 67 65 74 50 69 64 28 29 2c 20 24 73 69 67 6e 61 6c 29 3b 0a 7d 20 65 6c 73 65 69 66 is->getPid(),.$signal);.}.elseif
118820 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 20 .($ok.=.proc_open(sprintf('kill.
118840 2d 25 64 20 25 64 27 2c 20 24 73 69 67 6e 61 6c 2c 20 24 74 68 69 73 2d 3e 67 65 74 50 69 64 28 -%d.%d',.$signal,.$this->getPid(
118860 29 29 2c 20 61 72 72 61 79 28 32 20 3d 3e 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 )),.array(2.=>.array('pipe',.'w'
118880 29 29 2c 20 24 70 69 70 65 73 29 29 20 7b 0a 24 6f 6b 20 3d 20 66 61 6c 73 65 20 3d 3d 3d 20 66 )),.$pipes)).{.$ok.=.false.===.f
1188a0 67 65 74 73 28 24 70 69 70 65 73 5b 32 5d 29 3b 0a 7d 0a 69 66 20 28 21 24 6f 6b 29 20 7b 0a 69 gets($pipes[2]);.}.if.(!$ok).{.i
1188c0 66 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 f.($throwException).{.throw.new.
1188e0 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 45 72 72 6f 72 20 RuntimeException(sprintf('Error.
118900 77 68 69 6c 65 20 73 65 6e 64 69 6e 67 20 73 69 67 6e 61 6c 20 60 25 73 60 2e 27 2c 20 24 73 69 while.sending.signal.`%s`.',.$si
118920 67 6e 61 6c 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 24 74 gnal));.}..return.false;.}.}..$t
118940 68 69 73 2d 3e 6c 61 74 65 73 74 53 69 67 6e 61 6c 20 3d 20 28 69 6e 74 29 20 24 73 69 67 6e 61 his->latestSignal.=.(int).$signa
118960 6c 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 73 69 67 6e 61 6c l;.$this->fallbackStatus['signal
118980 65 64 27 5d 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 53 74 61 74 ed'].=.true;.$this->fallbackStat
1189a0 75 73 5b 27 65 78 69 74 63 6f 64 65 27 5d 20 3d 20 2d 31 3b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c us['exitcode'].=.-1;.$this->fall
1189c0 62 61 63 6b 53 74 61 74 75 73 5b 27 74 65 72 6d 73 69 67 27 5d 20 3d 20 24 74 68 69 73 2d 3e 6c backStatus['termsig'].=.$this->l
1189e0 61 74 65 73 74 53 69 67 6e 61 6c 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a atestSignal;..return.true;.}....
118a00 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 71 75 69 72 65 50 72 6f .....private.function.requirePro
118a20 63 65 73 73 49 73 53 74 61 72 74 65 64 28 24 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 29 0a 7b 0a 69 cessIsStarted($functionName).{.i
118a40 66 20 28 21 24 74 68 69 73 2d 3e 69 73 53 74 61 72 74 65 64 28 29 29 20 7b 0a 74 68 72 6f 77 20 f.(!$this->isStarted()).{.throw.
118a60 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 50 72 6f 63 new.LogicException(sprintf('Proc
118a80 65 73 73 20 6d 75 73 74 20 62 65 20 73 74 61 72 74 65 64 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 ess.must.be.started.before.calli
118aa0 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 0a 0a ng.%s.',.$functionName));.}.}...
118ac0 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 71 75 69 72 65 50 72 ......private.function.requirePr
118ae0 6f 63 65 73 73 49 73 54 65 72 6d 69 6e 61 74 65 64 28 24 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 29 ocessIsTerminated($functionName)
118b00 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 54 65 72 6d 69 6e 61 74 65 64 28 29 29 20 7b .{.if.(!$this->isTerminated()).{
118b20 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 74 .throw.new.LogicException(sprint
118b40 66 28 27 50 72 6f 63 65 73 73 20 6d 75 73 74 20 62 65 20 74 65 72 6d 69 6e 61 74 65 64 20 62 65 f('Process.must.be.terminated.be
118b60 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 25 73 2e 27 2c 20 24 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 fore.calling.%s.',.$functionName
118b80 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 70 ));.}.}.}.<?php...........namesp
118ba0 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 0a ace.Symfony\Component\Process;..
118bc0 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
118be0 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 74 69 6f 6e ception\InvalidArgumentException
118c00 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 5c ;.use.Symfony\Component\Process\
118c20 45 78 63 65 70 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 Exception\LogicException;.......
118c40 63 6c 61 73 73 20 50 72 6f 63 65 73 73 42 75 69 6c 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 class.ProcessBuilder.{.private.$
118c60 61 72 67 75 6d 65 6e 74 73 3b 0a 70 72 69 76 61 74 65 20 24 63 77 64 3b 0a 70 72 69 76 61 74 65 arguments;.private.$cwd;.private
118c80 20 24 65 6e 76 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 70 75 74 3b .$env.=.array();.private.$input;
118ca0 0a 70 72 69 76 61 74 65 20 24 74 69 6d 65 6f 75 74 20 3d 20 36 30 3b 0a 70 72 69 76 61 74 65 20 .private.$timeout.=.60;.private.
118cc0 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 68 $options.=.array();.private.$inh
118ce0 65 72 69 74 45 6e 76 20 3d 20 74 72 75 65 3b 0a 70 72 69 76 61 74 65 20 24 70 72 65 66 69 78 20 eritEnv.=.true;.private.$prefix.
118d00 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 44 69 73 61 62 6c =.array();.private.$outputDisabl
118d20 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f ed.=.false;.......public.functio
118d40 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 61 72 67 75 6d 65 6e 74 73 20 3d n.__construct(array.$arguments.=
118d60 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 20 3d 20 24 .array()).{.$this->arguments.=.$
118d80 61 72 67 75 6d 65 6e 74 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 arguments;.}.........public.stat
118da0 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 28 61 72 72 61 79 20 24 61 72 67 75 6d 65 ic.function.create(array.$argume
118dc0 6e 74 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 73 74 61 74 nts.=.array()).{.return.new.stat
118de0 69 63 28 24 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 ic($arguments);.}.........public
118e00 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 28 24 61 72 67 75 6d 65 6e 74 29 0a 7b 0a 24 74 68 69 73 .function.add($argument).{.$this
118e20 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 5d 20 3d 20 24 61 72 67 75 6d 65 6e 74 3b 0a 0a 72 65 74 75 ->arguments[].=.$argument;..retu
118e40 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 6e rn.$this;.}...........public.fun
118e60 63 74 69 6f 6e 20 73 65 74 50 72 65 66 69 78 28 24 70 72 65 66 69 78 29 0a 7b 0a 24 74 68 69 73 ction.setPrefix($prefix).{.$this
118e80 2d 3e 70 72 65 66 69 78 20 3d 20 69 73 5f 61 72 72 61 79 28 24 70 72 65 66 69 78 29 20 3f 20 24 ->prefix.=.is_array($prefix).?.$
118ea0 70 72 65 66 69 78 20 3a 20 61 72 72 61 79 28 24 70 72 65 66 69 78 29 3b 0a 0a 72 65 74 75 72 6e prefix.:.array($prefix);..return
118ec0 20 24 74 68 69 73 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 .$this;.}............public.func
118ee0 74 69 6f 6e 20 73 65 74 41 72 67 75 6d 65 6e 74 73 28 61 72 72 61 79 20 24 61 72 67 75 6d 65 6e tion.setArguments(array.$argumen
118f00 74 73 29 0a 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 ts).{.$this->arguments.=.$argume
118f20 6e 74 73 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 nts;..return.$this;.}.........pu
118f40 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 57 6f 72 6b 69 6e 67 44 69 72 65 63 74 6f 72 blic.function.setWorkingDirector
118f60 79 28 24 63 77 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 77 64 20 3d 20 24 63 77 64 3b 0a 0a 72 65 y($cwd).{.$this->cwd.=.$cwd;..re
118f80 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
118fa0 63 74 69 6f 6e 20 69 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 ction.inheritEnvironmentVariable
118fc0 73 28 24 69 6e 68 65 72 69 74 45 6e 76 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 s($inheritEnv.=.true).{.$this->i
118fe0 6e 68 65 72 69 74 45 6e 76 20 3d 20 24 69 6e 68 65 72 69 74 45 6e 76 3b 0a 0a 72 65 74 75 72 6e nheritEnv.=.$inheritEnv;..return
119000 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 20 66 75 6e .$this;.}.............public.fun
119020 63 74 69 6f 6e 20 73 65 74 45 6e 76 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 24 74 ction.setEnv($name,.$value).{.$t
119040 68 69 73 2d 3e 65 6e 76 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 0a 72 65 74 75 72 his->env[$name].=.$value;..retur
119060 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 20 66 75 n.$this;.}.............public.fu
119080 6e 63 74 69 6f 6e 20 61 64 64 45 6e 76 69 72 6f 6e 6d 65 6e 74 56 61 72 69 61 62 6c 65 73 28 61 nction.addEnvironmentVariables(a
1190a0 72 72 61 79 20 24 76 61 72 69 61 62 6c 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6e 76 20 3d 20 rray.$variables).{.$this->env.=.
1190c0 61 72 72 61 79 5f 72 65 70 6c 61 63 65 28 24 74 68 69 73 2d 3e 65 6e 76 2c 20 24 76 61 72 69 61 array_replace($this->env,.$varia
1190e0 62 6c 65 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 bles);..return.$this;.}.........
119100 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 75 74 28 24 69 6e ....public.function.setInput($in
119120 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 50 72 6f 63 65 73 73 55 74 69 put).{.$this->input.=.ProcessUti
119140 6c 73 3a 3a 76 61 6c 69 64 61 74 65 49 6e 70 75 74 28 73 70 72 69 6e 74 66 28 27 25 73 3a 3a 25 ls::validateInput(sprintf('%s::%
119160 73 27 2c 20 5f 5f 43 4c 41 53 53 5f 5f 2c 20 5f 5f 46 55 4e 43 54 49 4f 4e 5f 5f 29 2c 20 24 69 s',.__CLASS__,.__FUNCTION__),.$i
119180 6e 70 75 74 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 nput);..return.$this;.}.........
1191a0 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 69 6d 65 6f 75 74 28 24 ....public.function.setTimeout($
1191c0 74 69 6d 65 6f 75 74 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 69 6d 65 6f 75 74 timeout).{.if.(null.===.$timeout
1191e0 29 20 7b 0a 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 ).{.$this->timeout.=.null;..retu
119200 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 24 74 69 6d 65 6f 75 74 20 3d 20 28 66 6c 6f 61 74 29 20 rn.$this;.}..$timeout.=.(float).
119220 24 74 69 6d 65 6f 75 74 3b 0a 0a 69 66 20 28 24 74 69 6d 65 6f 75 74 20 3c 20 30 29 20 7b 0a 74 $timeout;..if.($timeout.<.0).{.t
119240 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
119260 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 65 20 61 20 76 n('The.timeout.value.must.be.a.v
119280 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 6f 61 74 20 6e alid.positive.integer.or.float.n
1192a0 75 6d 62 65 72 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 20 3d 20 24 74 umber.');.}..$this->timeout.=.$t
1192c0 69 6d 65 6f 75 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 0a 0a imeout;..return.$this;.}........
1192e0 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 28 24 6e 61 6d ..public.function.setOption($nam
119300 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d e,.$value).{.$this->options[$nam
119320 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 0a 0a 0a e].=.$value;..return.$this;.}...
119340 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 4f 75 74 70 75 ....public.function.disableOutpu
119360 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 44 69 73 61 62 6c 65 64 20 3d 20 74 72 t().{.$this->outputDisabled.=.tr
119380 75 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 ue;..return.$this;.}.......publi
1193a0 63 20 66 75 6e 63 74 69 6f 6e 20 65 6e 61 62 6c 65 4f 75 74 70 75 74 28 29 0a 7b 0a 24 74 68 69 c.function.enableOutput().{.$thi
1193c0 73 2d 3e 6f 75 74 70 75 74 44 69 73 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 72 65 74 75 s->outputDisabled.=.false;..retu
1193e0 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
119400 69 6f 6e 20 67 65 74 50 72 6f 63 65 73 73 28 29 0a 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 63 6f 75 ion.getProcess().{.if.(0.===.cou
119420 6e 74 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 29 20 26 26 20 30 20 3d 3d 3d 20 63 6f 75 6e 74 nt($this->prefix).&&.0.===.count
119440 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 ($this->arguments)).{.throw.new.
119460 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 61 64 64 28 29 20 63 LogicException('You.must.add().c
119480 6f 6d 6d 61 6e 64 20 61 72 67 75 6d 65 6e 74 73 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 ommand.arguments.before.calling.
1194a0 67 65 74 50 72 6f 63 65 73 73 28 29 2e 27 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 24 getProcess().');.}..$options.=.$
1194c0 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 3b 0a 0a 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 this->options;..$arguments.=.arr
1194e0 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 2c 20 24 74 68 69 73 2d 3e 61 ay_merge($this->prefix,.$this->a
119500 72 67 75 6d 65 6e 74 73 29 3b 0a 24 73 63 72 69 70 74 20 3d 20 69 6d 70 6c 6f 64 65 28 27 20 27 rguments);.$script.=.implode('.'
119520 2c 20 61 72 72 61 79 5f 6d 61 70 28 61 72 72 61 79 28 5f 5f 4e 41 4d 45 53 50 41 43 45 5f 5f 2e ,.array_map(array(__NAMESPACE__.
119540 27 5c 5c 50 72 6f 63 65 73 73 55 74 69 6c 73 27 2c 20 27 65 73 63 61 70 65 41 72 67 75 6d 65 6e '\\ProcessUtils',.'escapeArgumen
119560 74 27 29 2c 20 24 61 72 67 75 6d 65 6e 74 73 29 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 t'),.$arguments));..if.($this->i
119580 6e 68 65 72 69 74 45 6e 76 29 20 7b 0a 0a 20 24 65 6e 76 20 3d 20 61 72 72 61 79 5f 72 65 70 6c nheritEnv).{...$env.=.array_repl
1195a0 61 63 65 28 24 5f 45 4e 56 2c 20 24 5f 53 45 52 56 45 52 2c 20 24 74 68 69 73 2d 3e 65 6e 76 29 ace($_ENV,.$_SERVER,.$this->env)
1195c0 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 6e 76 20 3d 20 24 74 68 69 73 2d 3e 65 6e 76 3b 0a 7d 0a ;.}.else.{.$env.=.$this->env;.}.
1195e0 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 73 63 72 69 70 74 2c .$process.=.new.Process($script,
119600 20 24 74 68 69 73 2d 3e 63 77 64 2c 20 24 65 6e 76 2c 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c .$this->cwd,.$env,.$this->input,
119620 20 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 .$this->timeout,.$options);..if.
119640 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 44 69 73 61 62 6c 65 64 29 20 7b 0a 24 70 72 6f 63 65 ($this->outputDisabled).{.$proce
119660 73 73 2d 3e 64 69 73 61 62 6c 65 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 ss->disableOutput();.}..return.$
119680 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 0a 0a 0a 0a 6e 61 6d process;.}.}.<?php...........nam
1196a0 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 72 6f 63 65 73 73 espace.Symfony\Component\Process
1196c0 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 50 72 6f 63 65 73 73 ;..use.Symfony\Component\Process
1196e0 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 74 \Exception\InvalidArgumentExcept
119700 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 55 74 69 6c 73 0a ion;.........class.ProcessUtils.
119720 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 {....private.function.__construc
119740 74 28 29 0a 7b 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 t().{.}.........public.static.fu
119760 6e 63 74 69 6f 6e 20 65 73 63 61 70 65 41 72 67 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 nction.escapeArgument($argument)
119780 0a 7b 0a 0a 20 0a 20 0a 20 0a 20 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 44 49 52 45 43 54 4f 52 .{.........if.('\\'.===.DIRECTOR
1197a0 59 5f 53 45 50 41 52 41 54 4f 52 29 20 7b 0a 69 66 20 28 27 27 20 3d 3d 3d 20 24 61 72 67 75 6d Y_SEPARATOR).{.if.(''.===.$argum
1197c0 65 6e 74 29 20 7b 0a 72 65 74 75 72 6e 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 61 72 ent).{.return.escapeshellarg($ar
1197e0 67 75 6d 65 6e 74 29 3b 0a 7d 0a 0a 24 65 73 63 61 70 65 64 41 72 67 75 6d 65 6e 74 20 3d 20 27 gument);.}..$escapedArgument.=.'
119800 27 3b 0a 24 71 75 6f 74 65 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 70 72 65 67 ';.$quote.=.false;.foreach.(preg
119820 5f 73 70 6c 69 74 28 27 2f 28 22 29 2f 27 2c 20 24 61 72 67 75 6d 65 6e 74 2c 20 2d 31 2c 20 50 _split('/(")/',.$argument,.-1,.P
119840 52 45 47 5f 53 50 4c 49 54 5f 4e 4f 5f 45 4d 50 54 59 20 7c 20 50 52 45 47 5f 53 50 4c 49 54 5f REG_SPLIT_NO_EMPTY.|.PREG_SPLIT_
119860 44 45 4c 49 4d 5f 43 41 50 54 55 52 45 29 20 61 73 20 24 70 61 72 74 29 20 7b 0a 69 66 20 28 27 DELIM_CAPTURE).as.$part).{.if.('
119880 22 27 20 3d 3d 3d 20 24 70 61 72 74 29 20 7b 0a 24 65 73 63 61 70 65 64 41 72 67 75 6d 65 6e 74 "'.===.$part).{.$escapedArgument
1198a0 20 2e 3d 20 27 5c 5c 22 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 69 73 53 75 72 ..=.'\\"';.}.elseif.(self::isSur
1198c0 72 6f 75 6e 64 65 64 42 79 28 24 70 61 72 74 2c 20 27 25 27 29 29 20 7b 0a 0a 20 24 65 73 63 61 roundedBy($part,.'%')).{...$esca
1198e0 70 65 64 41 72 67 75 6d 65 6e 74 20 2e 3d 20 27 5e 25 22 27 2e 73 75 62 73 74 72 28 24 70 61 72 pedArgument..=.'^%"'.substr($par
119900 74 2c 20 31 2c 20 2d 31 29 2e 27 22 5e 25 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 69 66 20 28 t,.1,.-1).'"^%';.}.else.{...if.(
119920 27 5c 5c 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 70 61 72 74 2c 20 2d 31 29 29 20 7b 0a 24 70 '\\'.===.substr($part,.-1)).{.$p
119940 61 72 74 20 2e 3d 20 27 5c 5c 27 3b 0a 7d 0a 24 71 75 6f 74 65 20 3d 20 74 72 75 65 3b 0a 24 65 art..=.'\\';.}.$quote.=.true;.$e
119960 73 63 61 70 65 64 41 72 67 75 6d 65 6e 74 20 2e 3d 20 24 70 61 72 74 3b 0a 7d 0a 7d 0a 69 66 20 scapedArgument..=.$part;.}.}.if.
119980 28 24 71 75 6f 74 65 29 20 7b 0a 24 65 73 63 61 70 65 64 41 72 67 75 6d 65 6e 74 20 3d 20 27 22 ($quote).{.$escapedArgument.=.'"
1199a0 27 2e 24 65 73 63 61 70 65 64 41 72 67 75 6d 65 6e 74 2e 27 22 27 3b 0a 7d 0a 0a 72 65 74 75 72 '.$escapedArgument.'"';.}..retur
1199c0 6e 20 24 65 73 63 61 70 65 64 41 72 67 75 6d 65 6e 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 65 73 n.$escapedArgument;.}..return.es
1199e0 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 0a 0a 0a 0a 0a 0a capeshellarg($argument);.}......
119a00 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 76 ........public.static.function.v
119a20 61 6c 69 64 61 74 65 49 6e 70 75 74 28 24 63 61 6c 6c 65 72 2c 20 24 69 6e 70 75 74 29 0a 7b 0a alidateInput($caller,.$input).{.
119a40 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 69 6e 70 75 74 29 20 7b 0a 69 66 20 28 69 73 5f 72 65 if.(null.!==.$input).{.if.(is_re
119a60 73 6f 75 72 63 65 28 24 69 6e 70 75 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 69 6e 70 75 74 3b source($input)).{.return.$input;
119a80 0a 7d 0a 69 66 20 28 69 73 5f 73 63 61 6c 61 72 28 24 69 6e 70 75 74 29 29 20 7b 0a 72 65 74 75 .}.if.(is_scalar($input)).{.retu
119aa0 72 6e 20 28 73 74 72 69 6e 67 29 20 24 69 6e 70 75 74 3b 0a 7d 0a 0a 20 69 66 20 28 69 73 5f 6f rn.(string).$input;.}...if.(is_o
119ac0 62 6a 65 63 74 28 24 69 6e 70 75 74 29 20 26 26 20 6d 65 74 68 6f 64 5f 65 78 69 73 74 73 28 24 bject($input).&&.method_exists($
119ae0 69 6e 70 75 74 2c 20 27 5f 5f 74 6f 53 74 72 69 6e 67 27 29 29 20 7b 0a 40 74 72 69 67 67 65 72 input,.'__toString')).{.@trigger
119b00 5f 65 72 72 6f 72 28 27 50 61 73 73 69 6e 67 20 61 6e 20 6f 62 6a 65 63 74 20 61 73 20 61 6e 20 _error('Passing.an.object.as.an.
119b20 69 6e 70 75 74 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 input.is.deprecated.since.versio
119b40 6e 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 n.2.5.and.will.be.removed.in.3.0
119b60 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 6e 20 .',.E_USER_DEPRECATED);..return.
119b80 28 73 74 72 69 6e 67 29 20 24 69 6e 70 75 74 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e (string).$input;.}..throw.new.In
119ba0 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('
119bc0 25 73 20 6f 6e 6c 79 20 61 63 63 65 70 74 73 20 73 74 72 69 6e 67 73 20 6f 72 20 73 74 72 65 61 %s.only.accepts.strings.or.strea
119be0 6d 20 72 65 73 6f 75 72 63 65 73 2e 27 2c 20 24 63 61 6c 6c 65 72 29 29 3b 0a 7d 0a 0a 72 65 74 m.resources.',.$caller));.}..ret
119c00 75 72 6e 20 24 69 6e 70 75 74 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 66 75 urn.$input;.}..private.static.fu
119c20 6e 63 74 69 6f 6e 20 69 73 53 75 72 72 6f 75 6e 64 65 64 42 79 28 24 61 72 67 2c 20 24 63 68 61 nction.isSurroundedBy($arg,.$cha
119c40 72 29 0a 7b 0a 72 65 74 75 72 6e 20 32 20 3c 20 73 74 72 6c 65 6e 28 24 61 72 67 29 20 26 26 20 r).{.return.2.<.strlen($arg).&&.
119c60 24 63 68 61 72 20 3d 3d 3d 20 24 61 72 67 5b 30 5d 20 26 26 20 24 63 68 61 72 20 3d 3d 3d 20 24 $char.===.$arg[0].&&.$char.===.$
119c80 61 72 67 5b 73 74 72 6c 65 6e 28 24 61 72 67 29 20 2d 20 31 5d 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 arg[strlen($arg).-.1];.}.}.Copyr
119ca0 69 67 68 74 20 28 63 29 20 32 30 31 31 20 4a 6f 72 64 69 20 42 6f 67 67 69 61 6e 6f 0a 0a 50 65 ight.(c).2011.Jordi.Boggiano..Pe
119cc0 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 72 65 65 rmission.is.hereby.granted,.free
119ce0 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 61 69 6e .of.charge,.to.any.person.obtain
119d00 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 6e 64 20 ing.a.copy.of.this.software.and.
119d20 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 73 20 28 associated.documentation.files.(
119d40 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 68 65 20 the."Software"),.to.deal.in.the.
119d60 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 20 69 6e Software.without.restriction,.in
119d80 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 65 20 72 cluding.without.limitation.the.r
119da0 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 65 72 67 ights.to.use,.copy,.modify,.merg
119dc0 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 63 65 6e e,.publish,.distribute,.sublicen
119de0 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 20 53 6f se,.and/or.sell.copies.of.the.So
119e00 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 20 74 6f ftware,.and.to.permit.persons.to
119e20 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 65 64 0a .whom.the.Software.is.furnished.
119e40 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 6f 77 69 to.do.so,.subject.to.the.followi
119e60 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 79 72 69 ng.conditions:..The.above.copyri
119e80 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 6e 20 6e ght.notice.and.this.permission.n
119ea0 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 6c 0a 63 otice.shall.be.included.in.all.c
119ec0 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 20 6f 66 opies.or.substantial.portions.of
119ee0 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 49 53 20 .the.Software...THE.SOFTWARE.IS.
119f00 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 52 41 4e PROVIDED."AS.IS",.WITHOUT.WARRAN
119f20 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 50 4c 49 TY.OF.ANY.KIND,.EXPRESS.OR.IMPLI
119f40 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 20 54 4f ED,.INCLUDING.BUT.NOT.LIMITED.TO
119f60 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 49 4c 49 .THE.WARRANTIES.OF.MERCHANTABILI
119f80 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 50 55 52 TY,.FITNESS.FOR.A.PARTICULAR.PUR
119fa0 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 4e 4f 20 POSE.AND.NONINFRINGEMENT..IN.NO.
119fc0 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 50 59 52 EVENT.SHALL.THE.AUTHORS.OR.COPYR
119fe0 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 59 20 43 IGHT.HOLDERS.BE.LIABLE.FOR.ANY.C
11a000 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 49 54 59 LAIM,.DAMAGES.OR.OTHER.LIABILITY
11a020 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 54 52 41 ,.WHETHER.IN.AN.ACTION.OF.CONTRA
11a040 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 47 20 46 CT,.TORT.OR.OTHERWISE,.ARISING.F
11a060 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 57 49 54 ROM,.OUT.OF.OR.IN.CONNECTION.WIT
11a080 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 4f 54 48 H.THE.SOFTWARE.OR.THE.USE.OR.OTH
11a0a0 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 3c 3f 70 ER.DEALINGS.IN.THE.SOFTWARE..<?p
11a0c0 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
11a0e0 4c 69 6e 74 3b 0a 0a 63 6c 61 73 73 20 44 75 70 6c 69 63 61 74 65 4b 65 79 45 78 63 65 70 74 69 Lint;..class.DuplicateKeyExcepti
11a100 6f 6e 20 65 78 74 65 6e 64 73 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 75 on.extends.ParsingException.{.pu
11a120 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 65 73 73 61 blic.function.__construct($messa
11a140 67 65 2c 20 24 6b 65 79 2c 20 61 72 72 61 79 20 24 64 65 74 61 69 6c 73 20 3d 20 61 72 72 61 79 ge,.$key,.array.$details.=.array
11a160 28 29 29 0a 7b 0a 24 64 65 74 61 69 6c 73 5b 27 6b 65 79 27 5d 20 3d 20 24 6b 65 79 3b 0a 70 61 ()).{.$details['key'].=.$key;.pa
11a180 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 20 24 64 65 74 rent::__construct($message,.$det
11a1a0 61 69 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 65 74 4b 65 79 ails);.}..public.function.getKey
11a1c0 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 74 61 69 6c 73 5b 27 6b 65 79 27 ().{.return.$this->details['key'
11a1e0 5d 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 ];.}.}.<?php...........namespace
11a200 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 3b 0a 75 73 65 20 73 74 64 43 6c 61 73 73 3b 0a 0a 0a .Seld\JsonLint;.use.stdClass;...
11a220 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 50 61 72 73 65 72 0a 7b 0a 63 ............class.JsonParser.{.c
11a240 6f 6e 73 74 20 44 45 54 45 43 54 5f 4b 45 59 5f 43 4f 4e 46 4c 49 43 54 53 20 3d 20 31 3b 0a 63 onst.DETECT_KEY_CONFLICTS.=.1;.c
11a260 6f 6e 73 74 20 41 4c 4c 4f 57 5f 44 55 50 4c 49 43 41 54 45 5f 4b 45 59 53 20 3d 20 32 3b 0a 63 onst.ALLOW_DUPLICATE_KEYS.=.2;.c
11a280 6f 6e 73 74 20 50 41 52 53 45 5f 54 4f 5f 41 53 53 4f 43 20 3d 20 34 3b 0a 0a 70 72 69 76 61 74 onst.PARSE_TO_ASSOC.=.4;..privat
11a2a0 65 20 24 6c 65 78 65 72 3b 0a 0a 70 72 69 76 61 74 65 20 24 66 6c 61 67 73 3b 0a 70 72 69 76 61 e.$lexer;..private.$flags;.priva
11a2c0 74 65 20 24 73 74 61 63 6b 3b 0a 70 72 69 76 61 74 65 20 24 76 73 74 61 63 6b 3b 20 0a 20 70 72 te.$stack;.private.$vstack;...pr
11a2e0 69 76 61 74 65 20 24 6c 73 74 61 63 6b 3b 20 0a 0a 70 72 69 76 61 74 65 20 24 73 79 6d 62 6f 6c ivate.$lstack;...private.$symbol
11a300 73 20 3d 20 61 72 72 61 79 28 0a 27 65 72 72 6f 72 27 20 3d 3e 20 32 2c 0a 27 4a 53 4f 4e 53 74 s.=.array(.'error'.=>.2,.'JSONSt
11a320 72 69 6e 67 27 20 3d 3e 20 33 2c 0a 27 53 54 52 49 4e 47 27 20 3d 3e 20 34 2c 0a 27 4a 53 4f 4e ring'.=>.3,.'STRING'.=>.4,.'JSON
11a340 4e 75 6d 62 65 72 27 20 3d 3e 20 35 2c 0a 27 4e 55 4d 42 45 52 27 20 3d 3e 20 36 2c 0a 27 4a 53 Number'.=>.5,.'NUMBER'.=>.6,.'JS
11a360 4f 4e 4e 75 6c 6c 4c 69 74 65 72 61 6c 27 20 3d 3e 20 37 2c 0a 27 4e 55 4c 4c 27 20 3d 3e 20 38 ONNullLiteral'.=>.7,.'NULL'.=>.8
11a380 2c 0a 27 4a 53 4f 4e 42 6f 6f 6c 65 61 6e 4c 69 74 65 72 61 6c 27 20 3d 3e 20 39 2c 0a 27 54 52 ,.'JSONBooleanLiteral'.=>.9,.'TR
11a3a0 55 45 27 20 3d 3e 20 31 30 2c 0a 27 46 41 4c 53 45 27 20 3d 3e 20 31 31 2c 0a 27 4a 53 4f 4e 54 UE'.=>.10,.'FALSE'.=>.11,.'JSONT
11a3c0 65 78 74 27 20 3d 3e 20 31 32 2c 0a 27 4a 53 4f 4e 56 61 6c 75 65 27 20 3d 3e 20 31 33 2c 0a 27 ext'.=>.12,.'JSONValue'.=>.13,.'
11a3e0 45 4f 46 27 20 3d 3e 20 31 34 2c 0a 27 4a 53 4f 4e 4f 62 6a 65 63 74 27 20 3d 3e 20 31 35 2c 0a EOF'.=>.14,.'JSONObject'.=>.15,.
11a400 27 4a 53 4f 4e 41 72 72 61 79 27 20 3d 3e 20 31 36 2c 0a 27 7b 27 20 3d 3e 20 31 37 2c 0a 27 7d 'JSONArray'.=>.16,.'{'.=>.17,.'}
11a420 27 20 3d 3e 20 31 38 2c 0a 27 4a 53 4f 4e 4d 65 6d 62 65 72 4c 69 73 74 27 20 3d 3e 20 31 39 2c '.=>.18,.'JSONMemberList'.=>.19,
11a440 0a 27 4a 53 4f 4e 4d 65 6d 62 65 72 27 20 3d 3e 20 32 30 2c 0a 27 3a 27 20 3d 3e 20 32 31 2c 0a .'JSONMember'.=>.20,.':'.=>.21,.
11a460 27 2c 27 20 3d 3e 20 32 32 2c 0a 27 5b 27 20 3d 3e 20 32 33 2c 0a 27 5d 27 20 3d 3e 20 32 34 2c ','.=>.22,.'['.=>.23,.']'.=>.24,
11a480 0a 27 4a 53 4f 4e 45 6c 65 6d 65 6e 74 4c 69 73 74 27 20 3d 3e 20 32 35 2c 0a 27 24 61 63 63 65 .'JSONElementList'.=>.25,.'$acce
11a4a0 70 74 27 20 3d 3e 20 30 2c 0a 27 24 65 6e 64 27 20 3d 3e 20 31 2c 0a 29 3b 0a 0a 70 72 69 76 61 pt'.=>.0,.'$end'.=>.1,.);..priva
11a4c0 74 65 20 24 74 65 72 6d 69 6e 61 6c 73 5f 20 3d 20 61 72 72 61 79 28 0a 32 20 3d 3e 20 22 65 72 te.$terminals_.=.array(.2.=>."er
11a4e0 72 6f 72 22 2c 0a 34 20 3d 3e 20 22 53 54 52 49 4e 47 22 2c 0a 36 20 3d 3e 20 22 4e 55 4d 42 45 ror",.4.=>."STRING",.6.=>."NUMBE
11a500 52 22 2c 0a 38 20 3d 3e 20 22 4e 55 4c 4c 22 2c 0a 31 30 20 3d 3e 20 22 54 52 55 45 22 2c 0a 31 R",.8.=>."NULL",.10.=>."TRUE",.1
11a520 31 20 3d 3e 20 22 46 41 4c 53 45 22 2c 0a 31 34 20 3d 3e 20 22 45 4f 46 22 2c 0a 31 37 20 3d 3e 1.=>."FALSE",.14.=>."EOF",.17.=>
11a540 20 22 7b 22 2c 0a 31 38 20 3d 3e 20 22 7d 22 2c 0a 32 31 20 3d 3e 20 22 3a 22 2c 0a 32 32 20 3d ."{",.18.=>."}",.21.=>.":",.22.=
11a560 3e 20 22 2c 22 2c 0a 32 33 20 3d 3e 20 22 5b 22 2c 0a 32 34 20 3d 3e 20 22 5d 22 2c 0a 29 3b 0a >.",",.23.=>."[",.24.=>."]",.);.
11a580 0a 70 72 69 76 61 74 65 20 24 70 72 6f 64 75 63 74 69 6f 6e 73 5f 20 3d 20 61 72 72 61 79 28 0a .private.$productions_.=.array(.
11a5a0 30 2c 0a 61 72 72 61 79 28 33 2c 20 31 29 2c 0a 61 72 72 61 79 28 35 2c 20 31 29 2c 0a 61 72 72 0,.array(3,.1),.array(5,.1),.arr
11a5c0 61 79 28 37 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 39 2c 20 ay(7,.1),.array(9,.1),.array(9,.
11a5e0 31 29 2c 0a 61 72 72 61 79 28 31 32 2c 20 32 29 2c 0a 61 72 72 61 79 28 31 33 2c 20 31 29 2c 0a 1),.array(12,.2),.array(13,.1),.
11a600 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
11a620 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 79 28 31 33 y(13,.1),.array(13,.1),.array(13
11a640 2c 20 31 29 2c 0a 61 72 72 61 79 28 31 35 2c 20 32 29 2c 0a 61 72 72 61 79 28 31 35 2c 20 33 29 ,.1),.array(15,.2),.array(15,.3)
11a660 2c 0a 61 72 72 61 79 28 32 30 2c 20 33 29 2c 0a 61 72 72 61 79 28 31 39 2c 20 31 29 2c 0a 61 72 ,.array(20,.3),.array(19,.1),.ar
11a680 72 61 79 28 31 39 2c 20 33 29 2c 0a 61 72 72 61 79 28 31 36 2c 20 32 29 2c 0a 61 72 72 61 79 28 ray(19,.3),.array(16,.2),.array(
11a6a0 31 36 2c 20 33 29 2c 0a 61 72 72 61 79 28 32 35 2c 20 31 29 2c 0a 61 72 72 61 79 28 32 35 2c 20 16,.3),.array(25,.1),.array(25,.
11a6c0 33 29 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 74 61 62 6c 65 20 3d 20 61 72 72 61 79 28 61 72 3).);..private.$table.=.array(ar
11a6e0 72 61 79 28 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 ray(3.=>.5,.4.=>.array(1,12),.5.
11a700 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,.
11a720 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
11a740 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
11a760 32 20 3d 3e 20 31 2c 20 31 33 20 3d 3e 20 32 2c 20 31 35 20 3d 3e 20 37 2c 20 31 36 20 3d 3e 20 2.=>.1,.13.=>.2,.15.=>.7,.16.=>.
11a780 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 3e 20 61 72 72 61 8,.17.=>.array(1,14),.23.=>.arra
11a7a0 79 28 31 2c 31 35 29 29 2c 20 61 72 72 61 79 28 20 31 20 3d 3e 20 61 72 72 61 79 28 33 29 29 2c y(1,15)),.array(.1.=>.array(3)),
11a7c0 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 36 29 29 2c 20 61 72 72 61 .array(.14.=>.array(1,16)),.arra
11a7e0 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 37 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 y(.14.=>.array(2,7),.18.=>.array
11a800 28 32 2c 37 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 37 29 2c 20 32 34 20 3d 3e 20 61 (2,7),.22.=>.array(2,7),.24.=>.a
11a820 72 72 61 79 28 32 2c 37 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 rray(2,7)),.array(.14.=>.array(2
11a840 2c 38 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 38 29 2c 20 32 32 20 3d 3e 20 61 72 72 ,8),.18.=>.array(2,8),.22.=>.arr
11a860 61 79 28 32 2c 38 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 38 29 29 2c 20 61 72 72 61 ay(2,8),.24.=>.array(2,8)),.arra
11a880 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 39 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 y(.14.=>.array(2,9),.18.=>.array
11a8a0 28 32 2c 39 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 39 29 2c 20 32 34 20 3d 3e 20 61 (2,9),.22.=>.array(2,9),.24.=>.a
11a8c0 72 72 61 79 28 32 2c 39 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 rray(2,9)),.array(.14.=>.array(2
11a8e0 2c 31 30 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 30 29 2c 20 32 32 20 3d 3e 20 61 ,10),.18.=>.array(2,10),.22.=>.a
11a900 72 72 61 79 28 32 2c 31 30 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 30 29 29 2c 20 rray(2,10),.24.=>.array(2,10)),.
11a920 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 31 29 2c 20 31 38 20 3d 3e 20 array(.14.=>.array(2,11),.18.=>.
11a940 61 72 72 61 79 28 32 2c 31 31 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 31 29 2c 20 array(2,11),.22.=>.array(2,11),.
11a960 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 31 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 24.=>.array(2,11)),.array(.14.=>
11a980 20 61 72 72 61 79 28 32 2c 31 32 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 32 29 2c .array(2,12),.18.=>.array(2,12),
11a9a0 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 32 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 .22.=>.array(2,12),.24.=>.array(
11a9c0 32 2c 31 32 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 33 29 2c 2,12)),.array(.14.=>.array(2,3),
11a9e0 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 33 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 .18.=>.array(2,3),.22.=>.array(2
11aa00 2c 33 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 33 29 29 2c 20 61 72 72 61 79 28 20 31 ,3),.24.=>.array(2,3)),.array(.1
11aa20 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 34 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 34 4.=>.array(2,4),.18.=>.array(2,4
11aa40 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 34 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 ),.22.=>.array(2,4),.24.=>.array
11aa60 28 32 2c 34 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 35 29 2c (2,4)),.array(.14.=>.array(2,5),
11aa80 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 35 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 .18.=>.array(2,5),.22.=>.array(2
11aaa0 2c 35 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 35 29 29 2c 20 61 72 72 61 79 28 20 31 ,5),.24.=>.array(2,5)),.array(.1
11aac0 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 4.=>.array(2,1),.18.=>.array(2,1
11aae0 29 2c 20 32 31 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 ),.21.=>.array(2,1),.22.=>.array
11ab00 28 32 2c 31 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 29 29 2c 20 61 72 72 61 79 28 (2,1),.24.=>.array(2,1)),.array(
11ab20 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 .14.=>.array(2,2),.18.=>.array(2
11ab40 2c 32 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 29 2c 20 32 34 20 3d 3e 20 61 72 72 ,2),.22.=>.array(2,2),.24.=>.arr
11ab60 61 79 28 32 2c 32 29 29 2c 20 61 72 72 61 79 28 20 33 20 3d 3e 20 32 30 2c 20 34 20 3d 3e 20 61 ay(2,2)),.array(.3.=>.20,.4.=>.a
11ab80 72 72 61 79 28 31 2c 31 32 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 37 29 2c 20 31 rray(1,12),.18.=>.array(1,17),.1
11aba0 39 20 3d 3e 20 31 38 2c 20 32 30 20 3d 3e 20 31 39 20 29 2c 20 61 72 72 61 79 28 20 33 20 3d 3e 9.=>.18,.20.=>.19.),.array(.3.=>
11abc0 20 35 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 .5,.4.=>.array(1,12),.5.=>.6,.6.
11abe0 3d 3e 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 =>.array(1,13),.7.=>.3,.8.=>.arr
11ac00 61 79 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 ay(1,9),.9.=>.4,.10.=>.array(1,1
11ac20 30 29 2c 20 31 31 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 31 29 2c 20 31 33 20 3d 3e 20 32 33 2c 0),.11.=>.array(1,11),.13.=>.23,
11ac40 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 72 72 61 79 28 31 .15.=>.7,.16.=>.8,.17.=>.array(1
11ac60 2c 31 34 29 2c 20 32 33 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 35 29 2c 20 32 34 20 3d 3e 20 61 ,14),.23.=>.array(1,15),.24.=>.a
11ac80 72 72 61 79 28 31 2c 32 31 29 2c 20 32 35 20 3d 3e 20 32 32 20 29 2c 20 61 72 72 61 79 28 20 31 rray(1,21),.25.=>.22.),.array(.1
11aca0 20 3d 3e 20 61 72 72 61 79 28 32 2c 36 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 .=>.array(2,6)),.array(.14.=>.ar
11acc0 72 61 79 28 32 2c 31 33 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 33 29 2c 20 32 32 ray(2,13),.18.=>.array(2,13),.22
11ace0 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 33 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 .=>.array(2,13),.24.=>.array(2,1
11ad00 33 29 29 2c 20 61 72 72 61 79 28 20 31 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 34 29 2c 20 32 3)),.array(.18.=>.array(1,24),.2
11ad20 32 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 35 29 29 2c 20 61 72 72 61 79 28 20 31 38 20 3d 3e 20 2.=>.array(1,25)),.array(.18.=>.
11ad40 61 72 72 61 79 28 32 2c 31 36 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 36 29 29 2c array(2,16),.22.=>.array(2,16)),
11ad60 20 61 72 72 61 79 28 20 32 31 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 36 29 29 2c 20 61 72 72 61 .array(.21.=>.array(1,26)),.arra
11ad80 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 38 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 y(.14.=>.array(2,18),.18.=>.arra
11ada0 79 28 32 2c 31 38 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 38 29 2c 20 32 34 20 3d y(2,18),.22.=>.array(2,18),.24.=
11adc0 3e 20 61 72 72 61 79 28 32 2c 31 38 29 29 2c 20 61 72 72 61 79 28 20 32 32 20 3d 3e 20 61 72 72 >.array(2,18)),.array(.22.=>.arr
11ade0 61 79 28 31 2c 32 38 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 37 29 29 2c 20 61 72 ay(1,28),.24.=>.array(1,27)),.ar
11ae00 72 61 79 28 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 30 29 2c 20 32 34 20 3d 3e 20 61 72 ray(.22.=>.array(2,20),.24.=>.ar
11ae20 72 61 79 28 32 2c 32 30 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 ray(2,20)),.array(.14.=>.array(2
11ae40 2c 31 34 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 34 29 2c 20 32 32 20 3d 3e 20 61 ,14),.18.=>.array(2,14),.22.=>.a
11ae60 72 72 61 79 28 32 2c 31 34 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 34 29 29 2c 20 rray(2,14),.24.=>.array(2,14)),.
11ae80 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)
11aea0 2c 20 32 30 20 3d 3e 20 32 39 20 29 2c 20 61 72 72 61 79 28 20 33 20 3d 3e 20 35 2c 20 34 20 3d ,.20.=>.29.),.array(.3.=>.5,.4.=
11aec0 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 20 61 72 72 61 >.array(1,12),.5.=>.6,.6.=>.arra
11aee0 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 28 31 2c 39 29 y(1,13),.7.=>.3,.8.=>.array(1,9)
11af00 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 2c 20 31 31 20 ,.9.=>.4,.10.=>.array(1,10),.11.
11af20 3d 3e 20 61 72 72 61 79 28 31 2c 31 31 29 2c 20 31 33 20 3d 3e 20 33 30 2c 20 31 35 20 3d 3e 20 =>.array(1,11),.13.=>.30,.15.=>.
11af40 37 2c 20 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 7,.16.=>.8,.17.=>.array(1,14),.2
11af60 33 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 35 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 3.=>.array(1,15)),.array(.14.=>.
11af80 61 72 72 61 79 28 32 2c 31 39 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 39 29 2c 20 array(2,19),.18.=>.array(2,19),.
11afa0 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 39 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 22.=>.array(2,19),.24.=>.array(2
11afc0 2c 31 39 29 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 ,19)),.array(.3.=>.5,.4.=>.array
11afe0 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 2c 31 33 29 (1,12),.5.=>.6,.6.=>.array(1,13)
11b000 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 20 3d 3e 20 ,.7.=>.3,.8.=>.array(1,9),.9.=>.
11b020 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 61 72 72 61 4,.10.=>.array(1,10),.11.=>.arra
11b040 79 28 31 2c 31 31 29 2c 20 31 33 20 3d 3e 20 33 31 2c 20 31 35 20 3d 3e 20 37 2c 20 31 36 20 3d y(1,11),.13.=>.31,.15.=>.7,.16.=
11b060 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 3e 20 61 72 >.8,.17.=>.array(1,14),.23.=>.ar
11b080 72 61 79 28 31 2c 31 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 ray(1,15)),.array(.18.=>.array(2
11b0a0 2c 31 37 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 37 29 29 2c 20 61 72 72 61 79 28 ,17),.22.=>.array(2,17)),.array(
11b0c0 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 35 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 .18.=>.array(2,15),.22.=>.array(
11b0e0 32 2c 31 35 29 29 2c 20 61 72 72 61 79 28 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 31 29 2,15)),.array(.22.=>.array(2,21)
11b100 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 31 29 29 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 ,.24.=>.array(2,21)),.);..privat
11b120 65 20 24 64 65 66 61 75 6c 74 41 63 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 0a 31 36 20 3d 3e e.$defaultActions.=.array(.16.=>
11b140 20 61 72 72 61 79 28 32 2c 20 36 29 0a 29 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 .array(2,.6).);......public.func
11b160 74 69 6f 6e 20 6c 69 6e 74 28 24 69 6e 70 75 74 29 0a 7b 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d tion.lint($input).{.try.{.$this-
11b180 3e 70 61 72 73 65 28 24 69 6e 70 75 74 29 3b 0a 7d 20 63 61 74 63 68 20 28 50 61 72 73 69 6e 67 >parse($input);.}.catch.(Parsing
11b1a0 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 3b 0a 7d 0a 7d 0a 0a Exception.$e).{.return.$e;.}.}..
11b1c0 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 28 24 69 6e 70 75 .....public.function.parse($inpu
11b1e0 74 2c 20 24 66 6c 61 67 73 20 3d 20 30 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 61 69 6c 4f 6e 42 4f t,.$flags.=.0).{.$this->failOnBO
11b200 4d 28 24 69 6e 70 75 74 29 3b 0a 0a 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 3d 20 24 66 6c 61 67 M($input);..$this->flags.=.$flag
11b220 73 3b 0a 0a 24 74 68 69 73 2d 3e 73 74 61 63 6b 20 3d 20 61 72 72 61 79 28 30 29 3b 0a 24 74 68 s;..$this->stack.=.array(0);.$th
11b240 69 73 2d 3e 76 73 74 61 63 6b 20 3d 20 61 72 72 61 79 28 6e 75 6c 6c 29 3b 0a 24 74 68 69 73 2d is->vstack.=.array(null);.$this-
11b260 3e 6c 73 74 61 63 6b 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 79 79 74 65 78 74 20 3d 20 27 27 >lstack.=.array();..$yytext.=.''
11b280 3b 0a 24 79 79 6c 69 6e 65 6e 6f 20 3d 20 30 3b 0a 24 79 79 6c 65 6e 67 20 3d 20 30 3b 0a 24 72 ;.$yylineno.=.0;.$yyleng.=.0;.$r
11b2a0 65 63 6f 76 65 72 69 6e 67 20 3d 20 30 3b 0a 24 54 45 52 52 4f 52 20 3d 20 32 3b 0a 24 45 4f 46 ecovering.=.0;.$TERROR.=.2;.$EOF
11b2c0 20 3d 20 31 3b 0a 0a 24 74 68 69 73 2d 3e 6c 65 78 65 72 20 3d 20 6e 65 77 20 4c 65 78 65 72 28 .=.1;..$this->lexer.=.new.Lexer(
11b2e0 29 3b 0a 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 73 65 74 49 6e 70 75 74 28 24 69 6e 70 75 74 );.$this->lexer->setInput($input
11b300 29 3b 0a 0a 24 79 79 6c 6f 63 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 6c 6f );..$yyloc.=.$this->lexer->yyllo
11b320 63 3b 0a 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 5d 20 3d 20 24 79 79 6c 6f 63 3b 0a 0a 24 73 c;.$this->lstack[].=.$yyloc;..$s
11b340 79 6d 62 6f 6c 20 3d 20 6e 75 6c 6c 3b 0a 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c 20 3d 20 ymbol.=.null;.$preErrorSymbol.=.
11b360 6e 75 6c 6c 3b 0a 24 73 74 61 74 65 20 3d 20 6e 75 6c 6c 3b 0a 24 61 63 74 69 6f 6e 20 3d 20 6e null;.$state.=.null;.$action.=.n
11b380 75 6c 6c 3b 0a 24 61 20 3d 20 6e 75 6c 6c 3b 0a 24 72 20 3d 20 6e 75 6c 6c 3b 0a 24 79 79 76 61 ull;.$a.=.null;.$r.=.null;.$yyva
11b3a0 6c 20 3d 20 6e 65 77 20 73 74 64 43 6c 61 73 73 3b 0a 24 70 20 3d 20 6e 75 6c 6c 3b 0a 24 6c 65 l.=.new.stdClass;.$p.=.null;.$le
11b3c0 6e 20 3d 20 6e 75 6c 6c 3b 0a 24 6e 65 77 53 74 61 74 65 20 3d 20 6e 75 6c 6c 3b 0a 24 65 78 70 n.=.null;.$newState.=.null;.$exp
11b3e0 65 63 74 65 64 20 3d 20 6e 75 6c 6c 3b 0a 24 65 72 72 53 74 72 20 3d 20 6e 75 6c 6c 3b 0a 0a 77 ected.=.null;.$errStr.=.null;..w
11b400 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a 0a 20 24 73 74 61 74 65 20 3d 20 24 74 68 69 73 2d 3e hile.(true).{...$state.=.$this->
11b420 73 74 61 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 0a 0a stack[count($this->stack)-1];...
11b440 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 41 63 74 69 6f 6e 73 .if.(isset($this->defaultActions
11b460 5b 24 73 74 61 74 65 5d 29 29 20 7b 0a 24 61 63 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 [$state])).{.$action.=.$this->de
11b480 66 61 75 6c 74 41 63 74 69 6f 6e 73 5b 24 73 74 61 74 65 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 faultActions[$state];.}.else.{.i
11b4a0 66 20 28 24 73 79 6d 62 6f 6c 20 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 24 73 79 6d 62 6f 6c 20 3d 20 f.($symbol.==.null).{.$symbol.=.
11b4c0 24 74 68 69 73 2d 3e 6c 65 78 28 29 3b 0a 7d 0a 0a 20 24 61 63 74 69 6f 6e 20 3d 20 69 73 73 65 $this->lex();.}...$action.=.isse
11b4e0 74 28 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 5b 24 73 79 6d 62 6f 6c 5d 29 t($this->table[$state][$symbol])
11b500 20 3f 20 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 5b 24 73 79 6d 62 6f 6c 5d .?.$this->table[$state][$symbol]
11b520 20 3a 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 61 63 74 69 6f 6e 20 7c 7c 20 21 .:.false;.}....if.(!$action.||.!
11b540 24 61 63 74 69 6f 6e 5b 30 5d 29 20 7b 0a 69 66 20 28 21 24 72 65 63 6f 76 65 72 69 6e 67 29 20 $action[0]).{.if.(!$recovering).
11b560 7b 0a 0a 20 24 65 78 70 65 63 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 {...$expected.=.array();.foreach
11b580 20 28 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 20 61 73 20 24 70 20 3d 3e 20 .($this->table[$state].as.$p.=>.
11b5a0 24 69 67 6e 6f 72 65 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 65 72 6d $ignore).{.if.(isset($this->term
11b5c0 69 6e 61 6c 73 5f 5b 24 70 5d 29 20 26 26 20 24 70 20 3e 20 32 29 20 7b 0a 24 65 78 70 65 63 74 inals_[$p]).&&.$p.>.2).{.$expect
11b5e0 65 64 5b 5d 20 3d 20 22 27 22 20 2e 20 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 73 5f 5b 24 ed[].=."'"...$this->terminals_[$
11b600 70 5d 20 2e 20 22 27 22 3b 0a 7d 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 20 3d 20 6e 75 6c 6c 3b 0a p]..."'";.}.}..$message.=.null;.
11b620 69 66 20 28 69 6e 5f 61 72 72 61 79 28 22 27 53 54 52 49 4e 47 27 22 2c 20 24 65 78 70 65 63 74 if.(in_array("'STRING'",.$expect
11b640 65 64 29 20 26 26 20 69 6e 5f 61 72 72 61 79 28 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 6c 65 ed).&&.in_array(substr($this->le
11b660 78 65 72 2d 3e 6d 61 74 63 68 2c 20 30 2c 20 31 29 2c 20 61 72 72 61 79 28 27 22 27 2c 20 22 27 xer->match,.0,.1),.array('"',."'
11b680 22 29 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 22 49 6e 76 61 6c 69 64 20 73 74 72 69 6e "))).{.$message.=."Invalid.strin
11b6a0 67 22 3b 0a 69 66 20 28 22 27 22 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 6c 65 g";.if.("'".===.substr($this->le
11b6c0 78 65 72 2d 3e 6d 61 74 63 68 2c 20 30 2c 20 31 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d xer->match,.0,.1)).{.$message..=
11b6e0 20 22 2c 20 69 74 20 61 70 70 65 61 72 73 20 79 6f 75 20 75 73 65 64 20 73 69 6e 67 6c 65 20 71 .",.it.appears.you.used.single.q
11b700 75 6f 74 65 73 20 69 6e 73 74 65 61 64 20 6f 66 20 64 6f 75 62 6c 65 20 71 75 6f 74 65 73 22 3b uotes.instead.of.double.quotes";
11b720 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 2e 2b 3f 28 5c 5c 5c .}.elseif.(preg_match('{".+?(\\\
11b740 5c 5b 5e 22 62 66 6e 72 74 2f 5c 5c 5c 5c 75 5d 29 7d 27 2c 20 24 74 68 69 73 2d 3e 6c 65 78 65 \[^"bfnrt/\\\\u])}',.$this->lexe
11b760 72 2d 3e 67 65 74 55 70 63 6f 6d 69 6e 67 49 6e 70 75 74 28 29 2c 20 24 6d 61 74 63 68 29 29 20 r->getUpcomingInput(),.$match)).
11b780 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 2c 20 69 74 20 61 70 70 65 61 72 73 20 79 6f 75 20 {.$message..=.",.it.appears.you.
11b7a0 68 61 76 65 20 61 6e 20 75 6e 65 73 63 61 70 65 64 20 62 61 63 6b 73 6c 61 73 68 20 61 74 3a 20 have.an.unescaped.backslash.at:.
11b7c0 22 2e 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 ".$match[1];.}.elseif.(preg_matc
11b7e0 68 28 27 7b 22 28 3f 3a 5b 5e 22 5d 2b 7c 5c 5c 5c 5c 22 29 2a 24 7d 6d 27 2c 20 24 74 68 69 73 h('{"(?:[^"]+|\\\\")*$}m',.$this
11b800 2d 3e 6c 65 78 65 72 2d 3e 67 65 74 55 70 63 6f 6d 69 6e 67 49 6e 70 75 74 28 29 29 29 20 7b 0a ->lexer->getUpcomingInput())).{.
11b820 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 2c 20 69 74 20 61 70 70 65 61 72 73 20 79 6f 75 20 66 6f $message..=.",.it.appears.you.fo
11b840 72 67 6f 74 20 74 6f 20 74 65 72 6d 69 6e 61 74 65 64 20 74 68 65 20 73 74 72 69 6e 67 2c 20 6f rgot.to.terminated.the.string,.o
11b860 72 20 61 74 74 65 6d 70 74 65 64 20 74 6f 20 77 72 69 74 65 20 61 20 6d 75 6c 74 69 6c 69 6e 65 r.attempted.to.write.a.multiline
11b880 20 73 74 72 69 6e 67 20 77 68 69 63 68 20 69 73 20 69 6e 76 61 6c 69 64 22 3b 0a 7d 0a 7d 0a 0a .string.which.is.invalid";.}.}..
11b8a0 24 65 72 72 53 74 72 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 $errStr.=.'Parse.error.on.line.'
11b8c0 20 2e 20 28 24 79 79 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 ...($yylineno+1)...":\n";.$errSt
11b8e0 72 20 2e 3d 20 24 74 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 r..=.$this->lexer->showPosition(
11b900 29 20 2e 20 22 5c 6e 22 3b 0a 69 66 20 28 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 65 72 72 53 74 )..."\n";.if.($message).{.$errSt
11b920 72 20 2e 3d 20 24 6d 65 73 73 61 67 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 72 72 53 74 72 20 r..=.$message;.}.else.{.$errStr.
11b940 2e 3d 20 28 63 6f 75 6e 74 28 24 65 78 70 65 63 74 65 64 29 20 3e 20 31 29 20 3f 20 22 45 78 70 .=.(count($expected).>.1).?."Exp
11b960 65 63 74 65 64 20 6f 6e 65 20 6f 66 3a 20 22 20 3a 20 22 45 78 70 65 63 74 65 64 3a 20 22 3b 0a ected.one.of:.".:."Expected:.";.
11b980 24 65 72 72 53 74 72 20 2e 3d 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 65 78 70 65 63 74 $errStr..=.implode(',.',.$expect
11b9a0 65 64 29 3b 0a 7d 0a 0a 69 66 20 28 27 2c 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 74 72 69 6d 28 ed);.}..if.(','.===.substr(trim(
11b9c0 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 67 65 74 50 61 73 74 49 6e 70 75 74 28 29 29 2c 20 2d $this->lexer->getPastInput()),.-
11b9e0 31 29 29 20 7b 0a 24 65 72 72 53 74 72 20 2e 3d 20 22 20 2d 20 49 74 20 61 70 70 65 61 72 73 20 1)).{.$errStr..=.".-.It.appears.
11ba00 79 6f 75 20 68 61 76 65 20 61 6e 20 65 78 74 72 61 20 74 72 61 69 6c 69 6e 67 20 63 6f 6d 6d 61 you.have.an.extra.trailing.comma
11ba20 22 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 45 72 72 6f 72 28 24 65 72 72 53 74 72 2c ";.}..$this->parseError($errStr,
11ba40 20 61 72 72 61 79 28 0a 27 74 65 78 74 27 20 3d 3e 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e .array(.'text'.=>.$this->lexer->
11ba60 6d 61 74 63 68 2c 0a 27 74 6f 6b 65 6e 27 20 3d 3e 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e match,.'token'.=>.!empty($this->
11ba80 74 65 72 6d 69 6e 61 6c 73 5f 5b 24 73 79 6d 62 6f 6c 5d 29 20 3f 20 24 74 68 69 73 2d 3e 74 65 terminals_[$symbol]).?.$this->te
11baa0 72 6d 69 6e 61 6c 73 5f 5b 24 73 79 6d 62 6f 6c 5d 20 3a 20 24 73 79 6d 62 6f 6c 2c 0a 27 6c 69 rminals_[$symbol].:.$symbol,.'li
11bac0 6e 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 69 6e 65 6e 6f 2c 0a 27 ne'.=>.$this->lexer->yylineno,.'
11bae0 6c 6f 63 27 20 3d 3e 20 24 79 79 6c 6f 63 2c 0a 27 65 78 70 65 63 74 65 64 27 20 3d 3e 20 24 65 loc'.=>.$yyloc,.'expected'.=>.$e
11bb00 78 70 65 63 74 65 64 2c 0a 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 72 65 63 6f 76 65 72 69 6e xpected,.));.}....if.($recoverin
11bb20 67 20 3d 3d 20 33 29 20 7b 0a 69 66 20 28 24 73 79 6d 62 6f 6c 20 3d 3d 20 24 45 4f 46 29 20 7b g.==.3).{.if.($symbol.==.$EOF).{
11bb40 0a 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 24 65 72 72 .throw.new.ParsingException($err
11bb60 53 74 72 20 3f 3a 20 27 50 61 72 73 69 6e 67 20 68 61 6c 74 65 64 2e 27 29 3b 0a 7d 0a 0a 0a 20 Str.?:.'Parsing.halted.');.}....
11bb80 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 65 6e 67 3b 0a $yyleng.=.$this->lexer->yyleng;.
11bba0 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 65 78 74 3b 0a $yytext.=.$this->lexer->yytext;.
11bbc0 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 79 6c 69 6e 65 $yylineno.=.$this->lexer->yyline
11bbe0 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 79 79 6c 6c 6f no;.$yyloc.=.$this->lexer->yyllo
11bc00 63 3b 0a 24 73 79 6d 62 6f 6c 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 28 29 3b 0a 7d 0a 0a 0a 20 c;.$symbol.=.$this->lex();.}....
11bc20 77 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a 0a 20 69 66 20 28 61 72 72 61 79 5f 6b 65 79 5f 65 while.(true).{...if.(array_key_e
11bc40 78 69 73 74 73 28 24 54 45 52 52 4f 52 2c 20 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 xists($TERROR,.$this->table[$sta
11bc60 74 65 5d 29 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 69 66 20 28 24 73 74 61 74 65 20 3d 3d 20 30 te])).{.break;.}.if.($state.==.0
11bc80 29 20 7b 0a 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 24 ).{.throw.new.ParsingException($
11bca0 65 72 72 53 74 72 20 3f 3a 20 27 50 61 72 73 69 6e 67 20 68 61 6c 74 65 64 2e 27 29 3b 0a 7d 0a errStr.?:.'Parsing.halted.');.}.
11bcc0 24 74 68 69 73 2d 3e 70 6f 70 53 74 61 63 6b 28 31 29 3b 0a 24 73 74 61 74 65 20 3d 20 24 74 68 $this->popStack(1);.$state.=.$th
11bce0 69 73 2d 3e 73 74 61 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 is->stack[count($this->stack)-1]
11bd00 3b 0a 7d 0a 0a 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c 20 3d 20 24 73 79 6d 62 6f 6c 3b 20 ;.}..$preErrorSymbol.=.$symbol;.
11bd20 0a 20 24 73 79 6d 62 6f 6c 20 3d 20 24 54 45 52 52 4f 52 3b 20 0a 20 24 73 74 61 74 65 20 3d 20 ..$symbol.=.$TERROR;...$state.=.
11bd40 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 $this->stack[count($this->stack)
11bd60 2d 31 5d 3b 0a 24 61 63 74 69 6f 6e 20 3d 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 61 62 6c -1];.$action.=.isset($this->tabl
11bd80 65 5b 24 73 74 61 74 65 5d 5b 24 54 45 52 52 4f 52 5d 29 20 3f 20 24 74 68 69 73 2d 3e 74 61 62 e[$state][$TERROR]).?.$this->tab
11bda0 6c 65 5b 24 73 74 61 74 65 5d 5b 24 54 45 52 52 4f 52 5d 20 3a 20 66 61 6c 73 65 3b 0a 24 72 65 le[$state][$TERROR].:.false;.$re
11bdc0 63 6f 76 65 72 69 6e 67 20 3d 20 33 3b 20 0a 20 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 61 72 72 61 covering.=.3;...}....if.(is_arra
11bde0 79 28 24 61 63 74 69 6f 6e 5b 30 5d 29 20 26 26 20 63 6f 75 6e 74 28 24 61 63 74 69 6f 6e 29 20 y($action[0]).&&.count($action).
11be00 3e 20 31 29 20 7b 0a 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 >.1).{.throw.new.ParsingExceptio
11be20 6e 28 27 50 61 72 73 65 20 45 72 72 6f 72 3a 20 6d 75 6c 74 69 70 6c 65 20 61 63 74 69 6f 6e 73 n('Parse.Error:.multiple.actions
11be40 20 70 6f 73 73 69 62 6c 65 20 61 74 20 73 74 61 74 65 3a 20 27 20 2e 20 24 73 74 61 74 65 20 2e .possible.at.state:.'...$state..
11be60 20 27 2c 20 74 6f 6b 65 6e 3a 20 27 20 2e 20 24 73 79 6d 62 6f 6c 29 3b 0a 7d 0a 0a 73 77 69 74 .',.token:.'...$symbol);.}..swit
11be80 63 68 20 28 24 61 63 74 69 6f 6e 5b 30 5d 29 20 7b 0a 63 61 73 65 20 31 3a 20 0a 20 24 74 68 69 ch.($action[0]).{.case.1:...$thi
11bea0 73 2d 3e 73 74 61 63 6b 5b 5d 20 3d 20 24 73 79 6d 62 6f 6c 3b 0a 24 74 68 69 73 2d 3e 76 73 74 s->stack[].=.$symbol;.$this->vst
11bec0 61 63 6b 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 74 65 78 74 3b 0a 24 74 ack[].=.$this->lexer->yytext;.$t
11bee0 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 his->lstack[].=.$this->lexer->yy
11bf00 6c 6c 6f 63 3b 0a 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 5d 20 3d 20 24 61 63 74 69 6f 6e 5b 31 lloc;.$this->stack[].=.$action[1
11bf20 5d 3b 20 0a 20 24 73 79 6d 62 6f 6c 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 21 24 70 72 65 45 72 ];...$symbol.=.null;.if.(!$preEr
11bf40 72 6f 72 53 79 6d 62 6f 6c 29 20 7b 20 0a 20 24 79 79 6c 65 6e 67 20 3d 20 24 74 68 69 73 2d 3e rorSymbol).{...$yyleng.=.$this->
11bf60 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 24 74 68 69 73 2d 3e lexer->yyleng;.$yytext.=.$this->
11bf80 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 3d 20 24 74 68 69 73 lexer->yytext;.$yylineno.=.$this
11bfa0 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 20 3d 20 24 74 68 69 ->lexer->yylineno;.$yyloc.=.$thi
11bfc0 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 6c 6f 63 3b 0a 69 66 20 28 24 72 65 63 6f 76 65 72 69 6e s->lexer->yylloc;.if.($recoverin
11bfe0 67 20 3e 20 30 29 20 7b 0a 24 72 65 63 6f 76 65 72 69 6e 67 2d 2d 3b 0a 7d 0a 7d 20 65 6c 73 65 g.>.0).{.$recovering--;.}.}.else
11c000 20 7b 20 0a 20 24 73 79 6d 62 6f 6c 20 3d 20 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c 3b 0a .{...$symbol.=.$preErrorSymbol;.
11c020 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 62 72 65 61 6b 3b $preErrorSymbol.=.null;.}.break;
11c040 0a 0a 63 61 73 65 20 32 3a 20 0a 20 24 6c 65 6e 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 64 75 63 ..case.2:...$len.=.$this->produc
11c060 74 69 6f 6e 73 5f 5b 24 61 63 74 69 6f 6e 5b 31 5d 5d 5b 31 5d 3b 0a 0a 0a 20 24 79 79 76 61 6c tions_[$action[1]][1];....$yyval
11c080 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 ->token.=.$this->vstack[count($t
11c0a0 68 69 73 2d 3e 76 73 74 61 63 6b 29 20 2d 20 24 6c 65 6e 5d 3b 20 0a 20 0a 20 24 79 79 76 61 6c his->vstack).-.$len];.....$yyval
11c0c0 2d 3e 73 74 6f 72 65 20 3d 20 61 72 72 61 79 28 20 0a 20 27 66 69 72 73 74 5f 6c 69 6e 65 27 20 ->store.=.array(...'first_line'.
11c0e0 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 6c 73 =>.$this->lstack[count($this->ls
11c100 74 61 63 6b 29 20 2d 20 28 24 6c 65 6e 20 3f 3a 20 31 29 5d 5b 27 66 69 72 73 74 5f 6c 69 6e 65 tack).-.($len.?:.1)]['first_line
11c120 27 5d 2c 0a 27 6c 61 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b '],.'last_line'.=>.$this->lstack
11c140 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 29 20 2d 20 31 5d 5b 27 6c 61 73 74 [count($this->lstack).-.1]['last
11c160 5f 6c 69 6e 65 27 5d 2c 0a 27 66 69 72 73 74 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 24 74 68 69 73 _line'],.'first_column'.=>.$this
11c180 2d 3e 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 ->lstack[count($this->lstack).-.
11c1a0 28 24 6c 65 6e 20 3f 3a 20 31 29 5d 5b 27 66 69 72 73 74 5f 63 6f 6c 75 6d 6e 27 5d 2c 0a 27 6c ($len.?:.1)]['first_column'],.'l
11c1c0 61 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 6f 75 ast_column'.=>.$this->lstack[cou
11c1e0 6e 74 28 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 29 20 2d 20 31 5d 5b 27 6c 61 73 74 5f 63 6f 6c nt($this->lstack).-.1]['last_col
11c200 75 6d 6e 27 5d 2c 0a 29 3b 0a 24 72 20 3d 20 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 6d 41 63 74 umn'],.);.$r.=.$this->performAct
11c220 69 6f 6e 28 24 79 79 76 61 6c 2c 20 24 79 79 74 65 78 74 2c 20 24 79 79 6c 65 6e 67 2c 20 24 79 ion($yyval,.$yytext,.$yyleng,.$y
11c240 79 6c 69 6e 65 6e 6f 2c 20 24 61 63 74 69 6f 6e 5b 31 5d 2c 20 24 74 68 69 73 2d 3e 76 73 74 61 ylineno,.$action[1],.$this->vsta
11c260 63 6b 2c 20 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 29 3b 0a 0a 69 66 20 28 21 24 72 20 69 6e 73 ck,.$this->lstack);..if.(!$r.ins
11c280 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 6e 20 24 72 3b 0a tanceof.Undefined).{.return.$r;.
11c2a0 7d 0a 0a 69 66 20 28 24 6c 65 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 70 6f 70 53 74 61 63 6b 28 24 }..if.($len).{.$this->popStack($
11c2c0 6c 65 6e 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 5d 20 3d 20 24 74 68 69 73 2d len);.}..$this->stack[].=.$this-
11c2e0 3e 70 72 6f 64 75 63 74 69 6f 6e 73 5f 5b 24 61 63 74 69 6f 6e 5b 31 5d 5d 5b 30 5d 3b 20 0a 20 >productions_[$action[1]][0];...
11c300 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 5b 5d 20 3d 20 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 3b $this->vstack[].=.$yyval->token;
11c320 0a 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 5d 20 3d 20 24 79 79 76 61 6c 2d 3e 73 74 6f 72 65 .$this->lstack[].=.$yyval->store
11c340 3b 0a 24 6e 65 77 53 74 61 74 65 20 3d 20 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 74 68 69 73 ;.$newState.=.$this->table[$this
11c360 2d 3e 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 32 5d 5d 5b ->stack[count($this->stack)-2]][
11c380 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 $this->stack[count($this->stack)
11c3a0 2d 31 5d 5d 3b 0a 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 5d 20 3d 20 24 6e 65 77 53 74 61 74 65 -1]];.$this->stack[].=.$newState
11c3c0 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 33 3a 20 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b ;.break;..case.3:...return.true;
11c3e0 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 .}.}..return.true;.}..protected.
11c400 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 45 72 72 6f 72 28 24 73 74 72 2c 20 24 68 61 73 68 29 function.parseError($str,.$hash)
11c420 0a 7b 0a 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 24 73 .{.throw.new.ParsingException($s
11c440 74 72 2c 20 24 68 61 73 68 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 70 72 69 76 61 74 65 20 66 75 6e tr,.$hash);.}........private.fun
11c460 63 74 69 6f 6e 20 70 65 72 66 6f 72 6d 41 63 74 69 6f 6e 28 73 74 64 43 6c 61 73 73 20 24 79 79 ction.performAction(stdClass.$yy
11c480 76 61 6c 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 val,.$yytext,.$yyleng,.$yylineno
11c4a0 2c 20 24 79 79 73 74 61 74 65 2c 20 26 24 74 6f 6b 65 6e 73 29 0a 7b 0a 0a 20 24 6c 65 6e 20 3d ,.$yystate,.&$tokens).{...$len.=
11c4c0 20 63 6f 75 6e 74 28 24 74 6f 6b 65 6e 73 29 20 2d 20 31 3b 0a 73 77 69 74 63 68 20 28 24 79 79 .count($tokens).-.1;.switch.($yy
11c4e0 73 74 61 74 65 29 20 7b 0a 63 61 73 65 20 31 3a 0a 24 79 79 74 65 78 74 20 3d 20 70 72 65 67 5f state).{.case.1:.$yytext.=.preg_
11c500 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 7b 28 3f 3a 5c 5c 5c 5c 5b 22 62 66 6e 72 replace_callback('{(?:\\\\["bfnr
11c520 74 2f 5c 5c 5c 5c 5d 7c 5c 5c 5c 5c 75 5b 61 2d 66 41 2d 46 30 2d 39 5d 7b 34 7d 29 7d 27 2c 20 t/\\\\]|\\\\u[a-fA-F0-9]{4})}',.
11c540 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 73 74 72 69 6e 67 49 6e 74 65 72 70 6f 6c 61 74 69 6f array($this,.'stringInterpolatio
11c560 6e 27 29 2c 20 24 79 79 74 65 78 74 29 3b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 n'),.$yytext);.$yyval->token.=.$
11c580 79 79 74 65 78 74 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 32 3a 0a 69 66 20 28 73 74 72 70 6f yytext;.break;.case.2:.if.(strpo
11c5a0 73 28 24 79 79 74 65 78 74 2c 20 27 65 27 29 20 21 3d 3d 20 66 61 6c 73 65 20 7c 7c 20 73 74 72 s($yytext,.'e').!==.false.||.str
11c5c0 70 6f 73 28 24 79 79 74 65 78 74 2c 20 27 45 27 29 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 pos($yytext,.'E').!==.false).{.$
11c5e0 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 66 6c 6f 61 74 76 61 6c 28 24 79 79 74 65 78 74 29 yyval->token.=.floatval($yytext)
11c600 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 73 74 72 70 6f ;.}.else.{.$yyval->token.=.strpo
11c620 73 28 24 79 79 74 65 78 74 2c 20 27 2e 27 29 20 3d 3d 3d 20 66 61 6c 73 65 20 3f 20 69 6e 74 76 s($yytext,.'.').===.false.?.intv
11c640 61 6c 28 24 79 79 74 65 78 74 29 20 3a 20 66 6c 6f 61 74 76 61 6c 28 24 79 79 74 65 78 74 29 3b al($yytext).:.floatval($yytext);
11c660 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 33 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 .}.break;.case.3:.$yyval->token.
11c680 3d 20 6e 75 6c 6c 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 34 3a 0a 24 79 79 76 61 6c 2d 3e 74 =.null;.break;.case.4:.$yyval->t
11c6a0 6f 6b 65 6e 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 35 3a 0a 24 79 79 76 oken.=.true;.break;.case.5:.$yyv
11c6c0 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 66 61 6c 73 65 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 36 al->token.=.false;.break;.case.6
11c6e0 3a 0a 72 65 74 75 72 6e 20 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 :.return.$yyval->token.=.$tokens
11c700 5b 24 6c 65 6e 2d 31 5d 3b 0a 63 61 73 65 20 31 33 3a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 6c [$len-1];.case.13:.if.($this->fl
11c720 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 29 20 7b 0a 24 79 ags.&.self::PARSE_TO_ASSOC).{.$y
11c740 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a yval->token.=.array();.}.else.{.
11c760 24 79 79 76 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 7d 0a $yyval->token.=.new.stdClass;.}.
11c780 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 34 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 break;.case.14:.$yyval->token.=.
11c7a0 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 31 5d 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 35 3a $tokens[$len-1];.break;.case.15:
11c7c0 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 61 72 72 61 79 28 24 74 6f 6b 65 6e 73 5b 24 .$yyval->token.=.array($tokens[$
11c7e0 6c 65 6e 2d 32 5d 2c 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 29 3b 0a 62 72 65 61 6b 3b 0a 63 len-2],.$tokens[$len]);.break;.c
11c800 61 73 65 20 31 36 3a 0a 24 70 72 6f 70 65 72 74 79 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e ase.16:.$property.=.$tokens[$len
11c820 5d 5b 30 5d 20 3d 3d 3d 20 27 27 20 3f 20 27 5f 65 6d 70 74 79 5f 27 20 3a 20 24 74 6f 6b 65 6e ][0].===.''.?.'_empty_'.:.$token
11c840 73 5b 24 6c 65 6e 5d 5b 30 5d 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 26 20 73 s[$len][0];.if.($this->flags.&.s
11c860 65 6c 66 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 elf::PARSE_TO_ASSOC).{.$yyval->t
11c880 6f 6b 65 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 5b 24 70 oken.=.array();.$yyval->token[$p
11c8a0 72 6f 70 65 72 74 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 roperty].=.$tokens[$len][1];.}.e
11c8c0 6c 73 65 20 7b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 6e 65 77 20 73 74 64 43 6c 61 lse.{.$yyval->token.=.new.stdCla
11c8e0 73 73 3b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 2d 3e 24 70 72 6f 70 65 72 74 79 20 3d 20 24 ss;.$yyval->token->$property.=.$
11c900 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 31 5d 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 tokens[$len][1];.}.break;.case.1
11c920 37 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 3a 3a 50 41 52 53 7:.if.($this->flags.&.self::PARS
11c940 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 6e 20 3d 26 20 24 E_TO_ASSOC).{.$yyval->token.=&.$
11c960 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 3b 0a 24 6b 65 79 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 tokens[$len-2];.$key.=.$tokens[$
11c980 6c 65 6e 5d 5b 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 len][0];.if.(($this->flags.&.sel
11c9a0 66 3a 3a 44 45 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 f::DETECT_KEY_CONFLICTS).&&.isse
11c9c0 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 65 72 72 t($tokens[$len-2][$key])).{.$err
11c9e0 53 74 72 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 Str.=.'Parse.error.on.line.'...(
11ca00 24 79 79 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 $yylineno+1)...":\n";.$errStr..=
11ca20 20 24 74 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 .$this->lexer->showPosition()...
11ca40 22 5c 6e 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 "\n";.$errStr..=."Duplicate.key:
11ca60 20 22 2e 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 .".$tokens[$len][0];.throw.new.D
11ca80 75 70 6c 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 uplicateKeyException($errStr,.$t
11caa0 6f 6b 65 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 okens[$len][0],.array('line'.=>.
11cac0 24 79 79 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 $yylineno+1));.}.elseif.(($this-
11cae0 3e 66 6c 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 >flags.&.self::ALLOW_DUPLICATE_K
11cb00 45 59 53 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 5b 24 6b EYS).&&.isset($tokens[$len-2][$k
11cb20 65 79 5d 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 ey])).{.$duplicateCount.=.1;.do.
11cb40 7b 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 {.$duplicateKey.=.$key...'.'...$
11cb60 64 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 duplicateCount++;.}.while.(isset
11cb80 28 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 5b 24 64 75 70 6c 69 63 61 74 65 4b 65 79 5d 29 ($tokens[$len-2][$duplicateKey])
11cba0 29 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 );.$key.=.$duplicateKey;.}.$toke
11cbc0 6e 73 5b 24 6c 65 6e 2d 32 5d 5b 24 6b 65 79 5d 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d ns[$len-2][$key].=.$tokens[$len]
11cbe0 5b 31 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 [1];.}.else.{.$yyval->token.=.$t
11cc00 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 3b 0a 24 6b 65 79 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c okens[$len-2];.$key.=.$tokens[$l
11cc20 65 6e 5d 5b 30 5d 20 3d 3d 3d 20 27 27 20 3f 20 27 5f 65 6d 70 74 79 5f 27 20 3a 20 24 74 6f 6b en][0].===.''.?.'_empty_'.:.$tok
11cc40 65 6e 73 5b 24 6c 65 6e 5d 5b 30 5d 3b 0a 69 66 20 28 28 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 ens[$len][0];.if.(($this->flags.
11cc60 26 20 73 65 6c 66 3a 3a 44 45 54 45 43 54 5f 4b 45 59 5f 43 4f 4e 46 4c 49 43 54 53 29 20 26 26 &.self::DETECT_KEY_CONFLICTS).&&
11cc80 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 79 7d 29 29 .isset($tokens[$len-2]->{$key}))
11cca0 20 7b 0a 24 65 72 72 53 74 72 20 3d 20 27 50 61 72 73 65 20 65 72 72 6f 72 20 6f 6e 20 6c 69 6e .{.$errStr.=.'Parse.error.on.lin
11ccc0 65 20 27 20 2e 20 28 24 79 79 6c 69 6e 65 6e 6f 2b 31 29 20 2e 20 22 3a 5c 6e 22 3b 0a 24 65 72 e.'...($yylineno+1)...":\n";.$er
11cce0 72 53 74 72 20 2e 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 73 68 6f 77 50 6f 73 69 74 69 rStr..=.$this->lexer->showPositi
11cd00 6f 6e 28 29 20 2e 20 22 5c 6e 22 3b 0a 24 65 72 72 53 74 72 20 2e 3d 20 22 44 75 70 6c 69 63 61 on()..."\n";.$errStr..=."Duplica
11cd20 74 65 20 6b 65 79 3a 20 22 2e 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 30 5d 3b 0a 74 68 72 6f te.key:.".$tokens[$len][0];.thro
11cd40 77 20 6e 65 77 20 44 75 70 6c 69 63 61 74 65 4b 65 79 45 78 63 65 70 74 69 6f 6e 28 24 65 72 72 w.new.DuplicateKeyException($err
11cd60 53 74 72 2c 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 30 5d 2c 20 61 72 72 61 79 28 27 6c 69 Str,.$tokens[$len][0],.array('li
11cd80 6e 65 27 20 3d 3e 20 24 79 79 6c 69 6e 65 6e 6f 2b 31 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 ne'.=>.$yylineno+1));.}.elseif.(
11cda0 28 24 74 68 69 73 2d 3e 66 6c 61 67 73 20 26 20 73 65 6c 66 3a 3a 41 4c 4c 4f 57 5f 44 55 50 4c ($this->flags.&.self::ALLOW_DUPL
11cdc0 49 43 41 54 45 5f 4b 45 59 53 29 20 26 26 20 69 73 73 65 74 28 24 74 6f 6b 65 6e 73 5b 24 6c 65 ICATE_KEYS).&&.isset($tokens[$le
11cde0 6e 2d 32 5d 2d 3e 7b 24 6b 65 79 7d 29 29 20 7b 0a 24 64 75 70 6c 69 63 61 74 65 43 6f 75 6e 74 n-2]->{$key})).{.$duplicateCount
11ce00 20 3d 20 31 3b 0a 64 6f 20 7b 0a 24 64 75 70 6c 69 63 61 74 65 4b 65 79 20 3d 20 24 6b 65 79 20 .=.1;.do.{.$duplicateKey.=.$key.
11ce20 2e 20 27 2e 27 20 2e 20 24 64 75 70 6c 69 63 61 74 65 43 6f 75 6e 74 2b 2b 3b 0a 7d 20 77 68 69 ..'.'...$duplicateCount++;.}.whi
11ce40 6c 65 20 28 69 73 73 65 74 28 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 2d 3e 24 64 75 70 6c le.(isset($tokens[$len-2]->$dupl
11ce60 69 63 61 74 65 4b 65 79 29 29 3b 0a 24 6b 65 79 20 3d 20 24 64 75 70 6c 69 63 61 74 65 4b 65 79 icateKey));.$key.=.$duplicateKey
11ce80 3b 0a 7d 0a 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 2d 3e 24 6b 65 79 20 3d 20 24 74 6f 6b ;.}.$tokens[$len-2]->$key.=.$tok
11cea0 65 6e 73 5b 24 6c 65 6e 5d 5b 31 5d 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 38 3a 0a ens[$len][1];.}.break;.case.18:.
11cec0 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 62 72 65 61 6b 3b 0a $yyval->token.=.array();.break;.
11cee0 63 61 73 65 20 31 39 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 case.19:.$yyval->token.=.$tokens
11cf00 5b 24 6c 65 6e 2d 31 5d 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 32 30 3a 0a 24 79 79 76 61 6c [$len-1];.break;.case.20:.$yyval
11cf20 2d 3e 74 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 5d 29 3b 0a ->token.=.array($tokens[$len]);.
11cf40 62 72 65 61 6b 3b 0a 63 61 73 65 20 32 31 3a 0a 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 5b break;.case.21:.$tokens[$len-2][
11cf60 5d 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 3b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e ].=.$tokens[$len];.$yyval->token
11cf80 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 72 65 .=.$tokens[$len-2];.break;.}..re
11cfa0 74 75 72 6e 20 6e 65 77 20 55 6e 64 65 66 69 6e 65 64 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 turn.new.Undefined();.}..private
11cfc0 20 66 75 6e 63 74 69 6f 6e 20 73 74 72 69 6e 67 49 6e 74 65 72 70 6f 6c 61 74 69 6f 6e 28 24 6d .function.stringInterpolation($m
11cfe0 61 74 63 68 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 6d 61 74 63 68 5b 30 5d 29 20 7b 0a 63 61 73 atch).{.switch.($match[0]).{.cas
11d000 65 20 27 5c 5c 5c 5c 27 3a 0a 72 65 74 75 72 6e 20 27 5c 5c 27 3b 0a 63 61 73 65 20 27 5c 22 27 e.'\\\\':.return.'\\';.case.'\"'
11d020 3a 0a 72 65 74 75 72 6e 20 27 22 27 3b 0a 63 61 73 65 20 27 5c 62 27 3a 0a 72 65 74 75 72 6e 20 :.return.'"';.case.'\b':.return.
11d040 63 68 72 28 38 29 3b 0a 63 61 73 65 20 27 5c 66 27 3a 0a 72 65 74 75 72 6e 20 63 68 72 28 31 32 chr(8);.case.'\f':.return.chr(12
11d060 29 3b 0a 63 61 73 65 20 27 5c 6e 27 3a 0a 72 65 74 75 72 6e 20 22 5c 6e 22 3b 0a 63 61 73 65 20 );.case.'\n':.return."\n";.case.
11d080 27 5c 72 27 3a 0a 72 65 74 75 72 6e 20 22 5c 72 22 3b 0a 63 61 73 65 20 27 5c 74 27 3a 0a 72 65 '\r':.return."\r";.case.'\t':.re
11d0a0 74 75 72 6e 20 22 5c 74 22 3b 0a 63 61 73 65 20 27 5c 2f 27 3a 0a 72 65 74 75 72 6e 20 22 2f 22 turn."\t";.case.'\/':.return."/"
11d0c0 3b 0a 64 65 66 61 75 6c 74 3a 0a 72 65 74 75 72 6e 20 68 74 6d 6c 5f 65 6e 74 69 74 79 5f 64 65 ;.default:.return.html_entity_de
11d0e0 63 6f 64 65 28 27 26 23 78 27 2e 6c 74 72 69 6d 28 73 75 62 73 74 72 28 24 6d 61 74 63 68 5b 30 code('&#x'.ltrim(substr($match[0
11d100 5d 2c 20 32 29 2c 20 27 30 27 29 2e 27 3b 27 2c 20 30 2c 20 27 55 54 46 2d 38 27 29 3b 0a 7d 0a ],.2),.'0').';',.0,.'UTF-8');.}.
11d120 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 6f 70 53 74 61 63 6b 28 24 6e 29 }..private.function.popStack($n)
11d140 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 63 6b 20 3d 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 74 .{.$this->stack.=.array_slice($t
11d160 68 69 73 2d 3e 73 74 61 63 6b 2c 20 30 2c 20 2d 20 28 32 20 2a 20 24 6e 29 29 3b 0a 24 74 68 69 his->stack,.0,.-.(2.*.$n));.$thi
11d180 73 2d 3e 76 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 76 s->vstack.=.array_slice($this->v
11d1a0 73 74 61 63 6b 2c 20 30 2c 20 2d 20 24 6e 29 3b 0a 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 20 3d stack,.0,.-.$n);.$this->lstack.=
11d1c0 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 2c 20 30 2c 20 2d .array_slice($this->lstack,.0,.-
11d1e0 20 24 6e 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 65 78 28 29 0a .$n);.}..private.function.lex().
11d200 7b 0a 24 74 6f 6b 65 6e 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 6c 65 78 28 29 20 3f {.$token.=.$this->lexer->lex().?
11d220 3a 20 31 3b 20 0a 20 0a 20 69 66 20 28 21 69 73 5f 6e 75 6d 65 72 69 63 28 24 74 6f 6b 65 6e 29 :.1;.....if.(!is_numeric($token)
11d240 29 20 7b 0a 24 74 6f 6b 65 6e 20 3d 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 79 6d 62 6f 6c ).{.$token.=.isset($this->symbol
11d260 73 5b 24 74 6f 6b 65 6e 5d 29 20 3f 20 24 74 68 69 73 2d 3e 73 79 6d 62 6f 6c 73 5b 24 74 6f 6b s[$token]).?.$this->symbols[$tok
11d280 65 6e 5d 20 3a 20 24 74 6f 6b 65 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6f 6b 65 6e 3b 0a en].:.$token;.}..return.$token;.
11d2a0 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 61 69 6c 4f 6e 42 4f 4d 28 24 69 }..private.function.failOnBOM($i
11d2c0 6e 70 75 74 29 0a 7b 0a 0a 20 24 62 6f 6d 20 3d 20 22 5c 78 45 46 5c 78 42 42 5c 78 42 46 22 3b nput).{...$bom.=."\xEF\xBB\xBF";
11d2e0 0a 0a 69 66 20 28 73 75 62 73 74 72 28 24 69 6e 70 75 74 2c 20 30 2c 20 33 29 20 3d 3d 3d 20 24 ..if.(substr($input,.0,.3).===.$
11d300 62 6f 6d 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 45 72 72 6f 72 28 22 42 4f 4d 20 64 65 bom).{.$this->parseError("BOM.de
11d320 74 65 63 74 65 64 2c 20 6d 61 6b 65 20 73 75 72 65 20 79 6f 75 72 20 69 6e 70 75 74 20 64 6f 65 tected,.make.sure.your.input.doe
11d340 73 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 61 20 55 6e 69 63 6f 64 65 20 42 79 74 65 2d 4f 72 64 s.not.include.a.Unicode.Byte-Ord
11d360 65 72 2d 4d 61 72 6b 22 2c 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a er-Mark",.array());.}.}.}.<?php.
11d380 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 4c 69 6e ..........namespace.Seld\JsonLin
11d3a0 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 65 78 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 t;.......class.Lexer.{.private.$
11d3c0 45 4f 46 20 3d 20 31 3b 0a 70 72 69 76 61 74 65 20 24 72 75 6c 65 73 20 3d 20 61 72 72 61 79 28 EOF.=.1;.private.$rules.=.array(
11d3e0 0a 30 20 3d 3e 20 27 2f 5e 5c 73 2b 2f 27 2c 0a 31 20 3d 3e 20 27 2f 5e 2d 3f 28 5b 30 2d 39 5d .0.=>.'/^\s+/',.1.=>.'/^-?([0-9]
11d400 7c 5b 31 2d 39 5d 5b 30 2d 39 5d 2b 29 28 5c 2e 5b 30 2d 39 5d 2b 29 3f 28 5b 65 45 5d 5b 2b 2d |[1-9][0-9]+)(\.[0-9]+)?([eE][+-
11d420 5d 3f 5b 30 2d 39 5d 2b 29 3f 5c 62 2f 27 2c 0a 32 20 3d 3e 20 27 7b 5e 22 28 3f 3a 5c 5c 5c 5c ]?[0-9]+)?\b/',.2.=>.'{^"(?:\\\\
11d440 5b 22 62 66 6e 72 74 2f 5c 5c 5c 5c 5d 7c 5c 5c 5c 5c 75 5b 61 2d 66 41 2d 46 30 2d 39 5d 7b 34 ["bfnrt/\\\\]|\\\\u[a-fA-F0-9]{4
11d460 7d 7c 5b 5e 5c 30 2d 5c 78 30 39 5c 78 30 61 2d 5c 78 31 66 5c 5c 5c 5c 22 5d 2b 29 2a 22 7d 27 }|[^\0-\x09\x0a-\x1f\\\\"]+)*"}'
11d480 2c 0a 33 20 3d 3e 20 27 2f 5e 5c 7b 2f 27 2c 0a 34 20 3d 3e 20 27 2f 5e 5c 7d 2f 27 2c 0a 35 20 ,.3.=>.'/^\{/',.4.=>.'/^\}/',.5.
11d4a0 3d 3e 20 27 2f 5e 5c 5b 2f 27 2c 0a 36 20 3d 3e 20 27 2f 5e 5c 5d 2f 27 2c 0a 37 20 3d 3e 20 27 =>.'/^\[/',.6.=>.'/^\]/',.7.=>.'
11d4c0 2f 5e 2c 2f 27 2c 0a 38 20 3d 3e 20 27 2f 5e 3a 2f 27 2c 0a 39 20 3d 3e 20 27 2f 5e 74 72 75 65 /^,/',.8.=>.'/^:/',.9.=>.'/^true
11d4e0 5c 62 2f 27 2c 0a 31 30 20 3d 3e 20 27 2f 5e 66 61 6c 73 65 5c 62 2f 27 2c 0a 31 31 20 3d 3e 20 \b/',.10.=>.'/^false\b/',.11.=>.
11d500 27 2f 5e 6e 75 6c 6c 5c 62 2f 27 2c 0a 31 32 20 3d 3e 20 27 2f 5e 24 2f 27 2c 0a 31 33 20 3d 3e '/^null\b/',.12.=>.'/^$/',.13.=>
11d520 20 27 2f 5e 2e 2f 27 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 64 69 74 69 6f 6e 73 .'/^./',.);..private.$conditions
11d540 20 3d 20 61 72 72 61 79 28 0a 22 49 4e 49 54 49 41 4c 22 20 3d 3e 20 61 72 72 61 79 28 0a 22 72 .=.array(."INITIAL".=>.array(."r
11d560 75 6c 65 73 22 20 3d 3e 20 61 72 72 61 79 28 30 2c 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37 2c 38 ules".=>.array(0,1,2,3,4,5,6,7,8
11d580 2c 39 2c 31 30 2c 31 31 2c 31 32 2c 31 33 29 2c 0a 22 69 6e 63 6c 75 73 69 76 65 22 20 3d 3e 20 ,9,10,11,12,13),."inclusive".=>.
11d5a0 74 72 75 65 2c 0a 29 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 64 69 74 69 6f 6e 53 true,.),.);..private.$conditionS
11d5c0 74 61 63 6b 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 6d tack;.private.$input;.private.$m
11d5e0 6f 72 65 3b 0a 70 72 69 76 61 74 65 20 24 64 6f 6e 65 3b 0a 70 72 69 76 61 74 65 20 24 6d 61 74 ore;.private.$done;.private.$mat
11d600 63 68 65 64 3b 0a 0a 70 75 62 6c 69 63 20 24 6d 61 74 63 68 3b 0a 70 75 62 6c 69 63 20 24 79 79 ched;..public.$match;.public.$yy
11d620 6c 69 6e 65 6e 6f 3b 0a 70 75 62 6c 69 63 20 24 79 79 6c 65 6e 67 3b 0a 70 75 62 6c 69 63 20 24 lineno;.public.$yyleng;.public.$
11d640 79 79 74 65 78 74 3b 0a 70 75 62 6c 69 63 20 24 79 79 6c 6c 6f 63 3b 0a 0a 70 75 62 6c 69 63 20 yytext;.public.$yylloc;..public.
11d660 66 75 6e 63 74 69 6f 6e 20 6c 65 78 28 29 0a 7b 0a 24 72 20 3d 20 24 74 68 69 73 2d 3e 6e 65 78 function.lex().{.$r.=.$this->nex
11d680 74 28 29 3b 0a 69 66 20 28 21 24 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 66 69 6e 65 t();.if.(!$r.instanceof.Undefine
11d6a0 64 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d d).{.return.$r;.}..return.$this-
11d6c0 3e 6c 65 78 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 49 6e >lex();.}..public.function.setIn
11d6e0 70 75 74 28 24 69 6e 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 24 69 6e put($input).{.$this->input.=.$in
11d700 70 75 74 3b 0a 24 74 68 69 73 2d 3e 6d 6f 72 65 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d put;.$this->more.=.false;.$this-
11d720 3e 64 6f 6e 65 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 20 3d >done.=.false;.$this->yylineno.=
11d740 20 24 74 68 69 73 2d 3e 79 79 6c 65 6e 67 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 79 79 74 65 78 .$this->yyleng.=.0;.$this->yytex
11d760 74 20 3d 20 24 74 68 69 73 2d 3e 6d 61 74 63 68 65 64 20 3d 20 24 74 68 69 73 2d 3e 6d 61 74 63 t.=.$this->matched.=.$this->matc
11d780 68 20 3d 20 27 27 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 6b 20 3d 20 h.=.'';.$this->conditionStack.=.
11d7a0 61 72 72 61 79 28 27 49 4e 49 54 49 41 4c 27 29 3b 0a 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 20 array('INITIAL');.$this->yylloc.
11d7c0 3d 20 61 72 72 61 79 28 27 66 69 72 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 31 2c 20 27 66 69 72 73 =.array('first_line'.=>.1,.'firs
11d7e0 74 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 30 2c 20 27 6c 61 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 31 t_column'.=>.0,.'last_line'.=>.1
11d800 2c 20 27 6c 61 73 74 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 30 29 3b 0a 0a 72 65 74 75 72 6e 20 24 ,.'last_column'.=>.0);..return.$
11d820 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 77 50 6f 73 this;.}..public.function.showPos
11d840 69 74 69 6f 6e 28 29 0a 7b 0a 24 70 72 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e ition().{.$pre.=.str_replace("\n
11d860 22 2c 20 27 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 50 61 73 74 49 6e 70 75 74 28 29 29 3b 0a 24 ",.'',.$this->getPastInput());.$
11d880 63 20 3d 20 73 74 72 5f 72 65 70 65 61 74 28 27 2d 27 2c 20 6d 61 78 28 30 2c 20 73 74 72 6c 65 c.=.str_repeat('-',.max(0,.strle
11d8a0 6e 28 24 70 72 65 29 20 2d 20 31 29 29 3b 20 0a 0a 72 65 74 75 72 6e 20 24 70 72 65 20 2e 20 73 n($pre).-.1));...return.$pre...s
11d8c0 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 27 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 55 tr_replace("\n",.'',.$this->getU
11d8e0 70 63 6f 6d 69 6e 67 49 6e 70 75 74 28 29 29 20 2e 20 22 5c 6e 22 20 2e 20 24 63 20 2e 20 22 5e pcomingInput())..."\n"...$c..."^
11d900 22 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 61 73 74 49 6e 70 ";.}..public.function.getPastInp
11d920 75 74 28 29 0a 7b 0a 24 70 61 73 74 20 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 6d 61 74 ut().{.$past.=.substr($this->mat
11d940 63 68 65 64 2c 20 30 2c 20 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 65 64 29 20 ched,.0,.strlen($this->matched).
11d960 2d 20 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 29 29 3b 0a 0a 72 65 74 75 72 6e -.strlen($this->match));..return
11d980 20 28 73 74 72 6c 65 6e 28 24 70 61 73 74 29 20 3e 20 32 30 20 3f 20 27 2e 2e 2e 27 20 3a 20 27 .(strlen($past).>.20.?.'...'.:.'
11d9a0 27 29 20 2e 20 73 75 62 73 74 72 28 24 70 61 73 74 2c 20 2d 32 30 29 3b 0a 7d 0a 0a 70 75 62 6c ')...substr($past,.-20);.}..publ
11d9c0 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 70 63 6f 6d 69 6e 67 49 6e 70 75 74 28 29 0a 7b ic.function.getUpcomingInput().{
11d9e0 0a 24 6e 65 78 74 20 3d 20 24 74 68 69 73 2d 3e 6d 61 74 63 68 3b 0a 69 66 20 28 73 74 72 6c 65 .$next.=.$this->match;.if.(strle
11da00 6e 28 24 6e 65 78 74 29 20 3c 20 32 30 29 20 7b 0a 24 6e 65 78 74 20 2e 3d 20 73 75 62 73 74 72 n($next).<.20).{.$next..=.substr
11da20 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 30 2c 20 32 30 20 2d 20 73 74 72 6c 65 6e 28 24 6e ($this->input,.0,.20.-.strlen($n
11da40 65 78 74 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 75 62 73 74 72 28 24 6e 65 78 74 2c 20 30 ext));.}..return.substr($next,.0
11da60 2c 20 32 30 29 20 2e 20 28 73 74 72 6c 65 6e 28 24 6e 65 78 74 29 20 3e 20 32 30 20 3f 20 27 2e ,.20)...(strlen($next).>.20.?.'.
11da80 2e 2e 27 20 3a 20 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 ..'.:.'');.}..protected.function
11daa0 20 70 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 .parseError($str,.$hash).{.throw
11dac0 20 6e 65 77 20 5c 45 78 63 65 70 74 69 6f 6e 28 24 73 74 72 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 .new.\Exception($str);.}..privat
11dae0 65 20 66 75 6e 63 74 69 6f 6e 20 6e 65 78 74 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 e.function.next().{.if.($this->d
11db00 6f 6e 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 45 4f 46 3b 0a 7d 0a 69 66 20 28 one).{.return.$this->EOF;.}.if.(
11db20 21 24 74 68 69 73 2d 3e 69 6e 70 75 74 29 20 7b 0a 24 74 68 69 73 2d 3e 64 6f 6e 65 20 3d 20 74 !$this->input).{.$this->done.=.t
11db40 72 75 65 3b 0a 7d 0a 0a 24 74 6f 6b 65 6e 20 3d 20 6e 75 6c 6c 3b 0a 24 6d 61 74 63 68 20 3d 20 rue;.}..$token.=.null;.$match.=.
11db60 6e 75 6c 6c 3b 0a 24 63 6f 6c 20 3d 20 6e 75 6c 6c 3b 0a 24 6c 69 6e 65 73 20 3d 20 6e 75 6c 6c null;.$col.=.null;.$lines.=.null
11db80 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6d 6f 72 65 29 20 7b 0a 24 74 68 69 73 2d 3e 79 79 ;..if.(!$this->more).{.$this->yy
11dba0 74 65 78 74 20 3d 20 27 27 3b 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 20 3d 20 27 27 3b 0a 7d 0a text.=.'';.$this->match.=.'';.}.
11dbc0 0a 24 72 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 75 72 72 65 6e 74 52 75 6c 65 73 .$rules.=.$this->getCurrentRules
11dbe0 28 29 3b 0a 24 72 75 6c 65 73 4c 65 6e 20 3d 20 63 6f 75 6e 74 28 24 72 75 6c 65 73 29 3b 0a 0a ();.$rulesLen.=.count($rules);..
11dc00 66 6f 72 20 28 24 69 3d 30 3b 20 24 69 20 3c 20 24 72 75 6c 65 73 4c 65 6e 3b 20 24 69 2b 2b 29 for.($i=0;.$i.<.$rulesLen;.$i++)
11dc20 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 .{.if.(preg_match($this->rules[$
11dc40 72 75 6c 65 73 5b 24 69 5d 5d 2c 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 24 6d 61 74 63 68 rules[$i]],.$this->input,.$match
11dc60 29 29 20 7b 0a 70 72 65 67 5f 6d 61 74 63 68 5f 61 6c 6c 28 27 2f 5c 6e 2e 2a 2f 27 2c 20 24 6d )).{.preg_match_all('/\n.*/',.$m
11dc80 61 74 63 68 5b 30 5d 2c 20 24 6c 69 6e 65 73 29 3b 0a 24 6c 69 6e 65 73 20 3d 20 24 6c 69 6e 65 atch[0],.$lines);.$lines.=.$line
11dca0 73 5b 30 5d 3b 0a 69 66 20 28 24 6c 69 6e 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 79 79 6c 69 6e s[0];.if.($lines).{.$this->yylin
11dcc0 65 6e 6f 20 2b 3d 20 63 6f 75 6e 74 28 24 6c 69 6e 65 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e eno.+=.count($lines);.}..$this->
11dce0 79 79 6c 6c 6f 63 20 3d 20 61 72 72 61 79 28 0a 27 66 69 72 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 yylloc.=.array(.'first_line'.=>.
11dd00 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 5b 27 6c 61 73 74 5f 6c 69 6e 65 27 5d 2c 0a 27 6c 61 73 $this->yylloc['last_line'],.'las
11dd20 74 5f 6c 69 6e 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 2b 31 2c 0a 27 66 t_line'.=>.$this->yylineno+1,.'f
11dd40 69 72 73 74 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 5b 27 6c irst_column'.=>.$this->yylloc['l
11dd60 61 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 27 20 3d 3e 20 24 ast_column'],.'last_column'.=>.$
11dd80 6c 69 6e 65 73 20 3f 20 73 74 72 6c 65 6e 28 24 6c 69 6e 65 73 5b 63 6f 75 6e 74 28 24 6c 69 6e lines.?.strlen($lines[count($lin
11dda0 65 73 29 20 2d 20 31 5d 29 20 2d 20 31 20 3a 20 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 5b 27 6c es).-.1]).-.1.:.$this->yylloc['l
11ddc0 61 73 74 5f 63 6f 6c 75 6d 6e 27 5d 20 2b 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 30 5d 29 ast_column'].+.strlen($match[0])
11dde0 2c 0a 29 3b 0a 24 74 68 69 73 2d 3e 79 79 74 65 78 74 20 2e 3d 20 24 6d 61 74 63 68 5b 30 5d 3b ,.);.$this->yytext..=.$match[0];
11de00 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 20 2e 3d 20 24 6d 61 74 63 68 5b 30 5d 3b 0a 24 74 68 69 .$this->match..=.$match[0];.$thi
11de20 73 2d 3e 79 79 6c 65 6e 67 20 3d 20 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 79 79 74 65 78 74 s->yyleng.=.strlen($this->yytext
11de40 29 3b 0a 24 74 68 69 73 2d 3e 6d 6f 72 65 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 69 );.$this->more.=.false;.$this->i
11de60 6e 70 75 74 20 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 73 74 72 6c nput.=.substr($this->input,.strl
11de80 65 6e 28 24 6d 61 74 63 68 5b 30 5d 29 29 3b 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 65 64 20 2e en($match[0]));.$this->matched..
11dea0 3d 20 24 6d 61 74 63 68 5b 30 5d 3b 0a 24 74 6f 6b 65 6e 20 3d 20 24 74 68 69 73 2d 3e 70 65 72 =.$match[0];.$token.=.$this->per
11dec0 66 6f 72 6d 41 63 74 69 6f 6e 28 24 72 75 6c 65 73 5b 24 69 5d 2c 20 24 74 68 69 73 2d 3e 63 6f formAction($rules[$i],.$this->co
11dee0 6e 64 69 74 69 6f 6e 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 nditionStack[count($this->condit
11df00 69 6f 6e 53 74 61 63 6b 29 2d 31 5d 29 3b 0a 69 66 20 28 24 74 6f 6b 65 6e 29 20 7b 0a 72 65 74 ionStack)-1]);.if.($token).{.ret
11df20 75 72 6e 20 24 74 6f 6b 65 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 55 6e 64 65 66 69 urn.$token;.}..return.new.Undefi
11df40 6e 65 64 28 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 3d 3d ned();.}.}..if.($this->input.===
11df60 20 22 22 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 45 4f 46 3b 0a 7d 0a 0a 24 74 68 ."").{.return.$this->EOF;.}..$th
11df80 69 73 2d 3e 70 61 72 73 65 45 72 72 6f 72 28 0a 27 4c 65 78 69 63 61 6c 20 65 72 72 6f 72 20 6f is->parseError(.'Lexical.error.o
11dfa0 6e 20 6c 69 6e 65 20 27 20 2e 20 28 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 2b 31 29 20 2e n.line.'...($this->yylineno+1)..
11dfc0 20 22 2e 20 55 6e 72 65 63 6f 67 6e 69 7a 65 64 20 74 65 78 74 2e 5c 6e 22 20 2e 20 24 74 68 69 ."..Unrecognized.text.\n"...$thi
11dfe0 73 2d 3e 73 68 6f 77 50 6f 73 69 74 69 6f 6e 28 29 2c 0a 61 72 72 61 79 28 0a 27 74 65 78 74 27 s->showPosition(),.array(.'text'
11e000 20 3d 3e 20 22 22 2c 0a 27 74 6f 6b 65 6e 27 20 3d 3e 20 6e 75 6c 6c 2c 0a 27 6c 69 6e 65 27 20 .=>."",.'token'.=>.null,.'line'.
11e020 3d 3e 20 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 2c 0a 29 0a 29 3b 0a 7d 0a 0a 70 72 69 76 =>.$this->yylineno,.).);.}..priv
11e040 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 75 72 72 65 6e 74 52 75 6c 65 73 28 29 0a 7b ate.function.getCurrentRules().{
11e060 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 73 5b 24 74 68 69 73 2d .return.$this->conditions[$this-
11e080 3e 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 63 6f 6e >conditionStack[count($this->con
11e0a0 64 69 74 69 6f 6e 53 74 61 63 6b 29 2d 31 5d 5d 5b 27 72 75 6c 65 73 27 5d 3b 0a 7d 0a 0a 70 72 ditionStack)-1]]['rules'];.}..pr
11e0c0 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 65 72 66 6f 72 6d 41 63 74 69 6f 6e 28 24 61 76 ivate.function.performAction($av
11e0e0 6f 69 64 69 6e 67 5f 6e 61 6d 65 5f 63 6f 6c 6c 69 73 69 6f 6e 73 2c 20 24 59 59 5f 53 54 41 52 oiding_name_collisions,.$YY_STAR
11e100 54 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 61 76 6f 69 64 69 6e 67 5f 6e 61 6d 65 5f 63 6f 6c 6c T).{.switch.($avoiding_name_coll
11e120 69 73 69 6f 6e 73 29 20 7b 0a 63 61 73 65 20 30 3a 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 3a isions).{.case.0:.break;.case.1:
11e140 0a 72 65 74 75 72 6e 20 36 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 32 3a 0a 24 74 68 69 73 2d .return.6;.break;.case.2:.$this-
11e160 3e 79 79 74 65 78 74 20 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 79 79 74 65 78 74 2c 20 >yytext.=.substr($this->yytext,.
11e180 31 2c 20 24 74 68 69 73 2d 3e 79 79 6c 65 6e 67 2d 32 29 3b 0a 0a 72 65 74 75 72 6e 20 34 3b 0a 1,.$this->yyleng-2);..return.4;.
11e1a0 63 61 73 65 20 33 3a 0a 72 65 74 75 72 6e 20 31 37 3b 0a 63 61 73 65 20 34 3a 0a 72 65 74 75 72 case.3:.return.17;.case.4:.retur
11e1c0 6e 20 31 38 3b 0a 63 61 73 65 20 35 3a 0a 72 65 74 75 72 6e 20 32 33 3b 0a 63 61 73 65 20 36 3a n.18;.case.5:.return.23;.case.6:
11e1e0 0a 72 65 74 75 72 6e 20 32 34 3b 0a 63 61 73 65 20 37 3a 0a 72 65 74 75 72 6e 20 32 32 3b 0a 63 .return.24;.case.7:.return.22;.c
11e200 61 73 65 20 38 3a 0a 72 65 74 75 72 6e 20 32 31 3b 0a 63 61 73 65 20 39 3a 0a 72 65 74 75 72 6e ase.8:.return.21;.case.9:.return
11e220 20 31 30 3b 0a 63 61 73 65 20 31 30 3a 0a 72 65 74 75 72 6e 20 31 31 3b 0a 63 61 73 65 20 31 31 .10;.case.10:.return.11;.case.11
11e240 3a 0a 72 65 74 75 72 6e 20 38 3b 0a 63 61 73 65 20 31 32 3a 0a 72 65 74 75 72 6e 20 31 34 3b 0a :.return.8;.case.12:.return.14;.
11e260 63 61 73 65 20 31 33 3a 0a 72 65 74 75 72 6e 20 27 49 4e 56 41 4c 49 44 27 3b 0a 7d 0a 7d 0a 7d case.13:.return.'INVALID';.}.}.}
11e280 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 65 6c 64 5c .<?php...........namespace.Seld\
11e2a0 4a 73 6f 6e 4c 69 6e 74 3b 0a 0a 63 6c 61 73 73 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f JsonLint;..class.ParsingExceptio
11e2c0 6e 20 65 78 74 65 6e 64 73 20 5c 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 n.extends.\Exception.{.protected
11e2e0 20 24 64 65 74 61 69 6c 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f .$details;..public.function.__co
11e300 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 20 3d 20 61 72 72 nstruct($message,.$details.=.arr
11e320 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 74 61 69 6c 73 20 3d 20 24 64 65 74 61 69 6c ay()).{.$this->details.=.$detail
11e340 73 3b 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 29 s;.parent::__construct($message)
11e360 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 74 61 69 6c 73 28 ;.}..public.function.getDetails(
11e380 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 74 61 69 6c 73 3b 0a 7d 0a 7d 0a 3c ).{.return.$this->details;.}.}.<
11e3a0 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 65 6c 64 5c 4a 73 ?php...........namespace.Seld\Js
11e3c0 6f 6e 4c 69 6e 74 3b 0a 0a 63 6c 61 73 73 20 55 6e 64 65 66 69 6e 65 64 0a 7b 0a 7d 0a 43 6f 70 onLint;..class.Undefined.{.}.Cop
11e3e0 79 72 69 67 68 74 20 28 63 29 20 32 30 31 35 20 4a 6f 72 64 69 20 42 6f 67 67 69 61 6e 6f 0a 0a yright.(c).2015.Jordi.Boggiano..
11e400 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 72 Permission.is.hereby.granted,.fr
11e420 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 61 ee.of.charge,.to.any.person.obta
11e440 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 6e ining.a.copy.of.this.software.an
11e460 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 73 d.associated.documentation.files
11e480 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 68 .(the."Software"),.to.deal.in.th
11e4a0 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 20 e.Software.without.restriction,.
11e4c0 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 65 including.without.limitation.the
11e4e0 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 65 .rights.to.use,.copy,.modify,.me
11e500 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 63 rge,.publish,.distribute,.sublic
11e520 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 20 ense,.and/or.sell.copies.of.the.
11e540 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 20 Software,.and.to.permit.persons.
11e560 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 65 to.whom.the.Software.is.furnishe
11e580 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 6f d.to.do.so,.subject.to.the.follo
11e5a0 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 79 wing.conditions:..The.above.copy
11e5c0 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 6e right.notice.and.this.permission
11e5e0 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 6c .notice.shall.be.included.in.all
11e600 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 20 .copies.or.substantial.portions.
11e620 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 49 of.the.Software...THE.SOFTWARE.I
11e640 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 52 S.PROVIDED."AS.IS",.WITHOUT.WARR
11e660 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 50 ANTY.OF.ANY.KIND,.EXPRESS.OR.IMP
11e680 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 20 LIED,.INCLUDING.BUT.NOT.LIMITED.
11e6a0 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 49 TO.THE.WARRANTIES.OF.MERCHANTABI
11e6c0 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 50 LITY,.FITNESS.FOR.A.PARTICULAR.P
11e6e0 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 4e URPOSE.AND.NONINFRINGEMENT..IN.N
11e700 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 50 O.EVENT.SHALL.THE.AUTHORS.OR.COP
11e720 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 59 YRIGHT.HOLDERS.BE.LIABLE.FOR.ANY
11e740 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 49 .CLAIM,.DAMAGES.OR.OTHER.LIABILI
11e760 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 54 TY,.WHETHER.IN.AN.ACTION.OF.CONT
11e780 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 47 RACT,.TORT.OR.OTHERWISE,.ARISING
11e7a0 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 57 .FROM,.OUT.OF.OR.IN.CONNECTION.W
11e7c0 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 4f ITH.THE.SOFTWARE.OR.THE.USE.OR.O
11e7e0 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 3c THER.DEALINGS.IN.THE.SOFTWARE..<
11e800 3f 70 68 70 0a 0a 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 2e 27 2f 2e 2e 2f 76 65 6e 64 6f ?php..require.__DIR__.'/../vendo
11e820 72 2f 61 75 74 6f 6c 6f 61 64 2e 70 68 70 27 3b 0a 0a 65 63 68 6f 20 27 53 61 79 20 68 65 6c 6c r/autoload.php';..echo.'Say.hell
11e840 6f 20 28 76 69 73 69 62 6c 65 29 3a 20 27 3b 0a 0a 24 61 6e 73 77 65 72 20 3d 20 53 65 6c 64 5c o.(visible):.';..$answer.=.Seld\
11e860 43 6c 69 50 72 6f 6d 70 74 5c 43 6c 69 50 72 6f 6d 70 74 3a 3a 70 72 6f 6d 70 74 28 29 3b 0a 0a CliPrompt\CliPrompt::prompt();..
11e880 65 63 68 6f 20 27 59 6f 75 20 61 6e 73 77 65 72 65 64 3a 20 27 2e 24 61 6e 73 77 65 72 20 2e 20 echo.'You.answered:.'.$answer...
11e8a0 50 48 50 5f 45 4f 4c 3b 0a 0a 65 63 68 6f 20 27 53 61 79 20 68 65 6c 6c 6f 20 28 68 69 64 64 65 PHP_EOL;..echo.'Say.hello.(hidde
11e8c0 6e 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 n):.';..$answer.=.Seld\CliPrompt
11e8e0 5c 43 6c 69 50 72 6f 6d 70 74 3a 3a 68 69 64 64 65 6e 50 72 6f 6d 70 74 28 29 3b 0a 0a 65 63 68 \CliPrompt::hiddenPrompt();..ech
11e900 6f 20 27 59 6f 75 20 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 o.'You.answered:.'.$answer...PHP
11e920 5f 45 4f 4c 3b 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 _EOL;.<?php...........namespace.
11e940 53 65 6c 64 5c 43 6c 69 50 72 6f 6d 70 74 3b 0a 0a 63 6c 61 73 73 20 43 6c 69 50 72 6f 6d 70 74 Seld\CliPrompt;..class.CliPrompt
11e960 0a 7b 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 70 .{......public.static.function.p
11e980 72 6f 6d 70 74 28 29 0a 7b 0a 24 73 74 64 69 6e 20 3d 20 66 6f 70 65 6e 28 27 70 68 70 3a 2f 2f rompt().{.$stdin.=.fopen('php://
11e9a0 73 74 64 69 6e 27 2c 20 27 72 27 29 3b 0a 24 61 6e 73 77 65 72 20 3d 20 73 65 6c 66 3a 3a 74 72 stdin',.'r');.$answer.=.self::tr
11e9c0 69 6d 41 6e 73 77 65 72 28 66 67 65 74 73 28 24 73 74 64 69 6e 2c 20 34 30 39 36 29 29 3b 0a 66 imAnswer(fgets($stdin,.4096));.f
11e9e0 63 6c 6f 73 65 28 24 73 74 64 69 6e 29 3b 0a 0a 72 65 74 75 72 6e 20 24 61 6e 73 77 65 72 3b 0a close($stdin);..return.$answer;.
11ea00 7d 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
11ea20 6f 6e 20 68 69 64 64 65 6e 50 72 6f 6d 70 74 28 24 61 6c 6c 6f 77 46 61 6c 6c 62 61 63 6b 20 3d on.hiddenPrompt($allowFallback.=
11ea40 20 66 61 6c 73 65 29 0a 7b 0a 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e .false).{...if.(defined('PHP_WIN
11ea60 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 0a 20 24 65 78 65 20 3d DOWS_VERSION_BUILD')).{...$exe.=
11ea80 20 5f 5f 44 49 52 5f 5f 2e 27 5c 5c 2e 2e 5c 5c 72 65 73 5c 5c 68 69 64 64 65 6e 69 6e 70 75 74 .__DIR__.'\\..\\res\\hiddeninput
11eaa0 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 73 74 72 .exe';....if.('phar:'.===.substr
11eac0 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 20 73 79 (__FILE__,.0,.5)).{.$tmpExe.=.sy
11eae0 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 74 2e 65 s_get_temp_dir().'/hiddeninput.e
11eb00 78 65 27 3b 0a 0a 0a 20 0a 20 24 73 6f 75 72 63 65 20 3d 20 66 6f 70 65 6e 28 24 65 78 65 2c 20 xe';......$source.=.fopen($exe,.
11eb20 27 72 27 29 3b 0a 24 74 61 72 67 65 74 20 3d 20 66 6f 70 65 6e 28 24 74 6d 70 45 78 65 2c 20 27 'r');.$target.=.fopen($tmpExe,.'
11eb40 77 2b 27 29 3b 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 w+');.stream_copy_to_stream($sou
11eb60 72 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 rce,.$target);.fclose($source);.
11eb80 66 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 fclose($target);.unset($source,.
11eba0 24 74 61 72 67 65 74 29 3b 0a 0a 24 65 78 65 20 3d 20 24 74 6d 70 45 78 65 3b 0a 7d 0a 0a 24 61 $target);..$exe.=.$tmpExe;.}..$a
11ebc0 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 73 68 65 6c 6c 5f 65 nswer.=.self::trimAnswer(shell_e
11ebe0 78 65 63 28 24 65 78 65 29 29 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 74 6d 70 45 78 65 xec($exe));....if.(isset($tmpExe
11ec00 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 0a 20 65 63 68 6f 20 )).{.unlink($tmpExe);.}....echo.
11ec20 50 48 50 5f 45 4f 4c 3b 0a 0a 72 65 74 75 72 6e 20 24 61 6e 73 77 65 72 3b 0a 7d 0a 0a 69 66 20 PHP_EOL;..return.$answer;.}..if.
11ec40 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')).{.
11ec60 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
11ec80 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.(
11eca0 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
11ecc0 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(
11ece0 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)))
11ed00 29 20 7b 0a 24 73 68 65 6c 6c 20 3d 20 24 73 68 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 69 66 ).{.$shell.=.$sh;.break;.}.}..if
11ed20 20 28 69 73 73 65 74 28 24 73 68 65 6c 6c 29 29 20 7b 0a 24 72 65 61 64 43 6d 64 20 3d 20 28 24 .(isset($shell)).{.$readCmd.=.($
11ed40 73 68 65 6c 6c 20 3d 3d 3d 20 27 63 73 68 27 29 20 3f 20 27 73 65 74 20 6d 79 70 61 73 73 77 6f shell.===.'csh').?.'set.mypasswo
11ed60 72 64 20 3d 20 24 3c 27 20 3a 20 27 72 65 61 64 20 2d 72 20 6d 79 70 61 73 73 77 6f 72 64 27 3b rd.=.$<'.:.'read.-r.mypassword';
11ed80 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 22 2f 75 73 72 2f 62 69 6e 2f 65 6e .$command.=.sprintf("/usr/bin/en
11eda0 76 20 25 73 20 2d 63 20 27 73 74 74 79 20 2d 65 63 68 6f 3b 20 25 73 3b 20 73 74 74 79 20 65 63 v.%s.-c.'stty.-echo;.%s;.stty.ec
11edc0 68 6f 3b 20 65 63 68 6f 20 5c 24 6d 79 70 61 73 73 77 6f 72 64 27 22 2c 20 24 73 68 65 6c 6c 2c ho;.echo.\$mypassword'",.$shell,
11ede0 20 24 72 65 61 64 43 6d 64 29 3b 0a 24 76 61 6c 75 65 20 3d 20 73 65 6c 66 3a 3a 74 72 69 6d 41 .$readCmd);.$value.=.self::trimA
11ee00 6e 73 77 65 72 28 73 68 65 6c 6c 5f 65 78 65 63 28 24 63 6f 6d 6d 61 6e 64 29 29 3b 0a 0a 0a 20 nswer(shell_exec($command));....
11ee20 65 63 68 6f 20 50 48 50 5f 45 4f 4c 3b 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a echo.PHP_EOL;..return.$value;.}.
11ee40 7d 0a 0a 0a 20 69 66 20 28 21 24 61 6c 6c 6f 77 46 61 6c 6c 62 61 63 6b 29 20 7b 0a 74 68 72 6f }....if.(!$allowFallback).{.thro
11ee60 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 20 6e w.new.\RuntimeException('Could.n
11ee80 6f 74 20 70 72 6f 6d 70 74 20 66 6f 72 20 69 6e 70 75 74 20 69 6e 20 61 20 73 65 63 75 72 65 20 ot.prompt.for.input.in.a.secure.
11eea0 66 61 73 68 69 6f 6e 2c 20 61 62 6f 72 74 69 6e 67 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 fashion,.aborting');.}..return.s
11eec0 65 6c 66 3a 3a 70 72 6f 6d 70 74 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 elf::prompt();.}..private.static
11eee0 20 66 75 6e 63 74 69 6f 6e 20 74 72 69 6d 41 6e 73 77 65 72 28 24 73 74 72 29 0a 7b 0a 72 65 74 .function.trimAnswer($str).{.ret
11ef00 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5c 72 3f 5c 6e 24 7d 44 27 2c 20 27 27 urn.preg_replace('{\r?\n$}D',.''
11ef20 2c 20 24 73 74 72 29 3b 0a 7d 0a 7d 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 30 38 2c ,.$str);.}.}.Copyright.(c).2008,
11ef40 20 47 72 61 64 75 61 20 4e 65 74 77 6f 72 6b 73 0a 41 75 74 68 6f 72 3a 20 42 72 75 6e 6f 20 50 .Gradua.Networks.Author:.Bruno.P
11ef60 72 69 65 74 6f 20 52 65 69 73 0a 41 6c 6c 20 72 69 67 68 74 73 20 72 65 73 65 72 76 65 64 2e 0a rieto.Reis.All.rights.reserved..
11ef80 0a 0a 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 20 75 73 65 20 69 6e 20 73 6f 75 72 ..Redistribution.and.use.in.sour
11efa0 63 65 20 61 6e 64 20 62 69 6e 61 72 79 20 66 6f 72 6d 73 2c 20 77 69 74 68 20 6f 72 20 77 69 74 ce.and.binary.forms,.with.or.wit
11efc0 68 6f 75 74 0a 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2c 20 61 72 65 20 70 65 72 6d 69 74 74 65 64 hout.modification,.are.permitted
11efe0 20 70 72 6f 76 69 64 65 64 20 74 68 61 74 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e .provided.that.the.following.con
11f000 64 69 74 69 6f 6e 73 20 61 72 65 20 6d 65 74 3a 0a 0a 20 2a 20 52 65 64 69 73 74 72 69 62 75 74 ditions.are.met:...*.Redistribut
11f020 69 6f 6e 73 20 6f 66 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6d 75 73 74 20 72 65 74 61 69 6e 20 ions.of.source.code.must.retain.
11f040 74 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 2c 20 74 68 69 73 the.above.copyright.notice,.this
11f060 0a 20 20 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 ....list.of.conditions.and.the.f
11f080 6f 6c 6c 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 2e 0a 0a 20 2a 20 52 65 64 69 73 74 72 ollowing.disclaimer....*.Redistr
11f0a0 69 62 75 74 69 6f 6e 73 20 69 6e 20 62 69 6e 61 72 79 20 66 6f 72 6d 20 6d 75 73 74 20 72 65 70 ibutions.in.binary.form.must.rep
11f0c0 72 6f 64 75 63 65 20 74 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 roduce.the.above.copyright.notic
11f0e0 65 2c 0a 20 20 20 74 68 69 73 20 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 6e e,....this.list.of.conditions.an
11f100 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 20 69 6e 20 74 68 d.the.following.disclaimer.in.th
11f120 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 0a 20 20 20 61 6e 64 2f 6f 72 20 6f 74 68 65 72 20 e.documentation....and/or.other.
11f140 6d 61 74 65 72 69 61 6c 73 20 70 72 6f 76 69 64 65 64 20 77 69 74 68 20 74 68 65 20 64 69 73 74 materials.provided.with.the.dist
11f160 72 69 62 75 74 69 6f 6e 2e 0a 0a 20 2a 20 4e 65 69 74 68 65 72 20 74 68 65 20 6e 61 6d 65 20 6f ribution....*.Neither.the.name.o
11f180 66 20 74 68 65 20 47 72 61 64 75 61 20 4e 65 74 77 6f 72 6b 73 20 6e 6f 72 20 74 68 65 20 6e 61 f.the.Gradua.Networks.nor.the.na
11f1a0 6d 65 73 20 6f 66 20 69 74 73 20 63 6f 6e 74 72 69 62 75 74 6f 72 73 0a 20 20 20 6d 61 79 20 62 mes.of.its.contributors....may.b
11f1c0 65 20 75 73 65 64 20 74 6f 20 65 6e 64 6f 72 73 65 20 6f 72 20 70 72 6f 6d 6f 74 65 20 70 72 6f e.used.to.endorse.or.promote.pro
11f1e0 64 75 63 74 73 20 64 65 72 69 76 65 64 20 66 72 6f 6d 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 ducts.derived.from.this.software
11f200 0a 20 20 20 77 69 74 68 6f 75 74 20 73 70 65 63 69 66 69 63 20 70 72 69 6f 72 20 77 72 69 74 74 ....without.specific.prior.writt
11f220 65 6e 20 70 65 72 6d 69 73 73 69 6f 6e 2e 0a 0a 54 48 49 53 20 53 4f 46 54 57 41 52 45 20 49 53 en.permission...THIS.SOFTWARE.IS
11f240 20 50 52 4f 56 49 44 45 44 20 42 59 20 54 48 45 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 .PROVIDED.BY.THE.COPYRIGHT.HOLDE
11f260 52 53 20 41 4e 44 20 43 4f 4e 54 52 49 42 55 54 4f 52 53 20 22 41 53 20 49 53 22 0a 41 4e 44 20 RS.AND.CONTRIBUTORS."AS.IS".AND.
11f280 41 4e 59 20 45 58 50 52 45 53 53 20 4f 52 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 ANY.EXPRESS.OR.IMPLIED.WARRANTIE
11f2a0 53 2c 20 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f S,.INCLUDING,.BUT.NOT.LIMITED.TO
11f2c0 2c 20 54 48 45 0a 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 ,.THE.IMPLIED.WARRANTIES.OF.MERC
11f2e0 48 41 4e 54 41 42 49 4c 49 54 59 20 41 4e 44 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 HANTABILITY.AND.FITNESS.FOR.A.PA
11f300 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 52 45 0a 44 49 53 43 4c 41 49 4d 45 44 2e RTICULAR.PURPOSE.ARE.DISCLAIMED.
11f320 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 45 20 43 4f 50 59 52 49 47 48 54 .IN.NO.EVENT.SHALL.THE.COPYRIGHT
11f340 20 48 4f 4c 44 45 52 20 4f 52 20 43 4f 4e 54 52 49 42 55 54 4f 52 53 20 42 45 20 4c 49 41 42 4c .HOLDER.OR.CONTRIBUTORS.BE.LIABL
11f360 45 0a 46 4f 52 20 41 4e 59 20 44 49 52 45 43 54 2c 20 49 4e 44 49 52 45 43 54 2c 20 49 4e 43 49 E.FOR.ANY.DIRECT,.INDIRECT,.INCI
11f380 44 45 4e 54 41 4c 2c 20 53 50 45 43 49 41 4c 2c 20 45 58 45 4d 50 4c 41 52 59 2c 20 4f 52 20 43 DENTAL,.SPECIAL,.EXEMPLARY,.OR.C
11f3a0 4f 4e 53 45 51 55 45 4e 54 49 41 4c 0a 44 41 4d 41 47 45 53 20 28 49 4e 43 4c 55 44 49 4e 47 2c ONSEQUENTIAL.DAMAGES.(INCLUDING,
11f3c0 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 2c 20 50 52 4f 43 55 52 45 4d 45 4e 54 .BUT.NOT.LIMITED.TO,.PROCUREMENT
11f3e0 20 4f 46 20 53 55 42 53 54 49 54 55 54 45 20 47 4f 4f 44 53 20 4f 52 0a 53 45 52 56 49 43 45 53 .OF.SUBSTITUTE.GOODS.OR.SERVICES
11f400 3b 20 4c 4f 53 53 20 4f 46 20 55 53 45 2c 20 44 41 54 41 2c 20 4f 52 20 50 52 4f 46 49 54 53 3b ;.LOSS.OF.USE,.DATA,.OR.PROFITS;
11f420 20 4f 52 20 42 55 53 49 4e 45 53 53 20 49 4e 54 45 52 52 55 50 54 49 4f 4e 29 20 48 4f 57 45 56 .OR.BUSINESS.INTERRUPTION).HOWEV
11f440 45 52 0a 43 41 55 53 45 44 20 41 4e 44 20 4f 4e 20 41 4e 59 20 54 48 45 4f 52 59 20 4f 46 20 4c ER.CAUSED.AND.ON.ANY.THEORY.OF.L
11f460 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 4e 20 43 4f 4e 54 52 41 43 54 2c 20 53 IABILITY,.WHETHER.IN.CONTRACT,.S
11f480 54 52 49 43 54 20 4c 49 41 42 49 4c 49 54 59 2c 0a 4f 52 20 54 4f 52 54 20 28 49 4e 43 4c 55 44 TRICT.LIABILITY,.OR.TORT.(INCLUD
11f4a0 49 4e 47 20 4e 45 47 4c 49 47 45 4e 43 45 20 4f 52 20 4f 54 48 45 52 57 49 53 45 29 20 41 52 49 ING.NEGLIGENCE.OR.OTHERWISE).ARI
11f4c0 53 49 4e 47 20 49 4e 20 41 4e 59 20 57 41 59 20 4f 55 54 20 4f 46 20 54 48 45 20 55 53 45 0a 4f SING.IN.ANY.WAY.OUT.OF.THE.USE.O
11f4e0 46 20 54 48 49 53 20 53 4f 46 54 57 41 52 45 2c 20 45 56 45 4e 20 49 46 20 41 44 56 49 53 45 44 F.THIS.SOFTWARE,.EVEN.IF.ADVISED
11f500 20 4f 46 20 54 48 45 20 50 4f 53 53 49 42 49 4c 49 54 59 20 4f 46 20 53 55 43 48 20 44 41 4d 41 .OF.THE.POSSIBILITY.OF.SUCH.DAMA
11f520 47 45 2e 0a 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 GE..<?php.........namespace.Json
11f540 53 63 68 65 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 Schema\Constraints;........class
11f560 20 43 6f 6c 6c 65 63 74 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f .CollectionConstraint.extends.Co
11f580 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 6e 20 63 68 nstraint.{....public.function.ch
11f5a0 65 63 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 eck($value,.$schema.=.null,.$pat
11f5c0 68 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 73 h.=.null,.$i.=.null).{...if.(iss
11f5e0 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 49 74 65 6d 73 29 20 26 26 20 63 6f 75 6e 74 28 24 et($schema->minItems).&&.count($
11f600 76 61 6c 75 65 29 20 3c 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 49 74 65 6d 73 29 20 7b 0a 24 74 value).<.$schema->minItems).{.$t
11f620 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 54 68 65 72 65 20 6d 75 73 74 his->addError($path,."There.must
11f640 20 62 65 20 61 20 6d 69 6e 69 6d 75 6d 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 .be.a.minimum.of."...$schema->mi
11f660 6e 49 74 65 6d 73 20 2e 20 22 20 69 74 65 6d 73 20 69 6e 20 74 68 65 20 61 72 72 61 79 22 2c 20 nItems...".items.in.the.array",.
11f680 27 6d 69 6e 49 74 65 6d 73 27 2c 20 61 72 72 61 79 28 27 6d 69 6e 49 74 65 6d 73 27 20 3d 3e 20 'minItems',.array('minItems'.=>.
11f6a0 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 49 74 65 6d 73 2c 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 $schema->minItems,));.}....if.(i
11f6c0 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 61 78 49 74 65 6d 73 29 20 26 26 20 63 6f 75 6e 74 sset($schema->maxItems).&&.count
11f6e0 28 24 76 61 6c 75 65 29 20 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 49 74 65 6d 73 29 20 7b 0a ($value).>.$schema->maxItems).{.
11f700 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 54 68 65 72 65 20 6d 75 $this->addError($path,."There.mu
11f720 73 74 20 62 65 20 61 20 6d 61 78 69 6d 75 6d 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e st.be.a.maximum.of."...$schema->
11f740 6d 61 78 49 74 65 6d 73 20 2e 20 22 20 69 74 65 6d 73 20 69 6e 20 74 68 65 20 61 72 72 61 79 22 maxItems...".items.in.the.array"
11f760 2c 20 27 6d 61 78 49 74 65 6d 73 27 2c 20 61 72 72 61 79 28 27 6d 61 78 49 74 65 6d 73 27 20 3d ,.'maxItems',.array('maxItems'.=
11f780 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 49 74 65 6d 73 2c 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 >.$schema->maxItems,));.}....if.
11f7a0 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 75 6e 69 71 75 65 49 74 65 6d 73 29 20 26 26 20 (isset($schema->uniqueItems).&&.
11f7c0 24 73 63 68 65 6d 61 2d 3e 75 6e 69 71 75 65 49 74 65 6d 73 29 20 7b 0a 24 75 6e 69 71 75 65 20 $schema->uniqueItems).{.$unique.
11f7e0 3d 20 24 76 61 6c 75 65 3b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 20 26 =.$value;.if.(is_array($value).&
11f800 26 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 75 6e 69 71 75 65 20 3d 20 61 72 72 &.count($value)).{.$unique.=.arr
11f820 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 28 24 65 29 20 7b 20 72 65 74 75 72 6e 20 76 61 72 ay_map(function($e).{.return.var
11f840 5f 65 78 70 6f 72 74 28 24 65 2c 20 74 72 75 65 29 3b 20 7d 2c 20 24 76 61 6c 75 65 29 3b 0a 7d _export($e,.true);.},.$value);.}
11f860 0a 69 66 20 28 63 6f 75 6e 74 28 61 72 72 61 79 5f 75 6e 69 71 75 65 28 24 75 6e 69 71 75 65 29 .if.(count(array_unique($unique)
11f880 29 20 21 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 ).!=.count($value)).{.$this->add
11f8a0 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 54 68 65 72 65 20 61 72 65 20 6e 6f 20 64 75 70 6c 69 Error($path,."There.are.no.dupli
11f8c0 63 61 74 65 73 20 61 6c 6c 6f 77 65 64 20 69 6e 20 74 68 65 20 61 72 72 61 79 22 2c 20 27 75 6e cates.allowed.in.the.array",.'un
11f8e0 69 71 75 65 49 74 65 6d 73 27 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 iqueItems');.}.}....if.(isset($s
11f900 63 68 65 6d 61 2d 3e 69 74 65 6d 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 chema->items)).{.$this->validate
11f920 49 74 65 6d 73 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 Items($value,.$schema,.$path,.$i
11f940 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 75 6e 63 74 69 );.}.}..........protected.functi
11f960 6f 6e 20 76 61 6c 69 64 61 74 65 49 74 65 6d 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 on.validateItems($value,.$schema
11f980 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 6c 6c .=.null,.$path.=.null,.$i.=.null
11f9a0 29 0a 7b 0a 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d 73 ).{.if.(is_object($schema->items
11f9c0 29 29 20 7b 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 76 61 6c 75 65 20 61 73 20 24 6b 20 3d 3e 20 )).{...foreach.($value.as.$k.=>.
11f9e0 24 76 29 20 7b 0a 24 69 6e 69 74 45 72 72 6f 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 $v).{.$initErrors.=.$this->getEr
11fa00 72 6f 72 73 28 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 rors();....$this->checkUndefined
11fa20 28 24 76 2c 20 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d 73 2c 20 24 70 61 74 68 2c 20 24 6b 29 3b ($v,.$schema->items,.$path,.$k);
11fa40 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 69 6e 69 74 45 72 72 6f 72 73 29 20 3c 20 63 6f 75 ....if.(count($initErrors).<.cou
11fa60 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 20 26 26 20 28 69 73 73 65 74 nt($this->getErrors()).&&.(isset
11fa80 28 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 29 20 26 26 20 24 73 ($schema->additionalItems).&&.$s
11faa0 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 65 chema->additionalItems.!==.false
11fac0 29 29 20 7b 0a 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 )).{.$secondErrors.=.$this->getE
11fae0 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 66 69 6e 65 64 28 24 rrors();.$this->checkUndefined($
11fb00 76 2c 20 24 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 v,.$schema->additionalItems,.$pa
11fb20 74 68 2c 20 24 6b 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 65 63 6f 6e 64 45 th,.$k);.}....if.(isset($secondE
11fb40 72 72 6f 72 73 29 20 26 26 20 63 6f 75 6e 74 28 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 29 20 3c rrors).&&.count($secondErrors).<
11fb60 20 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 29 20 7b 0a 24 74 .count($this->getErrors())).{.$t
11fb80 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 3b 0a 7d 20 65 his->errors.=.$secondErrors;.}.e
11fba0 6c 73 65 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 lse.if.(isset($secondErrors).&&.
11fbc0 63 6f 75 6e 74 28 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 29 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 count($secondErrors).===.count($
11fbe0 74 68 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 this->getErrors())).{.$this->err
11fc00 6f 72 73 20 3d 20 24 69 6e 69 74 45 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a ors.=.$initErrors;.}.}.}.else.{.
11fc20 0a 20 66 6f 72 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 ..foreach.($value.as.$k.=>.$v).{
11fc40 0a 69 66 20 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 6b 2c 20 24 73 63 68 65 6d .if.(array_key_exists($k,.$schem
11fc60 61 2d 3e 69 74 65 6d 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e a->items)).{.$this->checkUndefin
11fc80 65 64 28 24 76 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 74 68 ed($v,.$schema->items[$k],.$path
11fca0 2c 20 24 6b 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 69 66 20 28 70 72 6f 70 65 72 74 79 5f 65 ,.$k);.}.else.{...if.(property_e
11fcc0 78 69 73 74 73 28 24 73 63 68 65 6d 61 2c 20 27 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 27 xists($schema,.'additionalItems'
11fce0 29 29 20 7b 0a 69 66 20 28 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d )).{.if.($schema->additionalItem
11fd00 73 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 s.!==.false).{.$this->checkUndef
11fd20 69 6e 65 64 28 24 76 2c 20 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d ined($v,.$schema->additionalItem
11fd40 73 2c 20 24 70 61 74 68 2c 20 24 6b 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 s,.$path,.$k);.}.else.{.$this->a
11fd60 64 64 45 72 72 6f 72 28 0a 24 70 61 74 68 2c 20 27 54 68 65 20 69 74 65 6d 20 27 20 2e 20 24 69 ddError(.$path,.'The.item.'...$i
11fd80 20 2e 20 27 5b 27 20 2e 20 24 6b 20 2e 20 27 5d 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 20 ...'['...$k...'].is.not.defined.
11fda0 61 6e 64 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f and.the.definition.does.not.allo
11fdc0 77 20 61 64 64 69 74 69 6f 6e 61 6c 20 69 74 65 6d 73 27 2c 20 27 61 64 64 69 74 69 6f 6e 61 6c w.additional.items',.'additional
11fde0 49 74 65 6d 73 27 2c 20 61 72 72 61 79 28 27 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 27 20 Items',.array('additionalItems'.
11fe00 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 2c 29 29 3b 0a =>.$schema->additionalItems,));.
11fe20 7d 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e }.}.else.{...$this->checkUndefin
11fe40 65 64 28 24 76 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 ed($v,.new.\stdClass(),.$path,.$
11fe60 6b 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 28 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 20 3e 20 k);.}.}.}....if(count($value).>.
11fe80 30 29 20 7b 0a 66 6f 72 20 28 24 6b 20 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 3b 20 24 6b 0).{.for.($k.=.count($value);.$k
11fea0 20 3c 20 63 6f 75 6e 74 28 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d 73 29 3b 20 24 6b 2b 2b 29 20 .<.count($schema->items);.$k++).
11fec0 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 6e 65 77 20 55 6e 64 65 {.$this->checkUndefined(new.Unde
11fee0 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 28 29 2c 20 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d finedConstraint(),.$schema->item
11ff00 73 5b 24 6b 5d 2c 20 24 70 61 74 68 2c 20 24 6b 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 s[$k],.$path,.$k);.}.}.}.}.}.<?p
11ff20 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 5c hp.........namespace.JsonSchema\
11ff40 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 Constraints;..use.JsonSchema\Uri
11ff60 5c 55 72 69 52 65 74 72 69 65 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 \UriRetriever;........abstract.c
11ff80 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 20 43 6f 6e 73 74 lass.Constraint.implements.Const
11ffa0 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 68 65 63 raintInterface.{.protected.$chec
11ffc0 6b 4d 6f 64 65 20 3d 20 73 65 6c 66 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 3b kMode.=.self::CHECK_MODE_NORMAL;
11ffe0 0a 70 72 6f 74 65 63 74 65 64 20 24 75 72 69 52 65 74 72 69 65 76 65 72 3b 0a 70 72 6f 74 65 63 .protected.$uriRetriever;.protec
120000 74 65 64 20 24 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 ted.$errors.=.array();.protected
120020 20 24 69 6e 6c 69 6e 65 53 63 68 65 6d 61 50 72 6f 70 65 72 74 79 20 3d 20 27 24 73 63 68 65 6d .$inlineSchemaProperty.=.'$schem
120040 61 27 3b 0a 0a 63 6f 6e 73 74 20 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 20 3d 20 31 a';..const.CHECK_MODE_NORMAL.=.1
120060 3b 0a 63 6f 6e 73 74 20 43 48 45 43 4b 5f 4d 4f 44 45 5f 54 59 50 45 5f 43 41 53 54 20 3d 20 32 ;.const.CHECK_MODE_TYPE_CAST.=.2
120080 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 66 61 63 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 70 75 ;.....private.$factory;.......pu
1200a0 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 63 68 65 63 6b blic.function.__construct($check
1200c0 4d 6f 64 65 20 3d 20 73 65 6c 66 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 2c 20 Mode.=.self::CHECK_MODE_NORMAL,.
1200e0 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 72 20 3d 20 6e 75 6c UriRetriever.$uriRetriever.=.nul
120100 6c 2c 20 46 61 63 74 6f 72 79 20 24 66 61 63 74 6f 72 79 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 l,.Factory.$factory.=.null).{.$t
120120 68 69 73 2d 3e 63 68 65 63 6b 4d 6f 64 65 20 3d 20 24 63 68 65 63 6b 4d 6f 64 65 3b 0a 24 74 68 his->checkMode.=.$checkMode;.$th
120140 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 69 65 76 65 72 is->uriRetriever.=.$uriRetriever
120160 3b 0a 24 74 68 69 73 2d 3e 66 61 63 74 6f 72 79 20 3d 20 24 66 61 63 74 6f 72 79 3b 0a 7d 0a 0a ;.$this->factory.=.$factory;.}..
120180 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 74 72 69 65 76 ...public.function.getUriRetriev
1201a0 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 72 69 52 65 74 er().{.if.(is_null($this->uriRet
1201c0 72 69 65 76 65 72 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 65 74 55 72 69 52 65 74 72 69 65 76 65 riever)).{.$this->setUriRetrieve
1201e0 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 75 72 6e 20 24 r(new.UriRetriever);.}..return.$
120200 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 70 75 62 6c 69 63 this->uriRetriever;.}.....public
120220 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 61 63 74 6f 72 79 28 29 0a 7b 0a 69 66 20 28 21 24 74 .function.getFactory().{.if.(!$t
120240 68 69 73 2d 3e 66 61 63 74 6f 72 79 29 20 7b 0a 24 74 68 69 73 2d 3e 66 61 63 74 6f 72 79 20 3d his->factory).{.$this->factory.=
120260 20 6e 65 77 20 46 61 63 74 6f 72 79 28 24 74 68 69 73 2d 3e 67 65 74 55 72 69 52 65 74 72 69 65 .new.Factory($this->getUriRetrie
120280 76 65 72 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 61 63 74 6f 72 79 ver());.}..return.$this->factory
1202a0 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 55 72 69 52 65 ;.}.....public.function.setUriRe
1202c0 74 72 69 65 76 65 72 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 triever(UriRetriever.$uriRetriev
1202e0 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 75 72 69 er).{.$this->uriRetriever.=.$uri
120300 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 69 6f 6e Retriever;.}.....public.function
120320 20 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 63 6f 6e 73 .addError($path,.$message,.$cons
120340 74 72 61 69 6e 74 3d 27 27 2c 20 61 72 72 61 79 20 24 6d 6f 72 65 3d 6e 75 6c 6c 29 0a 7b 0a 24 traint='',.array.$more=null).{.$
120360 65 72 72 6f 72 20 3d 20 61 72 72 61 79 28 0a 27 70 72 6f 70 65 72 74 79 27 20 3d 3e 20 24 70 61 error.=.array(.'property'.=>.$pa
120380 74 68 2c 0a 27 6d 65 73 73 61 67 65 27 20 3d 3e 20 24 6d 65 73 73 61 67 65 2c 0a 27 63 6f 6e 73 th,.'message'.=>.$message,.'cons
1203a0 74 72 61 69 6e 74 27 20 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 0a 29 3b 0a 0a 69 66 20 28 traint'.=>.$constraint,.);..if.(
1203c0 69 73 5f 61 72 72 61 79 28 24 6d 6f 72 65 29 20 26 26 20 63 6f 75 6e 74 28 24 6d 6f 72 65 29 20 is_array($more).&&.count($more).
1203e0 3e 20 30 29 0a 7b 0a 24 65 72 72 6f 72 20 2b 3d 20 24 6d 6f 72 65 3b 0a 7d 0a 0a 24 74 68 69 73 >.0).{.$error.+=.$more;.}..$this
120400 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 65 72 72 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 ->errors[].=.$error;.}.....publi
120420 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 45 72 72 6f 72 73 28 61 72 72 61 79 20 24 65 72 72 6f c.function.addErrors(array.$erro
120440 72 73 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 5f 6d 65 72 67 rs).{.$this->errors.=.array_merg
120460 65 28 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 2c 20 24 65 72 72 6f 72 73 29 3b 0a 7d 0a 0a 0a 0a e($this->errors,.$errors);.}....
120480 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 73 28 29 0a 7b 0a 72 .public.function.getErrors().{.r
1204a0 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 eturn.$this->errors;.}.....publi
1204c0 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 21 24 c.function.isValid().{.return.!$
1204e0 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 this->getErrors();.}......public
120500 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 .function.reset().{.$this->error
120520 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 s.=.array();.}..........protecte
120540 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 63 72 65 6d 65 6e 74 50 61 74 68 28 24 70 61 74 68 2c 20 d.function.incrementPath($path,.
120560 24 69 29 0a 7b 0a 69 66 20 28 24 70 61 74 68 20 21 3d 3d 20 27 27 29 20 7b 0a 69 66 20 28 69 73 $i).{.if.($path.!==.'').{.if.(is
120580 5f 69 6e 74 28 24 69 29 29 20 7b 0a 24 70 61 74 68 20 2e 3d 20 27 5b 27 20 2e 20 24 69 20 2e 20 _int($i)).{.$path..=.'['...$i...
1205a0 27 5d 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 20 3d 3d 20 27 27 29 20 7b 0a 24 70 61 74 68 ']';.}.elseif.($i.==.'').{.$path
1205c0 20 2e 3d 20 27 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 74 68 20 2e 3d 20 27 2e 27 20 2e 20 ..=.'';.}.else.{.$path..=.'.'...
1205e0 24 69 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 74 68 20 3d 20 24 69 3b 0a 7d 0a 0a 72 65 $i;.}.}.else.{.$path.=.$i;.}..re
120600 74 75 72 6e 20 24 70 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 turn.$path;.}..........protected
120620 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 41 72 72 61 79 28 24 76 61 6c 75 65 2c 20 24 73 63 .function.checkArray($value,.$sc
120640 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 20 hema.=.null,.$path.=.null,.$i.=.
120660 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 46 null).{.$validator.=.$this->getF
120680 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 63 6f 6c actory()->createInstanceFor('col
1206a0 6c 65 63 74 69 6f 6e 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 lection');.$validator->check($va
1206c0 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 74 68 69 73 lue,.$schema,.$path,.$i);..$this
1206e0 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 72 72 6f 72 ->addErrors($validator->getError
120700 73 28 29 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 75 6e 63 s());.}...........protected.func
120720 74 69 6f 6e 20 63 68 65 63 6b 4f 62 6a 65 63 74 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 tion.checkObject($value,.$schema
120740 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 6c 6c .=.null,.$path.=.null,.$i.=.null
120760 2c 20 24 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 ,.$patternProperties.=.null).{.$
120780 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 74 6f 72 79 28 29 2d validator.=.$this->getFactory()-
1207a0 3e 63 72 65 61 74 65 49 6e 73 74 61 6e 63 65 46 6f 72 28 27 6f 62 6a 65 63 74 27 29 3b 0a 24 76 >createInstanceFor('object');.$v
1207c0 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 6d 61 2c alidator->check($value,.$schema,
1207e0 20 24 70 61 74 68 2c 20 24 69 2c 20 24 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 29 3b .$path,.$i,.$patternProperties);
120800 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 74 6f 72 2d 3e 67 ..$this->addErrors($validator->g
120820 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 6f 74 65 63 74 65 etErrors());.}..........protecte
120840 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 54 79 70 65 28 24 76 61 6c 75 65 2c 20 24 73 63 d.function.checkType($value,.$sc
120860 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 20 hema.=.null,.$path.=.null,.$i.=.
120880 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 46 null).{.$validator.=.$this->getF
1208a0 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 74 79 70 actory()->createInstanceFor('typ
1208c0 65 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 e');.$validator->check($value,.$
1208e0 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 45 schema,.$path,.$i);..$this->addE
120900 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 0a rrors($validator->getErrors());.
120920 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 68 }..........protected.function.ch
120940 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e eckUndefined($value,.$schema.=.n
120960 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).{.
120980 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 74 6f 72 79 28 29 $validator.=.$this->getFactory()
1209a0 2d 3e 63 72 65 61 74 65 49 6e 73 74 61 6e 63 65 46 6f 72 28 27 75 6e 64 65 66 69 6e 65 64 27 29 ->createInstanceFor('undefined')
1209c0 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 73 63 68 ;.$validator->check($value,.$sch
1209e0 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 45 72 72 6f ema,.$path,.$i);..$this->addErro
120a00 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 0a 7d 0a 0a rs($validator->getErrors());.}..
120a20 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
120a40 53 74 72 69 6e 67 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 String($value,.$schema.=.null,.$
120a60 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 69 64 path.=.null,.$i.=.null).{.$valid
120a80 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 65 61 ator.=.$this->getFactory()->crea
120aa0 74 65 49 6e 73 74 61 6e 63 65 46 6f 72 28 27 73 74 72 69 6e 67 27 29 3b 0a 24 76 61 6c 69 64 61 teInstanceFor('string');.$valida
120ac0 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
120ae0 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
120b00 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 0a 70 ator->getErrors());.}..........p
120b20 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 4e 75 6d 62 65 72 28 24 76 rotected.function.checkNumber($v
120b40 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 20 6e 75 alue,.$schema.=.null,.$path.=.nu
120b60 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 20 3d 20 24 74 ll,.$i.=.null).{.$validator.=.$t
120b80 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 74 61 6e 63 his->getFactory()->createInstanc
120ba0 65 46 6f 72 28 27 6e 75 6d 62 65 72 27 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 eFor('number');.$validator->chec
120bc0 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 29 3b 0a 0a k($value,.$schema,.$path,.$i);..
120be0 24 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 $this->addErrors($validator->get
120c00 45 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 Errors());.}..........protected.
120c20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 45 6e 75 6d 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 function.checkEnum($value,.$sche
120c40 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
120c60 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
120c80 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 65 6e 75 6d 27 tory()->createInstanceFor('enum'
120ca0 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 73 63 );.$validator->check($value,.$sc
120cc0 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 45 72 72 hema,.$path,.$i);..$this->addErr
120ce0 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 0a 7d 0a ors($validator->getErrors());.}.
120d00 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 46 6f 72 6d 61 74 28 .protected.function.checkFormat(
120d20 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 20 $value,.$schema.=.null,.$path.=.
120d40 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 20 3d 20 null,.$i.=.null).{.$validator.=.
120d60 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 74 61 $this->getFactory()->createInsta
120d80 6e 63 65 46 6f 72 28 27 66 6f 72 6d 61 74 27 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 nceFor('format');.$validator->ch
120da0 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 29 3b eck($value,.$schema,.$path,.$i);
120dc0 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 74 6f 72 2d 3e 67 ..$this->addErrors($validator->g
120de0 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 etErrors());.}......protected.fu
120e00 6e 63 74 69 6f 6e 20 72 65 74 72 69 65 76 65 55 72 69 28 24 75 72 69 29 0a 7b 0a 69 66 20 28 6e nction.retrieveUri($uri).{.if.(n
120e20 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 29 20 7b 0a 24 ull.===.$this->uriRetriever).{.$
120e40 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 65 74 this->setUriRetriever(new.UriRet
120e60 72 69 65 76 65 72 29 3b 0a 7d 0a 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d 20 24 74 68 69 73 2d 3e riever);.}.$jsonSchema.=.$this->
120e80 75 72 69 52 65 74 72 69 65 76 65 72 2d 3e 72 65 74 72 69 65 76 65 28 24 75 72 69 29 3b 0a 0a 20 uriRetriever->retrieve($uri);...
120ea0 72 65 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 return.$jsonSchema;.}.}.<?php...
120ec0 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
120ee0 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 6f 6e 73 74 72 61 69 raints;.......interface.Constrai
120f00 6e 74 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 ntInterface.{......public.functi
120f20 6f 6e 20 67 65 74 45 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 on.getErrors();.......public.fun
120f40 63 74 69 6f 6e 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 3b 0a ction.addErrors(array.$errors);.
120f60 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 45 72 72 6f .........public.function.addErro
120f80 72 28 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 r($path,.$message,.$constraint='
120fa0 27 2c 20 61 72 72 61 79 20 24 6d 6f 72 65 3d 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c ',.array.$more=null);.......publ
120fc0 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a ic.function.isValid();..........
120fe0 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 2c 20 24 .public.function.check($value,.$
121000 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 24 69 20 schema.=.null,.$path.=.null,.$i.
121020 3d 20 6e 75 6c 6c 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 =.null);.}<?php.........namespac
121040 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 0a 0a 0a 0a e.JsonSchema\Constraints;.......
121060 0a 63 6c 61 73 73 20 45 6e 75 6d 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f .class.EnumConstraint.extends.Co
121080 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 6e 20 63 68 nstraint.{....public.function.ch
1210a0 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 2c 20 24 70 eck($element,.$schema.=.null,.$p
1210c0 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 0a 20 69 66 20 28 24 ath.=.null,.$i.=.null).{...if.($
1210e0 65 6c 65 6d 65 6e 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 element.instanceof.UndefinedCons
121100 74 72 61 69 6e 74 20 26 26 20 28 21 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 traint.&&.(!isset($schema->requi
121120 72 65 64 29 20 7c 7c 20 21 24 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 72 65 64 29 29 20 7b 0a 72 red).||.!$schema->required)).{.r
121140 65 74 75 72 6e 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 73 63 68 65 6d 61 2d 3e 65 6e 75 6d eturn;.}..foreach.($schema->enum
121160 20 61 73 20 24 65 6e 75 6d 29 20 7b 0a 24 74 79 70 65 20 3d 20 67 65 74 74 79 70 65 28 24 65 6c .as.$enum).{.$type.=.gettype($el
121180 65 6d 65 6e 74 29 3b 0a 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 67 65 74 74 79 70 65 28 24 65 ement);.if.($type.===.gettype($e
1211a0 6e 75 6d 29 29 20 7b 0a 69 66 20 28 24 74 79 70 65 20 3d 3d 20 22 6f 62 6a 65 63 74 22 29 20 7b num)).{.if.($type.==."object").{
1211c0 0a 69 66 20 28 24 65 6c 65 6d 65 6e 74 20 3d 3d 20 24 65 6e 75 6d 29 0a 72 65 74 75 72 6e 3b 0a .if.($element.==.$enum).return;.
1211e0 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 24 65 6c 65 6d 65 6e 74 20 3d 3d 3d 20 24 65 6e 75 6d 29 }.else.{.if.($element.===.$enum)
121200 0a 72 65 74 75 72 6e 3b 0a 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 .return;..}.}.}..$this->addError
121220 28 24 70 61 74 68 2c 20 22 44 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 61 20 76 61 6c 75 65 20 69 ($path,."Does.not.have.a.value.i
121240 6e 20 74 68 65 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 22 20 2e 20 70 72 69 6e 74 5f 72 28 24 73 n.the.enumeration."...print_r($s
121260 63 68 65 6d 61 2d 3e 65 6e 75 6d 2c 20 74 72 75 65 29 2c 20 27 65 6e 75 6d 27 2c 20 61 72 72 61 chema->enum,.true),.'enum',.arra
121280 79 28 27 65 6e 75 6d 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 65 6e 75 6d 2c 29 29 3b 0a 7d 0a y('enum'.=>.$schema->enum,));.}.
1212a0 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 20 4a 73 6f 6e 53 63 }.<?php.........namespace.JsonSc
1212c0 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 6f 6e 53 63 68 65 6d hema\Constraints;..use.JsonSchem
1212e0 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 6e 74 45 78 63 65 70 a\Exception\InvalidArgumentExcep
121300 74 69 6f 6e 3b 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 tion;.use.JsonSchema\Uri\UriRetr
121320 69 65 76 65 72 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 iever;.use.JsonSchema\Validator;
121340 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 61 63 74 6f 72 79 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 .....class.Factory.{....protecte
121360 64 20 24 75 72 69 52 65 74 72 69 65 76 65 72 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 d.$uriRetriever;.....public.func
121380 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 55 72 69 52 65 74 72 69 65 76 65 72 20 24 75 tion.__construct(UriRetriever.$u
1213a0 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 24 75 72 69 52 riRetriever.=.null).{.if.(!$uriR
1213c0 65 74 72 69 65 76 65 72 29 20 7b 0a 24 75 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 6e 65 77 20 etriever).{.$uriRetriever.=.new.
1213e0 55 72 69 52 65 74 72 69 65 76 65 72 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 72 69 52 65 74 UriRetriever();.}..$this->uriRet
121400 72 69 65 76 65 72 20 3d 20 24 75 72 69 52 65 74 72 69 65 76 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 riever.=.$uriRetriever;.}.....pu
121420 62 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 blic.function.getUriRetriever().
121440 7b 0a 72 65 74 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 {.return.$this->uriRetriever;.}.
121460 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 65 61 74 65 49 6e ........public.function.createIn
121480 73 74 61 6e 63 65 46 6f 72 28 24 63 6f 6e 73 74 72 61 69 6e 74 4e 61 6d 65 29 0a 7b 0a 73 77 69 stanceFor($constraintName).{.swi
1214a0 74 63 68 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 4e 61 6d 65 29 20 7b 0a 63 61 73 65 20 27 61 72 tch.($constraintName).{.case.'ar
1214c0 72 61 79 27 3a 0a 63 61 73 65 20 27 63 6f 6c 6c 65 63 74 69 6f 6e 27 3a 0a 72 65 74 75 72 6e 20 ray':.case.'collection':.return.
1214e0 6e 65 77 20 43 6f 6c 6c 65 63 74 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 43 6f 6e 73 74 72 61 new.CollectionConstraint(Constra
121500 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
121520 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 6f 62 6a 65 63 riRetriever,.$this);.case.'objec
121540 74 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 4f 62 6a 65 63 74 43 6f 6e 73 74 72 61 69 6e 74 28 t':.return.new.ObjectConstraint(
121560 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 41 4c 2c 20 24 Constraint::CHECK_MODE_NORMAL,.$
121580 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 0a 63 61 73 65 this->uriRetriever,.$this);.case
1215a0 20 27 74 79 70 65 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 54 79 70 65 43 6f 6e 73 74 72 61 69 .'type':.return.new.TypeConstrai
1215c0 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 41 4c nt(Constraint::CHECK_MODE_NORMAL
1215e0 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 0a 63 ,.$this->uriRetriever,.$this);.c
121600 61 73 65 20 27 75 6e 64 65 66 69 6e 65 64 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 55 6e 64 65 ase.'undefined':.return.new.Unde
121620 66 69 6e 65 64 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 finedConstraint(Constraint::CHEC
121640 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 72 69 65 76 K_MODE_NORMAL,.$this->uriRetriev
121660 65 72 2c 20 24 74 68 69 73 29 3b 0a 63 61 73 65 20 27 73 74 72 69 6e 67 27 3a 0a 72 65 74 75 72 er,.$this);.case.'string':.retur
121680 6e 20 6e 65 77 20 53 74 72 69 6e 67 43 6f 6e 73 74 72 61 69 6e 74 28 43 6f 6e 73 74 72 61 69 6e n.new.StringConstraint(Constrain
1216a0 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
1216c0 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 6e 75 6d 62 65 72 27 Retriever,.$this);.case.'number'
1216e0 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 4e 75 6d 62 65 72 43 6f 6e 73 74 72 61 69 6e 74 28 43 6f :.return.new.NumberConstraint(Co
121700 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
121720 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.'
121740 65 6e 75 6d 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 45 6e 75 6d 43 6f 6e 73 74 72 61 69 6e 74 enum':.return.new.EnumConstraint
121760 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 41 4c 2c 20 (Constraint::CHECK_MODE_NORMAL,.
121780 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 0a 63 61 73 $this->uriRetriever,.$this);.cas
1217a0 65 20 27 66 6f 72 6d 61 74 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 46 6f 72 6d 61 74 43 6f 6e e.'format':.return.new.FormatCon
1217c0 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 4f 44 45 5f 4e straint(Constraint::CHECK_MODE_N
1217e0 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
121800 73 29 3b 0a 63 61 73 65 20 27 73 63 68 65 6d 61 27 3a 0a 72 65 74 75 72 6e 20 6e 65 77 20 53 63 s);.case.'schema':.return.new.Sc
121820 68 65 6d 61 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 hemaConstraint(Constraint::CHECK
121840 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
121860 72 2c 20 24 74 68 69 73 29 3b 0a 63 61 73 65 20 27 76 61 6c 69 64 61 74 6f 72 27 3a 0a 72 65 74 r,.$this);.case.'validator':.ret
121880 75 72 6e 20 6e 65 77 20 56 61 6c 69 64 61 74 6f 72 28 43 6f 6e 73 74 72 61 69 6e 74 3a 3a 43 48 urn.new.Validator(Constraint::CH
1218a0 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 72 69 ECK_MODE_NORMAL,.$this->uriRetri
1218c0 65 76 65 72 2c 20 24 74 68 69 73 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c ever,.$this);.}..throw.new.Inval
1218e0 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 6b 6e 6f 77 6e 20 63 6f 6e idArgumentException('Unknown.con
121900 73 74 72 61 69 6e 74 20 27 20 2e 20 24 63 6f 6e 73 74 72 61 69 6e 74 4e 61 6d 65 29 3b 0a 7d 0a straint.'...$constraintName);.}.
121920 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 20 4a 73 6f 6e 53 63 }.<?php.........namespace.JsonSc
121940 68 65 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 46 hema\Constraints;........class.F
121960 6f 72 6d 61 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 ormatConstraint.extends.Constrai
121980 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 6b 28 24 65 nt.{....public.function.check($e
1219a0 6c 65 6d 65 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 lement,.$schema.=.null,.$path.=.
1219c0 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 73 null,.$i.=.null).{.if.(!isset($s
1219e0 63 68 65 6d 61 2d 3e 66 6f 72 6d 61 74 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 73 77 69 chema->format)).{.return;.}..swi
121a00 74 63 68 20 28 24 73 63 68 65 6d 61 2d 3e 66 6f 72 6d 61 74 29 20 7b 0a 63 61 73 65 20 27 64 61 tch.($schema->format).{.case.'da
121a20 74 65 27 3a 0a 69 66 20 28 21 24 64 61 74 65 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 te':.if.(!$date.=.$this->validat
121a40 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 27 29 29 20 7b 0a eDateTime($element,.'Y-m-d')).{.
121a60 24 74 68 69 73 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 $this->addError($path,.sprintf('
121a80 49 6e 76 61 6c 69 64 20 64 61 74 65 20 25 73 2c 20 65 78 70 65 63 74 65 64 20 66 6f 72 6d 61 74 Invalid.date.%s,.expected.format
121aa0 20 59 59 59 59 2d 4d 4d 2d 44 44 27 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 65 6c 65 6d 65 .YYYY-MM-DD',.json_encode($eleme
121ac0 6e 74 29 29 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 3d nt)),.'format',.array('format'.=
121ae0 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 0a >.$schema->format,));.}.break;..
121b00 63 61 73 65 20 27 74 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 case.'time':.if.(!$this->validat
121b20 65 44 61 74 65 54 69 6d 65 28 24 65 6c 65 6d 65 6e 74 2c 20 27 48 3a 69 3a 73 27 29 29 20 7b 0a eDateTime($element,.'H:i:s')).{.
121b40 24 74 68 69 73 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 $this->addError($path,.sprintf('
121b60 49 6e 76 61 6c 69 64 20 74 69 6d 65 20 25 73 2c 20 65 78 70 65 63 74 65 64 20 66 6f 72 6d 61 74 Invalid.time.%s,.expected.format
121b80 20 68 68 3a 6d 6d 3a 73 73 27 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 65 6c 65 6d 65 6e 74 .hh:mm:ss',.json_encode($element
121ba0 29 29 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 3d 3e 20 )),.'format',.array('format'.=>.
121bc0 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 0a 63 61 $schema->format,));.}.break;..ca
121be0 73 65 20 27 64 61 74 65 2d 74 69 6d 65 27 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 se.'date-time':.if.(!$this->vali
121c00 64 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 dateDateTime($element,.'Y-m-d\TH
121c20 3a 69 3a 73 5c 5a 27 29 20 26 26 0a 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 44 61 74 65 :i:s\Z').&&.!$this->validateDate
121c40 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 69 3a 73 2e 75 5c 5a Time($element,.'Y-m-d\TH:i:s.u\Z
121c60 27 29 20 26 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 ').&&.!$this->validateDateTime($
121c80 65 6c 65 6d 65 6e 74 2c 20 27 59 2d 6d 2d 64 5c 54 48 3a 69 3a 73 50 27 29 20 26 26 0a 21 24 74 element,.'Y-m-d\TH:i:sP').&&.!$t
121ca0 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 65 6e 74 2c 20 his->validateDateTime($element,.
121cc0 27 59 2d 6d 2d 64 5c 54 48 3a 69 3a 73 4f 27 29 0a 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 'Y-m-d\TH:i:sO').).{.$this->addE
121ce0 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 74 rror($path,.sprintf('Invalid.dat
121d00 65 2d 74 69 6d 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 e-time.%s,.expected.format.YYYY-
121d20 4d 4d 2d 44 44 54 68 68 3a 6d 6d 3a 73 73 5a 20 6f 72 20 59 59 59 59 2d 4d 4d 2d 44 44 54 68 68 MM-DDThh:mm:ssZ.or.YYYY-MM-DDThh
121d40 3a 6d 6d 3a 73 73 2b 68 68 3a 6d 6d 27 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 65 6c 65 6d :mm:ss+hh:mm',.json_encode($elem
121d60 65 6e 74 29 29 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 ent)),.'format',.array('format'.
121d80 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;.
121da0 0a 63 61 73 65 20 27 75 74 63 2d 6d 69 6c 6c 69 73 65 63 27 3a 0a 69 66 20 28 21 24 74 68 69 73 .case.'utc-millisec':.if.(!$this
121dc0 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 55 27 ->validateDateTime($element,.'U'
121de0 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 73 70 72 69 )).{.$this->addError($path,.spri
121e00 6e 74 66 28 27 49 6e 76 61 6c 69 64 20 74 69 6d 65 20 25 73 2c 20 65 78 70 65 63 74 65 64 20 69 ntf('Invalid.time.%s,.expected.i
121e20 6e 74 65 67 65 72 20 6f 66 20 6d 69 6c 6c 69 73 65 63 6f 6e 64 73 20 73 69 6e 63 65 20 45 70 6f nteger.of.milliseconds.since.Epo
121e40 63 68 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 ch',.json_encode($element)),.'fo
121e60 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
121e80 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 72 65 67 ->format,));.}.break;..case.'reg
121ea0 65 78 27 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 24 ex':.if.(!$this->validateRegex($
121ec0 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
121ee0 68 2c 20 27 49 6e 76 61 6c 69 64 20 72 65 67 65 78 20 66 6f 72 6d 61 74 20 27 20 2e 20 24 65 6c h,.'Invalid.regex.format.'...$el
121f00 65 6d 65 6e 74 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 ement,.'format',.array('format'.
121f20 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;.
121f40 0a 63 61 73 65 20 27 63 6f 6c 6f 72 27 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 .case.'color':.if.(!$this->valid
121f60 61 74 65 43 6f 6c 6f 72 28 24 65 6c 65 6d 65 6e 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 ateColor($element)).{.$this->add
121f80 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 49 6e 76 61 6c 69 64 20 63 6f 6c 6f 72 22 2c 20 27 66 Error($path,."Invalid.color",.'f
121fa0 6f 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 ormat',.array('format'.=>.$schem
121fc0 61 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 73 74 a->format,));.}.break;..case.'st
121fe0 79 6c 65 27 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 79 6c 65 28 yle':.if.(!$this->validateStyle(
122000 24 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 $element)).{.$this->addError($pa
122020 74 68 2c 20 22 49 6e 76 61 6c 69 64 20 73 74 79 6c 65 22 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 th,."Invalid.style",.'format',.a
122040 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
122060 2c 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 70 68 6f 6e 65 27 3a 0a 69 66 20 ,));.}.break;..case.'phone':.if.
122080 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 50 68 6f 6e 65 28 24 65 6c 65 6d 65 6e 74 29 (!$this->validatePhone($element)
1220a0 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 49 6e 76 61 ).{.$this->addError($path,."Inva
1220c0 6c 69 64 20 70 68 6f 6e 65 20 6e 75 6d 62 65 72 22 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 72 72 lid.phone.number",.'format',.arr
1220e0 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,)
122100 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 75 72 69 27 3a 0a 69 66 20 28 6e 75 6c );.}.break;..case.'uri':.if.(nul
122120 6c 20 3d 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 l.===.filter_var($element,.FILTE
122140 52 5f 56 41 4c 49 44 41 54 45 5f 55 52 4c 2c 20 46 49 4c 54 45 52 5f 4e 55 4c 4c 5f 4f 4e 5f 46 R_VALIDATE_URL,.FILTER_NULL_ON_F
122160 41 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 AILURE)).{.$this->addError($path
122180 2c 20 22 49 6e 76 61 6c 69 64 20 55 52 4c 20 66 6f 72 6d 61 74 22 2c 20 27 66 6f 72 6d 61 74 27 ,."Invalid.URL.format",.'format'
1221a0 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 6f 72 ,.array('format'.=>.$schema->for
1221c0 6d 61 74 2c 29 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 65 6d 61 69 6c 27 3a 0a mat,));.}.break;..case.'email':.
1221e0 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 6d 65 6e 74 if.(null.===.filter_var($element
122200 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 45 4d 41 49 4c 2c 20 46 49 4c 54 45 52 5f ,.FILTER_VALIDATE_EMAIL,.FILTER_
122220 4e 55 4c 4c 5f 4f 4e 5f 46 41 49 4c 55 52 45 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 NULL_ON_FAILURE)).{.$this->addEr
122240 72 6f 72 28 24 70 61 74 68 2c 20 22 49 6e 76 61 6c 69 64 20 65 6d 61 69 6c 22 2c 20 27 66 6f 72 ror($path,."Invalid.email",.'for
122260 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-
122280 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 2d 61 >format,));.}.break;..case.'ip-a
1222a0 64 64 72 65 73 73 27 3a 0a 63 61 73 65 20 27 69 70 76 34 27 3a 0a 69 66 20 28 6e 75 6c 6c 20 3d ddress':.case.'ipv4':.if.(null.=
1222c0 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
1222e0 41 4c 49 44 41 54 45 5f 49 50 2c 20 46 49 4c 54 45 52 5f 4e 55 4c 4c 5f 4f 4e 5f 46 41 49 4c 55 ALIDATE_IP,.FILTER_NULL_ON_FAILU
122300 52 45 20 7c 20 46 49 4c 54 45 52 5f 46 4c 41 47 5f 49 50 56 34 29 29 20 7b 0a 24 74 68 69 73 2d RE.|.FILTER_FLAG_IPV4)).{.$this-
122320 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 49 50 20 61 64 64 >addError($path,."Invalid.IP.add
122340 72 65 73 73 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 ress",.'format',.array('format'.
122360 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;.
122380 0a 63 61 73 65 20 27 69 70 76 36 27 3a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 66 69 6c 74 65 .case.'ipv6':.if.(null.===.filte
1223a0 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 5f r_var($element,.FILTER_VALIDATE_
1223c0 49 50 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 IP,.FILTER_NULL_ON_FAILURE.|.FIL
1223e0 54 45 52 5f 46 4c 41 47 5f 49 50 56 36 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f TER_FLAG_IPV6)).{.$this->addErro
122400 72 28 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 r($path,."Invalid.IP.address",.'
122420 66 6f 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 format',.array('format'.=>.$sche
122440 6d 61 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 68 ma->format,));.}.break;..case.'h
122460 6f 73 74 2d 6e 61 6d 65 27 3a 0a 63 61 73 65 20 27 68 6f 73 74 6e 61 6d 65 27 3a 0a 69 66 20 28 ost-name':.case.'hostname':.if.(
122480 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 48 6f 73 74 6e 61 6d 65 28 24 65 6c 65 6d 65 6e !$this->validateHostname($elemen
1224a0 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 49 6e t)).{.$this->addError($path,."In
1224c0 76 61 6c 69 64 20 68 6f 73 74 6e 61 6d 65 22 2c 20 27 66 6f 72 6d 61 74 27 2c 20 61 72 72 61 79 valid.hostname",.'format',.array
1224e0 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 3b ('format'.=>.$schema->format,));
122500 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 75 6c 74 3a 0a 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 .}.break;..default:.............
122520 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 76 break;.}.}..protected.function.v
122540 61 6c 69 64 61 74 65 44 61 74 65 54 69 6d 65 28 24 64 61 74 65 74 69 6d 65 2c 20 24 66 6f 72 6d alidateDateTime($datetime,.$form
122560 61 74 29 0a 7b 0a 24 64 74 20 3d 20 5c 44 61 74 65 54 69 6d 65 3a 3a 63 72 65 61 74 65 46 72 6f at).{.$dt.=.\DateTime::createFro
122580 6d 46 6f 72 6d 61 74 28 24 66 6f 72 6d 61 74 2c 20 24 64 61 74 65 74 69 6d 65 29 3b 0a 0a 69 66 mFormat($format,.$datetime);..if
1225a0 20 28 21 24 64 74 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 .(!$dt).{.return.false;.}..if.($
1225c0 64 61 74 65 74 69 6d 65 20 3d 3d 3d 20 24 64 74 2d 3e 66 6f 72 6d 61 74 28 24 66 6f 72 6d 61 74 datetime.===.$dt->format($format
1225e0 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 0a 20 0a 20 0a 20 69 66 20 )).{.return.true;.}..........if.
122600 28 28 73 74 72 70 6f 73 28 27 75 27 2c 20 24 66 6f 72 6d 61 74 29 20 21 3d 3d 20 2d 31 29 20 26 ((strpos('u',.$format).!==.-1).&
122620 26 20 28 69 6e 74 76 61 6c 28 24 64 74 2d 3e 66 6f 72 6d 61 74 28 27 75 27 29 29 20 3e 20 30 29 &.(intval($dt->format('u')).>.0)
122640 29 20 7b 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 ).{.return.true;.}..return.false
122660 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
122680 52 65 67 65 78 28 24 72 65 67 65 78 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d Regex($regex).{.return.false.!==
1226a0 20 40 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 27 20 2e 20 24 72 65 67 65 78 20 2e 20 27 2f 27 2c .@preg_match('/'...$regex...'/',
1226c0 20 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 76 61 6c 69 .'');.}..protected.function.vali
1226e0 64 61 74 65 43 6f 6c 6f 72 28 24 63 6f 6c 6f 72 29 0a 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 dateColor($color).{.if.(in_array
122700 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 63 6f 6c 6f 72 29 2c 20 61 72 72 61 79 28 27 61 71 75 61 (strtolower($color),.array('aqua
122720 27 2c 20 27 62 6c 61 63 6b 27 2c 20 27 62 6c 75 65 27 2c 20 27 66 75 63 68 73 69 61 27 2c 0a 27 ',.'black',.'blue',.'fuchsia',.'
122740 67 72 61 79 27 2c 20 27 67 72 65 65 6e 27 2c 20 27 6c 69 6d 65 27 2c 20 27 6d 61 72 6f 6f 6e 27 gray',.'green',.'lime',.'maroon'
122760 2c 20 27 6e 61 76 79 27 2c 20 27 6f 6c 69 76 65 27 2c 20 27 6f 72 61 6e 67 65 27 2c 20 27 70 75 ,.'navy',.'olive',.'orange',.'pu
122780 72 70 6c 65 27 2c 0a 27 72 65 64 27 2c 20 27 73 69 6c 76 65 72 27 2c 20 27 74 65 61 6c 27 2c 20 rple',.'red',.'silver',.'teal',.
1227a0 27 77 68 69 74 65 27 2c 20 27 79 65 6c 6c 6f 77 27 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 'white',.'yellow'))).{.return.tr
1227c0 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 23 28 5b 61 ue;.}..return.preg_match('/^#([a
1227e0 2d 66 30 2d 39 5d 7b 33 7d 7c 5b 61 2d 66 30 2d 39 5d 7b 36 7d 29 24 2f 69 27 2c 20 24 63 6f 6c -f0-9]{3}|[a-f0-9]{6})$/i',.$col
122800 6f 72 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 76 61 6c 69 64 or);.}..protected.function.valid
122820 61 74 65 53 74 79 6c 65 28 24 73 74 79 6c 65 29 0a 7b 0a 24 70 72 6f 70 65 72 74 69 65 73 20 3d ateStyle($style).{.$properties.=
122840 20 65 78 70 6c 6f 64 65 28 27 3b 27 2c 20 72 74 72 69 6d 28 24 73 74 79 6c 65 2c 20 27 3b 27 29 .explode(';',.rtrim($style,.';')
122860 29 3b 0a 24 69 6e 76 61 6c 69 64 45 6e 74 72 69 65 73 20 3d 20 70 72 65 67 5f 67 72 65 70 28 27 );.$invalidEntries.=.preg_grep('
122880 2f 5e 5c 73 2a 5b 2d 61 2d 7a 5d 2b 5c 73 2a 3a 5c 73 2a 2e 2b 24 2f 69 27 2c 20 24 70 72 6f 70 /^\s*[-a-z]+\s*:\s*.+$/i',.$prop
1228a0 65 72 74 69 65 73 2c 20 50 52 45 47 5f 47 52 45 50 5f 49 4e 56 45 52 54 29 3b 0a 0a 72 65 74 75 erties,.PREG_GREP_INVERT);..retu
1228c0 72 6e 20 65 6d 70 74 79 28 24 69 6e 76 61 6c 69 64 45 6e 74 72 69 65 73 29 3b 0a 7d 0a 0a 70 72 rn.empty($invalidEntries);.}..pr
1228e0 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 50 68 6f 6e 65 28 24 otected.function.validatePhone($
122900 70 68 6f 6e 65 29 0a 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 5c 2b phone).{.return.preg_match('/^\+
122920 3f 28 5c 28 5c 64 7b 33 7d 5c 29 7c 5c 64 7b 33 7d 29 20 5c 64 7b 33 7d 20 5c 64 7b 34 7d 24 2f ?(\(\d{3}\)|\d{3}).\d{3}.\d{4}$/
122940 27 2c 20 24 70 68 6f 6e 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f ',.$phone);.}..protected.functio
122960 6e 20 76 61 6c 69 64 61 74 65 48 6f 73 74 6e 61 6d 65 28 24 68 6f 73 74 29 0a 7b 0a 72 65 74 75 n.validateHostname($host).{.retu
122980 72 6e 20 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 5b 5f 61 2d 7a 5d 2b 5c 2e 28 5b 5f 61 2d 7a rn.preg_match('/^[_a-z]+\.([_a-z
1229a0 5d 2b 5c 2e 3f 29 2b 24 2f 69 27 2c 20 24 68 6f 73 74 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a ]+\.?)+$/i',.$host);.}.}.<?php..
1229c0 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 73 .......namespace.JsonSchema\Cons
1229e0 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4e 75 6d 62 65 72 43 6f 6e 73 traints;........class.NumberCons
122a00 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 0a 0a 0a 70 traint.extends.Constraint.{....p
122a20 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 6e 74 2c 20 24 ublic.function.check($element,.$
122a40 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 24 69 20 schema.=.null,.$path.=.null,.$i.
122a60 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 2d 3e 65 =.null).{...if.(isset($schema->e
122a80 78 63 6c 75 73 69 76 65 4d 69 6e 69 6d 75 6d 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 73 xclusiveMinimum)).{.if.(isset($s
122aa0 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 29 29 20 7b 0a 69 66 20 28 24 73 63 68 65 6d 61 2d 3e chema->minimum)).{.if.($schema->
122ac0 65 78 63 6c 75 73 69 76 65 4d 69 6e 69 6d 75 6d 20 26 26 20 24 65 6c 65 6d 65 6e 74 20 3d 3d 3d exclusiveMinimum.&&.$element.===
122ae0 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 64 64 45 .$schema->minimum).{.$this->addE
122b00 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 6d 75 6d rror($path,."Must.have.a.minimum
122b20 20 76 61 6c 75 65 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 62 6f 75 6e 64 61 72 79 20 76 61 6c .value.greater.than.boundary.val
122b40 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 6d 2c 20 27 65 78 63 ue.of."...$schema->minimum,.'exc
122b60 6c 75 73 69 76 65 4d 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 lusiveMinimum',.array('minimum'.
122b80 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 2c 29 29 3b 0a 7d 20 65 6c 73 65 20 69 =>.$schema->minimum,));.}.else.i
122ba0 66 20 28 24 65 6c 65 6d 65 6e 74 20 3c 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 29 20 f.($element.<.$schema->minimum).
122bc0 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 68 {.$this->addError($path,."Must.h
122be0 61 76 65 20 61 20 6d 69 6e 69 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 22 20 2e 20 24 73 63 68 65 ave.a.minimum.value.of."...$sche
122c00 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 2c 20 27 6d 69 6e 69 6d 75 6d 27 2c 20 61 72 72 61 79 28 27 6d ma->minimum,.'minimum',.array('m
122c20 69 6e 69 6d 75 6d 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 2c 29 29 3b 0a inimum'.=>.$schema->minimum,));.
122c40 7d 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 24 70 61 74 68 }.}.else.{.$this->addError($path
122c60 2c 20 22 55 73 65 20 6f 66 20 65 78 63 6c 75 73 69 76 65 4d 69 6e 69 6d 75 6d 20 72 65 71 75 69 ,."Use.of.exclusiveMinimum.requi
122c80 72 65 73 20 70 72 65 73 65 6e 63 65 20 6f 66 20 6d 69 6e 69 6d 75 6d 22 2c 20 27 6d 69 73 73 69 res.presence.of.minimum",.'missi
122ca0 6e 67 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 ngMinimum');.}.}.else.if.(isset(
122cc0 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 29 20 26 26 20 24 65 6c 65 6d 65 6e 74 20 3c 20 $schema->minimum).&&.$element.<.
122ce0 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 64 64 45 72 $schema->minimum).{.$this->addEr
122d00 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 6d 75 6d 20 ror($path,."Must.have.a.minimum.
122d20 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 6d 2c 20 27 value.of."...$schema->minimum,.'
122d40 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 20 24 73 63 minimum',.array('minimum'.=>.$sc
122d60 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 2c 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 hema->minimum,));.}....if.(isset
122d80 28 24 73 63 68 65 6d 61 2d 3e 65 78 63 6c 75 73 69 76 65 4d 61 78 69 6d 75 6d 29 29 20 7b 0a 69 ($schema->exclusiveMaximum)).{.i
122da0 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 29 20 7b 0a 69 66 f.(isset($schema->maximum)).{.if
122dc0 20 28 24 73 63 68 65 6d 61 2d 3e 65 78 63 6c 75 73 69 76 65 4d 61 78 69 6d 75 6d 20 26 26 20 24 .($schema->exclusiveMaximum.&&.$
122de0 65 6c 65 6d 65 6e 74 20 3d 3d 3d 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 20 7b 0a element.===.$schema->maximum).{.
122e00 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
122e20 65 20 61 20 6d 61 78 69 6d 75 6d 20 76 61 6c 75 65 20 6c 65 73 73 20 74 68 61 6e 20 62 6f 75 6e e.a.maximum.value.less.than.boun
122e40 64 61 72 79 20 76 61 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 dary.value.of."...$schema->maxim
122e60 75 6d 2c 20 27 65 78 63 6c 75 73 69 76 65 4d 61 78 69 6d 75 6d 27 2c 20 61 72 72 61 79 28 27 6d um,.'exclusiveMaximum',.array('m
122e80 61 78 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 aximum'.=>.$schema->maximum,));.
122ea0 7d 20 65 6c 73 65 20 69 66 20 28 24 65 6c 65 6d 65 6e 74 20 3e 20 24 73 63 68 65 6d 61 2d 3e 6d }.else.if.($element.>.$schema->m
122ec0 61 78 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 aximum).{.$this->addError($path,
122ee0 20 22 4d 75 73 74 20 68 61 76 65 20 61 20 6d 61 78 69 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 22 ."Must.have.a.maximum.value.of."
122f00 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 2c 20 27 6d 61 78 69 6d 75 6d 27 2c 20 ...$schema->maximum,.'maximum',.
122f20 61 72 72 61 79 28 27 6d 61 78 69 6d 75 6d 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 array('maximum'.=>.$schema->maxi
122f40 6d 75 6d 2c 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 mum,));.}.}.else.{.$this->addErr
122f60 6f 72 28 24 70 61 74 68 2c 20 22 55 73 65 20 6f 66 20 65 78 63 6c 75 73 69 76 65 4d 61 78 69 6d or($path,."Use.of.exclusiveMaxim
122f80 75 6d 20 72 65 71 75 69 72 65 73 20 70 72 65 73 65 6e 63 65 20 6f 66 20 6d 61 78 69 6d 75 6d 22 um.requires.presence.of.maximum"
122fa0 2c 20 27 6d 69 73 73 69 6e 67 4d 69 6e 69 6d 75 6d 27 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 69 66 ,.'missingMinimum');.}.}.else.if
122fc0 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 20 26 26 20 24 65 6c .(isset($schema->maximum).&&.$el
122fe0 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 24 74 68 69 ement.>.$schema->maximum).{.$thi
123000 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 65 20 61 20 s->addError($path,."Must.have.a.
123020 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 2d 3e 6d 61 maximum.value.of."...$schema->ma
123040 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 69 6d 75 6d ximum,.'maximum',.array('maximum
123060 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 0a 0a 20 69 '.=>.$schema->maximum,));.}....i
123080 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 64 69 76 69 73 69 62 6c 65 42 79 29 20 26 f.(isset($schema->divisibleBy).&
1230a0 26 20 24 74 68 69 73 2d 3e 66 6d 6f 64 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 2d &.$this->fmod($element,.$schema-
1230c0 3e 64 69 76 69 73 69 62 6c 65 42 79 29 20 21 3d 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 >divisibleBy).!=.0).{.$this->add
1230e0 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 49 73 20 6e 6f 74 20 64 69 76 69 73 69 62 6c 65 20 62 Error($path,."Is.not.divisible.b
123100 79 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 64 69 76 69 73 69 62 6c 65 42 79 2c 20 27 64 69 76 y."...$schema->divisibleBy,.'div
123120 69 73 69 62 6c 65 42 79 27 2c 20 61 72 72 61 79 28 27 64 69 76 69 73 69 62 6c 65 42 79 27 20 3d isibleBy',.array('divisibleBy'.=
123140 3e 20 24 73 63 68 65 6d 61 2d 3e 64 69 76 69 73 69 62 6c 65 42 79 2c 29 29 3b 0a 7d 0a 0a 0a 20 >.$schema->divisibleBy,));.}....
123160 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 75 6c 74 69 70 6c 65 4f 66 29 20 26 if.(isset($schema->multipleOf).&
123180 26 20 24 74 68 69 73 2d 3e 66 6d 6f 64 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 2d &.$this->fmod($element,.$schema-
1231a0 3e 6d 75 6c 74 69 70 6c 65 4f 66 29 20 21 3d 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 >multipleOf).!=.0).{.$this->addE
1231c0 72 72 6f 72 28 24 70 61 74 68 2c 20 22 4d 75 73 74 20 62 65 20 61 20 6d 75 6c 74 69 70 6c 65 20 rror($path,."Must.be.a.multiple.
1231e0 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 75 6c 74 69 70 6c 65 4f 66 2c 20 27 6d 75 6c of."...$schema->multipleOf,.'mul
123200 74 69 70 6c 65 4f 66 27 2c 20 61 72 72 61 79 28 27 6d 75 6c 74 69 70 6c 65 4f 66 27 20 3d 3e 20 tipleOf',.array('multipleOf'.=>.
123220 24 73 63 68 65 6d 61 2d 3e 6d 75 6c 74 69 70 6c 65 4f 66 2c 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 $schema->multipleOf,));.}..$this
123240 2d 3e 63 68 65 63 6b 46 6f 72 6d 61 74 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 2c ->checkFormat($element,.$schema,
123260 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e .$path,.$i);.}..private.function
123280 20 66 6d 6f 64 28 24 6e 75 6d 62 65 72 31 2c 20 24 6e 75 6d 62 65 72 32 29 0a 7b 0a 24 6d 6f 64 .fmod($number1,.$number2).{.$mod
1232a0 75 6c 75 73 20 3d 20 66 6d 6f 64 28 24 6e 75 6d 62 65 72 31 2c 20 24 6e 75 6d 62 65 72 32 29 3b ulus.=.fmod($number1,.$number2);
1232c0 0a 24 70 72 65 63 69 73 69 6f 6e 20 3d 20 61 62 73 28 30 2e 30 30 30 30 30 30 30 30 30 31 29 3b .$precision.=.abs(0.0000000001);
1232e0 0a 24 64 69 66 66 20 3d 20 28 66 6c 6f 61 74 29 28 24 6d 6f 64 75 6c 75 73 20 2d 20 24 6e 75 6d .$diff.=.(float)($modulus.-.$num
123300 62 65 72 32 29 3b 0a 0a 69 66 20 28 2d 24 70 72 65 63 69 73 69 6f 6e 20 3c 20 24 64 69 66 66 20 ber2);..if.(-$precision.<.$diff.
123320 26 26 20 24 64 69 66 66 20 3c 20 24 70 72 65 63 69 73 69 6f 6e 29 20 7b 0a 72 65 74 75 72 6e 20 &&.$diff.<.$precision).{.return.
123340 30 2e 30 3b 0a 7d 0a 0a 24 64 65 63 69 6d 61 6c 73 31 20 3d 20 6d 62 5f 73 74 72 70 6f 73 28 24 0.0;.}..$decimals1.=.mb_strpos($
123360 6e 75 6d 62 65 72 31 2c 20 22 2e 22 29 20 3f 20 6d 62 5f 73 74 72 6c 65 6e 28 24 6e 75 6d 62 65 number1,.".").?.mb_strlen($numbe
123380 72 31 29 20 2d 20 6d 62 5f 73 74 72 70 6f 73 28 24 6e 75 6d 62 65 72 31 2c 20 22 2e 22 29 20 2d r1).-.mb_strpos($number1,.".").-
1233a0 20 31 20 3a 20 30 3b 0a 24 64 65 63 69 6d 61 6c 73 32 20 3d 20 6d 62 5f 73 74 72 70 6f 73 28 24 .1.:.0;.$decimals2.=.mb_strpos($
1233c0 6e 75 6d 62 65 72 32 2c 20 22 2e 22 29 20 3f 20 6d 62 5f 73 74 72 6c 65 6e 28 24 6e 75 6d 62 65 number2,.".").?.mb_strlen($numbe
1233e0 72 32 29 20 2d 20 6d 62 5f 73 74 72 70 6f 73 28 24 6e 75 6d 62 65 72 32 2c 20 22 2e 22 29 20 2d r2).-.mb_strpos($number2,.".").-
123400 20 31 20 3a 20 30 3b 0a 0a 72 65 74 75 72 6e 20 28 66 6c 6f 61 74 29 72 6f 75 6e 64 28 24 6d 6f .1.:.0;..return.(float)round($mo
123420 64 75 6c 75 73 2c 20 6d 61 78 28 24 64 65 63 69 6d 61 6c 73 31 2c 20 24 64 65 63 69 6d 61 6c 73 dulus,.max($decimals1,.$decimals
123440 32 29 29 3b 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 2));.}.}.<?php.........namespace
123460 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 0a 0a 0a 0a 0a .JsonSchema\Constraints;........
123480 63 6c 61 73 73 20 4f 62 6a 65 63 74 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 class.ObjectConstraint.extends.C
1234a0 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 65 onstraint.{....function.check($e
1234c0 6c 65 6d 65 6e 74 2c 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 lement,.$definition.=.null,.$pat
1234e0 68 20 3d 20 6e 75 6c 6c 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 3d 20 6e 75 6c 6c h.=.null,.$additionalProp.=.null
123500 2c 20 24 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 ,.$patternProperties.=.null).{.i
123520 66 20 28 24 65 6c 65 6d 65 6e 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 66 69 6e 65 64 f.($element.instanceof.Undefined
123540 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 24 6d 61 74 63 68 65 Constraint).{.return;.}..$matche
123560 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 24 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 s.=.array();.if.($patternPropert
123580 69 65 73 29 20 7b 0a 24 6d 61 74 63 68 65 73 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 ies).{.$matches.=.$this->validat
1235a0 65 50 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 28 24 65 6c 65 6d 65 6e 74 2c 20 24 70 61 ePatternProperties($element,.$pa
1235c0 74 68 2c 20 24 70 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 th,.$patternProperties);.}..if.(
1235e0 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 $definition).{...$this->validate
123600 44 65 66 69 6e 69 74 69 6f 6e 28 24 65 6c 65 6d 65 6e 74 2c 20 24 64 65 66 69 6e 69 74 69 6f 6e Definition($element,.$definition
123620 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 45 6c ,.$path);.}....$this->validateEl
123640 65 6d 65 6e 74 28 24 65 6c 65 6d 65 6e 74 2c 20 24 6d 61 74 63 68 65 73 2c 20 24 64 65 66 69 6e ement($element,.$matches,.$defin
123660 69 74 69 6f 6e 2c 20 24 70 61 74 68 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 29 3b 0a ition,.$path,.$additionalProp);.
123680 7d 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 50 61 74 74 65 }..public.function.validatePatte
1236a0 72 6e 50 72 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 rnProperties($element,.$path,.$p
1236c0 61 74 74 65 72 6e 50 72 6f 70 65 72 74 69 65 73 29 0a 7b 0a 24 74 72 79 20 3d 20 61 72 72 61 79 atternProperties).{.$try.=.array
1236e0 28 27 2f 27 2c 27 23 27 2c 27 2b 27 2c 27 7e 27 2c 27 25 27 29 3b 0a 24 6d 61 74 63 68 65 73 20 ('/','#','+','~','%');.$matches.
123700 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 74 74 65 72 6e 50 72 6f 70 =.array();.foreach.($patternProp
123720 65 72 74 69 65 73 20 61 73 20 24 70 72 65 67 65 78 20 3d 3e 20 24 73 63 68 65 6d 61 29 20 7b 0a erties.as.$pregex.=>.$schema).{.
123740 24 64 65 6c 69 6d 69 74 65 72 20 3d 20 27 2f 27 3b 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 72 $delimiter.=.'/';...foreach.($tr
123760 79 20 61 73 20 24 64 65 6c 69 6d 69 74 65 72 29 20 7b 0a 69 66 20 28 73 74 72 70 6f 73 28 24 70 y.as.$delimiter).{.if.(strpos($p
123780 72 65 67 65 78 2c 20 24 64 65 6c 69 6d 69 74 65 72 29 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 20 regex,.$delimiter).===.false).{.
1237a0 0a 20 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 40 70 72 65 67 5f 6d 61 74 63 68 28 ..break;.}.}....if.(@preg_match(
1237c0 24 64 65 6c 69 6d 69 74 65 72 2e 20 24 70 72 65 67 65 78 20 2e 20 24 64 65 6c 69 6d 69 74 65 72 $delimiter..$pregex...$delimiter
1237e0 2c 20 27 27 29 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 ,.'').===.false).{.$this->addErr
123800 6f 72 28 24 70 61 74 68 2c 20 27 54 68 65 20 70 61 74 74 65 72 6e 20 22 27 20 2e 20 24 70 72 65 or($path,.'The.pattern."'...$pre
123820 67 65 78 20 2e 20 27 22 20 69 73 20 69 6e 76 61 6c 69 64 27 2c 20 27 70 72 65 67 65 78 27 2c 20 gex...'".is.invalid',.'pregex',.
123840 61 72 72 61 79 28 27 70 72 65 67 65 78 27 20 3d 3e 20 24 70 72 65 67 65 78 2c 29 29 3b 0a 63 6f array('pregex'.=>.$pregex,));.co
123860 6e 74 69 6e 75 65 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 65 6c 65 6d 65 6e 74 20 61 73 20 24 ntinue;.}.foreach.($element.as.$
123880 69 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 64 i.=>.$value).{.if.(preg_match($d
1238a0 65 6c 69 6d 69 74 65 72 20 2e 20 24 70 72 65 67 65 78 20 2e 20 24 64 65 6c 69 6d 69 74 65 72 2c elimiter...$pregex...$delimiter,
1238c0 20 24 69 29 29 20 7b 0a 24 6d 61 74 63 68 65 73 5b 5d 20 3d 20 24 69 3b 0a 24 74 68 69 73 2d 3e .$i)).{.$matches[].=.$i;.$this->
1238e0 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3f checkUndefined($value,.$schema.?
123900 20 3a 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 .:.new.\stdClass(),.$path,.$i);.
123920 7d 0a 7d 0a 7d 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a }.}.}.return.$matches;.}........
123940 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 45 6c 65 6d 65 ...public.function.validateEleme
123960 6e 74 28 24 65 6c 65 6d 65 6e 74 2c 20 24 6d 61 74 63 68 65 73 2c 20 24 6f 62 6a 65 63 74 44 65 nt($element,.$matches,.$objectDe
123980 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 24 finition.=.null,.$path.=.null,.$
1239a0 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 66 6f 72 65 61 63 68 additionalProp.=.null).{.foreach
1239c0 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 65 29 20 7b 0a 0a 24 .($element.as.$i.=>.$value).{..$
1239e0 70 72 6f 70 65 72 74 79 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 24 65 property.=.$this->getProperty($e
123a00 6c 65 6d 65 6e 74 2c 20 24 69 2c 20 6e 65 77 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 lement,.$i,.new.UndefinedConstra
123a20 69 6e 74 28 29 29 3b 0a 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 int());.$definition.=.$this->get
123a40 50 72 6f 70 65 72 74 79 28 24 6f 62 6a 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 2c 20 24 69 29 3b Property($objectDefinition,.$i);
123a60 0a 0a 0a 20 69 66 20 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 ....if.(!in_array($i,.$matches).
123a80 26 26 20 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 3d 3d 3d 20 66 61 6c 73 65 20 26 26 20 &&.$additionalProp.===.false.&&.
123aa0 24 74 68 69 73 2d 3e 69 6e 6c 69 6e 65 53 63 68 65 6d 61 50 72 6f 70 65 72 74 79 20 21 3d 3d 20 $this->inlineSchemaProperty.!==.
123ac0 24 69 20 26 26 20 21 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 $i.&&.!$definition).{.$this->add
123ae0 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 54 68 65 20 70 72 6f 70 65 72 74 79 20 22 20 2e 20 24 Error($path,."The.property."...$
123b00 69 20 2e 20 22 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 66 i...".is.not.defined.and.the.def
123b20 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 61 inition.does.not.allow.additiona
123b40 6c 20 70 72 6f 70 65 72 74 69 65 73 22 2c 20 27 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 27 29 l.properties",.'additionalProp')
123b60 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 69 2c 20 24 6d 61 74 63 68 65 ;.}....if.(!in_array($i,.$matche
123b80 73 29 20 26 26 20 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 26 26 20 21 24 64 65 66 69 6e s).&&.$additionalProp.&&.!$defin
123ba0 69 74 69 6f 6e 29 20 7b 0a 69 66 20 28 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 3d 3d 3d ition).{.if.($additionalProp.===
123bc0 20 74 72 75 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 .true).{.$this->checkUndefined($
123be0 76 61 6c 75 65 2c 20 6e 75 6c 6c 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 20 65 6c 73 65 20 value,.null,.$path,.$i);.}.else.
123c00 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 2c 20 {.$this->checkUndefined($value,.
123c20 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d $additionalProp,.$path,.$i);.}.}
123c40 0a 0a 0a 20 24 72 65 71 75 69 72 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 ....$require.=.$this->getPropert
123c60 79 28 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 27 72 65 71 75 69 72 65 73 27 29 3b 0a 69 66 20 28 y($definition,.'requires');.if.(
123c80 24 72 65 71 75 69 72 65 20 26 26 20 21 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 $require.&&.!$this->getProperty(
123ca0 24 65 6c 65 6d 65 6e 74 2c 20 24 72 65 71 75 69 72 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 $element,.$require)).{.$this->ad
123cc0 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 54 68 65 20 70 72 65 73 65 6e 63 65 20 6f 66 20 74 dError($path,."The.presence.of.t
123ce0 68 65 20 70 72 6f 70 65 72 74 79 20 22 20 2e 20 24 69 20 2e 20 22 20 72 65 71 75 69 72 65 73 20 he.property."...$i...".requires.
123d00 74 68 61 74 20 22 20 2e 20 24 72 65 71 75 69 72 65 20 2e 20 22 20 61 6c 73 6f 20 62 65 20 70 72 that."...$require...".also.be.pr
123d20 65 73 65 6e 74 22 2c 20 27 72 65 71 75 69 72 65 73 27 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 64 65 esent",.'requires');.}..if.(!$de
123d40 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 finition).{...$this->checkUndefi
123d60 6e 65 64 28 24 76 61 6c 75 65 2c 20 6e 65 77 20 5c 73 74 64 43 6c 61 73 73 28 29 2c 20 24 70 61 ned($value,.new.\stdClass(),.$pa
123d80 74 68 2c 20 24 69 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 th,.$i);.}.}.}.........public.fu
123da0 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 44 65 66 69 6e 69 74 69 6f 6e 28 24 65 6c 65 6d 65 nction.validateDefinition($eleme
123dc0 6e 74 2c 20 24 6f 62 6a 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 70 nt,.$objectDefinition.=.null,.$p
123de0 61 74 68 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 6f 62 6a 65 63 74 44 65 ath.=.null).{.foreach.($objectDe
123e00 66 69 6e 69 74 69 6f 6e 20 61 73 20 24 69 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 70 72 6f finition.as.$i.=>.$value).{.$pro
123e20 70 65 72 74 79 20 3d 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 perty.=.$this->getProperty($elem
123e40 65 6e 74 2c 20 24 69 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 ent,.$i,.new.UndefinedConstraint
123e60 28 29 29 3b 0a 24 64 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 ());.$definition.=.$this->getPro
123e80 70 65 72 74 79 28 24 6f 62 6a 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 2c 20 24 69 29 3b 0a 24 74 perty($objectDefinition,.$i);.$t
123ea0 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 70 72 6f 70 65 72 74 79 2c 20 24 his->checkUndefined($property,.$
123ec0 64 65 66 69 6e 69 74 69 6f 6e 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a definition,.$path,.$i);.}.}.....
123ee0 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 50 72 6f 70 ......protected.function.getProp
123f00 65 72 74 79 28 24 65 6c 65 6d 65 6e 74 2c 20 24 70 72 6f 70 65 72 74 79 2c 20 24 66 61 6c 6c 62 erty($element,.$property,.$fallb
123f20 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 65 6c 65 6d ack.=.null).{.if.(is_array($elem
123f40 65 6e 74 29 20 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 ent).).{.return.array_key_exists
123f60 28 24 70 72 6f 70 65 72 74 79 2c 20 24 65 6c 65 6d 65 6e 74 29 20 3f 20 24 65 6c 65 6d 65 6e 74 ($property,.$element).?.$element
123f80 5b 24 70 72 6f 70 65 72 74 79 5d 20 3a 20 24 66 61 6c 6c 62 61 63 6b 3b 0a 7d 20 65 6c 73 65 69 [$property].:.$fallback;.}.elsei
123fa0 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 65 6c 65 6d 65 6e 74 29 29 20 7b 0a 72 65 74 75 72 6e f.(is_object($element)).{.return
123fc0 20 70 72 6f 70 65 72 74 79 5f 65 78 69 73 74 73 28 24 65 6c 65 6d 65 6e 74 2c 20 24 70 72 6f 70 .property_exists($element,.$prop
123fe0 65 72 74 79 29 20 3f 20 24 65 6c 65 6d 65 6e 74 2d 3e 24 70 72 6f 70 65 72 74 79 20 3a 20 24 66 erty).?.$element->$property.:.$f
124000 61 6c 6c 62 61 63 6b 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 66 61 6c 6c 62 61 63 6b 3b 0a 7d 0a allback;.}..return.$fallback;.}.
124020 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 20 4a 73 6f 6e 53 63 }.<?php.........namespace.JsonSc
124040 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 6f 6e 53 63 68 65 6d hema\Constraints;..use.JsonSchem
124060 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 6e 74 45 78 63 65 70 a\Exception\InvalidArgumentExcep
124080 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 63 68 65 6d 61 43 6f 6e 73 74 72 61 tion;........class.SchemaConstra
1240a0 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 62 6c int.extends.Constraint.{....publ
1240c0 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 63 68 ic.function.check($element,.$sch
1240e0 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
124100 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 73 63 68 65 6d 61 20 21 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 0a ull).{.if.($schema.!==.null).{..
124120 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 65 6c 65 6d 65 6e 74 2c .$this->checkUndefined($element,
124140 20 24 73 63 68 65 6d 61 2c 20 27 27 2c 20 27 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 6f .$schema,.'',.'');.}.elseif.(pro
124160 70 65 72 74 79 5f 65 78 69 73 74 73 28 24 65 6c 65 6d 65 6e 74 2c 20 24 74 68 69 73 2d 3e 69 6e perty_exists($element,.$this->in
124180 6c 69 6e 65 53 63 68 65 6d 61 50 72 6f 70 65 72 74 79 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e lineSchemaProperty)).{...$this->
1241a0 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 65 6c 65 6d 65 6e 74 2c 20 24 65 6c 65 6d 65 6e checkUndefined($element,.$elemen
1241c0 74 2d 3e 7b 24 74 68 69 73 2d 3e 69 6e 6c 69 6e 65 53 63 68 65 6d 61 50 72 6f 70 65 72 74 79 7d t->{$this->inlineSchemaProperty}
1241e0 2c 20 27 27 2c 20 27 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e ,.'',.'');.}.else.{.throw.new.In
124200 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 6e 6f 20 73 63 68 65 6d validArgumentException('no.schem
124220 61 20 66 6f 75 6e 64 20 74 6f 20 76 65 72 69 66 79 20 61 67 61 69 6e 73 74 27 29 3b 0a 7d 0a 7d a.found.to.verify.against');.}.}
124240 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
124260 68 65 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 53 hema\Constraints;........class.S
124280 74 72 69 6e 67 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 tringConstraint.extends.Constrai
1242a0 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 6b 28 24 65 nt.{....public.function.check($e
1242c0 6c 65 6d 65 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 lement,.$schema.=.null,.$path.=.
1242e0 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 73 65 74 28 24 null,.$i.=.null).{...if.(isset($
124300 73 63 68 65 6d 61 2d 3e 6d 61 78 4c 65 6e 67 74 68 29 20 26 26 20 24 74 68 69 73 2d 3e 73 74 72 schema->maxLength).&&.$this->str
124320 6c 65 6e 28 24 65 6c 65 6d 65 6e 74 29 20 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 4c 65 6e 67 len($element).>.$schema->maxLeng
124340 74 68 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 75 th).{.$this->addError($path,."Mu
124360 73 74 20 62 65 20 61 74 20 6d 6f 73 74 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 4c 65 st.be.at.most."...$schema->maxLe
124380 6e 67 74 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 61 78 4c ngth...".characters.long",.'maxL
1243a0 65 6e 67 74 68 27 2c 20 61 72 72 61 79 28 0a 27 6d 61 78 4c 65 6e 67 74 68 27 20 3d 3e 20 24 73 ength',.array(.'maxLength'.=>.$s
1243c0 63 68 65 6d 61 2d 3e 6d 61 78 4c 65 6e 67 74 68 2c 0a 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 chema->maxLength,.));.}....if.(i
1243e0 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 4c 65 6e 67 74 68 29 20 26 26 20 24 74 68 69 sset($schema->minLength).&&.$thi
124400 73 2d 3e 73 74 72 6c 65 6e 28 24 65 6c 65 6d 65 6e 74 29 20 3c 20 24 73 63 68 65 6d 61 2d 3e 6d s->strlen($element).<.$schema->m
124420 69 6e 4c 65 6e 67 74 68 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 inLength).{.$this->addError($pat
124440 68 2c 20 22 4d 75 73 74 20 62 65 20 61 74 20 6c 65 61 73 74 20 22 20 2e 20 24 73 63 68 65 6d 61 h,."Must.be.at.least."...$schema
124460 2d 3e 6d 69 6e 4c 65 6e 67 74 68 20 2e 20 22 20 63 68 61 72 61 63 74 65 72 73 20 6c 6f 6e 67 22 ->minLength...".characters.long"
124480 2c 20 27 6d 69 6e 4c 65 6e 67 74 68 27 2c 20 61 72 72 61 79 28 0a 27 6d 69 6e 4c 65 6e 67 74 68 ,.'minLength',.array(.'minLength
1244a0 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 4c 65 6e 67 74 68 2c 0a 29 29 3b 0a 7d 0a 0a '.=>.$schema->minLength,.));.}..
1244c0 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 29 20 26 26 ..if.(isset($schema->pattern).&&
1244e0 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 23 27 20 2e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 .!preg_match('#'...str_replace('
124500 23 27 2c 20 27 5c 5c 23 27 2c 20 24 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 29 20 2e 20 27 #',.'\\#',.$schema->pattern)...'
124520 23 27 2c 20 24 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 #',.$element)).{.$this->addError
124540 28 24 70 61 74 68 2c 20 22 44 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 74 68 65 20 72 65 67 65 ($path,."Does.not.match.the.rege
124560 78 20 70 61 74 74 65 72 6e 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 2c 20 x.pattern."...$schema->pattern,.
124580 27 70 61 74 74 65 72 6e 27 2c 20 61 72 72 61 79 28 0a 27 70 61 74 74 65 72 6e 27 20 3d 3e 20 24 'pattern',.array(.'pattern'.=>.$
1245a0 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 2c 0a 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 schema->pattern,.));.}..$this->c
1245c0 68 65 63 6b 46 6f 72 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 heckFormat($element,.$schema,.$p
1245e0 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 74 ath,.$i);.}..private.function.st
124600 72 6c 65 6e 28 24 73 74 72 69 6e 67 29 0a 7b 0a 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f rlen($string).{.if.(extension_lo
124620 61 64 65 64 28 27 6d 62 73 74 72 69 6e 67 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 6d 62 5f 73 74 aded('mbstring')).{.return.mb_st
124640 72 6c 65 6e 28 24 73 74 72 69 6e 67 2c 20 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 rlen($string,.mb_detect_encoding
124660 28 24 73 74 72 69 6e 67 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 6c ($string));.}.else.{.return.strl
124680 65 6e 28 24 73 74 72 69 6e 67 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a en($string);.}.}.}.<?php........
1246a0 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
1246c0 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 49 6e 76 s;..use.JsonSchema\Exception\Inv
1246e0 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 55 6e 65 78 70 alidArgumentException;.use.Unexp
124700 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 61 73 20 53 74 61 6e 64 61 72 64 55 ectedValueException.as.StandardU
124720 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a nexpectedValueException;........
124740 63 6c 61 73 73 20 54 79 70 65 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 43 6f 6e class.TypeConstraint.extends.Con
124760 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 73 74 61 74 69 63 20 24 77 6f 72 64 69 6e 67 20 3d 20 61 straint.{....static.$wording.=.a
124780 72 72 61 79 28 0a 27 69 6e 74 65 67 65 72 27 20 3d 3e 20 27 61 6e 20 69 6e 74 65 67 65 72 27 2c rray(.'integer'.=>.'an.integer',
1247a0 0a 27 6e 75 6d 62 65 72 27 20 3d 3e 20 27 61 20 6e 75 6d 62 65 72 27 2c 0a 27 62 6f 6f 6c 65 61 .'number'.=>.'a.number',.'boolea
1247c0 6e 27 20 3d 3e 20 27 61 20 62 6f 6f 6c 65 61 6e 27 2c 0a 27 6f 62 6a 65 63 74 27 20 3d 3e 20 27 n'.=>.'a.boolean',.'object'.=>.'
1247e0 61 6e 20 6f 62 6a 65 63 74 27 2c 0a 27 61 72 72 61 79 27 20 3d 3e 20 27 61 6e 20 61 72 72 61 79 an.object',.'array'.=>.'an.array
124800 27 2c 0a 27 73 74 72 69 6e 67 27 20 3d 3e 20 27 61 20 73 74 72 69 6e 67 27 2c 0a 27 6e 75 6c 6c ',.'string'.=>.'a.string',.'null
124820 27 20 3d 3e 20 27 61 20 6e 75 6c 6c 27 2c 0a 27 61 6e 79 27 20 3d 3e 20 4e 55 4c 4c 2c 20 0a 20 '.=>.'a.null',.'any'.=>.NULL,...
124840 30 20 3d 3e 20 4e 55 4c 4c 2c 20 0a 20 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 0.=>.NULL,...);.....public.funct
124860 69 6f 6e 20 63 68 65 63 6b 28 24 76 61 6c 75 65 20 3d 20 6e 75 6c 6c 2c 20 24 73 63 68 65 6d 61 ion.check($value.=.null,.$schema
124880 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 6c 6c .=.null,.$path.=.null,.$i.=.null
1248a0 29 0a 7b 0a 24 74 79 70 65 20 3d 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 74 79 70 65 29 ).{.$type.=.isset($schema->type)
1248c0 20 3f 20 24 73 63 68 65 6d 61 2d 3e 74 79 70 65 20 3a 20 6e 75 6c 6c 3b 0a 24 69 73 56 61 6c 69 .?.$schema->type.:.null;.$isVali
1248e0 64 20 3d 20 74 72 75 65 3b 0a 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 74 79 70 65 29 29 20 d.=.true;..if.(is_array($type)).
124900 7b 0a 0a 20 24 76 61 6c 69 64 61 74 65 64 4f 6e 65 54 79 70 65 20 3d 20 66 61 6c 73 65 3b 0a 24 {...$validatedOneType.=.false;.$
124920 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 20 28 24 74 79 70 65 errors.=.array();.foreach.($type
124940 20 61 73 20 24 74 70 29 20 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 54 79 70 65 .as.$tp).{.$validator.=.new.Type
124960 43 6f 6e 73 74 72 61 69 6e 74 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 4d 6f 64 65 29 3b 0a 24 73 Constraint($this->checkMode);.$s
124980 75 62 53 63 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 73 75 62 ubSchema.=.new.\stdClass();.$sub
1249a0 53 63 68 65 6d 61 2d 3e 74 79 70 65 20 3d 20 24 74 70 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e Schema->type.=.$tp;.$validator->
1249c0 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 75 62 53 63 68 65 6d 61 2c 20 24 70 61 74 68 2c check($value,.$subSchema,.$path,
1249e0 20 6e 75 6c 6c 29 3b 0a 24 65 72 72 6f 72 20 3d 20 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 .null);.$error.=.$validator->get
124a00 45 72 72 6f 72 73 28 29 3b 0a 0a 69 66 20 28 21 63 6f 75 6e 74 28 24 65 72 72 6f 72 29 29 20 7b Errors();..if.(!count($error)).{
124a20 0a 24 76 61 6c 69 64 61 74 65 64 4f 6e 65 54 79 70 65 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b .$validatedOneType.=.true;.break
124a40 3b 0a 7d 0a 0a 24 65 72 72 6f 72 73 20 3d 20 24 65 72 72 6f 72 3b 0a 7d 0a 0a 69 66 20 28 21 24 ;.}..$errors.=.$error;.}..if.(!$
124a60 76 61 6c 69 64 61 74 65 64 4f 6e 65 54 79 70 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 validatedOneType).{.$this->addEr
124a80 72 6f 72 73 28 24 65 72 72 6f 72 73 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 20 65 6c 73 65 rors($errors);..return;.}.}.else
124aa0 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 74 79 70 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 if.(is_object($type)).{.$this->c
124ac0 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 74 79 70 65 2c 20 24 70 61 heckUndefined($value,.$type,.$pa
124ae0 74 68 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 73 56 61 6c 69 64 20 3d 20 24 74 68 69 73 2d 3e th);.}.else.{.$isValid.=.$this->
124b00 76 61 6c 69 64 61 74 65 54 79 70 65 28 24 76 61 6c 75 65 2c 20 24 74 79 70 65 29 3b 0a 7d 0a 0a validateType($value,.$type);.}..
124b20 69 66 20 28 24 69 73 56 61 6c 69 64 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 69 66 20 28 21 69 if.($isValid.===.false).{.if.(!i
124b40 73 73 65 74 28 73 65 6c 66 3a 3a 24 77 6f 72 64 69 6e 67 5b 24 74 79 70 65 5d 29 29 20 7b 0a 74 sset(self::$wording[$type])).{.t
124b60 68 72 6f 77 20 6e 65 77 20 53 74 61 6e 64 61 72 64 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 hrow.new.StandardUnexpectedValue
124b80 45 78 63 65 70 74 69 6f 6e 28 0a 73 70 72 69 6e 74 66 28 0a 22 4e 6f 20 77 6f 72 64 69 6e 67 20 Exception(.sprintf(."No.wording.
124ba0 66 6f 72 20 25 73 20 61 76 61 69 6c 61 62 6c 65 2c 20 65 78 70 65 63 74 65 64 20 77 6f 72 64 69 for.%s.available,.expected.wordi
124bc0 6e 67 73 20 61 72 65 3a 20 5b 25 73 5d 22 2c 0a 76 61 72 5f 65 78 70 6f 72 74 28 24 74 79 70 65 ngs.are:.[%s]",.var_export($type
124be0 2c 20 74 72 75 65 29 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 66 69 6c ,.true),.implode(',.',.array_fil
124c00 74 65 72 28 73 65 6c 66 3a 3a 24 77 6f 72 64 69 6e 67 29 29 29 0a 29 3b 0a 7d 0a 24 74 68 69 73 ter(self::$wording))).);.}.$this
124c20 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 75 63 77 6f 72 64 73 28 67 65 74 74 79 70 ->addError($path,.ucwords(gettyp
124c40 65 28 24 76 61 6c 75 65 29 29 20 2e 20 22 20 76 61 6c 75 65 20 66 6f 75 6e 64 2c 20 62 75 74 20 e($value))...".value.found,.but.
124c60 22 20 2e 20 73 65 6c 66 3a 3a 24 77 6f 72 64 69 6e 67 5b 24 74 79 70 65 5d 20 2e 20 22 20 69 73 "...self::$wording[$type]...".is
124c80 20 72 65 71 75 69 72 65 64 22 2c 20 27 74 79 70 65 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a .required",.'type');.}.}........
124ca0 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 65 54 ....protected.function.validateT
124cc0 79 70 65 28 24 76 61 6c 75 65 2c 20 24 74 79 70 65 29 0a 7b 0a 0a 20 69 66 20 28 21 24 74 79 70 ype($value,.$type).{...if.(!$typ
124ce0 65 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 27 69 6e 74 65 67 65 e).{.return.true;.}..if.('intege
124d00 72 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 69 6e 74 28 24 76 r'.===.$type).{.return.is_int($v
124d20 61 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 27 6e 75 6d 62 65 72 27 20 3d 3d 3d 20 24 74 79 70 65 alue);.}..if.('number'.===.$type
124d40 29 20 7b 0a 72 65 74 75 72 6e 20 69 73 5f 6e 75 6d 65 72 69 63 28 24 76 61 6c 75 65 29 20 26 26 ).{.return.is_numeric($value).&&
124d60 20 21 69 73 5f 73 74 72 69 6e 67 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 27 62 6f 6f .!is_string($value);.}..if.('boo
124d80 6c 65 61 6e 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 62 6f 6f lean'.===.$type).{.return.is_boo
124da0 6c 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 27 6f 62 6a 65 63 74 27 20 3d 3d 3d 20 24 l($value);.}..if.('object'.===.$
124dc0 74 79 70 65 29 20 7b 0a 72 65 74 75 72 6e 20 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 75 65 29 type).{.return.is_object($value)
124de0 3b 0a 0a 20 7d 0a 0a 69 66 20 28 27 61 72 72 61 79 27 20 3d 3d 3d 20 24 74 79 70 65 29 20 7b 0a ;...}..if.('array'.===.$type).{.
124e00 72 65 74 75 72 6e 20 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 return.is_array($value);.}..if.(
124e20 27 73 74 72 69 6e 67 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 'string'.===.$type).{.return.is_
124e40 73 74 72 69 6e 67 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 27 65 6d 61 69 6c 27 20 3d string($value);.}..if.('email'.=
124e60 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
124e80 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 27 6e 75 6c 6c 27 20 3d 3d 3d 20 24 74 79 70 65 29 20 7b lue);.}..if.('null'.===.$type).{
124ea0 0a 72 65 74 75 72 6e 20 69 73 5f 6e 75 6c 6c 28 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 69 66 20 28 .return.is_null($value);.}..if.(
124ec0 27 61 6e 79 27 20 3d 3d 3d 20 24 74 79 70 65 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 'any'.===.$type).{.return.true;.
124ee0 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 45 78 63 65 }..throw.new.InvalidArgumentExce
124f00 70 74 69 6f 6e 28 28 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 75 65 29 20 3f 20 27 6f 62 6a 65 ption((is_object($value).?.'obje
124f20 63 74 27 20 3a 20 24 76 61 6c 75 65 29 20 2e 20 27 20 69 73 20 61 6e 20 69 6e 76 61 6c 69 64 20 ct'.:.$value)...'.is.an.invalid.
124f40 74 79 70 65 20 66 6f 72 20 27 20 2e 20 24 74 79 70 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a type.for.'...$type);.}.}.<?php..
124f60 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 73 .......namespace.JsonSchema\Cons
124f80 74 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 traints;..use.JsonSchema\Excepti
124fa0 6f 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 on\InvalidArgumentException;.use
124fc0 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 5c 55 72 69 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a .JsonSchema\Uri\UriResolver;....
124fe0 0a 0a 0a 0a 63 6c 61 73 73 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 ....class.UndefinedConstraint.ex
125000 74 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 tends.Constraint.{....public.fun
125020 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 75 ction.check($value,.$schema.=.nu
125040 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 69 ll,.$path.=.null,.$i.=.null).{.i
125060 66 20 28 69 73 5f 6e 75 6c 6c 28 24 73 63 68 65 6d 61 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d f.(is_null($schema)).{.return;.}
125080 0a 0a 69 66 20 28 21 69 73 5f 6f 62 6a 65 63 74 28 24 73 63 68 65 6d 61 29 29 20 7b 0a 74 68 72 ..if.(!is_object($schema)).{.thr
1250a0 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(
1250c0 0a 27 47 69 76 65 6e 20 73 63 68 65 6d 61 20 6d 75 73 74 20 62 65 20 61 6e 20 6f 62 6a 65 63 74 .'Given.schema.must.be.an.object
1250e0 20 69 6e 20 27 20 2e 20 24 70 61 74 68 0a 2e 20 27 20 62 75 74 20 69 73 20 61 20 27 20 2e 20 67 .in.'...$path...'.but.is.a.'...g
125100 65 74 74 79 70 65 28 24 73 63 68 65 6d 61 29 0a 29 3b 0a 7d 0a 0a 24 69 20 3d 20 69 73 5f 6e 75 ettype($schema).);.}..$i.=.is_nu
125120 6c 6c 28 24 69 29 20 3f 20 22 22 20 3a 20 24 69 3b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d ll($i).?."".:.$i;.$path.=.$this-
125140 3e 69 6e 63 72 65 6d 65 6e 74 50 61 74 68 28 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 0a 20 24 74 >incrementPath($path,.$i);....$t
125160 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 43 6f 6d 6d 6f 6e 50 72 6f 70 65 72 74 69 65 73 28 24 76 his->validateCommonProperties($v
125180 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 20 24 74 68 69 73 2d alue,.$schema,.$path);....$this-
1251a0 3e 76 61 6c 69 64 61 74 65 4f 66 50 72 6f 70 65 72 74 69 65 73 28 24 76 61 6c 75 65 2c 20 24 73 >validateOfProperties($value,.$s
1251c0 63 68 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 chema,.$path);....$this->validat
1251e0 65 54 79 70 65 73 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 eTypes($value,.$schema,.$path,.$
125200 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 6f 6e 20 76 i);.}..........public.function.v
125220 61 6c 69 64 61 74 65 54 79 70 65 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e alidateTypes($value,.$schema.=.n
125240 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).{.
125260 0a 20 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d ..if.(is_array($value)).{.$this-
125280 3e 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 2c 20 24 70 61 >checkArray($value,.$schema,.$pa
1252a0 74 68 2c 20 24 69 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c th,.$i);.}....if.(is_object($val
1252c0 75 65 29 20 26 26 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 70 72 6f 70 65 72 74 69 65 ue).&&.(isset($schema->propertie
1252e0 73 29 20 7c 7c 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 50 72 6f 70 s).||.isset($schema->patternProp
125300 65 72 74 69 65 73 29 20 7c 7c 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 erties).||.isset($schema->additi
125320 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b onalProperties))).{.$this->check
125340 4f 62 6a 65 63 74 28 0a 24 76 61 6c 75 65 2c 0a 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 70 Object(.$value,.isset($schema->p
125360 72 6f 70 65 72 74 69 65 73 29 20 3f 20 24 73 63 68 65 6d 61 2d 3e 70 72 6f 70 65 72 74 69 65 73 roperties).?.$schema->properties
125380 20 3a 20 6e 75 6c 6c 2c 0a 24 70 61 74 68 2c 0a 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 61 .:.null,.$path,.isset($schema->a
1253a0 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 29 20 3f 20 24 73 63 68 65 6d 61 2d 3e dditionalProperties).?.$schema->
1253c0 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 20 3a 20 6e 75 6c 6c 2c 0a 69 73 73 additionalProperties.:.null,.iss
1253e0 65 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 3f et($schema->patternProperties).?
125400 20 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 20 3a 20 6e 75 .$schema->patternProperties.:.nu
125420 6c 6c 0a 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 76 61 6c 75 65 29 ll.);.}....if.(is_string($value)
125440 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 53 74 72 69 6e 67 28 24 76 61 6c 75 65 2c 20 24 ).{.$this->checkString($value,.$
125460 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 20 28 69 73 5f schema,.$path,.$i);.}....if.(is_
125480 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 63 68 65 63 6b 4e numeric($value)).{.$this->checkN
1254a0 75 6d 62 65 72 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 umber($value,.$schema,.$path,.$i
1254c0 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 65 6e 75 6d 29 );.}....if.(isset($schema->enum)
1254e0 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 45 6e 75 6d 28 24 76 61 6c 75 65 2c 20 24 73 63 ).{.$this->checkEnum($value,.$sc
125500 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 0a 0a 0a 0a 0a 0a 70 hema,.$path,.$i);.}.}..........p
125520 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 6d 6d 6f 6e rotected.function.validateCommon
125540 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 20 3d 20 6e 75 6c Properties($value,.$schema.=.nul
125560 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 22 22 29 0a 7b 0a 0a 20 69 66 l,.$path.=.null,.$i.=."").{...if
125580 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 29 29 20 7b 0a 69 66 20 .(isset($schema->extends)).{.if.
1255a0 28 69 73 5f 73 74 72 69 6e 67 28 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 29 29 20 7b 0a (is_string($schema->extends)).{.
1255c0 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 $schema->extends.=.$this->valida
1255e0 74 65 55 72 69 28 24 73 63 68 65 6d 61 2c 20 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 29 teUri($schema,.$schema->extends)
125600 3b 0a 7d 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 ;.}.if.(is_array($schema->extend
125620 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 20 s)).{.foreach.($schema->extends.
125640 61 73 20 24 65 78 74 65 6e 64 73 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 as.$extends).{.$this->checkUndef
125660 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 65 78 74 65 6e 64 73 2c 20 24 70 61 74 68 2c 20 24 69 ined($value,.$extends,.$path,.$i
125680 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 );.}.}.else.{.$this->checkUndefi
1256a0 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 2c 20 24 70 ned($value,.$schema->extends,.$p
1256c0 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 ath,.$i);.}.}....if.(is_object($
1256e0 76 61 6c 75 65 29 29 20 7b 0a 69 66 20 28 21 28 24 76 61 6c 75 65 20 69 6e 73 74 61 6e 63 65 6f value)).{.if.(!($value.instanceo
125700 66 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 29 20 26 26 20 69 73 73 65 74 28 f.UndefinedConstraint).&&.isset(
125720 24 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 72 65 64 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 $schema->required).&&.is_array($
125740 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 72 65 64 29 20 29 20 7b 0a 0a 20 66 6f 72 65 61 63 68 20 schema->required).).{...foreach.
125760 28 24 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 72 65 64 20 61 73 20 24 72 65 71 75 69 72 65 64 29 ($schema->required.as.$required)
125780 20 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 .{.if.(!property_exists($value,.
1257a0 24 72 65 71 75 69 72 65 64 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 28 21 $required)).{.$this->addError((!
1257c0 24 70 61 74 68 29 20 3f 20 24 72 65 71 75 69 72 65 64 20 3a 20 22 24 70 61 74 68 2e 24 72 65 71 $path).?.$required.:."$path.$req
1257e0 75 69 72 65 64 22 2c 20 22 54 68 65 20 70 72 6f 70 65 72 74 79 20 22 20 2e 20 24 72 65 71 75 69 uired",."The.property."...$requi
125800 72 65 64 20 2e 20 22 20 69 73 20 72 65 71 75 69 72 65 64 22 2c 20 27 72 65 71 75 69 72 65 64 27 red...".is.required",.'required'
125820 29 3b 0a 7d 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 );.}.}.}.else.if.(isset($schema-
125840 3e 72 65 71 75 69 72 65 64 29 20 26 26 20 21 69 73 5f 61 72 72 61 79 28 24 73 63 68 65 6d 61 2d >required).&&.!is_array($schema-
125860 3e 72 65 71 75 69 72 65 64 29 29 20 7b 0a 0a 20 69 66 20 28 20 24 73 63 68 65 6d 61 2d 3e 72 65 >required)).{...if.(.$schema->re
125880 71 75 69 72 65 64 20 26 26 20 24 76 61 6c 75 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 quired.&&.$value.instanceof.Unde
1258a0 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 finedConstraint).{.$this->addErr
1258c0 6f 72 28 24 70 61 74 68 2c 20 22 49 73 20 6d 69 73 73 69 6e 67 20 61 6e 64 20 69 74 20 69 73 20 or($path,."Is.missing.and.it.is.
1258e0 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 0a 0a 0a required",.'required');.}.}.}...
125900 20 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 .if.(!($value.instanceof.Undefin
125920 65 64 43 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 54 79 70 edConstraint)).{.$this->checkTyp
125940 65 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 0a 20 e($value,.$schema,.$path);.}....
125960 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 64 69 73 61 6c 6c 6f 77 29 29 20 7b 0a if.(isset($schema->disallow)).{.
125980 24 69 6e 69 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 $initErrors.=.$this->getErrors()
1259a0 3b 0a 0a 24 74 79 70 65 53 63 68 65 6d 61 20 3d 20 6e 65 77 20 5c 73 74 64 43 6c 61 73 73 28 29 ;..$typeSchema.=.new.\stdClass()
1259c0 3b 0a 24 74 79 70 65 53 63 68 65 6d 61 2d 3e 74 79 70 65 20 3d 20 24 73 63 68 65 6d 61 2d 3e 64 ;.$typeSchema->type.=.$schema->d
1259e0 69 73 61 6c 6c 6f 77 3b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 54 79 70 65 28 24 76 61 6c 75 65 isallow;.$this->checkType($value
125a00 2c 20 24 74 79 70 65 53 63 68 65 6d 61 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 20 69 66 20 28 63 6f ,.$typeSchema,.$path);....if.(co
125a20 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 74 unt($this->getErrors()).==.count
125a40 28 24 69 6e 69 74 45 72 72 6f 72 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 ($initErrors)).{.$this->addError
125a60 28 24 70 61 74 68 2c 20 22 44 69 73 61 6c 6c 6f 77 65 64 20 76 61 6c 75 65 20 77 61 73 20 6d 61 ($path,."Disallowed.value.was.ma
125a80 74 63 68 65 64 22 2c 20 27 64 69 73 61 6c 6c 6f 77 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 tched",.'disallow');.}.else.{.$t
125aa0 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 24 69 6e 69 74 45 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 0a his->errors.=.$initErrors;.}.}..
125ac0 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6e 6f 74 29 29 20 7b 0a 24 69 6e 69 74 if.(isset($schema->not)).{.$init
125ae0 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
125b00 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 73 63 68 65 is->checkUndefined($value,.$sche
125b20 6d 61 2d 3e 6e 6f 74 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 0a 20 69 66 20 28 63 6f 75 6e ma->not,.$path,.$i);....if.(coun
125b40 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 74 28 24 t($this->getErrors()).==.count($
125b60 69 6e 69 74 45 72 72 6f 72 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 initErrors)).{.$this->addError($
125b80 70 61 74 68 2c 20 22 4d 61 74 63 68 65 64 20 61 20 73 63 68 65 6d 61 20 77 68 69 63 68 20 69 74 path,."Matched.a.schema.which.it
125ba0 20 73 68 6f 75 6c 64 20 6e 6f 74 22 2c 20 27 6e 6f 74 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 .should.not",.'not');.}.else.{.$
125bc0 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 24 69 6e 69 74 45 72 72 6f 72 73 3b 0a 7d 0a 7d 0a this->errors.=.$initErrors;.}.}.
125be0 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 69 66 20 28 ...if.(is_object($value)).{.if.(
125c00 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 50 72 6f 70 65 72 74 69 65 73 29 29 20 7b isset($schema->minProperties)).{
125c20 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 75 .if.(count(get_object_vars($valu
125c40 65 29 29 20 3c 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 50 72 6f 70 65 72 74 69 65 73 29 20 7b 0a e)).<.$schema->minProperties).{.
125c60 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 6e $this->addError($path,."Must.con
125c80 74 61 69 6e 20 61 20 6d 69 6e 69 6d 75 6d 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d tain.a.minimum.of."...$schema->m
125ca0 69 6e 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 6d inProperties...".properties",.'m
125cc0 69 6e 50 72 6f 70 65 72 74 69 65 73 27 2c 20 61 72 72 61 79 28 27 6d 69 6e 50 72 6f 70 65 72 74 inProperties',.array('minPropert
125ce0 69 65 73 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 50 72 6f 70 65 72 74 69 65 73 2c 29 ies'.=>.$schema->minProperties,)
125d00 29 3b 0a 7d 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 61 78 50 72 6f );.}.}.if.(isset($schema->maxPro
125d20 70 65 72 74 69 65 73 29 29 20 7b 0a 69 66 20 28 63 6f 75 6e 74 28 67 65 74 5f 6f 62 6a 65 63 74 perties)).{.if.(count(get_object
125d40 5f 76 61 72 73 28 24 76 61 6c 75 65 29 29 20 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 50 72 6f _vars($value)).>.$schema->maxPro
125d60 70 65 72 74 69 65 73 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 perties).{.$this->addError($path
125d80 2c 20 22 4d 75 73 74 20 63 6f 6e 74 61 69 6e 20 6e 6f 20 6d 6f 72 65 20 74 68 61 6e 20 22 20 2e ,."Must.contain.no.more.than."..
125da0 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 50 72 6f 70 65 72 74 69 65 73 20 2e 20 22 20 70 72 6f 70 .$schema->maxProperties...".prop
125dc0 65 72 74 69 65 73 22 2c 20 27 6d 61 78 50 72 6f 70 65 72 74 69 65 73 27 2c 20 61 72 72 61 79 28 erties",.'maxProperties',.array(
125de0 27 6d 61 78 50 72 6f 70 65 72 74 69 65 73 27 20 3d 3e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 50 'maxProperties'.=>.$schema->maxP
125e00 72 6f 70 65 72 74 69 65 73 2c 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 6f 62 roperties,));.}.}.}....if.(is_ob
125e20 6a 65 63 74 28 24 76 61 6c 75 65 29 20 26 26 20 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 64 ject($value).&&.isset($schema->d
125e40 65 70 65 6e 64 65 6e 63 69 65 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 44 ependencies)).{.$this->validateD
125e60 65 70 65 6e 64 65 6e 63 69 65 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2d 3e 64 65 70 ependencies($value,.$schema->dep
125e80 65 6e 64 65 6e 63 69 65 73 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a endencies,.$path);.}.}..........
125ea0 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 4f 66 50 72 6f protected.function.validateOfPro
125ec0 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 74 68 2c 20 perties($value,.$schema,.$path,.
125ee0 24 69 20 3d 20 22 22 29 0a 7b 0a 0a 20 69 66 20 28 24 76 61 6c 75 65 20 69 6e 73 74 61 6e 63 65 $i.=."").{...if.($value.instance
125f00 6f 66 20 55 6e 64 65 66 69 6e 65 64 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 72 65 74 75 72 6e of.UndefinedConstraint).{.return
125f20 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 61 6c 6c 4f 66 29 29 20 ;.}..if.(isset($schema->allOf)).
125f40 7b 0a 24 69 73 56 61 6c 69 64 20 3d 20 74 72 75 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 73 63 68 {.$isValid.=.true;.foreach.($sch
125f60 65 6d 61 2d 3e 61 6c 6c 4f 66 20 61 73 20 24 61 6c 6c 4f 66 29 20 7b 0a 24 69 6e 69 74 45 72 72 ema->allOf.as.$allOf).{.$initErr
125f80 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 69 73 2d ors.=.$this->getErrors();.$this-
125fa0 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 6c 6c 4f 66 2c 20 >checkUndefined($value,.$allOf,.
125fc0 24 70 61 74 68 2c 20 24 69 29 3b 0a 24 69 73 56 61 6c 69 64 20 3d 20 24 69 73 56 61 6c 69 64 20 $path,.$i);.$isValid.=.$isValid.
125fe0 26 26 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 &&.(count($this->getErrors()).==
126000 20 63 6f 75 6e 74 28 24 69 6e 69 74 45 72 72 6f 72 73 29 29 3b 0a 7d 0a 69 66 20 28 21 24 69 73 .count($initErrors));.}.if.(!$is
126020 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 70 61 74 68 2c 20 Valid).{.$this->addError($path,.
126040 22 46 61 69 6c 65 64 20 74 6f 20 6d 61 74 63 68 20 61 6c 6c 20 73 63 68 65 6d 61 73 22 2c 20 27 "Failed.to.match.all.schemas",.'
126060 61 6c 6c 4f 66 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d allOf');.}.}..if.(isset($schema-
126080 3e 61 6e 79 4f 66 29 29 20 7b 0a 24 69 73 56 61 6c 69 64 20 3d 20 66 61 6c 73 65 3b 0a 24 73 74 >anyOf)).{.$isValid.=.false;.$st
1260a0 61 72 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 artErrors.=.$this->getErrors();.
1260c0 66 6f 72 65 61 63 68 20 28 24 73 63 68 65 6d 61 2d 3e 61 6e 79 4f 66 20 61 73 20 24 61 6e 79 4f foreach.($schema->anyOf.as.$anyO
1260e0 66 29 20 7b 0a 24 69 6e 69 74 45 72 72 6f 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 f).{.$initErrors.=.$this->getErr
126100 6f 72 73 28 29 3b 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 ors();.$this->checkUndefined($va
126120 6c 75 65 2c 20 24 61 6e 79 4f 66 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 69 66 20 28 24 69 73 lue,.$anyOf,.$path,.$i);.if.($is
126140 56 61 6c 69 64 20 3d 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 Valid.=.(count($this->getErrors(
126160 29 29 20 3d 3d 20 63 6f 75 6e 74 28 24 69 6e 69 74 45 72 72 6f 72 73 29 29 29 20 7b 0a 62 72 65 )).==.count($initErrors))).{.bre
126180 61 6b 3b 0a 7d 0a 7d 0a 69 66 20 28 21 24 69 73 56 61 6c 69 64 29 20 7b 0a 24 74 68 69 73 2d 3e ak;.}.}.if.(!$isValid).{.$this->
1261a0 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 20 6d 61 74 63 68 addError($path,."Failed.to.match
1261c0 20 61 74 20 6c 65 61 73 74 20 6f 6e 65 20 73 63 68 65 6d 61 22 2c 20 27 61 6e 79 4f 66 27 29 3b .at.least.one.schema",.'anyOf');
1261e0 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 24 73 74 61 72 74 .}.else.{.$this->errors.=.$start
126200 45 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e Errors;.}.}..if.(isset($schema->
126220 6f 6e 65 4f 66 29 29 20 7b 0a 24 61 6c 6c 45 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a oneOf)).{.$allErrors.=.array();.
126240 24 6d 61 74 63 68 65 64 53 63 68 65 6d 61 73 20 3d 20 30 3b 0a 24 73 74 61 72 74 45 72 72 6f 72 $matchedSchemas.=.0;.$startError
126260 73 20 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 s.=.$this->getErrors();.foreach.
126280 28 24 73 63 68 65 6d 61 2d 3e 6f 6e 65 4f 66 20 61 73 20 24 6f 6e 65 4f 66 29 20 7b 0a 24 74 68 ($schema->oneOf.as.$oneOf).{.$th
1262a0 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 63 68 65 is->errors.=.array();.$this->che
1262c0 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 6f 6e 65 4f 66 2c 20 24 70 61 74 ckUndefined($value,.$oneOf,.$pat
1262e0 68 2c 20 24 69 29 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f h,.$i);.if.(count($this->getErro
126300 72 73 28 29 29 20 3d 3d 20 30 29 20 7b 0a 24 6d 61 74 63 68 65 64 53 63 68 65 6d 61 73 2b 2b 3b rs()).==.0).{.$matchedSchemas++;
126320 0a 7d 0a 24 61 6c 6c 45 72 72 6f 72 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 61 6c 6c .}.$allErrors.=.array_merge($all
126340 45 72 72 6f 72 73 2c 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 74 68 69 73 2d 3e 67 65 74 45 Errors,.array_values($this->getE
126360 72 72 6f 72 73 28 29 29 29 3b 0a 7d 0a 69 66 20 28 24 6d 61 74 63 68 65 64 53 63 68 65 6d 61 73 rrors()));.}.if.($matchedSchemas
126380 20 21 3d 3d 20 31 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 0a 61 72 72 61 .!==.1).{.$this->addErrors(.arra
1263a0 79 5f 6d 65 72 67 65 28 0a 24 61 6c 6c 45 72 72 6f 72 73 2c 0a 61 72 72 61 79 28 61 72 72 61 79 y_merge(.$allErrors,.array(array
1263c0 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 67 65 27 (.'property'.=>.$path,.'message'
1263e0 20 3d 3e 20 22 46 61 69 6c 65 64 20 74 6f 20 6d 61 74 63 68 20 65 78 61 63 74 6c 79 20 6f 6e 65 .=>."Failed.to.match.exactly.one
126400 20 73 63 68 65 6d 61 22 2c 0a 27 63 6f 6e 73 74 72 61 69 6e 74 27 20 3d 3e 20 27 6f 6e 65 4f 66 .schema",.'constraint'.=>.'oneOf
126420 27 2c 0a 29 2c 29 2c 0a 24 73 74 61 72 74 45 72 72 6f 72 73 0a 29 0a 29 3b 0a 7d 20 65 6c 73 65 ',.),),.$startErrors.).);.}.else
126440 20 7b 0a 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 .{.$this->errors.=.$startErrors;
126460 0a 7d 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 75 6e 63 74 69 .}.}.}..........protected.functi
126480 6f 6e 20 76 61 6c 69 64 61 74 65 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 76 61 6c 75 65 2c 20 on.validateDependencies($value,.
1264a0 24 64 65 70 65 6e 64 65 6e 63 69 65 73 2c 20 24 70 61 74 68 2c 20 24 69 20 3d 20 22 22 29 0a 7b $dependencies,.$path,.$i.=."").{
1264c0 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 65 6e 64 65 6e 63 69 65 73 20 61 73 20 24 6b 65 79 20 .foreach.($dependencies.as.$key.
1264e0 3d 3e 20 24 64 65 70 65 6e 64 65 6e 63 79 29 20 7b 0a 69 66 20 28 70 72 6f 70 65 72 74 79 5f 65 =>.$dependency).{.if.(property_e
126500 78 69 73 74 73 28 24 76 61 6c 75 65 2c 20 24 6b 65 79 29 29 20 7b 0a 69 66 20 28 69 73 5f 73 74 xists($value,.$key)).{.if.(is_st
126520 72 69 6e 67 28 24 64 65 70 65 6e 64 65 6e 63 79 29 29 20 7b 0a 0a 20 69 66 20 28 21 70 72 6f 70 ring($dependency)).{...if.(!prop
126540 65 72 74 79 5f 65 78 69 73 74 73 28 24 76 61 6c 75 65 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 29 erty_exists($value,.$dependency)
126560 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 65 79 ).{.$this->addError($path,."$key
126580 20 64 65 70 65 6e 64 73 20 6f 6e 20 24 64 65 70 65 6e 64 65 6e 63 79 20 61 6e 64 20 24 64 65 70 .depends.on.$dependency.and.$dep
1265a0 65 6e 64 65 6e 63 79 20 69 73 20 6d 69 73 73 69 6e 67 22 2c 20 27 64 65 70 65 6e 64 65 6e 63 69 endency.is.missing",.'dependenci
1265c0 65 73 27 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 64 65 70 es');.}.}.else.if.(is_array($dep
1265e0 65 6e 64 65 6e 63 79 29 29 20 7b 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 64 65 70 65 6e 64 65 6e endency)).{...foreach.($dependen
126600 63 79 20 61 73 20 24 64 29 20 7b 0a 69 66 20 28 21 70 72 6f 70 65 72 74 79 5f 65 78 69 73 74 73 cy.as.$d).{.if.(!property_exists
126620 28 24 76 61 6c 75 65 2c 20 24 64 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 ($value,.$d)).{.$this->addError(
126640 24 70 61 74 68 2c 20 22 24 6b 65 79 20 64 65 70 65 6e 64 73 20 6f 6e 20 24 64 20 61 6e 64 20 24 $path,."$key.depends.on.$d.and.$
126660 64 20 69 73 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 d.is.missing",.'dependencies');.
126680 7d 0a 7d 0a 7d 20 65 6c 73 65 20 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 64 65 70 65 6e 64 }.}.}.else.if.(is_object($depend
1266a0 65 6e 63 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 69 6e 65 64 ency)).{...$this->checkUndefined
1266c0 28 24 76 61 6c 75 65 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 2c 20 24 70 61 74 68 2c 20 24 69 29 ($value,.$dependency,.$path,.$i)
1266e0 3b 0a 7d 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 6e 20 76 61 ;.}.}.}.}..protected.function.va
126700 6c 69 64 61 74 65 55 72 69 28 24 73 63 68 65 6d 61 2c 20 24 73 63 68 65 6d 61 55 72 69 20 3d 20 lidateUri($schema,.$schemaUri.=.
126720 6e 75 6c 6c 29 0a 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 null).{.$resolver.=.new.UriResol
126740 76 65 72 28 29 3b 0a 24 72 65 74 72 69 65 76 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 55 72 ver();.$retriever.=.$this->getUr
126760 69 52 65 74 72 69 65 76 65 72 28 29 3b 0a 0a 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d 20 6e 75 6c iRetriever();..$jsonSchema.=.nul
126780 6c 3b 0a 69 66 20 28 24 72 65 73 6f 6c 76 65 72 2d 3e 69 73 56 61 6c 69 64 28 24 73 63 68 65 6d l;.if.($resolver->isValid($schem
1267a0 61 55 72 69 29 29 20 7b 0a 24 73 63 68 65 6d 61 49 64 20 3d 20 70 72 6f 70 65 72 74 79 5f 65 78 aUri)).{.$schemaId.=.property_ex
1267c0 69 73 74 73 28 24 73 63 68 65 6d 61 2c 20 27 69 64 27 29 20 3f 20 24 73 63 68 65 6d 61 2d 3e 69 ists($schema,.'id').?.$schema->i
1267e0 64 20 3a 20 6e 75 6c 6c 3b 0a 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d 20 24 72 65 74 72 69 65 76 d.:.null;.$jsonSchema.=.$retriev
126800 65 72 2d 3e 72 65 74 72 69 65 76 65 28 24 73 63 68 65 6d 61 49 64 2c 20 24 73 63 68 65 6d 61 55 er->retrieve($schemaId,.$schemaU
126820 72 69 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6a 73 6f 6e 53 63 68 65 6d 61 3b 0a 7d 0a 7d 0a ri);.}..return.$jsonSchema;.}.}.
126840 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
126860 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 64 41 ma\Exception;.....class.InvalidA
126880 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 76 61 6c 69 rgumentException.extends.\Invali
1268a0 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 7d 3c 3f 70 68 70 0a 0a 0a 0a 0a dArgumentException.{.}<?php.....
1268c0 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
1268e0 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 76 61 6c 69 64 53 63 68 65 6d 61 4d 65 64 69 61 on;.....class.InvalidSchemaMedia
126900 54 79 70 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 TypeException.extends.\RuntimeEx
126920 63 65 70 74 69 6f 6e 0a 7b 20 0a 7d 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 ception.{..}<?php.........namesp
126940 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
126960 61 73 73 20 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 20 65 78 ass.InvalidSourceUriException.ex
126980 74 65 6e 64 73 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 0a 7b tends.InvalidArgumentException.{
1269a0 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 20 4a 73 6f 6e 53 .}.<?php.........namespace.JsonS
1269c0 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 4a 73 6f 6e 44 chema\Exception;.....class.JsonD
1269e0 65 63 6f 64 69 6e 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 ecodingException.extends.\Runtim
126a00 65 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 eException.{.public.function.__c
126a20 6f 6e 73 74 72 75 63 74 28 24 63 6f 64 65 20 3d 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 4e 4f 4e 45 onstruct($code.=.JSON_ERROR_NONE
126a40 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 29 0a 7b ,.\Exception.$previous.=.null).{
126a60 0a 73 77 69 74 63 68 20 28 24 63 6f 64 65 29 20 7b 0a 63 61 73 65 20 4a 53 4f 4e 5f 45 52 52 4f .switch.($code).{.case.JSON_ERRO
126a80 52 5f 44 45 50 54 48 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 54 68 65 20 6d 61 78 69 6d 75 6d R_DEPTH:.$message.=.'The.maximum
126aa0 20 73 74 61 63 6b 20 64 65 70 74 68 20 68 61 73 20 62 65 65 6e 20 65 78 63 65 65 64 65 64 27 3b .stack.depth.has.been.exceeded';
126ac0 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 41 54 45 5f 4d 49 .break;.case.JSON_ERROR_STATE_MI
126ae0 53 4d 41 54 43 48 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 49 6e 76 61 6c 69 64 20 6f 72 20 6d SMATCH:.$message.=.'Invalid.or.m
126b00 61 6c 66 6f 72 6d 65 64 20 4a 53 4f 4e 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4a 53 4f 4e alformed.JSON';.break;.case.JSON
126b20 5f 45 52 52 4f 52 5f 43 54 52 4c 5f 43 48 41 52 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 43 6f _ERROR_CTRL_CHAR:.$message.=.'Co
126b40 6e 74 72 6f 6c 20 63 68 61 72 61 63 74 65 72 20 65 72 72 6f 72 2c 20 70 6f 73 73 69 62 6c 79 20 ntrol.character.error,.possibly.
126b60 69 6e 63 6f 72 72 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 incorrectly.encoded';.break;.cas
126b80 65 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 55 54 46 38 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 4d e.JSON_ERROR_UTF8:.$message.=.'M
126ba0 61 6c 66 6f 72 6d 65 64 20 55 54 46 2d 38 20 63 68 61 72 61 63 74 65 72 73 2c 20 70 6f 73 73 69 alformed.UTF-8.characters,.possi
126bc0 62 6c 79 20 69 6e 63 6f 72 72 65 63 74 6c 79 20 65 6e 63 6f 64 65 64 27 3b 0a 62 72 65 61 6b 3b bly.incorrectly.encoded';.break;
126be0 0a 63 61 73 65 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 53 59 4e 54 41 58 3a 0a 24 6d 65 73 73 61 67 .case.JSON_ERROR_SYNTAX:.$messag
126c00 65 20 3d 20 27 4a 53 4f 4e 20 73 79 6e 74 61 78 20 69 73 20 6d 61 6c 66 6f 72 6d 65 64 27 3b 0a e.=.'JSON.syntax.is.malformed';.
126c20 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 53 79 6e 74 break;.default:.$message.=.'Synt
126c40 61 78 20 65 72 72 6f 72 27 3b 0a 7d 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 ax.error';.}.parent::__construct
126c60 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 29 3b 0a 7d 0a ($message,.$code,.$previous);.}.
126c80 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 68 }<?php.........namespace.JsonSch
126ca0 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 52 65 73 6f 75 72 63 ema\Exception;.....class.Resourc
126cc0 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 5c 52 75 6e 74 eNotFoundException.extends.\Runt
126ce0 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
126d00 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 6f 6e 3b 0a 0a 0a mespace.JsonSchema\Exception;...
126d20 0a 0a 63 6c 61 73 73 20 55 72 69 52 65 73 6f 6c 76 65 72 45 78 63 65 70 74 69 6f 6e 20 65 78 74 ..class.UriResolverException.ext
126d40 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 7d 3c 3f 70 68 70 0a ends.\RuntimeException.{.}<?php.
126d60 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
126d80 73 65 20 4a 73 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 se.JsonSchema\Exception\JsonDeco
126da0 64 69 6e 67 45 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 55 72 dingException;.use.JsonSchema\Ur
126dc0 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 66 61 i\Retrievers\UriRetrieverInterfa
126de0 63 65 3b 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 ce;.use.JsonSchema\Uri\UriRetrie
126e00 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 66 52 65 73 6f 6c 76 65 72 0a 7b 0a ver;........class.RefResolver.{.
126e20 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 24 64 65 70 74 68 20 3d .......protected.static.$depth.=
126e40 20 30 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 24 6d 61 78 44 65 70 74 68 .0;......public.static.$maxDepth
126e60 20 3d 20 37 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 75 72 69 52 65 74 72 69 65 76 65 .=.7;.....protected.$uriRetrieve
126e80 72 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 53 63 68 r.=.null;.....protected.$rootSch
126ea0 65 6d 61 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 ema.=.null;.....public.function.
126ec0 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 74 72 69 65 76 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b __construct($retriever.=.null).{
126ee0 0a 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 20 3d 20 24 72 65 74 72 69 65 76 65 .$this->uriRetriever.=.$retrieve
126f00 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 66 65 74 r;.}.........public.function.fet
126f20 63 68 52 65 66 28 24 72 65 66 2c 20 24 73 6f 75 72 63 65 55 72 69 29 0a 7b 0a 24 72 65 74 72 69 chRef($ref,.$sourceUri).{.$retri
126f40 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 28 29 3b ever.=.$this->getUriRetriever();
126f60 0a 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 .$jsonSchema.=.$retriever->retri
126f80 65 76 65 28 24 72 65 66 2c 20 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 24 74 68 69 73 2d 3e 72 65 eve($ref,.$sourceUri);.$this->re
126fa0 73 6f 6c 76 65 28 24 6a 73 6f 6e 53 63 68 65 6d 61 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6a 73 6f solve($jsonSchema);..return.$jso
126fc0 6e 53 63 68 65 6d 61 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 nSchema;.}........public.functio
126fe0 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 28 69 73 5f 6e 75 6c n.getUriRetriever().{.if.(is_nul
127000 6c 28 24 74 68 69 73 2d 3e 75 72 69 52 65 74 72 69 65 76 65 72 29 29 20 7b 0a 24 74 68 69 73 2d l($this->uriRetriever)).{.$this-
127020 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 65 74 72 69 65 76 65 >setUriRetriever(new.UriRetrieve
127040 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 65 74 72 69 65 76 65 r);.}..return.$this->uriRetrieve
127060 72 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 r;.}................public.funct
127080 69 6f 6e 20 72 65 73 6f 6c 76 65 28 24 73 63 68 65 6d 61 2c 20 24 73 6f 75 72 63 65 55 72 69 20 ion.resolve($schema,.$sourceUri.
1270a0 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 73 65 6c 66 3a 3a 24 64 65 70 74 68 20 3e 20 73 65 6c =.null).{.if.(self::$depth.>.sel
1270c0 66 3a 3a 24 6d 61 78 44 65 70 74 68 29 20 7b 0a 73 65 6c 66 3a 3a 24 64 65 70 74 68 20 3d 20 30 f::$maxDepth).{.self::$depth.=.0
1270e0 3b 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 69 6f ;.throw.new.JsonDecodingExceptio
127100 6e 28 4a 53 4f 4e 5f 45 52 52 4f 52 5f 44 45 50 54 48 29 3b 0a 7d 0a 2b 2b 73 65 6c 66 3a 3a 24 n(JSON_ERROR_DEPTH);.}.++self::$
127120 64 65 70 74 68 3b 0a 0a 69 66 20 28 21 20 69 73 5f 6f 62 6a 65 63 74 28 24 73 63 68 65 6d 61 29 depth;..if.(!.is_object($schema)
127140 29 20 7b 0a 2d 2d 73 65 6c 66 3a 3a 24 64 65 70 74 68 3b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 ).{.--self::$depth;.return;.}..i
127160 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 73 6f 75 72 63 65 55 72 69 20 26 26 20 21 20 65 6d 70 74 f.(null.===.$sourceUri.&&.!.empt
127180 79 28 24 73 63 68 65 6d 61 2d 3e 69 64 29 29 20 7b 0a 24 73 6f 75 72 63 65 55 72 69 20 3d 20 24 y($schema->id)).{.$sourceUri.=.$
1271a0 73 63 68 65 6d 61 2d 3e 69 64 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 schema->id;.}..if.(null.===.$thi
1271c0 73 2d 3e 72 6f 6f 74 53 63 68 65 6d 61 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 53 63 68 65 s->rootSchema).{.$this->rootSche
1271e0 6d 61 20 3d 20 24 73 63 68 65 6d 61 3b 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 ma.=.$schema;.}....$this->resolv
127200 65 52 65 66 28 24 73 63 68 65 6d 61 2c 20 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 0a 0a 20 0a 20 eRef($schema,.$sourceUri);......
127220 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 27 foreach.(array('additionalItems'
127240 2c 20 27 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 27 2c 20 27 65 78 74 65 6e ,.'additionalProperties',.'exten
127260 64 73 27 2c 20 27 69 74 65 6d 73 27 29 20 61 73 20 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 29 20 ds',.'items').as.$propertyName).
127280 7b 0a 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 50 72 6f 70 65 72 74 79 28 24 73 63 68 65 6d 61 {.$this->resolveProperty($schema
1272a0 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 3b 0a 7d 0a ,.$propertyName,.$sourceUri);.}.
1272c0 0a 0a 20 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 64 69 73 61 6c 6c 6f 77 27 .......foreach.(array('disallow'
1272e0 2c 20 27 65 78 74 65 6e 64 73 27 2c 20 27 69 74 65 6d 73 27 2c 20 27 74 79 70 65 27 2c 20 27 61 ,.'extends',.'items',.'type',.'a
127300 6c 6c 4f 66 27 2c 20 27 61 6e 79 4f 66 27 2c 20 27 6f 6e 65 4f 66 27 29 20 61 73 20 24 70 72 6f llOf',.'anyOf',.'oneOf').as.$pro
127320 70 65 72 74 79 4e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 41 72 72 61 79 pertyName).{.$this->resolveArray
127340 4f 66 53 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 OfSchemas($schema,.$propertyName
127360 2c 20 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 61 72 72 ,.$sourceUri);.}....foreach.(arr
127380 61 79 28 27 64 65 70 65 6e 64 65 6e 63 69 65 73 27 2c 20 27 70 61 74 74 65 72 6e 50 72 6f 70 65 ay('dependencies',.'patternPrope
1273a0 72 74 69 65 73 27 2c 20 27 70 72 6f 70 65 72 74 69 65 73 27 29 20 61 73 20 24 70 72 6f 70 65 72 rties',.'properties').as.$proper
1273c0 74 79 4e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 4f 62 6a 65 63 74 4f 66 tyName).{.$this->resolveObjectOf
1273e0 53 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 Schemas($schema,.$propertyName,.
127400 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 7d 0a 0a 2d 2d 73 65 6c 66 3a 3a 24 64 65 70 74 68 3b 0a $sourceUri);.}..--self::$depth;.
127420 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 72 65 73 6f 6c }..........public.function.resol
127440 76 65 41 72 72 61 79 4f 66 53 63 68 65 6d 61 73 28 24 73 63 68 65 6d 61 2c 20 24 70 72 6f 70 65 veArrayOfSchemas($schema,.$prope
127460 72 74 79 4e 61 6d 65 2c 20 24 73 6f 75 72 63 65 55 72 69 29 0a 7b 0a 69 66 20 28 21 20 69 73 73 rtyName,.$sourceUri).{.if.(!.iss
127480 65 74 28 24 73 63 68 65 6d 61 2d 3e 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 29 20 7c 7c 20 21 20 et($schema->$propertyName).||.!.
1274a0 69 73 5f 61 72 72 61 79 28 24 73 63 68 65 6d 61 2d 3e 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 29 is_array($schema->$propertyName)
1274c0 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 73 63 68 65 6d 61 2d ).{.return;.}..foreach.($schema-
1274e0 3e 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 20 61 73 20 24 70 6f 73 73 69 62 6c 79 53 63 68 65 6d >$propertyName.as.$possiblySchem
127500 61 29 20 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 a).{.$this->resolve($possiblySch
127520 65 6d 61 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 ema,.$sourceUri);.}.}..........p
127540 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 4f 62 6a 65 63 74 4f 66 53 63 ublic.function.resolveObjectOfSc
127560 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 73 hemas($schema,.$propertyName,.$s
127580 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 2d ourceUri).{.if.(!.isset($schema-
1275a0 3e 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 29 20 7c 7c 20 21 20 69 73 5f 6f 62 6a 65 63 74 28 24 >$propertyName).||.!.is_object($
1275c0 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
1275e0 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 67 65 74 5f 6f 62 6a 65 63 74 5f 76 61 72 73 28 24 73 ;.}..foreach.(get_object_vars($s
127600 63 68 65 6d 61 2d 3e 24 70 72 6f 70 65 72 74 79 4e 61 6d 65 29 20 61 73 20 24 70 6f 73 73 69 62 chema->$propertyName).as.$possib
127620 6c 79 53 63 68 65 6d 61 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 28 24 70 6f 73 73 lySchema).{.$this->resolve($poss
127640 69 62 6c 79 53 63 68 65 6d 61 2c 20 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a iblySchema,.$sourceUri);.}.}....
127660 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 50 72 6f ......public.function.resolvePro
127680 70 65 72 74 79 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 73 perty($schema,.$propertyName,.$s
1276a0 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 2d ourceUri).{.if.(!.isset($schema-
1276c0 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 3b 0a 7d 0a 0a 24 74 >$propertyName)).{.return;.}..$t
1276e0 68 69 73 2d 3e 72 65 73 6f 6c 76 65 28 24 73 63 68 65 6d 61 2d 3e 24 70 72 6f 70 65 72 74 79 4e his->resolve($schema->$propertyN
127700 61 6d 65 2c 20 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 ame,.$sourceUri);.}..........pub
127720 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 52 65 66 28 24 73 63 68 65 6d 61 2c lic.function.resolveRef($schema,
127740 20 24 73 6f 75 72 63 65 55 72 69 29 0a 7b 0a 24 72 65 66 20 3d 20 27 24 72 65 66 27 3b 0a 0a 69 .$sourceUri).{.$ref.=.'$ref';..i
127760 66 20 28 65 6d 70 74 79 28 24 73 63 68 65 6d 61 2d 3e 24 72 65 66 29 29 20 7b 0a 72 65 74 75 72 f.(empty($schema->$ref)).{.retur
127780 6e 3b 0a 7d 0a 0a 24 73 70 6c 69 74 52 65 66 20 3d 20 65 78 70 6c 6f 64 65 28 27 23 27 2c 20 24 n;.}..$splitRef.=.explode('#',.$
1277a0 73 63 68 65 6d 61 2d 3e 24 72 65 66 2c 20 32 29 3b 0a 0a 24 72 65 66 44 6f 63 20 3d 20 24 73 70 schema->$ref,.2);..$refDoc.=.$sp
1277c0 6c 69 74 52 65 66 5b 30 5d 3b 0a 24 72 65 66 50 61 74 68 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 litRef[0];.$refPath.=.null;.if.(
1277e0 63 6f 75 6e 74 28 24 73 70 6c 69 74 52 65 66 29 20 3d 3d 3d 20 32 29 20 7b 0a 24 72 65 66 50 61 count($splitRef).===.2).{.$refPa
127800 74 68 20 3d 20 65 78 70 6c 6f 64 65 28 27 2f 27 2c 20 24 73 70 6c 69 74 52 65 66 5b 31 5d 29 3b th.=.explode('/',.$splitRef[1]);
127820 0a 61 72 72 61 79 5f 73 68 69 66 74 28 24 72 65 66 50 61 74 68 29 3b 0a 7d 0a 0a 69 66 20 28 65 .array_shift($refPath);.}..if.(e
127840 6d 70 74 79 28 24 72 65 66 44 6f 63 29 20 26 26 20 65 6d 70 74 79 28 24 72 65 66 50 61 74 68 29 mpty($refDoc).&&.empty($refPath)
127860 29 20 7b 0a 0a 20 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 72 65 66 ).{...return;.}..if.(!empty($ref
127880 44 6f 63 29 29 20 7b 0a 24 72 65 66 53 63 68 65 6d 61 20 3d 20 24 74 68 69 73 2d 3e 66 65 74 63 Doc)).{.$refSchema.=.$this->fetc
1278a0 68 52 65 66 28 24 72 65 66 44 6f 63 2c 20 24 73 6f 75 72 63 65 55 72 69 29 3b 0a 7d 20 65 6c 73 hRef($refDoc,.$sourceUri);.}.els
1278c0 65 20 7b 0a 24 72 65 66 53 63 68 65 6d 61 20 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 53 63 68 65 e.{.$refSchema.=.$this->rootSche
1278e0 6d 61 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 72 65 66 50 61 74 68 29 20 7b 0a ma;.}..if.(null.!==.$refPath).{.
127900 24 72 65 66 53 63 68 65 6d 61 20 3d 20 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 52 65 66 53 65 $refSchema.=.$this->resolveRefSe
127920 67 6d 65 6e 74 28 24 72 65 66 53 63 68 65 6d 61 2c 20 24 72 65 66 50 61 74 68 29 3b 0a 7d 0a 0a gment($refSchema,.$refPath);.}..
127940 75 6e 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 24 72 65 66 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 unset($schema->$ref);....foreach
127960 20 28 67 65 74 5f 6f 62 6a 65 63 74 5f 76 61 72 73 28 24 72 65 66 53 63 68 65 6d 61 29 20 61 73 .(get_object_vars($refSchema).as
127980 20 24 70 72 6f 70 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 73 63 68 65 6d 61 2d 3e 24 70 72 .$prop.=>.$value).{.$schema->$pr
1279a0 6f 70 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 op.=.$value;.}.}........public.f
1279c0 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 74 72 69 unction.setUriRetriever(UriRetri
1279e0 65 76 65 72 20 24 72 65 74 72 69 65 76 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 72 69 52 65 74 ever.$retriever).{.$this->uriRet
127a00 72 69 65 76 65 72 20 3d 20 24 72 65 74 72 69 65 76 65 72 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 riever.=.$retriever;..return.$th
127a20 69 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 72 65 73 6f 6c 76 is;.}..protected.function.resolv
127a40 65 52 65 66 53 65 67 6d 65 6e 74 28 24 64 61 74 61 2c 20 24 70 61 74 68 50 61 72 74 73 29 0a 7b eRefSegment($data,.$pathParts).{
127a60 0a 66 6f 72 65 61 63 68 20 28 24 70 61 74 68 50 61 72 74 73 20 61 73 20 24 70 61 74 68 29 20 7b .foreach.($pathParts.as.$path).{
127a80 0a 24 70 61 74 68 20 3d 20 73 74 72 74 72 28 24 70 61 74 68 2c 20 61 72 72 61 79 28 27 7e 31 27 .$path.=.strtr($path,.array('~1'
127aa0 20 3d 3e 20 27 2f 27 2c 20 27 7e 30 27 20 3d 3e 20 27 7e 27 2c 20 27 25 32 35 27 20 3d 3e 20 27 .=>.'/',.'~0'.=>.'~',.'%25'.=>.'
127ac0 25 27 29 29 3b 0a 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 64 61 74 61 29 29 20 7b 0a 24 64 %'));..if.(is_array($data)).{.$d
127ae0 61 74 61 20 3d 20 24 64 61 74 61 5b 24 70 61 74 68 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 61 ata.=.$data[$path];.}.else.{.$da
127b00 74 61 20 3d 20 24 64 61 74 61 2d 3e 7b 24 70 61 74 68 7d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e ta.=.$data->{$path};.}.}..return
127b20 20 24 64 61 74 61 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 .$data;.}.}.<?php.....namespace.
127b40 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 0a 0a 0a 0a 0a JsonSchema\Uri\Retrievers;......
127b60 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 41 62 73 74 72 61 63 74 52 65 74 72 69 65 76 65 .abstract.class.AbstractRetrieve
127b80 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 55 72 69 52 65 74 72 69 65 76 65 72 49 6e 74 65 72 66 61 r.implements.UriRetrieverInterfa
127ba0 63 65 0a 7b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 74 65 6e 74 54 79 70 65 3b ce.{.....protected.$contentType;
127bc0 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
127be0 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 54 79 Type().{.return.$this->contentTy
127c00 70 65 3b 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 20 pe;.}.}.<?php.........namespace.
127c20 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 0a 75 73 65 20 JsonSchema\Uri\Retrievers;..use.
127c40 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 0a 63 6c 61 73 JsonSchema\Validator;.......clas
127c60 73 20 43 75 72 6c 20 65 78 74 65 6e 64 73 20 41 62 73 74 72 61 63 74 52 65 74 72 69 65 76 65 72 s.Curl.extends.AbstractRetriever
127c80 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6d 65 73 73 61 67 65 42 6f 64 79 3b 0a 0a 70 75 62 6c .{.protected.$messageBody;..publ
127ca0 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 69 66 20 28 ic.function.__construct().{.if.(
127cc0 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 63 75 72 6c 5f 69 6e 69 74 27 29 29 20 7b !function_exists('curl_init')).{
127ce0 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 63 55 .throw.new.\RuntimeException("cU
127d00 52 4c 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 22 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 RL.not.installed");.}.}......pub
127d20 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 0a 7b 0a 24 63 lic.function.retrieve($uri).{.$c
127d40 68 20 3d 20 63 75 72 6c 5f 69 6e 69 74 28 29 3b 0a 0a 63 75 72 6c 5f 73 65 74 6f 70 74 28 24 63 h.=.curl_init();..curl_setopt($c
127d60 68 2c 20 43 55 52 4c 4f 50 54 5f 55 52 4c 2c 20 24 75 72 69 29 3b 0a 63 75 72 6c 5f 73 65 74 6f h,.CURLOPT_URL,.$uri);.curl_seto
127d80 70 74 28 24 63 68 2c 20 43 55 52 4c 4f 50 54 5f 48 45 41 44 45 52 2c 20 74 72 75 65 29 3b 0a 63 pt($ch,.CURLOPT_HEADER,.true);.c
127da0 75 72 6c 5f 73 65 74 6f 70 74 28 24 63 68 2c 20 43 55 52 4c 4f 50 54 5f 52 45 54 55 52 4e 54 52 url_setopt($ch,.CURLOPT_RETURNTR
127dc0 41 4e 53 46 45 52 2c 20 74 72 75 65 29 3b 0a 63 75 72 6c 5f 73 65 74 6f 70 74 28 24 63 68 2c 20 ANSFER,.true);.curl_setopt($ch,.
127de0 43 55 52 4c 4f 50 54 5f 48 54 54 50 48 45 41 44 45 52 2c 20 61 72 72 61 79 28 27 41 63 63 65 70 CURLOPT_HTTPHEADER,.array('Accep
127e00 74 3a 20 27 20 2e 20 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 t:.'...Validator::SCHEMA_MEDIA_T
127e20 59 50 45 29 29 3b 0a 0a 24 72 65 73 70 6f 6e 73 65 20 3d 20 63 75 72 6c 5f 65 78 65 63 28 24 63 YPE));..$response.=.curl_exec($c
127e40 68 29 3b 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 20 7b 0a 74 h);.if.(false.===.$response).{.t
127e60 68 72 6f 77 20 6e 65 77 20 5c 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 5c 52 hrow.new.\JsonSchema\Exception\R
127e80 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 27 4a 53 4f 4e 20 73 esourceNotFoundException('JSON.s
127ea0 63 68 65 6d 61 20 6e 6f 74 20 66 6f 75 6e 64 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 65 74 chema.not.found');.}..$this->fet
127ec0 63 68 4d 65 73 73 61 67 65 42 6f 64 79 28 24 72 65 73 70 6f 6e 73 65 29 3b 0a 24 74 68 69 73 2d chMessageBody($response);.$this-
127ee0 3e 66 65 74 63 68 43 6f 6e 74 65 6e 74 54 79 70 65 28 24 72 65 73 70 6f 6e 73 65 29 3b 0a 0a 63 >fetchContentType($response);..c
127f00 75 72 6c 5f 63 6c 6f 73 65 28 24 63 68 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d url_close($ch);..return.$this->m
127f20 65 73 73 61 67 65 42 6f 64 79 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 essageBody;.}.....private.functi
127f40 6f 6e 20 66 65 74 63 68 4d 65 73 73 61 67 65 42 6f 64 79 28 24 72 65 73 70 6f 6e 73 65 29 0a 7b on.fetchMessageBody($response).{
127f60 0a 70 72 65 67 5f 6d 61 74 63 68 28 22 2f 28 3f 3a 5c 72 5c 6e 29 7b 32 7d 28 2e 2a 29 24 2f 6d .preg_match("/(?:\r\n){2}(.*)$/m
127f80 73 22 2c 20 24 72 65 73 70 6f 6e 73 65 2c 20 24 6d 61 74 63 68 29 3b 0a 24 74 68 69 73 2d 3e 6d s",.$response,.$match);.$this->m
127fa0 65 73 73 61 67 65 42 6f 64 79 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 essageBody.=.$match[1];.}......p
127fc0 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 6e 74 65 6e 74 54 79 rotected.function.fetchContentTy
127fe0 70 65 28 24 72 65 73 70 6f 6e 73 65 29 0a 7b 0a 69 66 20 28 30 20 3c 20 70 72 65 67 5f 6d 61 74 pe($response).{.if.(0.<.preg_mat
128000 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 2c 20 24 72 ch("/Content-Type:(\V*)/ims",.$r
128020 65 73 70 6f 6e 73 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 esponse,.$match)).{.$this->conte
128040 6e 74 54 79 70 65 20 3d 20 74 72 69 6d 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 0a 72 65 74 75 72 ntType.=.trim($match[1]);..retur
128060 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 7d 3c 3f 70 68 n.true;.}..return.false;.}.}<?ph
128080 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 5c 55 p.........namespace.JsonSchema\U
1280a0 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 5c 45 ri\Retrievers;..use.JsonSchema\E
1280c0 78 63 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 xception\ResourceNotFoundExcepti
1280e0 6f 6e 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 0a 0a on;.use.JsonSchema\Validator;...
128100 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 47 65 74 43 6f 6e 74 65 6e 74 73 20 65 78 74 65 6e 64 ....class.FileGetContents.extend
128120 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 65 64 20 s.AbstractRetriever.{.protected.
128140 24 6d 65 73 73 61 67 65 42 6f 64 79 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 $messageBody;......public.functi
128160 6f 6e 20 72 65 74 72 69 65 76 65 28 24 75 72 69 29 0a 7b 0a 24 63 6f 6e 74 65 78 74 20 3d 20 73 on.retrieve($uri).{.$context.=.s
128180 74 72 65 61 6d 5f 63 6f 6e 74 65 78 74 5f 63 72 65 61 74 65 28 61 72 72 61 79 28 0a 27 68 74 74 tream_context_create(array(.'htt
1281a0 70 27 20 3d 3e 20 61 72 72 61 79 28 0a 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 47 45 54 27 2c 0a p'.=>.array(.'method'.=>.'GET',.
1281c0 27 68 65 61 64 65 72 27 20 3d 3e 20 22 41 63 63 65 70 74 3a 20 22 20 2e 20 56 61 6c 69 64 61 74 'header'.=>."Accept:."...Validat
1281e0 6f 72 3a 3a 53 43 48 45 4d 41 5f 4d 45 44 49 41 5f 54 59 50 45 0a 29 29 29 3b 0a 0a 73 65 74 5f or::SCHEMA_MEDIA_TYPE.)));..set_
128200 65 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 66 75 6e 63 74 69 6f 6e 28 29 20 75 73 65 20 28 24 75 error_handler(function().use.($u
128220 72 69 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 ri).{.throw.new.ResourceNotFound
128240 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 66 6f 75 6e 64 Exception('JSON.schema.not.found
128260 20 61 74 20 27 20 2e 20 24 75 72 69 29 3b 0a 7d 29 3b 0a 24 72 65 73 70 6f 6e 73 65 20 3d 20 66 .at.'...$uri);.});.$response.=.f
128280 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 75 72 69 29 3b 0a 72 65 73 74 6f 72 65 5f ile_get_contents($uri);.restore_
1282a0 65 72 72 6f 72 5f 68 61 6e 64 6c 65 72 28 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 error_handler();..if.(false.===.
1282c0 24 72 65 73 70 6f 6e 73 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 65 73 6f 75 72 63 65 4e $response).{.throw.new.ResourceN
1282e0 6f 74 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 otFoundException('JSON.schema.no
128300 74 20 66 6f 75 6e 64 20 61 74 20 27 20 2e 20 24 75 72 69 29 3b 0a 7d 0a 69 66 20 28 24 72 65 73 t.found.at.'...$uri);.}.if.($res
128320 70 6f 6e 73 65 20 3d 3d 20 27 27 0a 26 26 20 73 75 62 73 74 72 28 24 75 72 69 2c 20 30 2c 20 37 ponse.==.''.&&.substr($uri,.0,.7
128340 29 20 3d 3d 20 27 66 69 6c 65 3a 2f 2f 27 20 26 26 20 73 75 62 73 74 72 28 24 75 72 69 2c 20 2d ).==.'file://'.&&.substr($uri,.-
128360 31 29 20 3d 3d 20 27 2f 27 0a 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 52 65 73 6f 75 72 63 65 1).==.'/'.).{.throw.new.Resource
128380 4e 6f 74 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 NotFoundException('JSON.schema.n
1283a0 6f 74 20 66 6f 75 6e 64 20 61 74 20 27 20 2e 20 24 75 72 69 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d ot.found.at.'...$uri);.}..$this-
1283c0 3e 6d 65 73 73 61 67 65 42 6f 64 79 20 3d 20 24 72 65 73 70 6f 6e 73 65 3b 0a 69 66 20 28 21 20 >messageBody.=.$response;.if.(!.
1283e0 65 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 29 29 20 7b 0a empty($http_response_header)).{.
128400 24 74 68 69 73 2d 3e 66 65 74 63 68 43 6f 6e 74 65 6e 74 54 79 70 65 28 24 68 74 74 70 5f 72 65 $this->fetchContentType($http_re
128420 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 74 68 69 73 sponse_header);.}.else.{...$this
128440 2d 3e 63 6f 6e 74 65 6e 74 54 79 70 65 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 ->contentType.=.null;.}..return.
128460 24 74 68 69 73 2d 3e 6d 65 73 73 61 67 65 42 6f 64 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 69 76 61 $this->messageBody;.}......priva
128480 74 65 20 66 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 61 72 72 te.function.fetchContentType(arr
1284a0 61 79 20 24 68 65 61 64 65 72 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 68 65 61 64 65 72 73 ay.$headers).{.foreach.($headers
1284c0 20 61 73 20 24 68 65 61 64 65 72 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e .as.$header).{.if.($this->conten
1284e0 74 54 79 70 65 20 3d 20 73 65 6c 66 3a 3a 67 65 74 43 6f 6e 74 65 6e 74 54 79 70 65 4d 61 74 63 tType.=.self::getContentTypeMatc
128500 68 49 6e 48 65 61 64 65 72 28 24 68 65 61 64 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 hInHeader($header)).{.return.tru
128520 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 70 72 6f e;.}.}..return.false;.}......pro
128540 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 6f 6e 74 65 6e tected.static.function.getConten
128560 74 54 79 70 65 4d 61 74 63 68 49 6e 48 65 61 64 65 72 28 24 68 65 61 64 65 72 29 0a 7b 0a 69 66 tTypeMatchInHeader($header).{.if
128580 20 28 30 20 3c 20 70 72 65 67 5f 6d 61 74 63 68 28 22 2f 43 6f 6e 74 65 6e 74 2d 54 79 70 65 3a .(0.<.preg_match("/Content-Type:
1285a0 28 5c 56 2a 29 2f 69 6d 73 22 2c 20 24 68 65 61 64 65 72 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a (\V*)/ims",.$header,.$match)).{.
1285c0 72 65 74 75 72 6e 20 74 72 69 6d 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f return.trim($match[1]);.}.}.}.<?
1285e0 70 68 70 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 5c 52 65 php..namespace.JsonSchema\Uri\Re
128600 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 5c 56 61 6c 69 64 61 trievers;..use.JsonSchema\Valida
128620 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 65 64 65 66 69 6e tor;..............class.Predefin
128640 65 64 41 72 72 61 79 20 65 78 74 65 6e 64 73 20 41 62 73 74 72 61 63 74 52 65 74 72 69 65 76 65 edArray.extends.AbstractRetrieve
128660 72 0a 7b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 63 68 65 6d 61 73 3b 0a 0a 0a 0a 0a 0a 0a r.{.....private.$schemas;.......
128680 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
1286a0 61 79 20 24 73 63 68 65 6d 61 73 2c 20 24 63 6f 6e 74 65 6e 74 54 79 70 65 20 3d 20 56 61 6c 69 ay.$schemas,.$contentType.=.Vali
1286c0 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 0a 7b 0a 24 74 68 69 dator::SCHEMA_MEDIA_TYPE).{.$thi
1286e0 73 2d 3e 73 63 68 65 6d 61 73 20 3d 20 24 73 63 68 65 6d 61 73 3b 0a 24 74 68 69 73 2d 3e 63 6f s->schemas.=.$schemas;.$this->co
128700 6e 74 65 6e 74 54 79 70 65 20 3d 20 24 63 6f 6e 74 65 6e 74 54 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a ntentType.=.$contentType;.}.....
128720 0a 70 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 0a .public.function.retrieve($uri).
128740 7b 0a 69 66 20 28 21 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 75 72 69 2c 20 24 74 {.if.(!array_key_exists($uri,.$t
128760 68 69 73 2d 3e 73 63 68 65 6d 61 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4a 73 6f 6e his->schemas)).{.throw.new.\Json
128780 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 46 6f 75 6e Schema\Exception\ResourceNotFoun
1287a0 64 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 54 68 65 20 4a 53 4f 4e 20 73 63 dException(sprintf(.'The.JSON.sc
1287c0 68 65 6d 61 20 22 25 73 22 20 77 61 73 20 6e 6f 74 20 66 6f 75 6e 64 2e 27 2c 0a 24 75 72 69 0a hema."%s".was.not.found.',.$uri.
1287e0 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 63 68 65 6d 61 73 5b 24 75 72 ));.}..return.$this->schemas[$ur
128800 69 5d 3b 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 20 i];.}.}.<?php.........namespace.
128820 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 0a 0a 0a 0a 0a JsonSchema\Uri\Retrievers;......
128840 0a 69 6e 74 65 72 66 61 63 65 20 55 72 69 52 65 74 72 69 65 76 65 72 49 6e 74 65 72 66 61 63 65 .interface.UriRetrieverInterface
128860 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 65 74 72 69 65 76 .{.......public.function.retriev
128880 65 28 24 75 72 69 29 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 e($uri);......public.function.ge
1288a0 74 43 6f 6e 74 65 6e 74 54 79 70 65 28 29 3b 0a 7d 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e tContentType();.}<?php.........n
1288c0 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 55 72 69 3b 0a 0a 75 73 65 20 4a 73 amespace.JsonSchema\Uri;..use.Js
1288e0 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 6f 6e 5c 55 72 69 52 65 73 6f 6c 76 65 72 45 78 onSchema\Exception\UriResolverEx
128900 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 72 69 52 65 73 6f 6c 76 65 72 ception;.......class.UriResolver
128920 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 70 61 72 73 65 28 24 .{.......public.function.parse($
128940 75 72 69 29 0a 7b 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 7c 5e 28 28 5b 5e 3a 2f 3f 23 5d 2b 29 uri).{.preg_match('|^(([^:/?#]+)
128960 3a 29 3f 28 2f 2f 28 5b 5e 2f 3f 23 5d 2a 29 29 3f 28 5b 5e 3f 23 5d 2a 29 28 5c 3f 28 5b 5e 23 :)?(//([^/?#]*))?([^?#]*)(\?([^#
128980 5d 2a 29 29 3f 28 23 28 2e 2a 29 29 3f 7c 27 2c 20 24 75 72 69 2c 20 24 6d 61 74 63 68 29 3b 0a ]*))?(#(.*))?|',.$uri,.$match);.
1289a0 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 35 20 3c 20 .$components.=.array();.if.(5.<.
1289c0 63 6f 75 6e 74 28 24 6d 61 74 63 68 29 29 20 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 61 count($match)).{.$components.=.a
1289e0 72 72 61 79 28 0a 27 73 63 68 65 6d 65 27 20 3d 3e 20 24 6d 61 74 63 68 5b 32 5d 2c 0a 27 61 75 rray(.'scheme'.=>.$match[2],.'au
128a00 74 68 6f 72 69 74 79 27 20 3d 3e 20 24 6d 61 74 63 68 5b 34 5d 2c 0a 27 70 61 74 68 27 20 3d 3e thority'.=>.$match[4],.'path'.=>
128a20 20 24 6d 61 74 63 68 5b 35 5d 0a 29 3b 0a 7d 20 0a 69 66 20 28 37 20 3c 20 63 6f 75 6e 74 28 24 .$match[5].);.}..if.(7.<.count($
128a40 6d 61 74 63 68 29 29 20 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 71 75 65 72 79 27 5d 20 3d match)).{.$components['query'].=
128a60 20 24 6d 61 74 63 68 5b 37 5d 3b 0a 7d 0a 69 66 20 28 39 20 3c 20 63 6f 75 6e 74 28 24 6d 61 74 .$match[7];.}.if.(9.<.count($mat
128a80 63 68 29 29 20 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 20 3d ch)).{.$components['fragment'].=
128aa0 20 24 6d 61 74 63 68 5b 39 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f 6e 65 6e 74 .$match[9];.}..return.$component
128ac0 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 67 65 6e 65 s;.}........public.function.gene
128ae0 72 61 74 65 28 61 72 72 61 79 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 0a 7b 0a 24 75 72 69 20 3d rate(array.$components).{.$uri.=
128b00 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 73 63 68 65 6d 65 27 5d 20 2e 20 27 3a 2f 2f 27 20 0a .$components['scheme']...'://'..
128b20 2e 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 61 75 74 68 6f 72 69 74 79 27 5d 0a 2e 20 24 63 6f ..$components['authority']...$co
128b40 6d 70 6f 6e 65 6e 74 73 5b 27 70 61 74 68 27 5d 3b 0a 0a 69 66 20 28 61 72 72 61 79 5f 6b 65 79 mponents['path'];..if.(array_key
128b60 5f 65 78 69 73 74 73 28 27 71 75 65 72 79 27 2c 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 29 20 7b _exists('query',.$components)).{
128b80 0a 24 75 72 69 20 2e 3d 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 71 75 65 72 79 27 5d 3b 0a 7d .$uri..=.$components['query'];.}
128ba0 0a 69 66 20 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 27 66 72 61 67 6d 65 6e 74 27 .if.(array_key_exists('fragment'
128bc0 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 27 23 27 20 2e 20 ,.$components)).{.$uri..=.'#'...
128be0 24 63 6f 6d 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 $components['fragment'];.}..retu
128c00 72 6e 20 24 75 72 69 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 rn.$uri;.}.........public.functi
128c20 6f 6e 20 72 65 73 6f 6c 76 65 28 24 75 72 69 2c 20 24 62 61 73 65 55 72 69 20 3d 20 6e 75 6c 6c on.resolve($uri,.$baseUri.=.null
128c40 29 0a 7b 0a 69 66 20 28 24 75 72 69 20 3d 3d 20 27 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 62 61 ).{.if.($uri.==.'').{.return.$ba
128c60 73 65 55 72 69 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 70 seUri;.}..$components.=.$this->p
128c80 61 72 73 65 28 24 75 72 69 29 3b 0a 24 70 61 74 68 20 3d 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b arse($uri);.$path.=.$components[
128ca0 27 70 61 74 68 27 5d 3b 0a 0a 69 66 20 28 21 20 65 6d 70 74 79 28 24 63 6f 6d 70 6f 6e 65 6e 74 'path'];..if.(!.empty($component
128cc0 73 5b 27 73 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 24 s['scheme'])).{.return.$uri;.}.$
128ce0 62 61 73 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 baseComponents.=.$this->parse($b
128d00 61 73 65 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 aseUri);.$basePath.=.$baseCompon
128d20 65 6e 74 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 ents['path'];..$baseComponents['
128d40 70 61 74 68 27 5d 20 3d 20 73 65 6c 66 3a 3a 63 6f 6d 62 69 6e 65 52 65 6c 61 74 69 76 65 50 61 path'].=.self::combineRelativePa
128d60 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 61 74 68 29 thWithBasePath($path,.$basePath)
128d80 3b 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 66 72 61 67 6d 65 6e ;.if.(isset($components['fragmen
128da0 74 27 5d 29 29 20 7b 0a 24 62 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 73 5b 27 66 72 61 67 6d 65 6e t'])).{.$baseComponents['fragmen
128dc0 74 27 5d 20 3d 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 3b 0a 7d t'].=.$components['fragment'];.}
128de0 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 61 73 65 43 6f ..return.$this->generate($baseCo
128e00 6d 70 6f 6e 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 mponents);.}..........public.sta
128e20 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 62 69 6e 65 52 65 6c 61 74 69 76 65 50 61 74 68 tic.function.combineRelativePath
128e40 57 69 74 68 42 61 73 65 50 61 74 68 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c 20 24 62 61 73 WithBasePath($relativePath,.$bas
128e60 65 50 61 74 68 29 0a 7b 0a 24 72 65 6c 61 74 69 76 65 50 61 74 68 20 3d 20 73 65 6c 66 3a 3a 6e ePath).{.$relativePath.=.self::n
128e80 6f 72 6d 61 6c 69 7a 65 50 61 74 68 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 29 3b 0a 69 66 20 ormalizePath($relativePath);.if.
128ea0 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 20 3d 3d 20 27 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 ($relativePath.==.'').{.return.$
128ec0 62 61 73 65 50 61 74 68 3b 0a 7d 0a 69 66 20 28 24 72 65 6c 61 74 69 76 65 50 61 74 68 7b 30 7d basePath;.}.if.($relativePath{0}
128ee0 20 3d 3d 20 27 2f 27 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 3b .==.'/').{.return.$relativePath;
128f00 0a 7d 0a 0a 24 62 61 73 65 50 61 74 68 53 65 67 6d 65 6e 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 .}..$basePathSegments.=.explode(
128f20 27 2f 27 2c 20 24 62 61 73 65 50 61 74 68 29 3b 0a 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 7c 5e '/',.$basePath);..preg_match('|^
128f40 2f 3f 28 5c 2e 5c 2e 2f 28 3f 3a 5c 2e 2f 29 2a 29 2a 7c 27 2c 20 24 72 65 6c 61 74 69 76 65 50 /?(\.\./(?:\./)*)*|',.$relativeP
128f60 61 74 68 2c 20 24 6d 61 74 63 68 29 3b 0a 24 6e 75 6d 4c 65 76 65 6c 55 70 20 3d 20 73 74 72 6c ath,.$match);.$numLevelUp.=.strl
128f80 65 6e 28 24 6d 61 74 63 68 5b 30 5d 29 20 2f 33 20 2b 20 31 3b 0a 69 66 20 28 24 6e 75 6d 4c 65 en($match[0])./3.+.1;.if.($numLe
128fa0 76 65 6c 55 70 20 3e 3d 20 63 6f 75 6e 74 28 24 62 61 73 65 50 61 74 68 53 65 67 6d 65 6e 74 73 velUp.>=.count($basePathSegments
128fc0 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 55 72 69 52 65 73 6f 6c 76 65 72 45 78 63 65 70 74 )).{.throw.new.UriResolverExcept
128fe0 69 6f 6e 28 73 70 72 69 6e 74 66 28 22 55 6e 61 62 6c 65 20 74 6f 20 72 65 73 6f 6c 76 65 20 55 ion(sprintf("Unable.to.resolve.U
129000 52 49 20 27 25 73 27 20 66 72 6f 6d 20 62 61 73 65 20 27 25 73 27 22 2c 20 24 72 65 6c 61 74 69 RI.'%s'.from.base.'%s'",.$relati
129020 76 65 50 61 74 68 2c 20 24 62 61 73 65 50 61 74 68 29 29 3b 0a 7d 0a 0a 24 62 61 73 65 50 61 74 vePath,.$basePath));.}..$basePat
129040 68 53 65 67 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 62 61 73 65 50 61 74 hSegments.=.array_slice($basePat
129060 68 53 65 67 6d 65 6e 74 73 2c 20 30 2c 20 2d 24 6e 75 6d 4c 65 76 65 6c 55 70 29 3b 0a 24 70 61 hSegments,.0,.-$numLevelUp);.$pa
129080 74 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7c 5e 2f 3f 28 5c 2e 5c 2e 2f 28 5c 2e th.=.preg_replace('|^/?(\.\./(\.
1290a0 2f 29 2a 29 2a 7c 27 2c 20 27 27 2c 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 29 3b 0a 0a 72 65 /)*)*|',.'',.$relativePath);..re
1290c0 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 2f 27 2c 20 24 62 61 73 65 50 61 74 68 53 65 67 6d 65 turn.implode('/',.$basePathSegme
1290e0 6e 74 73 29 20 2e 20 27 2f 27 20 2e 20 24 70 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 nts)...'/'...$path;.}........pri
129100 76 61 74 65 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 50 61 vate.static.function.normalizePa
129120 74 68 28 24 70 61 74 68 29 0a 7b 0a 24 70 61 74 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 th($path).{.$path.=.preg_replace
129140 28 27 7c 28 28 3f 3c 21 5c 2e 29 5c 2e 2f 29 2a 7c 27 2c 20 27 27 2c 20 24 70 61 74 68 29 3b 0a ('|((?<!\.)\./)*|',.'',.$path);.
129160 24 70 61 74 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7c 2f 2f 7c 27 2c 20 27 2f 27 $path.=.preg_replace('|//|',.'/'
129180 2c 20 24 70 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a ,.$path);..return.$path;.}......
1291a0 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 28 24 75 72 69 29 0a 7b 0a public.function.isValid($uri).{.
1291c0 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)
1291e0 3b 0a 0a 72 65 74 75 72 6e 20 21 65 6d 70 74 79 28 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 3b 0a 7d ;..return.!empty($components);.}
129200 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 20 4a 73 6f 6e 53 .}.<?php.........namespace.JsonS
129220 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 55 72 69 5c 52 chema\Uri;..use.JsonSchema\Uri\R
129240 65 74 72 69 65 76 65 72 73 5c 46 69 6c 65 47 65 74 43 6f 6e 74 65 6e 74 73 3b 0a 75 73 65 20 4a etrievers\FileGetContents;.use.J
129260 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 55 72 69 52 65 74 72 sonSchema\Uri\Retrievers\UriRetr
129280 69 65 76 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 56 ieverInterface;.use.JsonSchema\V
1292a0 61 6c 69 64 61 74 6f 72 3b 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 45 78 63 65 70 74 69 alidator;.use.JsonSchema\Excepti
1292c0 6f 6e 5c 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 69 on\InvalidSchemaMediaTypeExcepti
1292e0 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 6f 6e 5c 4a 73 6f on;.use.JsonSchema\Exception\Jso
129300 6e 44 65 63 6f 64 69 6e 67 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 nDecodingException;.use.JsonSche
129320 6d 61 5c 45 78 63 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 ma\Exception\ResourceNotFoundExc
129340 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 72 69 52 65 74 72 69 65 76 65 72 eption;.......class.UriRetriever
129360 0a 7b 0a 0a 0a 0a 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 .{....protected.$uriRetriever.=.
129380 6e 75 6c 6c 3b 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 73 63 68 65 6d 61 43 61 63 68 65 20 null;......private.$schemaCache.
1293a0 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
1293c0 6f 6e 20 63 6f 6e 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 on.confirmMediaType($uriRetrieve
1293e0 72 2c 20 24 75 72 69 29 0a 7b 0a 24 63 6f 6e 74 65 6e 74 54 79 70 65 20 3d 20 24 75 72 69 52 65 r,.$uri).{.$contentType.=.$uriRe
129400 74 72 69 65 76 65 72 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 54 79 70 65 28 29 3b 0a 0a 69 66 20 28 triever->getContentType();..if.(
129420 69 73 5f 6e 75 6c 6c 28 24 63 6f 6e 74 65 6e 74 54 79 70 65 29 29 20 7b 0a 0a 20 72 65 74 75 72 is_null($contentType)).{...retur
129440 6e 3b 0a 7d 0a 0a 69 66 20 28 56 61 6c 69 64 61 74 6f 72 3a 3a 53 43 48 45 4d 41 5f 4d 45 44 49 n;.}..if.(Validator::SCHEMA_MEDI
129460 41 5f 54 59 50 45 20 3d 3d 3d 20 24 63 6f 6e 74 65 6e 74 54 79 70 65 29 20 7b 0a 72 65 74 75 72 A_TYPE.===.$contentType).{.retur
129480 6e 3b 0a 7d 0a 0a 69 66 20 28 73 75 62 73 74 72 28 24 75 72 69 2c 20 30 2c 20 32 33 29 20 3d 3d n;.}..if.(substr($uri,.0,.23).==
1294a0 20 27 68 74 74 70 3a 2f 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2e 6f 72 67 2f 27 29 20 7b 0a 0a 20 .'http://json-schema.org/').{...
1294c0 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 return.true;.}..throw.new.Invali
1294e0 64 53 63 68 65 6d 61 4d 65 64 69 61 54 79 70 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 dSchemaMediaTypeException(sprint
129500 66 28 27 4d 65 64 69 61 20 74 79 70 65 20 25 73 20 65 78 70 65 63 74 65 64 27 2c 20 56 61 6c 69 f('Media.type.%s.expected',.Vali
129520 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 7d 0a 0a 0a dator::SCHEMA_MEDIA_TYPE));.}...
129540 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 74 .......public.function.getUriRet
129560 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 72 riever().{.if.(is_null($this->ur
129580 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 72 iRetriever)).{.$this->setUriRetr
1295a0 69 65 76 65 72 28 6e 65 77 20 46 69 6c 65 47 65 74 43 6f 6e 74 65 6e 74 73 29 3b 0a 7d 0a 0a 72 iever(new.FileGetContents);.}..r
1295c0 65 74 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 eturn.$this->uriRetriever;.}....
1295e0 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 65 73 6f 6c ...........public.function.resol
129600 76 65 50 6f 69 6e 74 65 72 28 24 6a 73 6f 6e 53 63 68 65 6d 61 2c 20 24 75 72 69 29 0a 7b 0a 24 vePointer($jsonSchema,.$uri).{.$
129620 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 0a 24 70 resolver.=.new.UriResolver();.$p
129640 61 72 73 65 64 20 3d 20 24 72 65 73 6f 6c 76 65 72 2d 3e 70 61 72 73 65 28 24 75 72 69 29 3b 0a arsed.=.$resolver->parse($uri);.
129660 69 66 20 28 65 6d 70 74 79 28 24 70 61 72 73 65 64 5b 27 66 72 61 67 6d 65 6e 74 27 5d 29 29 20 if.(empty($parsed['fragment'])).
129680 7b 0a 72 65 74 75 72 6e 20 24 6a 73 6f 6e 53 63 68 65 6d 61 3b 0a 7d 0a 0a 24 70 61 74 68 20 3d {.return.$jsonSchema;.}..$path.=
1296a0 20 65 78 70 6c 6f 64 65 28 27 2f 27 2c 20 24 70 61 72 73 65 64 5b 27 66 72 61 67 6d 65 6e 74 27 .explode('/',.$parsed['fragment'
1296c0 5d 29 3b 0a 77 68 69 6c 65 20 28 24 70 61 74 68 29 20 7b 0a 24 70 61 74 68 45 6c 65 6d 65 6e 74 ]);.while.($path).{.$pathElement
1296e0 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 70 61 74 68 29 3b 0a 69 66 20 28 21 20 65 6d 70 .=.array_shift($path);.if.(!.emp
129700 74 79 28 24 70 61 74 68 45 6c 65 6d 65 6e 74 29 29 20 7b 0a 24 70 61 74 68 45 6c 65 6d 65 6e 74 ty($pathElement)).{.$pathElement
129720 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 7e 31 27 2c 20 27 2f 27 2c 20 24 70 61 74 68 45 .=.str_replace('~1',.'/',.$pathE
129740 6c 65 6d 65 6e 74 29 3b 0a 24 70 61 74 68 45 6c 65 6d 65 6e 74 20 3d 20 73 74 72 5f 72 65 70 6c lement);.$pathElement.=.str_repl
129760 61 63 65 28 27 7e 30 27 2c 20 27 7e 27 2c 20 24 70 61 74 68 45 6c 65 6d 65 6e 74 29 3b 0a 69 66 ace('~0',.'~',.$pathElement);.if
129780 20 28 21 20 65 6d 70 74 79 28 24 6a 73 6f 6e 53 63 68 65 6d 61 2d 3e 24 70 61 74 68 45 6c 65 6d .(!.empty($jsonSchema->$pathElem
1297a0 65 6e 74 29 29 20 7b 0a 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d 20 24 6a 73 6f 6e 53 63 68 65 6d ent)).{.$jsonSchema.=.$jsonSchem
1297c0 61 2d 3e 24 70 61 74 68 45 6c 65 6d 65 6e 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 a->$pathElement;.}.else.{.throw.
1297e0 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 0a 27 new.ResourceNotFoundException(.'
129800 46 72 61 67 6d 65 6e 74 20 22 27 20 2e 20 24 70 61 72 73 65 64 5b 27 66 72 61 67 6d 65 6e 74 27 Fragment."'...$parsed['fragment'
129820 5d 20 2e 20 27 22 20 6e 6f 74 20 66 6f 75 6e 64 27 0a 2e 20 27 20 69 6e 20 27 20 2e 20 24 75 72 ]...'".not.found'...'.in.'...$ur
129840 69 0a 29 3b 0a 7d 0a 0a 69 66 20 28 21 20 69 73 5f 6f 62 6a 65 63 74 28 24 6a 73 6f 6e 53 63 68 i.);.}..if.(!.is_object($jsonSch
129860 65 6d 61 29 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 ema)).{.throw.new.ResourceNotFou
129880 6e 64 45 78 63 65 70 74 69 6f 6e 28 0a 27 46 72 61 67 6d 65 6e 74 20 70 61 72 74 20 22 27 20 2e ndException(.'Fragment.part."'..
1298a0 20 24 70 61 74 68 45 6c 65 6d 65 6e 74 20 2e 20 27 22 20 69 73 20 6e 6f 20 6f 62 6a 65 63 74 20 .$pathElement...'".is.no.object.
1298c0 27 0a 2e 20 27 20 69 6e 20 27 20 2e 20 24 75 72 69 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 '...'.in.'...$uri.);.}.}.}..retu
1298e0 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 0a 70 75 62 6c 69 63 rn.$jsonSchema;.}.........public
129900 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 72 69 65 76 65 28 24 75 72 69 2c 20 24 62 61 73 65 55 72 .function.retrieve($uri,.$baseUr
129920 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 72 65 73 6f 6c 76 65 72 20 3d 20 6e 65 77 20 55 72 69 52 i.=.null).{.$resolver.=.new.UriR
129940 65 73 6f 6c 76 65 72 28 29 3b 0a 24 72 65 73 6f 6c 76 65 64 55 72 69 20 3d 20 24 66 65 74 63 68 esolver();.$resolvedUri.=.$fetch
129960 55 72 69 20 3d 20 24 72 65 73 6f 6c 76 65 72 2d 3e 72 65 73 6f 6c 76 65 28 24 75 72 69 2c 20 24 Uri.=.$resolver->resolve($uri,.$
129980 62 61 73 65 55 72 69 29 3b 0a 0a 0a 20 24 61 72 50 61 72 74 73 20 3d 20 24 72 65 73 6f 6c 76 65 baseUri);....$arParts.=.$resolve
1299a0 72 2d 3e 70 61 72 73 65 28 24 72 65 73 6f 6c 76 65 64 55 72 69 29 3b 0a 69 66 20 28 69 73 73 65 r->parse($resolvedUri);.if.(isse
1299c0 74 28 24 61 72 50 61 72 74 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 29 29 20 7b 0a 75 6e 73 65 74 t($arParts['fragment'])).{.unset
1299e0 28 24 61 72 50 61 72 74 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 29 3b 0a 24 66 65 74 63 68 55 72 ($arParts['fragment']);.$fetchUr
129a00 69 20 3d 20 24 72 65 73 6f 6c 76 65 72 2d 3e 67 65 6e 65 72 61 74 65 28 24 61 72 50 61 72 74 73 i.=.$resolver->generate($arParts
129a20 29 3b 0a 7d 0a 0a 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 53 );.}..$jsonSchema.=.$this->loadS
129a40 63 68 65 6d 61 28 24 66 65 74 63 68 55 72 69 29 3b 0a 0a 0a 20 24 6a 73 6f 6e 53 63 68 65 6d 61 chema($fetchUri);....$jsonSchema
129a60 20 3d 20 24 74 68 69 73 2d 3e 72 65 73 6f 6c 76 65 50 6f 69 6e 74 65 72 28 24 6a 73 6f 6e 53 63 .=.$this->resolvePointer($jsonSc
129a80 68 65 6d 61 2c 20 24 72 65 73 6f 6c 76 65 64 55 72 69 29 3b 0a 0a 69 66 20 28 24 6a 73 6f 6e 53 hema,.$resolvedUri);..if.($jsonS
129aa0 63 68 65 6d 61 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 73 74 64 43 6c 61 73 73 29 20 7b 0a 24 6a chema.instanceof.\stdClass).{.$j
129ac0 73 6f 6e 53 63 68 65 6d 61 2d 3e 69 64 20 3d 20 24 72 65 73 6f 6c 76 65 64 55 72 69 3b 0a 7d 0a sonSchema->id.=.$resolvedUri;.}.
129ae0 0a 72 65 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 0a 0a .return.$jsonSchema;.}..........
129b00 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 53 63 68 65 6d 61 28 24 66 protected.function.loadSchema($f
129b20 65 74 63 68 55 72 69 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 63 68 65 etchUri).{.if.(isset($this->sche
129b40 6d 61 43 61 63 68 65 5b 24 66 65 74 63 68 55 72 69 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 maCache[$fetchUri])).{.return.$t
129b60 68 69 73 2d 3e 73 63 68 65 6d 61 43 61 63 68 65 5b 24 66 65 74 63 68 55 72 69 5d 3b 0a 7d 0a 0a his->schemaCache[$fetchUri];.}..
129b80 24 75 72 69 52 65 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 $uriRetriever.=.$this->getUriRet
129ba0 72 69 65 76 65 72 28 29 3b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 75 72 69 riever();.$contents.=.$this->uri
129bc0 52 65 74 72 69 65 76 65 72 2d 3e 72 65 74 72 69 65 76 65 28 24 66 65 74 63 68 55 72 69 29 3b 0a Retriever->retrieve($fetchUri);.
129be0 24 74 68 69 73 2d 3e 63 6f 6e 66 69 72 6d 4d 65 64 69 61 54 79 70 65 28 24 75 72 69 52 65 74 72 $this->confirmMediaType($uriRetr
129c00 69 65 76 65 72 2c 20 24 66 65 74 63 68 55 72 69 29 3b 0a 24 6a 73 6f 6e 53 63 68 65 6d 61 20 3d iever,.$fetchUri);.$jsonSchema.=
129c20 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 69 66 20 28 4a 53 .json_decode($contents);..if.(JS
129c40 4f 4e 5f 45 52 52 4f 52 5f 4e 4f 4e 45 20 3c 20 24 65 72 72 6f 72 20 3d 20 6a 73 6f 6e 5f 6c 61 ON_ERROR_NONE.<.$error.=.json_la
129c60 73 74 5f 65 72 72 6f 72 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 4a 73 6f 6e 44 65 63 6f st_error()).{.throw.new.JsonDeco
129c80 64 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 24 65 72 72 6f 72 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d dingException($error);.}..$this-
129ca0 3e 73 63 68 65 6d 61 43 61 63 68 65 5b 24 66 65 74 63 68 55 72 69 5d 20 3d 20 24 6a 73 6f 6e 53 >schemaCache[$fetchUri].=.$jsonS
129cc0 63 68 65 6d 61 3b 0a 0a 72 65 74 75 72 6e 20 24 6a 73 6f 6e 53 63 68 65 6d 61 3b 0a 7d 0a 0a 0a chema;..return.$jsonSchema;.}...
129ce0 0a 0a 0a 0a 0a 70 75 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 .....public.function.setUriRetri
129d00 65 76 65 72 28 55 72 69 52 65 74 72 69 65 76 65 72 49 6e 74 65 72 66 61 63 65 20 24 75 72 69 52 ever(UriRetrieverInterface.$uriR
129d20 65 74 72 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 etriever).{.$this->uriRetriever.
129d40 3d 20 24 75 72 69 52 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 =.$uriRetriever;..return.$this;.
129d60 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 70 61 72 73 65 28 24 }........public.function.parse($
129d80 75 72 69 29 0a 7b 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 7c 5e 28 28 5b 5e 3a 2f 3f 23 5d 2b 29 uri).{.preg_match('|^(([^:/?#]+)
129da0 3a 29 3f 28 2f 2f 28 5b 5e 2f 3f 23 5d 2a 29 29 3f 28 5b 5e 3f 23 5d 2a 29 28 5c 3f 28 5b 5e 23 :)?(//([^/?#]*))?([^?#]*)(\?([^#
129dc0 5d 2a 29 29 3f 28 23 28 2e 2a 29 29 3f 7c 27 2c 20 24 75 72 69 2c 20 24 6d 61 74 63 68 29 3b 0a ]*))?(#(.*))?|',.$uri,.$match);.
129de0 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 35 20 3c 20 .$components.=.array();.if.(5.<.
129e00 63 6f 75 6e 74 28 24 6d 61 74 63 68 29 29 20 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 61 count($match)).{.$components.=.a
129e20 72 72 61 79 28 0a 27 73 63 68 65 6d 65 27 20 3d 3e 20 24 6d 61 74 63 68 5b 32 5d 2c 0a 27 61 75 rray(.'scheme'.=>.$match[2],.'au
129e40 74 68 6f 72 69 74 79 27 20 3d 3e 20 24 6d 61 74 63 68 5b 34 5d 2c 0a 27 70 61 74 68 27 20 3d 3e thority'.=>.$match[4],.'path'.=>
129e60 20 24 6d 61 74 63 68 5b 35 5d 0a 29 3b 0a 7d 0a 0a 69 66 20 28 37 20 3c 20 63 6f 75 6e 74 28 24 .$match[5].);.}..if.(7.<.count($
129e80 6d 61 74 63 68 29 29 20 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 71 75 65 72 79 27 5d 20 3d match)).{.$components['query'].=
129ea0 20 24 6d 61 74 63 68 5b 37 5d 3b 0a 7d 0a 0a 69 66 20 28 39 20 3c 20 63 6f 75 6e 74 28 24 6d 61 .$match[7];.}..if.(9.<.count($ma
129ec0 74 63 68 29 29 20 7b 0a 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 66 72 61 67 6d 65 6e 74 27 5d 20 tch)).{.$components['fragment'].
129ee0 3d 20 24 6d 61 74 63 68 5b 39 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f 6e 65 6e =.$match[9];.}..return.$componen
129f00 74 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 67 65 6e ts;.}........public.function.gen
129f20 65 72 61 74 65 28 61 72 72 61 79 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 0a 7b 0a 24 75 72 69 20 erate(array.$components).{.$uri.
129f40 3d 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 73 63 68 65 6d 65 27 5d 20 2e 20 27 3a 2f 2f 27 0a =.$components['scheme']...'://'.
129f60 2e 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 61 75 74 68 6f 72 69 74 79 27 5d 0a 2e 20 24 63 6f ..$components['authority']...$co
129f80 6d 70 6f 6e 65 6e 74 73 5b 27 70 61 74 68 27 5d 3b 0a 0a 69 66 20 28 61 72 72 61 79 5f 6b 65 79 mponents['path'];..if.(array_key
129fa0 5f 65 78 69 73 74 73 28 27 71 75 65 72 79 27 2c 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 29 20 7b _exists('query',.$components)).{
129fc0 0a 24 75 72 69 20 2e 3d 20 24 63 6f 6d 70 6f 6e 65 6e 74 73 5b 27 71 75 65 72 79 27 5d 3b 0a 7d .$uri..=.$components['query'];.}
129fe0 0a 0a 69 66 20 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 27 66 72 61 67 6d 65 6e 74 ..if.(array_key_exists('fragment
12a000 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 63 6f 6d 70 ',.$components)).{.$uri..=.$comp
12a020 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 75 onents['fragment'];.}..return.$u
12a040 72 69 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 72 65 ri;.}.........public.function.re
12a060 73 6f 6c 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 7b 0a 24 solve($uri,.$baseUri.=.null).{.$
12a080 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 3b components.=.$this->parse($uri);
12a0a0 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 69 .$path.=.$components['path'];..i
12a0c0 66 20 28 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 27 73 63 68 65 6d 65 27 2c 20 24 f.((array_key_exists('scheme',.$
12a0e0 63 6f 6d 70 6f 6e 65 6e 74 73 29 29 20 26 26 20 28 27 68 74 74 70 27 20 3d 3d 3d 20 24 63 6f 6d components)).&&.('http'.===.$com
12a100 70 6f 6e 65 6e 74 73 5b 27 73 63 68 65 6d 65 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 75 72 ponents['scheme'])).{.return.$ur
12a120 69 3b 0a 7d 0a 0a 24 62 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 70 i;.}..$baseComponents.=.$this->p
12a140 61 72 73 65 28 24 62 61 73 65 55 72 69 29 3b 0a 24 62 61 73 65 50 61 74 68 20 3d 20 24 62 61 73 arse($baseUri);.$basePath.=.$bas
12a160 65 43 6f 6d 70 6f 6e 65 6e 74 73 5b 27 70 61 74 68 27 5d 3b 0a 0a 24 62 61 73 65 43 6f 6d 70 6f eComponents['path'];..$baseCompo
12a180 6e 65 6e 74 73 5b 27 70 61 74 68 27 5d 20 3d 20 55 72 69 52 65 73 6f 6c 76 65 72 3a 3a 63 6f 6d nents['path'].=.UriResolver::com
12a1a0 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 74 68 28 24 70 61 bineRelativePathWithBasePath($pa
12a1c0 74 68 2c 20 24 62 61 73 65 50 61 74 68 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 th,.$basePath);..return.$this->g
12a1e0 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 0a 7d 0a 0a 0a 0a 0a enerate($baseComponents);.}.....
12a200 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 28 24 75 72 69 29 0a 7b .public.function.isValid($uri).{
12a220 0a 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 .$components.=.$this->parse($uri
12a240 29 3b 0a 0a 72 65 74 75 72 6e 20 21 65 6d 70 74 79 28 24 63 6f 6d 70 6f 6e 65 6e 74 73 29 3b 0a );..return.!empty($components);.
12a260 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 20 4a 73 6f 6e }.}.<?php.........namespace.Json
12a280 53 63 68 65 6d 61 3b 0a 0a 75 73 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 Schema;..use.JsonSchema\Constrai
12a2a0 6e 74 73 5c 53 63 68 65 6d 61 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 75 73 65 20 4a 73 6f 6e 53 63 nts\SchemaConstraint;.use.JsonSc
12a2c0 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a hema\Constraints\Constraint;....
12a2e0 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 61 6c 69 64 61 74 6f 72 20 65 78 74 65 6e 64 73 20 43 6f 6e .....class.Validator.extends.Con
12a300 73 74 72 61 69 6e 74 0a 7b 0a 63 6f 6e 73 74 20 53 43 48 45 4d 41 5f 4d 45 44 49 41 5f 54 59 50 straint.{.const.SCHEMA_MEDIA_TYP
12a320 45 20 3d 20 27 61 70 70 6c 69 63 61 74 69 6f 6e 2f 73 63 68 65 6d 61 2b 6a 73 6f 6e 27 3b 0a 0a E.=.'application/schema+json';..
12a340 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 65 63 6b 28 24 76 61 .......public.function.check($va
12a360 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
12a380 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
12a3a0 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
12a3c0 46 6f 72 28 27 73 63 68 65 6d 61 27 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b For('schema');.$validator->check
12a3e0 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 ($value,.$schema);..$this->addEr
12a400 72 6f 72 73 28 61 72 72 61 79 5f 75 6e 69 71 75 65 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 rors(array_unique($validator->ge
12a420 74 45 72 72 6f 72 73 28 29 2c 20 53 4f 52 54 5f 52 45 47 55 4c 41 52 29 29 3b 0a 7d 0a 7d 0a 43 tErrors(),.SORT_REGULAR));.}.}.C
12a440 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 35 20 43 6f 6d 70 6f 73 65 72 0a 0a 50 65 72 6d opyright.(C).2015.Composer..Perm
12a460 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 72 65 65 20 6f ission.is.hereby.granted,.free.o
12a480 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 61 69 6e 69 6e f.charge,.to.any.person.obtainin
12a4a0 67 20 61 20 63 6f 70 79 20 6f 66 0a 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 g.a.copy.of.this.software.and.as
12a4c0 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 73 20 28 74 68 sociated.documentation.files.(th
12a4e0 65 20 22 53 6f 66 74 77 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 20 69 6e 0a 74 68 65 20 53 6f e."Software"),.to.deal.in.the.So
12a500 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 20 69 6e 63 6c ftware.without.restriction,.incl
12a520 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 65 20 72 69 67 uding.without.limitation.the.rig
12a540 68 74 73 20 74 6f 0a 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 hts.to.use,.copy,.modify,.merge,
12a560 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 63 65 6e 73 65 .publish,.distribute,.sublicense
12a580 2c 20 61 6e 64 2f 6f 72 20 73 65 6c 6c 20 63 6f 70 69 65 73 0a 6f 66 20 74 68 65 20 53 6f 66 74 ,.and/or.sell.copies.of.the.Soft
12a5a0 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 20 74 6f 20 77 ware,.and.to.permit.persons.to.w
12a5c0 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 65 64 20 74 6f hom.the.Software.is.furnished.to
12a5e0 20 64 6f 0a 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 .do.so,.subject.to.the.following
12a600 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 79 72 69 67 68 .conditions:..The.above.copyrigh
12a620 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 6e 20 6e 6f 74 t.notice.and.this.permission.not
12a640 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 6c 0a 63 6f 70 ice.shall.be.included.in.all.cop
12a660 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 20 6f 66 20 74 ies.or.substantial.portions.of.t
12a680 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 49 53 20 50 52 he.Software...THE.SOFTWARE.IS.PR
12a6a0 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 52 41 4e 54 59 OVIDED."AS.IS",.WITHOUT.WARRANTY
12a6c0 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 50 4c 49 45 44 .OF.ANY.KIND,.EXPRESS.OR.IMPLIED
12a6e0 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 20 54 4f 20 54 ,.INCLUDING.BUT.NOT.LIMITED.TO.T
12a700 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 49 4c 49 54 59 HE.WARRANTIES.OF.MERCHANTABILITY
12a720 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 50 55 52 50 4f ,.FITNESS.FOR.A.PARTICULAR.PURPO
12a740 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 4e 4f 20 45 56 SE.AND.NONINFRINGEMENT..IN.NO.EV
12a760 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 50 59 52 49 47 ENT.SHALL.THE.AUTHORS.OR.COPYRIG
12a780 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 59 20 43 4c 41 HT.HOLDERS.BE.LIABLE.FOR.ANY.CLA
12a7a0 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 49 54 59 2c 20 IM,.DAMAGES.OR.OTHER.LIABILITY,.
12a7c0 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 54 52 41 43 54 WHETHER.IN.AN.ACTION.OF.CONTRACT
12a7e0 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 47 20 46 52 4f ,.TORT.OR.OTHERWISE,.ARISING.FRO
12a800 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 57 49 54 48 20 M,.OUT.OF.OR.IN.CONNECTION.WITH.
12a820 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 4f 54 48 45 52 THE.SOFTWARE.OR.THE.USE.OR.OTHER
12a840 20 44 45 41 4c 49 4e 47 53 20 49 4e 20 54 48 45 0a 53 4f 46 54 57 41 52 45 2e 0a 3c 3f 70 68 70 .DEALINGS.IN.THE.SOFTWARE..<?php
12a860 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 70 ...........namespace.Composer\Sp
12a880 64 78 3b 0a 0a 63 6c 61 73 73 20 53 70 64 78 4c 69 63 65 6e 73 65 73 0a 7b 0a 0a 63 6f 6e 73 74 dx;..class.SpdxLicenses.{..const
12a8a0 20 4c 49 43 45 4e 53 45 53 5f 46 49 4c 45 20 3d 20 27 73 70 64 78 2d 6c 69 63 65 6e 73 65 73 2e .LICENSES_FILE.=.'spdx-licenses.
12a8c0 6a 73 6f 6e 27 3b 0a 0a 0a 63 6f 6e 73 74 20 45 58 43 45 50 54 49 4f 4e 53 5f 46 49 4c 45 20 3d json';...const.EXCEPTIONS_FILE.=
12a8e0 20 27 73 70 64 78 2d 65 78 63 65 70 74 69 6f 6e 73 2e 6a 73 6f 6e 27 3b 0a 0a 0a 0a 0a 0a 0a 0a .'spdx-exceptions.json';........
12a900 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6c 69 63 65 6e 73 65 73 3b 0a 0a 0a 0a 0a 70 72 .......private.$licenses;.....pr
12a920 69 76 61 74 65 20 24 6c 69 63 65 6e 73 65 73 45 78 70 72 65 73 73 69 6f 6e 3b 0a 0a 0a 0a 0a 0a ivate.$licensesExpression;......
12a940 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 65 78 63 65 70 74 69 6f 6e 73 3b 0a 0a 0a .........private.$exceptions;...
12a960 0a 0a 70 72 69 76 61 74 65 20 24 65 78 63 65 70 74 69 6f 6e 73 45 78 70 72 65 73 73 69 6f 6e 3b ..private.$exceptionsExpression;
12a980 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 29 0a ..public.function.__construct().
12a9a0 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 4c 69 63 65 6e 73 65 73 28 29 3b 0a 24 74 68 69 73 2d 3e {.$this->loadLicenses();.$this->
12a9c0 6c 6f 61 64 45 78 63 65 70 74 69 6f 6e 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a loadExceptions();.}.............
12a9e0 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 42 79 49 64 65 .public.function.getLicenseByIde
12aa00 6e 74 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 ntifier($identifier).{.if.(!isse
12aa20 74 28 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 t($this->licenses[$identifier]))
12aa40 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->
12aa60 6c 69 63 65 6e 73 65 73 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 3b 0a 24 6c 69 63 65 6e 73 65 5b licenses[$identifier];.$license[
12aa80 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 2f 27 ].=.'https://spdx.org/licenses/'
12aaa0 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 65 54 ...$identifier...'.html#licenseT
12aac0 65 78 74 27 3b 0a 0a 72 65 74 75 72 6e 20 24 6c 69 63 65 6e 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a ext';..return.$license;.}.......
12aae0 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 78 63 65 70 74 .......public.function.getExcept
12ab00 69 6f 6e 42 79 49 64 65 6e 74 69 66 69 65 72 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 ionByIdentifier($identifier).{.i
12ab20 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 73 5b 24 69 64 65 f.(!isset($this->exceptions[$ide
12ab40 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 6c 69 63 65 6e 73 65 ntifier])).{.return;.}..$license
12ab60 20 3d 20 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 .=.$this->exceptions[$identifier
12ab80 5d 3b 0a 24 6c 69 63 65 6e 73 65 5b 5d 20 3d 20 27 68 74 74 70 73 3a 2f 2f 73 70 64 78 2e 6f 72 ];.$license[].=.'https://spdx.or
12aba0 67 2f 6c 69 63 65 6e 73 65 73 2f 27 20 2e 20 24 69 64 65 6e 74 69 66 69 65 72 20 2e 20 27 2e 68 g/licenses/'...$identifier...'.h
12abc0 74 6d 6c 23 6c 69 63 65 6e 73 65 45 78 63 65 70 74 69 6f 6e 54 65 78 74 27 3b 0a 0a 72 65 74 75 tml#licenseExceptionText';..retu
12abe0 72 6e 20 24 6c 69 63 65 6e 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 rn.$license;.}.........public.fu
12ac00 6e 63 74 69 6f 6e 20 67 65 74 49 64 65 6e 74 69 66 69 65 72 42 79 4e 61 6d 65 28 24 6e 61 6d 65 nction.getIdentifierByName($name
12ac20 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 20 61 73 20 ).{.foreach.($this->licenses.as.
12ac40 24 69 64 65 6e 74 69 66 69 65 72 20 3d 3e 20 24 6c 69 63 65 6e 73 65 44 61 74 61 29 20 7b 0a 69 $identifier.=>.$licenseData).{.i
12ac60 66 20 28 24 6c 69 63 65 6e 73 65 44 61 74 61 5b 30 5d 20 3d 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a f.($licenseData[0].===.$name).{.
12ac80 72 65 74 75 72 6e 20 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 return.$identifier;.}.}..foreach
12aca0 20 28 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 73 20 61 73 20 24 69 64 65 6e 74 69 66 69 .($this->exceptions.as.$identifi
12acc0 65 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 er.=>.$licenseData).{.if.($licen
12ace0 73 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 seData[0].===.$name).{.return.$i
12ad00 64 65 6e 74 69 66 69 65 72 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 dentifier;.}.}.}.........public.
12ad20 66 75 6e 63 74 69 6f 6e 20 69 73 4f 73 69 41 70 70 72 6f 76 65 64 42 79 49 64 65 6e 74 69 66 69 function.isOsiApprovedByIdentifi
12ad40 65 72 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e er($identifier).{.return.$this->
12ad60 6c 69 63 65 6e 73 65 73 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 5b 31 5d 3b 0a 7d 0a 0a 0a 0a 0a licenses[$identifier][1];.}.....
12ad80 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 24 6c 69 63 ...public.function.validate($lic
12ada0 65 6e 73 65 29 0a 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 6c 69 63 65 6e 73 65 29 29 20 ense).{.if.(is_array($license)).
12adc0 7b 0a 24 63 6f 75 6e 74 20 3d 20 63 6f 75 6e 74 28 24 6c 69 63 65 6e 73 65 29 3b 0a 69 66 20 28 {.$count.=.count($license);.if.(
12ade0 24 63 6f 75 6e 74 20 21 3d 3d 20 63 6f 75 6e 74 28 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 6c $count.!==.count(array_filter($l
12ae00 69 63 65 6e 73 65 2c 20 27 69 73 5f 73 74 72 69 6e 67 27 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e icense,.'is_string'))).{.throw.n
12ae20 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 41 72 ew.\InvalidArgumentException('Ar
12ae40 72 61 79 20 6f 66 20 73 74 72 69 6e 67 73 20 65 78 70 65 63 74 65 64 2e 27 29 3b 0a 7d 0a 24 6c ray.of.strings.expected.');.}.$l
12ae60 69 63 65 6e 73 65 20 3d 20 24 63 6f 75 6e 74 20 3e 20 31 20 3f 20 27 28 27 20 2e 20 69 6d 70 6c icense.=.$count.>.1.?.'('...impl
12ae80 6f 64 65 28 27 20 4f 52 20 27 2c 20 24 6c 69 63 65 6e 73 65 29 20 2e 20 27 29 27 20 3a 20 28 73 ode('.OR.',.$license)...')'.:.(s
12aea0 74 72 69 6e 67 29 20 72 65 73 65 74 28 24 6c 69 63 65 6e 73 65 29 3b 0a 7d 0a 0a 69 66 20 28 21 tring).reset($license);.}..if.(!
12aec0 69 73 5f 73 74 72 69 6e 67 28 24 6c 69 63 65 6e 73 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 is_string($license)).{.throw.new
12aee0 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
12af00 74 66 28 0a 27 41 72 72 61 79 20 6f 72 20 53 74 72 69 6e 67 20 65 78 70 65 63 74 65 64 2c 20 25 tf(.'Array.or.String.expected,.%
12af20 73 20 67 69 76 65 6e 2e 27 2c 0a 67 65 74 74 79 70 65 28 24 6c 69 63 65 6e 73 65 29 0a 29 29 3b s.given.',.gettype($license).));
12af40 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 56 61 6c 69 64 4c 69 63 65 6e 73 65 .}..return.$this->isValidLicense
12af60 53 74 72 69 6e 67 28 24 6c 69 63 65 6e 73 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 String($license);.}.....public.s
12af80 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 73 6f 75 72 63 65 73 44 69 72 28 29 tatic.function.getResourcesDir()
12afa0 0a 7b 0a 72 65 74 75 72 6e 20 64 69 72 6e 61 6d 65 28 5f 5f 44 49 52 5f 5f 29 20 2e 20 27 2f 72 .{.return.dirname(__DIR__)...'/r
12afc0 65 73 27 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 4c 69 63 es';.}..private.function.loadLic
12afe0 65 6e 73 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 6c 69 enses().{.if.(null.===.$this->li
12b000 63 65 6e 73 65 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 censes).{.$json.=.file_get_conte
12b020 6e 74 73 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 nts(self::getResourcesDir()...'/
12b040 27 20 2e 20 73 65 6c 66 3a 3a 4c 49 43 45 4e 53 45 53 5f 46 49 4c 45 29 3b 0a 24 74 68 69 73 2d '...self::LICENSES_FILE);.$this-
12b060 3e 6c 69 63 65 6e 73 65 73 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 6a 73 6f 6e 2c 20 74 >licenses.=.json_decode($json,.t
12b080 72 75 65 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 rue);.}.}..private.function.load
12b0a0 45 78 63 65 70 74 69 6f 6e 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 Exceptions().{.if.(null.===.$thi
12b0c0 73 2d 3e 65 78 63 65 70 74 69 6f 6e 73 29 20 7b 0a 24 6a 73 6f 6e 20 3d 20 66 69 6c 65 5f 67 65 s->exceptions).{.$json.=.file_ge
12b0e0 74 5f 63 6f 6e 74 65 6e 74 73 28 73 65 6c 66 3a 3a 67 65 74 52 65 73 6f 75 72 63 65 73 44 69 72 t_contents(self::getResourcesDir
12b100 28 29 20 2e 20 27 2f 27 20 2e 20 73 65 6c 66 3a 3a 45 58 43 45 50 54 49 4f 4e 53 5f 46 49 4c 45 ()...'/'...self::EXCEPTIONS_FILE
12b120 29 3b 0a 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 73 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f );.$this->exceptions.=.json_deco
12b140 64 65 28 24 6a 73 6f 6e 2c 20 74 72 75 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 de($json,.true);.}.}.....private
12b160 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 69 63 65 6e 73 65 73 45 78 70 72 65 73 73 69 6f 6e 28 .function.getLicensesExpression(
12b180 29 0a 7b 0a 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 ).{.if.(null.===.$this->licenses
12b1a0 45 78 70 72 65 73 73 69 6f 6e 29 20 7b 0a 24 6c 69 63 65 6e 73 65 73 20 3d 20 61 72 72 61 79 5f Expression).{.$licenses.=.array_
12b1c0 6d 61 70 28 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 map('preg_quote',.array_keys($th
12b1e0 69 73 2d 3e 6c 69 63 65 6e 73 65 73 29 29 3b 0a 72 73 6f 72 74 28 24 6c 69 63 65 6e 73 65 73 29 is->licenses));.rsort($licenses)
12b200 3b 0a 24 6c 69 63 65 6e 73 65 73 20 3d 20 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 24 6c 69 63 65 ;.$licenses.=.implode('|',.$lice
12b220 6e 73 65 73 29 3b 0a 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 nses);.$this->licensesExpression
12b240 20 3d 20 24 6c 69 63 65 6e 73 65 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c .=.$licenses;.}..return.$this->l
12b260 69 63 65 6e 73 65 73 45 78 70 72 65 73 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 icensesExpression;.}.....private
12b280 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 63 65 70 74 69 6f 6e 73 45 78 70 72 65 73 73 69 6f .function.getExceptionsExpressio
12b2a0 6e 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 n().{.if.(null.===.$this->except
12b2c0 69 6f 6e 73 45 78 70 72 65 73 73 69 6f 6e 29 20 7b 0a 24 65 78 63 65 70 74 69 6f 6e 73 20 3d 20 ionsExpression).{.$exceptions.=.
12b2e0 61 72 72 61 79 5f 6d 61 70 28 27 70 72 65 67 5f 71 75 6f 74 65 27 2c 20 61 72 72 61 79 5f 6b 65 array_map('preg_quote',.array_ke
12b300 79 73 28 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 73 29 29 3b 0a 72 73 6f 72 74 28 24 65 ys($this->exceptions));.rsort($e
12b320 78 63 65 70 74 69 6f 6e 73 29 3b 0a 24 65 78 63 65 70 74 69 6f 6e 73 20 3d 20 69 6d 70 6c 6f 64 xceptions);.$exceptions.=.implod
12b340 65 28 27 7c 27 2c 20 24 65 78 63 65 70 74 69 6f 6e 73 29 3b 0a 24 74 68 69 73 2d 3e 65 78 63 65 e('|',.$exceptions);.$this->exce
12b360 70 74 69 6f 6e 73 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 24 65 78 63 65 70 74 69 6f 6e 73 3b 0a ptionsExpression.=.$exceptions;.
12b380 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 63 65 70 74 69 6f 6e 73 45 78 70 72 65 }..return.$this->exceptionsExpre
12b3a0 73 73 69 6f 6e 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 ssion;.}........private.function
12b3c0 20 69 73 56 61 6c 69 64 4c 69 63 65 6e 73 65 53 74 72 69 6e 67 28 24 6c 69 63 65 6e 73 65 29 0a .isValidLicenseString($license).
12b3e0 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 73 5b 24 6c 69 63 {.if.(isset($this->licenses[$lic
12b400 65 6e 73 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 6c 69 63 65 6e ense])).{.return.true;.}..$licen
12b420 73 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 69 63 65 6e 73 65 73 45 78 70 72 65 73 73 69 ses.=.$this->getLicensesExpressi
12b440 6f 6e 28 29 3b 0a 24 65 78 63 65 70 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 78 on();.$exceptions.=.$this->getEx
12b460 63 65 70 74 69 6f 6e 73 45 78 70 72 65 73 73 69 6f 6e 28 29 3b 0a 0a 24 72 65 67 65 78 20 3d 20 ceptionsExpression();..$regex.=.
12b480 3c 3c 3c 52 45 47 45 58 0a 7b 0a 28 3f 28 44 45 46 49 4e 45 29 0a 20 20 20 20 23 20 69 64 73 74 <<<REGEX.{.(?(DEFINE).....#.idst
12b4a0 72 69 6e 67 3a 20 31 2a 28 20 41 4c 50 48 41 20 2f 20 44 49 47 49 54 20 2f 20 2d 20 2f 20 2e 20 ring:.1*(.ALPHA./.DIGIT./.-./...
12b4c0 29 0a 20 20 20 20 28 3f 3c 69 64 73 74 72 69 6e 67 3e 5b 5c 70 4c 5c 70 4e 2e 2d 5d 7b 31 2c 7d ).....(?<idstring>[\pL\pN.-]{1,}
12b4e0 29 0a 0a 20 20 20 20 23 20 6c 69 63 65 6e 73 65 2d 69 64 3a 20 74 61 6b 65 6e 20 66 72 6f 6d 20 )......#.license-id:.taken.from.
12b500 6c 69 73 74 0a 20 20 20 20 28 3f 3c 6c 69 63 65 6e 73 65 69 64 3e 24 7b 6c 69 63 65 6e 73 65 73 list.....(?<licenseid>${licenses
12b520 7d 29 0a 0a 20 20 20 20 23 20 6c 69 63 65 6e 73 65 2d 65 78 63 65 70 74 69 6f 6e 2d 69 64 3a 20 })......#.license-exception-id:.
12b540 74 61 6b 65 6e 20 66 72 6f 6d 20 6c 69 73 74 0a 20 20 20 20 28 3f 3c 6c 69 63 65 6e 73 65 65 78 taken.from.list.....(?<licenseex
12b560 63 65 70 74 69 6f 6e 69 64 3e 24 7b 65 78 63 65 70 74 69 6f 6e 73 7d 29 0a 0a 20 20 20 20 23 20 ceptionid>${exceptions})......#.
12b580 6c 69 63 65 6e 73 65 2d 72 65 66 3a 20 5b 44 6f 63 75 6d 65 6e 74 52 65 66 2d 31 2a 28 69 64 73 license-ref:.[DocumentRef-1*(ids
12b5a0 74 72 69 6e 67 29 3a 5d 4c 69 63 65 6e 73 65 52 65 66 2d 31 2a 28 69 64 73 74 72 69 6e 67 29 0a tring):]LicenseRef-1*(idstring).
12b5c0 20 20 20 20 28 3f 3c 6c 69 63 65 6e 73 65 72 65 66 3e 28 3f 3a 44 6f 63 75 6d 65 6e 74 52 65 66 ....(?<licenseref>(?:DocumentRef
12b5e0 2d 28 3f 26 69 64 73 74 72 69 6e 67 29 3a 29 3f 4c 69 63 65 6e 73 65 52 65 66 2d 28 3f 26 69 64 -(?&idstring):)?LicenseRef-(?&id
12b600 73 74 72 69 6e 67 29 29 0a 0a 20 20 20 20 23 20 73 69 6d 70 6c 65 2d 65 78 70 72 65 73 73 73 69 string))......#.simple-expresssi
12b620 6f 6e 3a 20 6c 69 63 65 6e 73 65 2d 69 64 20 2f 20 6c 69 63 65 6e 73 65 2d 69 64 2b 20 2f 20 6c on:.license-id./.license-id+./.l
12b640 69 63 65 6e 73 65 2d 72 65 66 0a 20 20 20 20 28 3f 3c 73 69 6d 70 6c 65 5f 65 78 70 72 65 73 73 icense-ref.....(?<simple_express
12b660 69 6f 6e 3e 28 3f 26 6c 69 63 65 6e 73 65 69 64 29 5c 2b 3f 20 7c 20 28 3f 26 6c 69 63 65 6e 73 ion>(?&licenseid)\+?.|.(?&licens
12b680 65 69 64 29 20 7c 20 28 3f 26 6c 69 63 65 6e 73 65 72 65 66 29 29 0a 0a 20 20 20 20 23 20 63 6f eid).|.(?&licenseref))......#.co
12b6a0 6d 70 6f 75 6e 64 2d 65 78 70 72 65 73 73 69 6f 6e 3a 20 31 2a 28 0a 20 20 20 20 23 20 20 20 73 mpound-expression:.1*(.....#...s
12b6c0 69 6d 70 6c 65 2d 65 78 70 72 65 73 73 69 6f 6e 20 2f 0a 20 20 20 20 23 20 20 20 73 69 6d 70 6c imple-expression./.....#...simpl
12b6e0 65 2d 65 78 70 72 65 73 73 69 6f 6e 20 57 49 54 48 20 6c 69 63 65 6e 73 65 2d 65 78 63 65 70 74 e-expression.WITH.license-except
12b700 69 6f 6e 2d 69 64 20 2f 0a 20 20 20 20 23 20 20 20 63 6f 6d 70 6f 75 6e 64 2d 65 78 70 72 65 73 ion-id./.....#...compound-expres
12b720 73 69 6f 6e 20 41 4e 44 20 63 6f 6d 70 6f 75 6e 64 2d 65 78 70 72 65 73 73 69 6f 6e 20 2f 0a 20 sion.AND.compound-expression./..
12b740 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 4f 52 20 63 6f ...#...compound-expression.OR.co
12b760 6d 70 6f 75 6e 64 2d 65 78 70 72 65 73 73 69 6f 6e 0a 20 20 20 20 23 20 29 20 2f 20 28 20 63 6f mpound-expression.....#.)./.(.co
12b780 6d 70 6f 75 6e 64 2d 65 78 70 72 65 73 73 69 6f 6e 20 29 20 29 0a 20 20 20 20 28 3f 3c 63 6f 6d mpound-expression.).).....(?<com
12b7a0 70 6f 75 6e 64 5f 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 28 3f 26 73 69 6d 70 6c 65 5f 65 78 pound_head>.........(?&simple_ex
12b7c0 70 72 65 73 73 69 6f 6e 29 20 28 20 5c 73 2b 20 28 3f 3a 77 69 74 68 7c 57 49 54 48 29 20 5c 73 pression).(.\s+.(?:with|WITH).\s
12b7e0 2b 20 28 3f 26 6c 69 63 65 6e 73 65 65 78 63 65 70 74 69 6f 6e 69 64 29 29 3f 0a 20 20 20 20 20 +.(?&licenseexceptionid))?......
12b800 20 20 20 20 20 20 20 7c 20 5c 28 20 5c 73 2a 20 28 3f 26 63 6f 6d 70 6f 75 6e 64 5f 65 78 70 72 .......|.\(.\s*.(?&compound_expr
12b820 65 73 73 69 6f 6e 29 20 5c 73 2a 20 5c 29 0a 20 20 20 20 29 0a 20 20 20 20 28 3f 3c 63 6f 6d 70 ession).\s*.\).....).....(?<comp
12b840 6f 75 6e 64 5f 65 78 70 72 65 73 73 69 6f 6e 3e 0a 20 20 20 20 20 20 20 20 28 3f 26 63 6f 6d 70 ound_expression>.........(?&comp
12b860 6f 75 6e 64 5f 68 65 61 64 29 20 28 3f 3a 20 5c 73 2b 20 28 3f 3a 61 6e 64 7c 41 4e 44 7c 6f 72 ound_head).(?:.\s+.(?:and|AND|or
12b880 7c 4f 52 29 20 5c 73 2b 20 28 3f 26 63 6f 6d 70 6f 75 6e 64 5f 65 78 70 72 65 73 73 69 6f 6e 29 |OR).\s+.(?&compound_expression)
12b8a0 29 3f 0a 20 20 20 20 29 0a 0a 20 20 20 20 23 20 6c 69 63 65 6e 73 65 2d 65 78 70 72 65 73 73 69 )?.....)......#.license-expressi
12b8c0 6f 6e 3a 20 31 2a 31 28 73 69 6d 70 6c 65 2d 65 78 70 72 65 73 73 69 6f 6e 20 2f 20 63 6f 6d 70 on:.1*1(simple-expression./.comp
12b8e0 6f 75 6e 64 2d 65 78 70 72 65 73 73 69 6f 6e 29 0a 20 20 20 20 28 3f 3c 6c 69 63 65 6e 73 65 5f ound-expression).....(?<license_
12b900 65 78 70 72 65 73 73 69 6f 6e 3e 28 3f 26 63 6f 6d 70 6f 75 6e 64 5f 65 78 70 72 65 73 73 69 6f expression>(?&compound_expressio
12b920 6e 29 20 7c 20 28 3f 26 73 69 6d 70 6c 65 5f 65 78 70 72 65 73 73 69 6f 6e 29 29 0a 29 20 23 20 n).|.(?&simple_expression)).).#.
12b940 65 6e 64 20 6f 66 20 64 65 66 69 6e 65 0a 0a 5e 28 4e 4f 4e 45 20 7c 20 4e 4f 41 53 53 45 52 54 end.of.define..^(NONE.|.NOASSERT
12b960 49 4f 4e 20 7c 20 28 3f 26 6c 69 63 65 6e 73 65 5f 65 78 70 72 65 73 73 69 6f 6e 29 29 24 0a 7d ION.|.(?&license_expression))$.}
12b980 78 0a 52 45 47 45 58 3b 0a 0a 24 6d 61 74 63 68 20 3d 20 70 72 65 67 5f 6d 61 74 63 68 28 24 72 x.REGEX;..$match.=.preg_match($r
12b9a0 65 67 65 78 2c 20 24 6c 69 63 65 6e 73 65 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 6d 61 74 egex,.$license);..if.(0.===.$mat
12b9c0 63 68 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 66 61 6c 73 65 ch).{.return.false;.}..if.(false
12b9e0 20 3d 3d 3d 20 24 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 .===.$match).{.throw.new.\Runtim
12ba00 65 45 78 63 65 70 74 69 6f 6e 28 27 52 65 67 65 78 20 66 61 69 6c 65 64 20 74 6f 20 63 6f 6d 70 eException('Regex.failed.to.comp
12ba20 69 6c 65 2f 72 75 6e 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a ile/run.');.}..return.true;.}.}.
12ba40 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 35 20 43 6f 6d 70 6f 73 65 72 0a 0a 50 65 72 Copyright.(C).2015.Composer..Per
12ba60 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 72 65 65 20 mission.is.hereby.granted,.free.
12ba80 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 61 69 6e 69 of.charge,.to.any.person.obtaini
12baa0 6e 67 20 61 20 63 6f 70 79 20 6f 66 0a 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 ng.a.copy.of.this.software.and.a
12bac0 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 73 20 28 74 ssociated.documentation.files.(t
12bae0 68 65 20 22 53 6f 66 74 77 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 20 69 6e 0a 74 68 65 20 53 he."Software"),.to.deal.in.the.S
12bb00 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 20 69 6e 63 oftware.without.restriction,.inc
12bb20 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 65 20 72 69 luding.without.limitation.the.ri
12bb40 67 68 74 73 20 74 6f 0a 75 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 ghts.to.use,.copy,.modify,.merge
12bb60 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 63 65 6e 73 ,.publish,.distribute,.sublicens
12bb80 65 2c 20 61 6e 64 2f 6f 72 20 73 65 6c 6c 20 63 6f 70 69 65 73 0a 6f 66 20 74 68 65 20 53 6f 66 e,.and/or.sell.copies.of.the.Sof
12bba0 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 20 74 6f 20 tware,.and.to.permit.persons.to.
12bbc0 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 65 64 20 74 whom.the.Software.is.furnished.t
12bbe0 6f 20 64 6f 0a 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 o.do.so,.subject.to.the.followin
12bc00 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 79 72 69 67 g.conditions:..The.above.copyrig
12bc20 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 6e 20 6e 6f ht.notice.and.this.permission.no
12bc40 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 6c 0a 63 6f tice.shall.be.included.in.all.co
12bc60 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 20 6f 66 20 pies.or.substantial.portions.of.
12bc80 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 49 53 20 50 the.Software...THE.SOFTWARE.IS.P
12bca0 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 52 41 4e 54 ROVIDED."AS.IS",.WITHOUT.WARRANT
12bcc0 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 50 4c 49 45 Y.OF.ANY.KIND,.EXPRESS.OR.IMPLIE
12bce0 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 20 54 4f 20 D,.INCLUDING.BUT.NOT.LIMITED.TO.
12bd00 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 49 4c 49 54 THE.WARRANTIES.OF.MERCHANTABILIT
12bd20 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 50 55 52 50 Y,.FITNESS.FOR.A.PARTICULAR.PURP
12bd40 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 4e 4f 20 45 OSE.AND.NONINFRINGEMENT..IN.NO.E
12bd60 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 50 59 52 49 VENT.SHALL.THE.AUTHORS.OR.COPYRI
12bd80 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 59 20 43 4c GHT.HOLDERS.BE.LIABLE.FOR.ANY.CL
12bda0 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 49 54 59 2c AIM,.DAMAGES.OR.OTHER.LIABILITY,
12bdc0 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 54 52 41 43 .WHETHER.IN.AN.ACTION.OF.CONTRAC
12bde0 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 47 20 46 52 T,.TORT.OR.OTHERWISE,.ARISING.FR
12be00 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 57 49 54 48 OM,.OUT.OF.OR.IN.CONNECTION.WITH
12be20 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 4f 54 48 45 .THE.SOFTWARE.OR.THE.USE.OR.OTHE
12be40 52 20 44 45 41 4c 49 4e 47 53 20 49 4e 20 54 48 45 0a 53 4f 46 54 57 41 52 45 2e 0a 3c 3f 70 68 R.DEALINGS.IN.THE.SOFTWARE..<?ph
12be60 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 53 p...........namespace.Composer\S
12be80 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 65 72 5c 43 6f 6e 73 emver;..use.Composer\Semver\Cons
12bea0 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 20 43 6f 6d 70 61 72 traint\Constraint;..class.Compar
12bec0 61 74 6f 72 0a 7b 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 ator.{.........public.static.fun
12bee0 63 74 69 6f 6e 20 67 72 65 61 74 65 72 54 68 61 6e 28 24 76 65 72 73 69 6f 6e 31 2c 20 24 76 65 ction.greaterThan($version1,.$ve
12bf00 72 73 69 6f 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 rsion2).{.return.self::compare($
12bf20 76 65 72 73 69 6f 6e 31 2c 20 27 3e 27 2c 20 24 76 65 72 73 69 6f 6e 32 29 3b 0a 7d 0a 0a 0a 0a version1,.'>',.$version2);.}....
12bf40 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 67 72 65 ......public.static.function.gre
12bf60 61 74 65 72 54 68 61 6e 4f 72 45 71 75 61 6c 54 6f 28 24 76 65 72 73 69 6f 6e 31 2c 20 24 76 65 aterThanOrEqualTo($version1,.$ve
12bf80 72 73 69 6f 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 rsion2).{.return.self::compare($
12bfa0 76 65 72 73 69 6f 6e 31 2c 20 27 3e 3d 27 2c 20 24 76 65 72 73 69 6f 6e 32 29 3b 0a 7d 0a 0a 0a version1,.'>=',.$version2);.}...
12bfc0 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 6c 65 .......public.static.function.le
12bfe0 73 73 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 72 ssThan($version1,.$version2).{.r
12c000 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 27 eturn.self::compare($version1,.'
12c020 3c 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 69 <',.$version2);.}..........publi
12c040 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 4f 72 45 71 75 61 c.static.function.lessThanOrEqua
12c060 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 75 lTo($version1,.$version2).{.retu
12c080 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 3c 3d 27 rn.self::compare($version1,.'<='
12c0a0 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 69 63 20 ,.$version2);.}..........public.
12c0c0 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 71 75 61 6c 54 6f 28 24 76 65 72 73 69 6f 6e static.function.equalTo($version
12c0e0 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 6f 6d 1,.$version2).{.return.self::com
12c100 70 61 72 65 28 24 76 65 72 73 69 6f 6e 31 2c 20 27 3d 3d 27 2c 20 24 76 65 72 73 69 6f 6e 32 29 pare($version1,.'==',.$version2)
12c120 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 63 74 ;.}..........public.static.funct
12c140 69 6f 6e 20 6e 6f 74 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 ion.notEqualTo($version1,.$versi
12c160 6f 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 on2).{.return.self::compare($ver
12c180 73 69 6f 6e 31 2c 20 27 21 3d 27 2c 20 24 76 65 72 73 69 6f 6e 32 29 3b 0a 7d 0a 0a 0a 0a 0a 0a sion1,.'!=',.$version2);.}......
12c1a0 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 6f 6d 70 .....public.static.function.comp
12c1c0 61 72 65 28 24 76 65 72 73 69 6f 6e 31 2c 20 24 6f 70 65 72 61 74 6f 72 2c 20 24 76 65 72 73 69 are($version1,.$operator,.$versi
12c1e0 6f 6e 32 29 0a 7b 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 on2).{.$constraint.=.new.Constra
12c200 69 6e 74 28 24 6f 70 65 72 61 74 6f 72 2c 20 24 76 65 72 73 69 6f 6e 32 29 3b 0a 0a 72 65 74 75 int($operator,.$version2);..retu
12c220 72 6e 20 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 6e 65 77 20 43 6f 6e 73 rn.$constraint->matches(new.Cons
12c240 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 76 65 72 73 69 6f 6e 31 29 29 3b 0a 7d 0a 7d 0a 3c 3f traint('==',.$version1));.}.}.<?
12c260 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 70 6f 73 65 72 php...........namespace.Composer
12c280 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 74 72 69 67 67 65 72 5f 65 72 72 \Semver\Constraint;..trigger_err
12c2a0 6f 72 28 27 54 68 65 20 27 20 2e 20 5f 5f 43 4c 41 53 53 5f 5f 20 2e 20 27 20 61 62 73 74 72 61 or('The.'...__CLASS__...'.abstra
12c2c0 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 65 20 69 73 ct.class.is.deprecated,.there.is
12c2e0 20 6e 6f 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 66 6f 72 20 69 74 2c 20 69 74 20 77 69 6c 6c 20 .no.replacement.for.it,.it.will.
12c300 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 74 68 65 20 6e 65 78 74 20 6d 61 6a 6f 72 20 76 65 72 be.removed.in.the.next.major.ver
12c320 73 69 6f 6e 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 sion.',.E_USER_DEPRECATED);.....
12c340 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 41 62 73 74 72 61 63 74 43 6f 6e 73 74 72 61 69 6e abstract.class.AbstractConstrain
12c360 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 63 65 t.implements.ConstraintInterface
12c380 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 0a 0a .{..protected.$prettyString;....
12c3a0 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 73 74 ...public.function.matches(Const
12c3c0 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 69 66 20 28 raintInterface.$provider).{.if.(
12c3e0 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 7b 0a 0a 20 $provider.instanceof.$this).{...
12c400 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 72 6f return.$this->matchSpecific($pro
12c420 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 3e 6d vider);.}....return.$provider->m
12c440 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 6e 63 atches($this);.}.....public.func
12c460 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 72 69 tion.setPrettyString($prettyStri
12c480 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 72 65 ng).{.$this->prettyString.=.$pre
12c4a0 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 6f 6e ttyString;.}.....public.function
12c4c0 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 2d 3e .getPrettyString().{.if.($this->
12c4e0 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 70 72 prettyString).{.return.$this->pr
12c500 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 5f 74 ettyString;.}..return.$this->__t
12c520 6f 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a oString();.}.......}.<?php......
12c540 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
12c560 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 74 72 61 69 6e 74 20 onstraint;.....class.Constraint.
12c580 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 63 65 0a 7b implements.ConstraintInterface.{
12c5a0 0a 0a 63 6f 6e 73 74 20 4f 50 5f 45 51 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 4f 50 5f 4c 54 20 3d ..const.OP_EQ.=.0;.const.OP_LT.=
12c5c0 20 31 3b 0a 63 6f 6e 73 74 20 4f 50 5f 4c 45 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 4f 50 5f 47 54 .1;.const.OP_LE.=.2;.const.OP_GT
12c5e0 20 3d 20 33 3b 0a 63 6f 6e 73 74 20 4f 50 5f 47 45 20 3d 20 34 3b 0a 63 6f 6e 73 74 20 4f 50 5f .=.3;.const.OP_GE.=.4;.const.OP_
12c600 4e 45 20 3d 20 35 3b 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 74 72 NE.=.5;.......private.static.$tr
12c620 61 6e 73 4f 70 53 74 72 20 3d 20 61 72 72 61 79 28 0a 27 3d 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f ansOpStr.=.array(.'='.=>.self::O
12c640 50 5f 45 51 2c 0a 27 3d 3d 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 5f 45 51 2c 0a 27 3c 27 20 3d P_EQ,.'=='.=>.self::OP_EQ,.'<'.=
12c660 3e 20 73 65 6c 66 3a 3a 4f 50 5f 4c 54 2c 0a 27 3c 3d 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 5f >.self::OP_LT,.'<='.=>.self::OP_
12c680 4c 45 2c 0a 27 3e 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 5f 47 54 2c 0a 27 3e 3d 27 20 3d 3e 20 LE,.'>'.=>.self::OP_GT,.'>='.=>.
12c6a0 73 65 6c 66 3a 3a 4f 50 5f 47 45 2c 0a 27 3c 3e 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 5f 4e 45 self::OP_GE,.'<>'.=>.self::OP_NE
12c6c0 2c 0a 27 21 3d 27 20 3d 3e 20 73 65 6c 66 3a 3a 4f 50 5f 4e 45 2c 0a 29 3b 0a 0a 0a 0a 0a 0a 0a ,.'!='.=>.self::OP_NE,.);.......
12c6e0 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 74 72 61 6e 73 4f 70 49 6e 74 20 3d 20 61 72 72 private.static.$transOpInt.=.arr
12c700 61 79 28 0a 73 65 6c 66 3a 3a 4f 50 5f 45 51 20 3d 3e 20 27 3d 3d 27 2c 0a 73 65 6c 66 3a 3a 4f ay(.self::OP_EQ.=>.'==',.self::O
12c720 50 5f 4c 54 20 3d 3e 20 27 3c 27 2c 0a 73 65 6c 66 3a 3a 4f 50 5f 4c 45 20 3d 3e 20 27 3c 3d 27 P_LT.=>.'<',.self::OP_LE.=>.'<='
12c740 2c 0a 73 65 6c 66 3a 3a 4f 50 5f 47 54 20 3d 3e 20 27 3e 27 2c 0a 73 65 6c 66 3a 3a 4f 50 5f 47 ,.self::OP_GT.=>.'>',.self::OP_G
12c760 45 20 3d 3e 20 27 3e 3d 27 2c 0a 73 65 6c 66 3a 3a 4f 50 5f 4e 45 20 3d 3e 20 27 21 3d 27 2c 0a E.=>.'>=',.self::OP_NE.=>.'!=',.
12c780 29 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 70 65 72 61 74 6f 72 3b 0a 0a 0a 70 72 6f 74 );...protected.$operator;...prot
12c7a0 65 63 74 65 64 20 24 76 65 72 73 69 6f 6e 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 ected.$version;...protected.$pre
12c7c0 74 74 79 53 74 72 69 6e 67 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e ttyString;.......public.function
12c7e0 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
12c800 6f 76 69 64 65 72 29 0a 7b 0a 69 66 20 28 24 70 72 6f 76 69 64 65 72 20 69 6e 73 74 61 6e 63 65 ovider).{.if.($provider.instance
12c820 6f 66 20 24 74 68 69 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 74 63 68 53 of.$this).{.return.$this->matchS
12c840 70 65 63 69 66 69 63 28 24 70 72 6f 76 69 64 65 72 29 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 pecific($provider);.}....return.
12c860 24 70 72 6f 76 69 64 65 72 2d 3e 6d 61 74 63 68 65 73 28 24 74 68 69 73 29 3b 0a 7d 0a 0a 0a 0a $provider->matches($this);.}....
12c880 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 53 74 72 69 6e 67 .public.function.setPrettyString
12c8a0 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 72 65 74 74 79 53 ($prettyString).{.$this->prettyS
12c8c0 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 0a 0a 0a 70 75 62 tring.=.$prettyString;.}.....pub
12c8e0 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 0a 7b lic.function.getPrettyString().{
12c900 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 7b 0a 72 65 74 75 .if.($this->prettyString).{.retu
12c920 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 0a 72 65 74 75 72 rn.$this->prettyString;.}..retur
12c940 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 0a 0a 0a 0a 0a 70 n.$this->__toString();.}.......p
12c960 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 53 75 70 70 6f 72 74 ublic.static.function.getSupport
12c980 65 64 4f 70 65 72 61 74 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 edOperators().{.return.array_key
12c9a0 73 28 73 65 6c 66 3a 3a 24 74 72 61 6e 73 4f 70 53 74 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a s(self::$transOpStr);.}.........
12c9c0 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 6f 70 .public.function.__construct($op
12c9e0 65 72 61 74 6f 72 2c 20 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 73 erator,.$version).{.if.(!isset(s
12ca00 65 6c 66 3a 3a 24 74 72 61 6e 73 4f 70 53 74 72 5b 24 6f 70 65 72 61 74 6f 72 5d 29 29 20 7b 0a elf::$transOpStr[$operator])).{.
12ca20 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
12ca40 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 49 6e 76 61 6c 69 64 20 6f 70 65 72 61 74 6f 72 20 22 ion(sprintf(.'Invalid.operator."
12ca60 25 73 22 20 67 69 76 65 6e 2c 20 65 78 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 3a 20 25 73 27 2c %s".given,.expected.one.of:.%s',
12ca80 0a 24 6f 70 65 72 61 74 6f 72 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 73 65 6c 66 3a 3a .$operator,.implode(',.',.self::
12caa0 67 65 74 53 75 70 70 6f 72 74 65 64 4f 70 65 72 61 74 6f 72 73 28 29 29 0a 29 29 3b 0a 7d 0a 0a getSupportedOperators()).));.}..
12cac0 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 20 3d 20 73 65 6c 66 3a 3a 24 74 72 61 6e 73 4f 70 $this->operator.=.self::$transOp
12cae0 53 74 72 5b 24 6f 70 65 72 61 74 6f 72 5d 3b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 20 3d Str[$operator];.$this->version.=
12cb00 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 .$version;.}............public.f
12cb20 75 6e 63 74 69 6f 6e 20 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 61 2c 20 24 62 2c 20 24 unction.versionCompare($a,.$b,.$
12cb40 6f 70 65 72 61 74 6f 72 2c 20 24 63 6f 6d 70 61 72 65 42 72 61 6e 63 68 65 73 20 3d 20 66 61 6c operator,.$compareBranches.=.fal
12cb60 73 65 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 73 4f 70 53 se).{.if.(!isset(self::$transOpS
12cb80 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 5c 49 6e 76 tr[$operator])).{.throw.new.\Inv
12cba0 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 27 alidArgumentException(sprintf(.'
12cbc0 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 20 65 78 70 Invalid.operator."%s".given,.exp
12cbe0 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 2c 0a 69 6d ected.one.of:.%s',.$operator,.im
12cc00 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 65 64 4f 70 plode(',.',.self::getSupportedOp
12cc20 65 72 61 74 6f 72 73 28 29 29 0a 29 29 3b 0a 7d 0a 0a 24 61 49 73 42 72 61 6e 63 68 20 3d 20 27 erators()).));.}..$aIsBranch.=.'
12cc40 64 65 76 2d 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 61 2c 20 30 2c 20 34 29 3b 0a 24 62 49 73 dev-'.===.substr($a,.0,.4);.$bIs
12cc60 42 72 61 6e 63 68 20 3d 20 27 64 65 76 2d 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 62 2c 20 30 Branch.=.'dev-'.===.substr($b,.0
12cc80 2c 20 34 29 3b 0a 0a 69 66 20 28 24 61 49 73 42 72 61 6e 63 68 20 26 26 20 24 62 49 73 42 72 61 ,.4);..if.($aIsBranch.&&.$bIsBra
12cca0 6e 63 68 29 20 7b 0a 72 65 74 75 72 6e 20 24 6f 70 65 72 61 74 6f 72 20 3d 3d 3d 20 27 3d 3d 27 nch).{.return.$operator.===.'=='
12ccc0 20 26 26 20 24 61 20 3d 3d 3d 20 24 62 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 63 6f 6d 70 61 72 .&&.$a.===.$b;.}....if.(!$compar
12cce0 65 42 72 61 6e 63 68 65 73 20 26 26 20 28 24 61 49 73 42 72 61 6e 63 68 20 7c 7c 20 24 62 49 73 eBranches.&&.($aIsBranch.||.$bIs
12cd00 42 72 61 6e 63 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 Branch)).{.return.false;.}..retu
12cd20 72 6e 20 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 24 61 2c 20 24 62 2c 20 24 6f 70 65 72 rn.version_compare($a,.$b,.$oper
12cd40 61 74 6f 72 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 ator);.}........public.function.
12cd60 6d 61 74 63 68 53 70 65 63 69 66 69 63 28 43 6f 6e 73 74 72 61 69 6e 74 20 24 70 72 6f 76 69 64 matchSpecific(Constraint.$provid
12cd80 65 72 2c 20 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 er,.$compareBranches.=.false).{.
12cda0 24 6e 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 27 2c 20 27 27 $noEqualOp.=.str_replace('=',.''
12cdc0 2c 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 70 65 72 61 ,.self::$transOpInt[$this->opera
12cde0 74 6f 72 5d 29 3b 0a 24 70 72 6f 76 69 64 65 72 4e 6f 45 71 75 61 6c 4f 70 20 3d 20 73 74 72 5f tor]);.$providerNoEqualOp.=.str_
12ce00 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 72 61 6e 73 4f 70 49 replace('=',.'',.self::$transOpI
12ce20 6e 74 5b 24 70 72 6f 76 69 64 65 72 2d 3e 6f 70 65 72 61 74 6f 72 5d 29 3b 0a 0a 24 69 73 45 71 nt[$provider->operator]);..$isEq
12ce40 75 61 6c 4f 70 20 3d 20 73 65 6c 66 3a 3a 4f 50 5f 45 51 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6f ualOp.=.self::OP_EQ.===.$this->o
12ce60 70 65 72 61 74 6f 72 3b 0a 24 69 73 4e 6f 6e 45 71 75 61 6c 4f 70 20 3d 20 73 65 6c 66 3a 3a 4f perator;.$isNonEqualOp.=.self::O
12ce80 50 5f 4e 45 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 3b 0a 24 69 73 50 72 6f P_NE.===.$this->operator;.$isPro
12cea0 76 69 64 65 72 45 71 75 61 6c 4f 70 20 3d 20 73 65 6c 66 3a 3a 4f 50 5f 45 51 20 3d 3d 3d 20 24 viderEqualOp.=.self::OP_EQ.===.$
12cec0 70 72 6f 76 69 64 65 72 2d 3e 6f 70 65 72 61 74 6f 72 3b 0a 24 69 73 50 72 6f 76 69 64 65 72 4e provider->operator;.$isProviderN
12cee0 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 70 72 6f onEqualOp.=.self::OP_NE.===.$pro
12cf00 76 69 64 65 72 2d 3e 6f 70 65 72 61 74 6f 72 3b 0a 0a 0a 20 0a 20 69 66 20 28 24 69 73 4e 6f 6e vider->operator;......if.($isNon
12cf20 45 71 75 61 6c 4f 70 20 7c 7c 20 24 69 73 50 72 6f 76 69 64 65 72 4e 6f 6e 45 71 75 61 6c 4f 70 EqualOp.||.$isProviderNonEqualOp
12cf40 29 20 7b 0a 72 65 74 75 72 6e 20 21 24 69 73 45 71 75 61 6c 4f 70 20 26 26 20 21 24 69 73 50 72 ).{.return.!$isEqualOp.&&.!$isPr
12cf60 6f 76 69 64 65 72 45 71 75 61 6c 4f 70 0a 7c 7c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 43 oviderEqualOp.||.$this->versionC
12cf80 6f 6d 70 61 72 65 28 24 70 72 6f 76 69 64 65 72 2d 3e 76 65 72 73 69 6f 6e 2c 20 24 74 68 69 73 ompare($provider->version,.$this
12cfa0 2d 3e 76 65 72 73 69 6f 6e 2c 20 27 21 3d 27 2c 20 24 63 6f 6d 70 61 72 65 42 72 61 6e 63 68 65 ->version,.'!=',.$compareBranche
12cfc0 73 29 3b 0a 7d 0a 0a 0a 20 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 20 21 s);.}......if.($this->operator.!
12cfe0 3d 3d 20 73 65 6c 66 3a 3a 4f 50 5f 45 51 20 26 26 20 24 6e 6f 45 71 75 61 6c 4f 70 20 3d 3d 3d ==.self::OP_EQ.&&.$noEqualOp.===
12d000 20 24 70 72 6f 76 69 64 65 72 4e 6f 45 71 75 61 6c 4f 70 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 .$providerNoEqualOp).{.return.tr
12d020 75 65 3b 0a 7d 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 ue;.}..if.($this->versionCompare
12d040 28 24 70 72 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 ($provider->version,.$this->vers
12d060 69 6f 6e 2c 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 70 ion,.self::$transOpInt[$this->op
12d080 65 72 61 74 6f 72 5d 2c 20 24 63 6f 6d 70 61 72 65 42 72 61 6e 63 68 65 73 29 29 20 7b 0a 0a 20 erator],.$compareBranches)).{...
12d0a0 0a 20 69 66 20 28 24 70 72 6f 76 69 64 65 72 2d 3e 76 65 72 73 69 6f 6e 20 3d 3d 3d 20 24 74 68 ..if.($provider->version.===.$th
12d0c0 69 73 2d 3e 76 65 72 73 69 6f 6e 0a 26 26 20 73 65 6c 66 3a 3a 24 74 72 61 6e 73 4f 70 49 6e 74 is->version.&&.self::$transOpInt
12d0e0 5b 24 70 72 6f 76 69 64 65 72 2d 3e 6f 70 65 72 61 74 6f 72 5d 20 3d 3d 3d 20 24 70 72 6f 76 69 [$provider->operator].===.$provi
12d100 64 65 72 4e 6f 45 71 75 61 6c 4f 70 0a 26 26 20 73 65 6c 66 3a 3a 24 74 72 61 6e 73 4f 70 49 6e derNoEqualOp.&&.self::$transOpIn
12d120 74 5b 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 5d 20 21 3d 3d 20 24 6e 6f 45 71 75 61 6c 4f t[$this->operator].!==.$noEqualO
12d140 70 29 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 p).{.return.false;.}..return.tru
12d160 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 70 75 62 6c 69 63 e;.}..return.false;.}.....public
12d180 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 20 .function.__toString().{.return.
12d1a0 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 70 65 72 61 74 6f self::$transOpInt[$this->operato
12d1c0 72 5d 20 2e 20 27 20 27 20 2e 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 3b 0a 7d 0a 7d 0a 3c r]...'.'...$this->version;.}.}.<
12d1e0 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 70 6f 73 65 ?php...........namespace.Compose
12d200 72 5c 53 65 6d 76 65 72 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 69 6e 74 65 72 66 61 63 65 20 r\Semver\Constraint;..interface.
12d220 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 ConstraintInterface.{......publi
12d240 63 20 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 c.function.matches(ConstraintInt
12d260 65 72 66 61 63 65 20 24 70 72 6f 76 69 64 65 72 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 erface.$provider);.....public.fu
12d280 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 0a 0a 0a 0a 0a 70 75 nction.getPrettyString();.....pu
12d2a0 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 3b 0a 7d 0a 3c 3f blic.function.__toString();.}.<?
12d2c0 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 70 6f 73 65 72 php...........namespace.Composer
12d2e0 5c 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 45 6d \Semver\Constraint;.....class.Em
12d300 70 74 79 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 ptyConstraint.implements.Constra
12d320 69 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 70 72 65 74 74 intInterface.{..protected.$prett
12d340 79 53 74 72 69 6e 67 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d yString;.......public.function.m
12d360 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 6f 76 atches(ConstraintInterface.$prov
12d380 69 64 65 72 29 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 ider).{.return.true;.}.....publi
12d3a0 63 20 66 75 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 c.function.setPrettyString($pret
12d3c0 74 79 53 74 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 tyString).{.$this->prettyString.
12d3e0 3d 20 24 70 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 =.$prettyString;.}.....public.fu
12d400 6e 63 74 69 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 nction.getPrettyString().{.if.($
12d420 74 68 69 73 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 this->prettyString).{.return.$th
12d440 69 73 2d 3e 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 is->prettyString;.}..return.$thi
12d460 73 2d 3e 5f 5f 74 6f 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 s->__toString();.}.....public.fu
12d480 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 5b 5d nction.__toString().{.return.'[]
12d4a0 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 65 ';.}.}.<?php...........namespace
12d4c0 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 0a 0a 0a 0a .Composer\Semver\Constraint;....
12d4e0 0a 63 6c 61 73 73 20 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 .class.MultiConstraint.implement
12d500 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 74 s.ConstraintInterface.{..protect
12d520 65 64 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 ed.$constraints;...protected.$pr
12d540 65 74 74 79 53 74 72 69 6e 67 3b 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 6a 75 6e 63 ettyString;...protected.$conjunc
12d560 74 69 76 65 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 tive;......public.function.__con
12d580 73 74 72 75 63 74 28 61 72 72 61 79 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 2c 20 24 63 6f 6e 6a struct(array.$constraints,.$conj
12d5a0 75 6e 63 74 69 76 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 unctive.=.true).{.$this->constra
12d5c0 69 6e 74 73 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 6a ints.=.$constraints;.$this->conj
12d5e0 75 6e 63 74 69 76 65 20 3d 20 24 63 6f 6e 6a 75 6e 63 74 69 76 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a unctive.=.$conjunctive;.}.......
12d600 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 73 74 72 61 69 public.function.matches(Constrai
12d620 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 69 66 20 28 66 61 6c ntInterface.$provider).{.if.(fal
12d640 73 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 6a 75 6e 63 74 69 76 65 29 20 7b 0a 66 6f 72 se.===.$this->conjunctive).{.for
12d660 65 61 63 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 each.($this->constraints.as.$con
12d680 73 74 72 61 69 6e 74 29 20 7b 0a 69 66 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 straint).{.if.($constraint->matc
12d6a0 68 65 73 28 24 70 72 6f 76 69 64 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d hes($provider)).{.return.true;.}
12d6c0 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 .}..return.false;.}..foreach.($t
12d6e0 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 61 69 6e 74 29 his->constraints.as.$constraint)
12d700 20 7b 0a 69 66 20 28 21 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 70 72 .{.if.(!$constraint->matches($pr
12d720 6f 76 69 64 65 72 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 ovider)).{.return.false;.}.}..re
12d740 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
12d760 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).
12d780 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
12d7a0 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
12d7c0 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
12d7e0 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
12d800 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
12d820 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
12d840 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 61 72 72 61 79 oString().{.$constraints.=.array
12d860 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 73 20 ();.foreach.($this->constraints.
12d880 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 73 5b 5d as.$constraint).{.$constraints[]
12d8a0 20 3d 20 28 73 74 72 69 6e 67 29 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 72 65 74 75 .=.(string).$constraint;.}..retu
12d8c0 72 6e 20 27 5b 27 20 2e 20 69 6d 70 6c 6f 64 65 28 24 74 68 69 73 2d 3e 63 6f 6e 6a 75 6e 63 74 rn.'['...implode($this->conjunct
12d8e0 69 76 65 20 3f 20 27 20 27 20 3a 20 27 20 7c 7c 20 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 ive.?.'.'.:.'.||.',.$constraints
12d900 29 20 2e 20 27 5d 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 )...']';.}.}.<?php...........nam
12d920 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 65 20 43 6f 6d espace.Composer\Semver;..use.Com
12d940 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
12d960 6e 74 3b 0a 0a 63 6c 61 73 73 20 53 65 6d 76 65 72 0a 7b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 41 nt;..class.Semver.{.const.SORT_A
12d980 53 43 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 44 45 53 43 20 3d 20 2d 31 3b 0a 0a 0a SC.=.1;.const.SORT_DESC.=.-1;...
12d9a0 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a private.static.$versionParser;..
12d9c0 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
12d9e0 61 74 69 73 66 69 65 73 28 24 76 65 72 73 69 6f 6e 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 atisfies($version,.$constraints)
12da00 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 73 65 6c 66 3a 3a 24 76 65 72 73 69 6f 6e 50 61 .{.if.(null.===.self::$versionPa
12da20 72 73 65 72 29 20 7b 0a 73 65 6c 66 3a 3a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e rser).{.self::$versionParser.=.n
12da40 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 7d 0a 0a 24 76 65 72 73 69 6f 6e 50 ew.VersionParser();.}..$versionP
12da60 61 72 73 65 72 20 3d 20 73 65 6c 66 3a 3a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 24 70 arser.=.self::$versionParser;.$p
12da80 72 6f 76 69 64 65 72 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 rovider.=.new.Constraint('==',.$
12daa0 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 76 65 72 73 69 6f versionParser->normalize($versio
12dac0 6e 29 29 3b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 n));.$constraints.=.$versionPars
12dae0 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
12db00 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 2d 3e 6d 61 74 63 68 65 s);..return.$constraints->matche
12db20 73 28 24 70 72 6f 76 69 64 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 s($provider);.}..........public.
12db40 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 61 74 69 73 66 69 65 64 42 79 28 61 72 72 61 static.function.satisfiedBy(arra
12db60 79 20 24 76 65 72 73 69 6f 6e 73 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 0a 7b 0a 24 76 65 y.$versions,.$constraints).{.$ve
12db80 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 76 65 72 73 69 6f 6e 73 2c rsions.=.array_filter($versions,
12dba0 20 66 75 6e 63 74 69 6f 6e 20 28 24 76 65 72 73 69 6f 6e 29 20 75 73 65 20 28 24 63 6f 6e 73 74 .function.($version).use.($const
12dbc0 72 61 69 6e 74 73 29 20 7b 0a 72 65 74 75 72 6e 20 53 65 6d 76 65 72 3a 3a 73 61 74 69 73 66 69 raints).{.return.Semver::satisfi
12dbe0 65 73 28 24 76 65 72 73 69 6f 6e 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 3b 0a 7d 29 3b 0a es($version,.$constraints);.});.
12dc00 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 76 65 72 73 69 6f 6e 73 29 3b .return.array_values($versions);
12dc20 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
12dc40 6e 20 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 n.sort(array.$versions).{.return
12dc60 20 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 .self::usort($versions,.self::SO
12dc80 52 54 5f 41 53 43 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 RT_ASC);.}.........public.static
12dca0 20 66 75 6e 63 74 69 6f 6e 20 72 73 6f 72 74 28 61 72 72 61 79 20 24 76 65 72 73 69 6f 6e 73 29 .function.rsort(array.$versions)
12dcc0 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 75 73 6f 72 74 28 24 76 65 72 73 69 6f 6e 73 2c .{.return.self::usort($versions,
12dce0 20 73 65 6c 66 3a 3a 53 4f 52 54 5f 44 45 53 43 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 .self::SORT_DESC);.}........priv
12dd00 61 74 65 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 73 6f 72 74 28 61 72 72 61 79 20 ate.static.function.usort(array.
12dd20 24 76 65 72 73 69 6f 6e 73 2c 20 24 64 69 72 65 63 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 6e 75 6c $versions,.$direction).{.if.(nul
12dd40 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
12dd60 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
12dd80 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
12dda0 6c 66 3a 3a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 24 6e 6f 72 6d 61 6c 69 7a 65 64 20 lf::$versionParser;.$normalized.
12ddc0 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 24 76 65 72 73 69 6f =.array();......foreach.($versio
12dde0 6e 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 6e 6f 72 6d 61 ns.as.$key.=>.$version).{.$norma
12de00 6c 69 7a 65 64 5b 5d 20 3d 20 61 72 72 61 79 28 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e lized[].=.array($versionParser->
12de20 6e 6f 72 6d 61 6c 69 7a 65 28 24 76 65 72 73 69 6f 6e 29 2c 20 24 6b 65 79 29 3b 0a 7d 0a 0a 75 normalize($version),.$key);.}..u
12de40 73 6f 72 74 28 24 6e 6f 72 6d 61 6c 69 7a 65 64 2c 20 66 75 6e 63 74 69 6f 6e 20 28 61 72 72 61 sort($normalized,.function.(arra
12de60 79 20 24 6c 65 66 74 2c 20 61 72 72 61 79 20 24 72 69 67 68 74 29 20 75 73 65 20 28 24 64 69 72 y.$left,.array.$right).use.($dir
12de80 65 63 74 69 6f 6e 29 20 7b 0a 69 66 20 28 24 6c 65 66 74 5b 30 5d 20 3d 3d 3d 20 24 72 69 67 68 ection).{.if.($left[0].===.$righ
12dea0 74 5b 30 5d 29 20 7b 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 69 66 20 28 43 6f 6d 70 61 72 61 t[0]).{.return.0;.}..if.(Compara
12dec0 74 6f 72 3a 3a 6c 65 73 73 54 68 61 6e 28 24 6c 65 66 74 5b 30 5d 2c 20 24 72 69 67 68 74 5b 30 tor::lessThan($left[0],.$right[0
12dee0 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 2d 24 64 69 72 65 63 74 69 6f 6e 3b 0a 7d 0a 0a 72 65 74 ])).{.return.-$direction;.}..ret
12df00 75 72 6e 20 24 64 69 72 65 63 74 69 6f 6e 3b 0a 7d 29 3b 0a 0a 0a 20 24 73 6f 72 74 65 64 20 3d urn.$direction;.});....$sorted.=
12df20 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6e 6f 72 6d 61 6c 69 7a 65 64 20 61 .array();.foreach.($normalized.a
12df40 73 20 24 69 74 65 6d 29 20 7b 0a 24 73 6f 72 74 65 64 5b 5d 20 3d 20 24 76 65 72 73 69 6f 6e 73 s.$item).{.$sorted[].=.$versions
12df60 5b 24 69 74 65 6d 5b 31 5d 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 6f 72 74 65 64 3b 0a 7d [$item[1]];.}..return.$sorted;.}
12df80 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
12dfa0 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
12dfc0 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
12dfe0 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 61 69 6e e;.use.Composer\Semver\Constrain
12e000 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 73 65 72 5c t\EmptyConstraint;.use.Composer\
12e020 53 65 6d 76 65 72 5c 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 Semver\Constraint\MultiConstrain
12e040 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 72 61 69 6e t;.use.Composer\Semver\Constrain
12e060 74 5c 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 65 72 73 69 6f t\Constraint;.......class.Versio
12e080 6e 50 61 72 73 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 nParser.{..............private.s
12e0a0 74 61 74 69 63 20 24 6d 6f 64 69 66 69 65 72 52 65 67 65 78 20 3d 20 27 5b 2e 5f 2d 5d 3f 28 3f tatic.$modifierRegex.=.'[._-]?(?
12e0c0 3a 28 73 74 61 62 6c 65 7c 62 65 74 61 7c 62 7c 52 43 7c 61 6c 70 68 61 7c 61 7c 70 61 74 63 68 :(stable|beta|b|RC|alpha|a|patch
12e0e0 7c 70 6c 7c 70 29 28 28 3f 3a 5b 2e 2d 5d 3f 5c 64 2b 29 2a 2b 29 3f 29 3f 28 5b 2e 2d 5d 3f 64 |pl|p)((?:[.-]?\d+)*+)?)?([.-]?d
12e100 65 76 29 3f 27 3b 0a 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 73 74 61 62 69 6c 69 ev)?';...private.static.$stabili
12e120 74 69 65 73 20 3d 20 61 72 72 61 79 28 27 73 74 61 62 6c 65 27 2c 20 27 52 43 27 2c 20 27 62 65 ties.=.array('stable',.'RC',.'be
12e140 74 61 27 2c 20 27 61 6c 70 68 61 27 2c 20 27 64 65 76 27 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 ta',.'alpha',.'dev');.........pu
12e160 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 53 74 61 62 69 6c blic.static.function.parseStabil
12e180 69 74 79 28 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f ity($version).{.$version.=.preg_
12e1a0 72 65 70 6c 61 63 65 28 27 7b 23 2e 2b 24 7d 69 27 2c 20 27 27 2c 20 24 76 65 72 73 69 6f 6e 29 replace('{#.+$}i',.'',.$version)
12e1c0 3b 0a 0a 69 66 20 28 27 64 65 76 2d 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 76 65 72 73 69 6f ;..if.('dev-'.===.substr($versio
12e1e0 6e 2c 20 30 2c 20 34 29 20 7c 7c 20 27 2d 64 65 76 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 76 n,.0,.4).||.'-dev'.===.substr($v
12e200 65 72 73 69 6f 6e 2c 20 2d 34 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 64 65 76 27 3b 0a 7d 0a 0a ersion,.-4)).{.return.'dev';.}..
12e220 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 27 20 2e 20 73 65 6c 66 3a 3a 24 6d 6f 64 69 66 69 65 72 preg_match('{'...self::$modifier
12e240 52 65 67 65 78 20 2e 20 27 24 7d 69 27 2c 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 76 65 72 73 69 Regex...'$}i',.strtolower($versi
12e260 6f 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 on),.$match);.if.(!empty($match[
12e280 33 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 3])).{.return.'dev';.}..if.(!emp
12e2a0 74 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 ty($match[1])).{.if.('beta'.===.
12e2c0 24 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 $match[1].||.'b'.===.$match[1]).
12e2e0 7b 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 {.return.'beta';.}.if.('alpha'.=
12e300 3d 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 ==.$match[1].||.'a'.===.$match[1
12e320 5d 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 ]).{.return.'alpha';.}.if.('rc'.
12e340 3d 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 ===.$match[1]).{.return.'RC';.}.
12e360 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 70 75 62 6c }..return.'stable';.}.......publ
12e380 69 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 ic.static.function.normalizeStab
12e3a0 69 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 ility($stability).{.$stability.=
12e3c0 20 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 .strtolower($stability);..return
12e3e0 20 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 .$stability.===.'rc'.?.'RC'.:.$s
12e400 74 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 tability;.}............public.fu
12e420 6e 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 nction.normalize($version,.$full
12e440 56 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 Version.=.null).{.$version.=.tri
12e460 6d 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 m($version);.if.(null.===.$fullV
12e480 65 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 ersion).{.$fullVersion.=.$versio
12e4a0 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 5e 28 5b 5e 2c 5c 73 n;.}....if.(preg_match('{^([^,\s
12e4c0 5d 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 ]++).++as.++([^,\s]++)$}',.$vers
12e4e0 69 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 ion,.$match)).{.$version.=.$matc
12e500 68 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 h[1];.}....if.(preg_match('{^([^
12e520 2c 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 ,\s+]++)\+[^\s]++$}',.$version,.
12e540 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 5b 31 5d 3b $match)).{.$version.=.$match[1];
12e560 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 3f 3a 64 65 76 2d 29 .}....if.(preg_match('{^(?:dev-)
12e580 3f 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 ?(?:master|trunk|default)$}i',.$
12e5a0 76 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 version)).{.return.'9999999-dev'
12e5c0 3b 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 ;.}..if.('dev-'.===.strtolower(s
12e5e0 75 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 ubstr($version,.0,.4))).{.return
12e600 20 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 .'dev-'...substr($version,.4);.}
12e620 0a 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 ....if.(preg_match('{^v?(\d{1,5}
12e640 29 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 )(\.\d++)?(\.\d++)?(\.\d++)?'...
12e660 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 7d 69 27 2c 20 24 76 self::$modifierRegex...'$}i',.$v
12e680 65 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 ersion,.$matches)).{.$version.=.
12e6a0 24 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 $matches[1]...(!empty($matches[2
12e6c0 5d 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 ]).?.$matches[2].:.'.0')...(!emp
12e6e0 74 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 ty($matches[3]).?.$matches[3].:.
12e700 27 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 '.0')...(!empty($matches[4]).?.$
12e720 6d 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 matches[4].:.'.0');.$index.=.5;.
12e740 0a 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 ..}.elseif.(preg_match('{^v?(\d{
12e760 34 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 4}(?:[.:-]?\d{2}){1,6}(?:[.:-]?\
12e780 64 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 d{1,3})?)'...self::$modifierRege
12e7a0 78 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 x...'$}i',.$version,.$matches)).
12e7c0 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 5c 44 7d 27 {.$version.=.preg_replace('{\D}'
12e7e0 2c 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 ,.'.',.$matches[1]);.$index.=.2;
12e800 0a 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 .}....if.(isset($index)).{.if.(!
12e820 65 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 empty($matches[$index])).{.if.('
12e840 73 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 stable'.===.$matches[$index]).{.
12e860 72 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 return.$version;.}.$version..=.'
12e880 2d 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 -'...$this->expandStability($mat
12e8a0 63 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 ches[$index])...(!empty($matches
12e8c0 5b 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 [$index.+.1]).?.ltrim($matches[$
12e8e0 69 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 index.+.1],.'.-').:.'');.}..if.(
12e900 21 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 !empty($matches[$index.+.2])).{.
12e920 24 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 $version..=.'-dev';.}..return.$v
12e940 65 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 ersion;.}....if.(preg_match('{(.
12e960 2a 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 *?)[.-]?dev$}i',.$version,.$matc
12e980 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 6e 6f 72 6d 61 6c h)).{.try.{.return.$this->normal
12e9a0 69 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 izeBranch($match[1]);.}.catch.(\
12e9c0 45 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 Exception.$e).{.}.}..$extraMessa
12e9e0 67 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 ge.=.'';.if.(preg_match('{.+as.+
12ea00 27 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 '...preg_quote($version)...'$}',
12ea20 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.
12ea40 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
12ea60 68 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 he.alias.must.be.an.exact.versio
12ea80 6e 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 n';.}.elseif.(preg_match('{^'...
12eaa0 70 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 preg_quote($version)...'.+as.+}'
12eac0 2c 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 ,.$fullVersion)).{.$extraMessage
12eae0 20 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 .=.'.in."'...$fullVersion...'",.
12eb00 74 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 the.alias.source.must.be.an.exac
12eb20 74 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 t.version,.if.it.is.a.branch.nam
12eb40 65 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 e.you.should.prefix.it.with.dev-
12eb60 27 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 ';.}..throw.new.\UnexpectedValue
12eb80 45 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 Exception('Invalid.version.strin
12eba0 67 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 g."'...$version...'"'...$extraMe
12ebc0 73 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 ssage);.}.........public.functio
12ebe0 6e 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 n.parseNumericAliasPrefix($branc
12ec00 68 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 h).{.if.(preg_match('{^(?P<versi
12ec20 6f 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 on>(\d++\\.)*\d++)(?:\.x)?-dev$}
12ec40 69 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 i',.$branch,.$matches)).{.return
12ec60 20 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 .$matches['version']...'.';.}..r
12ec80 65 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 eturn.false;.}.........public.fu
12eca0 6e 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 nction.normalizeBranch($name).{.
12ecc0 24 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 $name.=.trim($name);..if.(in_arr
12ece0 61 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 ay($name,.array('master',.'trunk
12ed00 27 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 ',.'default'))).{.return.$this->
12ed20 6e 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 normalize($name);.}..if.(preg_ma
12ed40 74 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 tch('{^v?(\d++)(\.(?:\d++|[xX*])
12ed60 29 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 )?(\.(?:\d++|[xX*]))?(\.(?:\d++|
12ed80 5b 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 [xX*]))?$}i',.$name,.$matches)).
12eda0 7b 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 {.$version.=.'';.for.($i.=.1;.$i
12edc0 20 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 .<.5;.++$i).{.$version..=.isset(
12ede0 24 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 $matches[$i]).?.str_replace(arra
12ee00 79 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 y('*',.'X'),.'x',.$matches[$i]).
12ee20 3a 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 :.'.x';.}..return.str_replace('x
12ee40 27 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 ',.'9999999',.$version)...'-dev'
12ee60 3b 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 ;.}..return.'dev-'...$name;.}...
12ee80 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 43 6f 6e 73 74 ......public.function.parseConst
12eea0 72 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 raints($constraints).{.$prettyCo
12eec0 6e 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 nstraint.=.$constraints;..if.(pr
12eee0 65 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 eg_match('{^([^,\s]*?)@('...impl
12ef00 6f 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 ode('|',.self::$stabilities)...'
12ef20 29 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 )$}i',.$constraints,.$match)).{.
12ef40 24 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 $constraints.=.empty($match[1]).
12ef60 3f 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 ?.'*'.:.$match[1];.}..if.(preg_m
12ef80 61 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 atch('{^(dev-[^,\s@]+?|[^,\s@]+?
12efa0 5c 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 \.x-dev)#.+$}i',.$constraints,.$
12efc0 6d 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 match)).{.$constraints.=.$match[
12efe0 31 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 1];.}..$orConstraints.=.preg_spl
12f000 69 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 it('{\s*\|\|?\s*}',.trim($constr
12f020 61 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 aints));.$orGroups.=.array();.fo
12f040 72 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 reach.($orConstraints.as.$constr
12f060 61 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 aints).{.$andConstraints.=.preg_
12f080 73 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 split('{(?<!^|as|[=><.,]).*(?<!-
12f0a0 29 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 )[,.](?!-).*(?!,|as|$)}',.$const
12f0c0 72 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 raints);.if.(count($andConstrain
12f0e0 74 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 ts).>.1).{.$constraintObjects.=.
12f100 61 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 array();.foreach.($andConstraint
12f120 73 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 s.as.$constraint).{.foreach.($th
12f140 69 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 is->parseConstraint($constraint)
12f160 20 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 .as.$parsedConstraint).{.$constr
12f180 61 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 aintObjects[].=.$parsedConstrain
12f1a0 74 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 t;.}.}.}.else.{.$constraintObjec
12f1c0 74 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 ts.=.$this->parseConstraint($and
12f1e0 43 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 Constraints[0]);.}..if.(1.===.co
12f200 75 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 unt($constraintObjects)).{.$cons
12f220 74 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 traint.=.$constraintObjects[0];.
12f240 7d 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 }.else.{.$constraint.=.new.Multi
12f260 43 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 Constraint($constraintObjects);.
12f280 7d 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 }..$orGroups[].=.$constraint;.}.
12f2a0 0a 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 .if.(1.===.count($orGroups)).{.$
12f2c0 63 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 constraint.=.$orGroups[0];.}.els
12f2e0 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 6f 6e 73 74 e.{.$constraint.=.new.MultiConst
12f300 72 61 69 6e 74 28 24 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 raint($orGroups,.false);.}..$con
12f320 73 74 72 61 69 6e 74 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 straint->setPrettyString($pretty
12f340 43 6f 6e 73 74 72 61 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 Constraint);..return.$constraint
12f360 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 70 61 72 ;.}.........private.function.par
12f380 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 0a 7b 0a 69 66 20 28 seConstraint($constraint).{.if.(
12f3a0 70 72 65 67 5f 6d 61 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 preg_match('{^([^,\s]+?)@('...im
12f3c0 70 6c 6f 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 plode('|',.self::$stabilities)..
12f3e0 20 27 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 .')$}i',.$constraint,.$match)).{
12f400 0a 24 63 6f 6e 73 74 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 .$constraint.=.$match[1];.if.($m
12f420 61 74 63 68 5b 32 5d 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 atch[2].!==.'stable').{.$stabili
12f440 74 79 4d 6f 64 69 66 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 tyModifier.=.$match[2];.}.}..if.
12f460 28 70 72 65 67 5f 6d 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 (preg_match('{^v?[xX*](\.[xX*])*
12f480 24 7d 69 27 2c 20 24 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 $}i',.$constraint)).{.return.arr
12f4a0 61 79 28 6e 65 77 20 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 ay(new.EmptyConstraint());.}..$v
12f4c0 65 72 73 69 6f 6e 52 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 ersionRegex.=.'v?(\d++)(?:\.(\d+
12f4e0 2b 29 29 3f 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 27 20 +))?(?:\.(\d++))?(?:\.(\d++))?'.
12f500 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 3f 3a 5c 2b 5b ..self::$modifierRegex...'(?:\+[
12f520 5e 5c 73 5d 2b 29 3f 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 ^\s]+)?';............if.(preg_ma
12f540 74 63 68 28 27 7b 5e 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 tch('{^~>?'...$versionRegex...'$
12f560 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 29 29 20 7b 0a 69 }i',.$constraint,.$matches)).{.i
12f580 66 20 28 73 75 62 73 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 f.(substr($constraint,.0,.2).===
12f5a0 20 27 7e 3e 27 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 .'~>').{.throw.new.\UnexpectedVa
12f5c0 6c 75 65 45 78 63 65 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 lueException(.'Could.not.parse.v
12f5e0 65 72 73 69 6f 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 ersion.constraint.'...$constrain
12f600 74 20 2e 20 27 3a 20 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 t...':.'...'Invalid.operator."~>
12f620 22 2c 20 79 6f 75 20 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 ",.you.probably.meant.to.use.the
12f640 20 22 7e 22 20 6f 70 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 ."~".operator'.);.}....if.(isset
12f660 28 24 6d 61 74 63 68 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 ($matches[4]).&&.''.!==.$matches
12f680 5b 34 5d 29 20 7b 0a 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 [4]).{.$position.=.4;.}.elseif.(
12f6a0 69 73 73 65 74 28 24 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 isset($matches[3]).&&.''.!==.$ma
12f6c0 74 63 68 65 73 5b 33 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 tches[3]).{.$position.=.3;.}.els
12f6e0 65 69 66 20 28 69 73 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 eif.(isset($matches[2]).&&.''.!=
12f700 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 6e 20 3d 20 32 3b 0a =.$matches[2]).{.$position.=.2;.
12f720 7d 20 65 6c 73 65 20 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 }.else.{.$position.=.1;.}....$st
12f740 61 62 69 6c 69 74 79 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 abilitySuffix.=.'';.if.(!empty($
12f760 6d 61 74 63 68 65 73 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 matches[5])).{.$stabilitySuffix.
12f780 2e 3d 20 27 2d 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 .=.'-'...$this->expandStability(
12f7a0 24 6d 61 74 63 68 65 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 $matches[5])...(!empty($matches[
12f7c0 36 5d 29 20 3f 20 24 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 6]).?.$matches[6].:.'');.}..if.(
12f7e0 21 65 6d 70 74 79 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 !empty($matches[7])).{.$stabilit
12f800 79 53 75 66 66 69 78 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 ySuffix..=.'-dev';.}..if.(!$stab
12f820 69 6c 69 74 79 53 75 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 ilitySuffix).{.$stabilitySuffix.
12f840 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 68 69 73 =.'-dev';.}..$lowVersion.=.$this
12f860 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 6d 61 74 63 68 ->manipulateVersionString($match
12f880 65 73 2c 20 24 70 6f 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 es,.$position,.0)...$stabilitySu
12f8a0 66 66 69 78 3b 0a 24 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 ffix;.$lowerBound.=.new.Constrai
12f8c0 6e 74 28 27 3e 3d 27 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 nt('>=',.$lowVersion);......$hig
12f8e0 68 50 6f 73 69 74 69 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 hPosition.=.max(1,.$position.-.1
12f900 29 3b 0a 24 68 69 67 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 );.$highVersion.=.$this->manipul
12f920 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 68 69 67 68 ateVersionString($matches,.$high
12f940 50 6f 73 69 74 69 6f 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 Position,.1)...'-dev';.$upperBou
12f960 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 67 68 56 65 nd.=.new.Constraint('<',.$highVe
12f980 72 73 69 6f 6e 29 3b 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 rsion);..return.array(.$lowerBou
12f9a0 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 0a 20 0a 20 0a 20 0a nd,.$upperBound,.);.}...........
12f9c0 20 69 66 20 28 70 72 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 .if.(preg_match('{^\^'...$versio
12f9e0 6e 52 65 67 65 78 20 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 nRegex...'($)}i',.$constraint,.$
12fa00 6d 61 74 63 68 65 73 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 matches)).{...if.('0'.!==.$match
12fa20 65 73 5b 31 5d 20 7c 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 es[1].||.''.===.$matches[2]).{.$
12fa40 70 6f 73 69 74 69 6f 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 position.=.1;.}.elseif.('0'.!==.
12fa60 24 6d 61 74 63 68 65 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 $matches[2].||.''.===.$matches[3
12fa80 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 7b 0a 24 70 6f ]).{.$position.=.2;.}.else.{.$po
12faa0 73 69 74 69 6f 6e 20 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 sition.=.3;.}....$stabilitySuffi
12fac0 78 20 3d 20 27 27 3b 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 x.=.'';.if.(empty($matches[5]).&
12fae0 26 20 65 6d 70 74 79 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 &.empty($matches[7])).{.$stabili
12fb00 74 79 53 75 66 66 69 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 tySuffix..=.'-dev';.}..$lowVersi
12fb20 6f 6e 20 3d 20 24 74 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 on.=.$this->normalize(substr($co
12fb40 6e 73 74 72 61 69 6e 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 nstraint...$stabilitySuffix,.1))
12fb60 3b 0a 24 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 ;.$lowerBound.=.new.Constraint('
12fb80 3e 3d 27 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 56 65 72 >=',.$lowVersion);......$highVer
12fba0 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 69 6f 6e 53 sion.=.$this->manipulateVersionS
12fbc0 74 72 69 6e 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 tring($matches,.$position,.1)...
12fbe0 27 2d 64 65 76 27 3b 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 '-dev';.$upperBound.=.new.Constr
12fc00 61 69 6e 74 28 27 3c 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 aint('<',.$highVersion);..return
12fc20 20 61 72 72 61 79 28 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 .array(.$lowerBound,.$upperBound
12fc40 2c 0a 29 3b 0a 7d 0a 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 ,.);.}..........if.(preg_match('
12fc60 7b 5e 76 3f 28 5c 64 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 {^v?(\d++)(?:\.(\d++))?(?:\.(\d+
12fc80 2b 29 29 3f 28 3f 3a 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 +))?(?:\.[xX*])++$}',.$constrain
12fca0 74 2c 20 24 6d 61 74 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 t,.$matches)).{.if.(isset($match
12fcc0 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 5d 29 20 7b 0a es[3]).&&.''.!==.$matches[3]).{.
12fce0 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 73 65 74 28 24 $position.=.3;.}.elseif.(isset($
12fd00 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 68 65 73 5b 32 matches[2]).&&.''.!==.$matches[2
12fd20 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 7b 0a 24 70 6f ]).{.$position.=.2;.}.else.{.$po
12fd40 73 69 74 69 6f 6e 20 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 sition.=.1;.}..$lowVersion.=.$th
12fd60 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 6d 61 74 is->manipulateVersionString($mat
12fd80 63 68 65 73 2c 20 24 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 ches,.$position)...'-dev';.$high
12fda0 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 69 Version.=.$this->manipulateVersi
12fdc0 6f 6e 53 74 72 69 6e 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 onString($matches,.$position,.1)
12fde0 20 2e 20 27 2d 64 65 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 ...'-dev';..if.($lowVersion.===.
12fe00 27 30 2e 30 2e 30 2e 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 '0.0.0.0-dev').{.return.array(ne
12fe20 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 29 w.Constraint('<',.$highVersion))
12fe40 3b 0a 7d 0a 0a 72 65 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 ;.}..return.array(.new.Constrain
12fe60 74 28 27 3e 3d 27 2c 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 t('>=',.$lowVersion),.new.Constr
12fe80 61 69 6e 74 28 27 3c 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 aint('<',.$highVersion),.);.}...
12fea0 20 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 28 3f 50 ...........if.(preg_match('{^(?P
12fec0 3c 66 72 6f 6d 3e 27 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 <from>'...$versionRegex...').+-.
12fee0 2b 28 3f 50 3c 74 6f 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 +(?P<to>'...$versionRegex...')($
12ff00 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 29 29 20 7b 0a )}i',.$constraint,.$matches)).{.
12ff20 0a 20 24 6c 6f 77 53 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 ..$lowStabilitySuffix.=.'';.if.(
12ff40 65 6d 70 74 79 28 24 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 empty($matches[6]).&&.empty($mat
12ff60 63 68 65 73 5b 38 5d 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 ches[8])).{.$lowStabilitySuffix.
12ff80 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 68 69 73 =.'-dev';.}..$lowVersion.=.$this
12ffa0 2d 3e 6e 6f 72 6d 61 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 ->normalize($matches['from']);.$
12ffc0 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('>='
12ffe0 2c 20 24 6c 6f 77 56 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 ,.$lowVersion...$lowStabilitySuf
130000 66 69 78 29 3b 0a 0a 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 fix);..$empty.=.function.($x).{.
130020 72 65 74 75 72 6e 20 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 return.($x.===.0.||.$x.===.'0').
130040 3f 20 66 61 6c 73 65 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 ?.false.:.empty($x);.};..if.((!$
130060 65 6d 70 74 79 28 24 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 empty($matches[11]).&&.!$empty($
130080 6d 61 74 63 68 65 73 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 matches[12])).||.!empty($matches
1300a0 5b 31 34 5d 29 20 7c 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 [14]).||.!empty($matches[16])).{
1300c0 0a 24 68 69 67 68 56 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 .$highVersion.=.$this->normalize
1300e0 28 24 6d 61 74 63 68 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 ($matches['to']);.$upperBound.=.
130100 6e 65 77 20 43 6f 6e 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 new.Constraint('<=',.$highVersio
130120 6e 29 3b 0a 7d 20 65 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 n);.}.else.{.$highMatch.=.array(
130140 27 27 2c 20 24 6d 61 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 '',.$matches[10],.$matches[11],.
130160 24 6d 61 74 63 68 65 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 $matches[12],.$matches[13]);.$hi
130180 67 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 ghVersion.=.$this->manipulateVer
1301a0 73 69 6f 6e 53 74 72 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 sionString($highMatch,.$empty($m
1301c0 61 74 63 68 65 73 5b 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 atches[11]).?.1.:.2,.1)...'-dev'
1301e0 3b 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 ;.$upperBound.=.new.Constraint('
130200 3c 27 2c 20 24 68 69 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 <',.$highVersion);.}..return.arr
130220 61 79 28 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 ay(.$lowerBound,.$upperBound,.);
130240 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 3c 3e 7c 21 3d 7c 3e .}....if.(preg_match('{^(<>|!=|>
130260 3d 3f 7c 3c 3d 3f 7c 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 =?|<=?|==?)?\s*(.*)}',.$constrai
130280 6e 74 2c 20 24 6d 61 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 nt,.$matches)).{.try.{.$version.
1302a0 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 65 73 5b 32 5d 29 3b =.$this->normalize($matches[2]);
1302c0 0a 0a 69 66 20 28 21 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 ..if.(!empty($stabilityModifier)
1302e0 20 26 26 20 24 74 68 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 .&&.$this->parseStability($versi
130300 6f 6e 29 20 3d 3d 3d 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 on).===.'stable').{.$version..=.
130320 27 2d 27 20 2e 20 24 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 '-'...$stabilityModifier;.}.else
130340 69 66 20 28 27 3c 27 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 if.('<'.===.$matches[1].||.'>='.
130360 3d 3d 3d 20 24 6d 61 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 ===.$matches[1]).{.if.(!preg_mat
130380 63 68 28 27 2f 2d 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 ch('/-'...self::$modifierRegex..
1303a0 20 27 24 2f 27 2c 20 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 .'$/',.strtolower($matches[2])))
1303c0 20 7b 0a 69 66 20 28 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 .{.if.(substr($matches[2],.0,.4)
1303e0 20 21 3d 3d 20 27 64 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 .!==.'dev-').{.$version..=.'-dev
130400 27 3b 0a 7d 0a 7d 0a 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 ';.}.}.}..return.array(new.Const
130420 72 61 69 6e 74 28 24 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 raint($matches[1].?:.'=',.$versi
130440 6f 6e 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 on));.}.catch.(\Exception.$e).{.
130460 7d 0a 7d 0a 0a 24 6d 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 }.}..$message.=.'Could.not.parse
130480 20 76 65 72 73 69 6f 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 .version.constraint.'...$constra
1304a0 69 6e 74 3b 0a 69 66 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 int;.if.(isset($e)).{.$message..
1304c0 3d 20 27 3a 20 27 20 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 =.':.'...$e->getMessage();.}..th
1304e0 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
130500 6e 28 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 0a 70 72 69 76 n($message);.}..............priv
130520 61 74 65 20 66 75 6e 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 ate.function.manipulateVersionSt
130540 72 69 6e 67 28 24 6d 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 ring($matches,.$position,.$incre
130560 6d 65 6e 74 20 3d 20 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 ment.=.0,.$pad.=.'0').{.for.($i.
130580 3d 20 34 3b 20 24 69 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 =.4;.$i.>.0;.--$i).{.if.($i.>.$p
1305a0 6f 73 69 74 69 6f 6e 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 osition).{.$matches[$i].=.$pad;.
1305c0 7d 20 65 6c 73 65 69 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 }.elseif.($i.===.$position.&&.$i
1305e0 6e 63 72 65 6d 65 6e 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 ncrement).{.$matches[$i].+=.$inc
130600 72 65 6d 65 6e 74 3b 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 rement;...if.($matches[$i].<.0).
130620 7b 0a 24 6d 61 74 63 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 {.$matches[$i].=.$pad;.--$positi
130640 6f 6e 3b 0a 0a 0a 20 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 on;....if.($i.===.1).{.return;.}
130660 0a 7d 0a 7d 0a 7d 0a 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 .}.}.}..return.$matches[1]...'.'
130680 20 2e 20 24 6d 61 74 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 ...$matches[2]...'.'...$matches[
1306a0 33 5d 20 2e 20 27 2e 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 3]...'.'...$matches[4];.}.......
1306c0 0a 0a 70 72 69 76 61 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 ..private.function.expandStabili
1306e0 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 73 74 ty($stability).{.$stability.=.st
130700 72 74 6f 6c 6f 77 65 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 rtolower($stability);..switch.($
130720 73 74 61 62 69 6c 69 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 stability).{.case.'a':.return.'a
130740 6c 70 68 61 27 3b 0a 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 lpha';.case.'b':.return.'beta';.
130760 63 61 73 65 20 27 70 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 case.'p':.case.'pl':.return.'pat
130780 63 68 27 3b 0a 63 61 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 ch';.case.'rc':.return.'RC';.def
1307a0 61 75 6c 74 3a 0a 72 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 ault:.return.$stability;.}.}.}.<
1307c0 3f 70 68 70 0a 0a 0a 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 ?php....require_once.__DIR__...'
1307e0 2f 63 6f 6d 70 6f 73 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 /composer'...'/autoload_real.php
130800 27 3b 0a 0a 72 65 74 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 ';..return.ComposerAutoloaderIni
130820 74 43 6f 6d 70 6f 73 65 72 50 68 61 72 31 34 35 33 31 32 30 31 35 34 3a 3a 67 65 74 4c 6f 61 64 tComposerPhar1453120154::getLoad
130840 65 72 28 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 er();.<?php....$vendorDir.=.dirn
130860 61 6d 65 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 ame(dirname(__FILE__));.$baseDir
130880 20 3d 20 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 .=.dirname($vendorDir);..return.
1308a0 61 72 72 61 79 28 0a 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 array(.);.<?php....$vendorDir.=.
1308c0 64 69 72 6e 61 6d 65 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 dirname(dirname(__FILE__));.$bas
1308e0 65 44 69 72 20 3d 20 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 eDir.=.dirname($vendorDir);..ret
130900 75 72 6e 20 61 72 72 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 urn.array(.'Symfony\\Polyfill\\M
130920 62 73 74 72 69 6e 67 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 bstring\\'.=>.array($vendorDir..
130940 20 27 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 67 27 29 2c 0a .'/symfony/polyfill-mbstring'),.
130960 27 53 79 6d 66 6f 6e 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 'Symfony\\Component\\Process\\'.
130980 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 6e 79 2f =>.array($vendorDir...'/symfony/
1309a0 70 72 6f 63 65 73 73 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 process'),.'Symfony\\Component\\
1309c0 46 69 6e 64 65 72 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 Finder\\'.=>.array($vendorDir...
1309e0 27 2f 73 79 6d 66 6f 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 '/symfony/finder'),.'Symfony\\Co
130a00 6d 70 6f 6e 65 6e 74 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 mponent\\Filesystem\\'.=>.array(
130a20 24 76 65 6e 64 6f 72 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 $vendorDir...'/symfony/filesyste
130a40 6d 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 43 6f 6e 73 6f 6c m'),.'Symfony\\Component\\Consol
130a60 65 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 e\\'.=>.array($vendorDir...'/sym
130a80 66 6f 6e 79 2f 63 6f 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 fony/console'),.'Seld\\PharUtils
130aa0 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 65 6c 64 \\'.=>.array($vendorDir...'/seld
130ac0 2f 70 68 61 72 2d 75 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 /phar-utils/src'),.'Seld\\JsonLi
130ae0 6e 74 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 65 nt\\'.=>.array($vendorDir...'/se
130b00 6c 64 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 27 29 2c ld/jsonlint/src/Seld/JsonLint'),
130b20 0a 27 53 65 6c 64 5c 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 .'Seld\\CliPrompt\\'.=>.array($v
130b40 65 6e 64 6f 72 44 69 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 endorDir...'/seld/cli-prompt/src
130b60 27 29 2c 0a 27 4a 73 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 '),.'JsonSchema\\'.=>.array($ven
130b80 64 6f 72 44 69 72 20 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 dorDir...'/justinrainbow/json-sc
130ba0 68 65 6d 61 2f 73 72 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 hema/src/JsonSchema'),.'Composer
130bc0 5c 5c 53 70 64 78 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 \\Spdx\\'.=>.array($vendorDir...
130be0 27 2f 63 6f 6d 70 6f 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 '/composer/spdx-licenses/src'),.
130c00 27 43 6f 6d 70 6f 73 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 'Composer\\Semver\\'.=>.array($v
130c20 65 6e 64 6f 72 44 69 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 endorDir...'/composer/semver/src
130c40 27 29 2c 0a 27 43 6f 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 '),.'Composer\\'.=>.array($baseD
130c60 69 72 20 2e 20 27 2f 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 ir...'/src/Composer'),.);.<?php.
130c80 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 6e 61 6d 65 28 ...$vendorDir.=.dirname(dirname(
130ca0 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 61 6d 65 28 24 __FILE__));.$baseDir.=.dirname($
130cc0 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 29 3b 0a 3c 3f vendorDir);..return.array(.);.<?
130ce0 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 6e php....$vendorDir.=.dirname(dirn
130d00 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 61 ame(__FILE__));.$baseDir.=.dirna
130d20 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 27 me($vendorDir);..return.array(.'
130d40 30 65 36 64 37 62 66 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 0e6d7bf4a5811bfa5cf40c5ccd6fae6a
130d60 27 20 3d 3e 20 24 76 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 '.=>.$vendorDir...'/symfony/poly
130d80 66 69 6c 6c 2d 6d 62 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 fill-mbstring/bootstrap.php',.);
130da0 0a 3c 3f 70 68 70 0a 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 .<?php....class.ComposerAutoload
130dc0 65 72 49 6e 69 74 43 6f 6d 70 6f 73 65 72 50 68 61 72 31 34 35 33 31 32 30 31 35 34 0a 7b 0a 70 erInitComposerPhar1453120154.{.p
130de0 72 69 76 61 74 65 20 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 rivate.static.$loader;..public.s
130e00 74 61 74 69 63 20 66 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 tatic.function.loadClassLoader($
130e20 63 6c 61 73 73 29 0a 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 class).{.if.('Composer\Autoload\
130e40 43 6c 61 73 73 4c 6f 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 ClassLoader'.===.$class).{.requi
130e60 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 72 2e 70 68 70 27 3b re.__DIR__...'/ClassLoader.php';
130e80 0a 7d 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
130ea0 4c 6f 61 64 65 72 28 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 Loader().{.if.(null.!==.self::$l
130ec0 6f 61 64 65 72 29 20 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 oader).{.return.self::$loader;.}
130ee0 0a 0a 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 43 ..spl_autoload_register(array('C
130f00 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 65 72 50 68 61 omposerAutoloaderInitComposerPha
130f20 72 31 34 35 33 31 32 30 31 35 34 27 2c 20 27 6c 6f 61 64 43 6c 61 73 73 4c 6f 61 64 65 72 27 29 r1453120154',.'loadClassLoader')
130f40 2c 20 74 72 75 65 2c 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 ,.true,.true);.self::$loader.=.$
130f60 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 74 6f 6c 6f 61 64 5c loader.=.new.\Composer\Autoload\
130f80 43 6c 61 73 73 4c 6f 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 ClassLoader();.spl_autoload_unre
130fa0 67 69 73 74 65 72 28 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 gister(array('ComposerAutoloader
130fc0 49 6e 69 74 43 6f 6d 70 6f 73 65 72 50 68 61 72 31 34 35 33 31 32 30 31 35 34 27 2c 20 27 6c 6f InitComposerPhar1453120154',.'lo
130fe0 61 64 43 6c 61 73 73 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 adClassLoader'));..$map.=.requir
131000 65 20 5f 5f 44 49 52 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 e.__DIR__...'/autoload_namespace
131020 73 2e 70 68 70 27 3b 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 s.php';.foreach.($map.as.$namesp
131040 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 73 65 74 28 24 6e 61 ace.=>.$path).{.$loader->set($na
131060 6d 65 73 70 61 63 65 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 mespace,.$path);.}..$map.=.requi
131080 72 65 20 5f 5f 44 49 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 re.__DIR__...'/autoload_psr4.php
1310a0 27 3b 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 ';.foreach.($map.as.$namespace.=
1310c0 3e 20 24 70 61 74 68 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 >.$path).{.$loader->setPsr4($nam
1310e0 65 73 70 61 63 65 2c 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 espace,.$path);.}..$classMap.=.r
131100 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 63 6c 61 73 equire.__DIR__...'/autoload_clas
131120 73 6d 61 70 2e 70 68 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 smap.php';.if.($classMap).{.$loa
131140 64 65 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 7d 0a 0a der->addClassMap($classMap);.}..
131160 24 6c 6f 61 64 65 72 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 $loader->register(true);..$inclu
131180 64 65 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 deFiles.=.require.__DIR__...'/au
1311a0 74 6f 6c 6f 61 64 5f 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 toload_files.php';.foreach.($inc
1311c0 6c 75 64 65 46 69 6c 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 ludeFiles.as.$fileIdentifier.=>.
1311e0 24 66 69 6c 65 29 20 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 $file).{.composerRequireComposer
131200 50 68 61 72 31 34 35 33 31 32 30 31 35 34 28 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 2c 20 Phar1453120154($fileIdentifier,.
131220 24 66 69 6c 65 29 3b 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 $file);.}..return.$loader;.}.}..
131240 66 75 6e 63 74 69 6f 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 function.composerRequireComposer
131260 50 68 61 72 31 34 35 33 31 32 30 31 35 34 28 24 66 69 6c 65 49 64 65 6e 74 69 66 69 65 72 2c 20 Phar1453120154($fileIdentifier,.
131280 24 66 69 6c 65 29 0a 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 $file).{.if.(empty($GLOBALS['__c
1312a0 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 6c 65 49 64 omposer_autoload_files'][$fileId
1312c0 65 6e 74 69 66 69 65 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 entifier])).{.require.$file;..$G
1312e0 4c 4f 42 41 4c 53 5b 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 LOBALS['__composer_autoload_file
131300 73 27 5d 5b 24 66 69 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 s'][$fileIdentifier].=.true;.}.}
131320 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
131340 6f 73 65 72 5c 41 75 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 oser\Autoload;..................
131360 0a 0a 0a 0a 0a 0a 0a 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 ............class.ClassLoader.{.
131380 0a 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 72 34 20 3d 20 61 ..private.$prefixLengthsPsr4.=.a
1313a0 72 72 61 79 28 29 3b 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 rray();.private.$prefixDirsPsr4.
1313c0 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 72 73 =.array();.private.$fallbackDirs
1313e0 50 73 72 34 20 3d 20 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 Psr4.=.array();....private.$pref
131400 69 78 65 73 50 73 72 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 ixesPsr0.=.array();.private.$fal
131420 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 70 72 69 76 61 74 lbackDirsPsr0.=.array();..privat
131440 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 70 72 69 76 61 e.$useIncludePath.=.false;.priva
131460 74 65 20 24 63 6c 61 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 te.$classMap.=.array();..private
131480 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 66 61 6c 73 65 3b .$classMapAuthoritative.=.false;
1314a0 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 69 78 65 73 28 29 0a ..public.function.getPrefixes().
1314c0 7b 0a 69 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 {.if.(!empty($this->prefixesPsr0
1314e0 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 5f 61 72 72 61 79 )).{.return.call_user_func_array
131500 28 27 61 72 72 61 79 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 ('array_merge',.$this->prefixesP
131520 73 72 30 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 75 62 6c sr0);.}..return.array();.}..publ
131540 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 7b 0a ic.function.getPrefixesPsr4().{.
131560 72 65 74 75 72 6e 20 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 return.$this->prefixDirsPsr4;.}.
131580 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
1315a0 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 69 72 73 50 ().{.return.$this->fallbackDirsP
1315c0 73 72 30 3b 0a 7d 0a 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 sr0;.}..public.function.getFallb
1315e0 61 63 6b 44 69 72 73 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 ackDirsPsr4().{.return.$this->fa
131600 6c 6c 62 61 63 6b 44 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 llbackDirsPsr4;.}..public.functi
131620 6f 6e 20 67 65 74 43 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 on.getClassMap().{.return.$this-
131640 3e 63 6c 61 73 73 4d 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 >classMap;.}.....public.function
131660 20 61 64 64 43 6c 61 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 .addClassMap(array.$classMap).{.
131680 69 66 20 28 24 74 68 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 if.($this->classMap).{.$this->cl
1316a0 61 73 73 4d 61 70 20 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 assMap.=.array_merge($this->clas
1316c0 73 4d 61 70 2c 20 24 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 sMap,.$classMap);.}.else.{.$this
1316e0 2d 3e 63 6c 61 73 73 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 ->classMap.=.$classMap;.}.}.....
131700 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 70 72 65 66 69 78 .....public.function.add($prefix
131720 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 7b 0a 69 66 ,.$paths,.$prepend.=.false).{.if
131740 20 28 21 24 70 72 65 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 .(!$prefix).{.if.($prepend).{.$t
131760 68 69 73 2d 3e 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 his->fallbackDirsPsr0.=.array_me
131780 72 67 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 rge(.(array).$paths,.$this->fall
1317a0 62 61 63 6b 44 69 72 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 backDirsPsr0.);.}.else.{.$this->
1317c0 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(.
1317e0 24 74 68 69 73 2d 3e 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 $this->fallbackDirsPsr0,.(array)
131800 20 24 70 61 74 68 73 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 .$paths.);.}..return;.}..$first.
131820 3d 20 24 70 72 65 66 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 =.$prefix[0];.if.(!isset($this->
131840 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 29 29 20 prefixesPsr0[$first][$prefix])).
131860 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
131880 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 0a 72 65 74 75 72 6e refix].=.(array).$paths;..return
1318a0 3b 0a 7d 0a 69 66 20 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 ;.}.if.($prepend).{.$this->prefi
1318c0 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 61 72 72 61 79 xesPsr0[$first][$prefix].=.array
1318e0 5f 6d 65 72 67 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 70 _merge(.(array).$paths,.$this->p
131900 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 0a 29 3b 0a refixesPsr0[$first][$prefix].);.
131920 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 24 66 69 }.else.{.$this->prefixesPsr0[$fi
131940 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 0a 24 74 68 rst][$prefix].=.array_merge(.$th
131960 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 65 66 69 78 is->prefixesPsr0[$first][$prefix
131980 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 0a ],.(array).$paths.);.}.}........
1319a0 0a 0a 0a 0a 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
1319c0 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 7b fix,.$paths,.$prepend.=.false).{
1319e0 0a 69 66 20 28 21 24 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 .if.(!$prefix).{...if.($prepend)
131a00 20 7b 0a 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 72 72 .{.$this->fallbackDirsPsr4.=.arr
131a20 61 79 5f 6d 65 72 67 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 ay_merge(.(array).$paths,.$this-
131a40 3e 66 61 6c 6c 62 61 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 >fallbackDirsPsr4.);.}.else.{.$t
131a60 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 72 72 61 79 5f 6d 65 his->fallbackDirsPsr4.=.array_me
131a80 72 67 65 28 0a 24 74 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 rge(.$this->fallbackDirsPsr4,.(a
131aa0 72 72 61 79 29 20 24 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 rray).$paths.);.}.}.elseif.(!iss
131ac0 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 69 78 et($this->prefixDirsPsr4[$prefix
131ae0 5d 29 29 20 7b 0a 0a 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 ])).{...$length.=.strlen($prefix
131b00 29 3b 0a 69 66 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 );.if.('\\'.!==.$prefix[$length.
131b20 2d 20 31 5d 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 -.1]).{.throw.new.\InvalidArgume
131b40 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 70 ntException("A.non-empty.PSR-4.p
131b60 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 20 refix.must.end.with.a.namespace.
131b80 73 65 70 61 72 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 separator.");.}.$this->prefixLen
131ba0 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].=.
131bc0 24 6c 65 6e 67 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 $length;.$this->prefixDirsPsr4[$
131be0 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 7d 20 65 6c 73 65 prefix].=.(array).$paths;.}.else
131c00 69 66 20 28 24 70 72 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 if.($prepend).{...$this->prefixD
131c20 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 67 65 28 0a irsPsr4[$prefix].=.array_merge(.
131c40 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 44 69 72 (array).$paths,.$this->prefixDir
131c60 73 50 73 72 34 5b 24 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 sPsr4[$prefix].);.}.else.{...$th
131c80 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 3d 20 61 72 is->prefixDirsPsr4[$prefix].=.ar
131ca0 72 61 79 5f 6d 65 72 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 ray_merge(.$this->prefixDirsPsr4
131cc0 5b 24 70 72 65 66 69 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 [$prefix],.(array).$paths.);.}.}
131ce0 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 28 24 70 72 .........public.function.set($pr
131d00 65 66 69 78 2c 20 24 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 efix,.$paths).{.if.(!$prefix).{.
131d20 24 74 68 69 73 2d 3e 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 $this->fallbackDirsPsr0.=.(array
131d40 29 20 24 70 61 74 68 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 ).$paths;.}.else.{.$this->prefix
131d60 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 3d 20 28 61 esPsr0[$prefix[0]][$prefix].=.(a
131d80 72 72 61 79 29 20 24 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 rray).$paths;.}.}...........publ
131da0 69 63 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 ic.function.setPsr4($prefix,.$pa
131dc0 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 66 61 ths).{.if.(!$prefix).{.$this->fa
131de0 6c 6c 62 61 63 6b 44 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 llbackDirsPsr4.=.(array).$paths;
131e00 0a 7d 20 65 6c 73 65 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 .}.else.{.$length.=.strlen($pref
131e20 69 78 29 3b 0a 69 66 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 ix);.if.('\\'.!==.$prefix[$lengt
131e40 68 20 2d 20 31 5d 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 h.-.1]).{.throw.new.\InvalidArgu
131e60 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 20 50 53 52 2d 34 mentException("A.non-empty.PSR-4
131e80 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 6d 65 73 70 61 63 .prefix.must.end.with.a.namespac
131ea0 65 20 73 65 70 61 72 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 e.separator.");.}.$this->prefixL
131ec0 65 6e 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 engthsPsr4[$prefix[0]][$prefix].
131ee0 3d 20 24 6c 65 6e 67 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 =.$length;.$this->prefixDirsPsr4
131f00 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 7d 0a 7d 0a [$prefix].=.(array).$paths;.}.}.
131f20 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 55 73 65 49 6e 63 6c ......public.function.setUseIncl
131f40 75 64 65 50 61 74 68 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 udePath($useIncludePath).{.$this
131f60 2d 3e 75 73 65 49 6e 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 ->useIncludePath.=.$useIncludePa
131f80 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 6f 6e 20 67 65 74 th;.}........public.function.get
131fa0 55 73 65 49 6e 63 6c 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 UseIncludePath().{.return.$this-
131fc0 3e 75 73 65 49 6e 63 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 >useIncludePath;.}........public
131fe0 20 66 75 6e 63 74 69 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 .function.setClassMapAuthoritati
132000 76 65 28 24 63 6c 61 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 ve($classMapAuthoritative).{.$th
132020 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 24 63 6c 61 is->classMapAuthoritative.=.$cla
132040 73 73 4d 61 70 41 75 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 ssMapAuthoritative;.}.......publ
132060 69 63 20 66 75 6e 63 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 ic.function.isClassMapAuthoritat
132080 69 76 65 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 61 70 41 75 ive().{.return.$this->classMapAu
1320a0 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
1320c0 74 69 6f 6e 20 72 65 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 tion.register($prepend.=.false).
1320e0 7b 0a 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 74 {.spl_autoload_register(array($t
132100 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 6e his,.'loadClass'),.true,.$prepen
132120 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 75 6e 72 65 67 69 d);.}.....public.function.unregi
132140 73 74 65 72 28 29 0a 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 ster().{.spl_autoload_unregister
132160 28 61 72 72 61 79 28 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 (array($this,.'loadClass'));.}..
132180 0a 0a 0a 0a 0a 0a 70 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 ......public.function.loadClass(
1321a0 24 63 6c 61 73 73 29 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 $class).{.if.($file.=.$this->fin
1321c0 64 46 69 6c 65 28 24 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 dFile($class)).{.includeFile($fi
1321e0 6c 65 29 3b 0a 0a 72 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 le);..return.true;.}.}.........p
132200 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 0a ublic.function.findFile($class).
132220 7b 0a 0a 20 69 66 20 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 {...if.('\\'.==.$class[0]).{.$cl
132240 61 73 73 20 3d 20 73 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 ass.=.substr($class,.1);.}....if
132260 20 28 69 73 73 65 74 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 .(isset($this->classMap[$class])
132280 29 20 7b 0a 72 65 74 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 ).{.return.$this->classMap[$clas
1322a0 73 5d 3b 0a 7d 0a 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 s];.}.if.($this->classMapAuthori
1322c0 74 61 74 69 76 65 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 tative).{.return.false;.}..$file
1322e0 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 28 .=.$this->findFileWithExtension(
132300 24 63 6c 61 73 73 2c 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 $class,.'.php');....if.($file.==
132320 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 4e 27 =.null.&&.defined('HHVM_VERSION'
132340 29 29 20 7b 0a 24 66 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 )).{.$file.=.$this->findFileWith
132360 45 78 74 65 6e 73 69 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 Extension($class,.'.hh');.}..if.
132380 28 24 66 69 6c 65 20 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 ($file.===.null).{...return.$thi
1323a0 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 7d 0a 0a s->classMap[$class].=.false;.}..
1323c0 72 65 74 75 72 6e 20 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 return.$file;.}..private.functio
1323e0 6e 20 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 n.findFileWithExtension($class,.
132400 24 65 78 74 29 0a 7b 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 $ext).{...$logicalPathPsr4.=.str
132420 74 72 28 24 63 6c 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 tr($class,.'\\',.DIRECTORY_SEPAR
132440 41 54 4f 52 29 20 2e 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 ATOR)...$ext;..$first.=.$class[0
132460 5d 3b 0a 69 66 20 28 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 ];.if.(isset($this->prefixLength
132480 73 50 73 72 34 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 sPsr4[$first])).{.foreach.($this
1324a0 2d 3e 70 72 65 66 69 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 ->prefixLengthsPsr4[$first].as.$
1324c0 70 72 65 66 69 78 20 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 prefix.=>.$length).{.if.(0.===.s
1324e0 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 66 6f 72 65 61 63 trpos($class,.$prefix)).{.foreac
132500 68 20 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 69 78 h.($this->prefixDirsPsr4[$prefix
132520 5d 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 ].as.$dir).{.if.(file_exists($fi
132540 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.
132560 2e 20 73 75 62 73 74 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 ..substr($logicalPathPsr4,.$leng
132580 74 68 29 29 29 20 7b 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 th))).{.return.$file;.}.}.}.}.}.
1325a0 0a 0a 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 72 73 50 ...foreach.($this->fallbackDirsP
1325c0 73 72 34 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 sr4.as.$dir).{.if.(file_exists($
1325e0 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 41 54 4f file.=.$dir...DIRECTORY_SEPARATO
132600 52 20 2e 20 24 6c 6f 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 R...$logicalPathPsr4)).{.return.
132620 24 66 69 6c 65 3b 0a 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 $file;.}.}....if.(false.!==.$pos
132640 20 3d 20 73 74 72 72 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 .=.strrpos($class,.'\\')).{...$l
132660 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
132680 50 61 74 68 50 73 72 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 PathPsr4,.0,.$pos.+.1)...strtr(s
1326a0 75 62 73 74 72 28 24 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 ubstr($logicalPathPsr4,.$pos.+.1
1326c0 29 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 3b 0a 7d 20 ),.'_',.DIRECTORY_SEPARATOR);.}.
1326e0 65 6c 73 65 20 7b 0a 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 else.{...$logicalPathPsr0.=.strt
132700 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 45 50 41 52 41 54 r($class,.'_',.DIRECTORY_SEPARAT
132720 4f 52 29 20 2e 20 24 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 OR)...$ext;.}..if.(isset($this->
132740 70 72 65 66 69 78 65 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 prefixesPsr0[$first])).{.foreach
132760 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 61 73 .($this->prefixesPsr0[$first].as
132780 20 24 70 72 65 66 69 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 .$prefix.=>.$dirs).{.if.(0.===.s
1327a0 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 66 6f 72 65 61 63 trpos($class,.$prefix)).{.foreac
1327c0 68 20 28 24 64 69 72 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 h.($dirs.as.$dir).{.if.(file_exi
1327e0 73 74 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 sts($file.=.$dir...DIRECTORY_SEP
132800 41 52 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 72 65 ARATOR...$logicalPathPsr0)).{.re
132820 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 61 63 68 turn.$file;.}.}.}.}.}....foreach
132840 20 28 24 74 68 69 73 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 .($this->fallbackDirsPsr0.as.$di
132860 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 69 r).{.if.(file_exists($file.=.$di
132880 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 67 69 63 r...DIRECTORY_SEPARATOR...$logic
1328a0 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 0a 7d 0a 7d alPathPsr0)).{.return.$file;.}.}
1328c0 0a 0a 0a 20 69 66 20 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 ....if.($this->useIncludePath.&&
1328e0 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 6c 75 64 65 5f .$file.=.stream_resolve_include_
132900 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 72 65 74 75 72 6e path($logicalPathPsr0)).{.return
132920 20 24 66 69 6c 65 3b 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 .$file;.}.}.}.......function.inc
132940 6c 75 64 65 46 69 6c 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 ludeFile($file).{.include.$file;
132960 0a 7d 0a 23 23 0a 23 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 .}.##.##.Bundle.of.CA.Root.Certi
132980 66 69 63 61 74 65 73 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 ficates.##.##.Certificate.data.f
1329a0 72 6f 6d 20 4d 6f 7a 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 rom.Mozilla.as.of:.Wed.Oct.28.22
1329c0 3a 34 32 3a 34 32 20 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 :42:42.2015.##.##.This.is.a.bund
1329e0 6c 65 20 6f 66 20 58 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 le.of.X.509.certificates.of.publ
132a00 69 63 20 43 65 72 74 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 ic.Certificate.Authorities.##.(C
132a20 41 29 2e 20 54 68 65 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 A)..These.were.automatically.ext
132a40 72 61 63 74 65 64 20 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 racted.from.Mozilla's.root.certi
132a60 66 69 63 61 74 65 73 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 ficates.##.file.(certdata.txt)..
132a80 20 54 68 69 73 20 66 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 .This.file.can.be.found.at.##.ht
132aa0 74 70 73 3a 2f 2f 72 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 tps://raw.githubusercontent.com/
132ac0 62 61 67 64 65 72 2f 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 bagder/ca-bundle/master/ca-bundl
132ae0 65 2e 63 72 74 0a 23 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 e.crt.##.##.It.contains.the.cert
132b00 69 66 69 63 61 74 65 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 ificates.in.PEM.format.and.there
132b20 66 6f 72 65 0a 23 23 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 fore.##.can.be.directly.used.wit
132b40 68 20 63 75 72 6c 20 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 h.curl./.libcurl./.php_curl,.or.
132b60 77 69 74 68 0a 23 23 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 with.##.an.Apache+mod_ssl.webser
132b80 76 65 72 20 66 6f 72 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 ver.for.SSL.client.authenticatio
132ba0 6e 2e 0a 23 23 20 4a 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 n..##.Just.configure.this.file.a
132bc0 73 20 74 68 65 20 53 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 s.the.SSLCACertificateFile..##.#
132be0 23 20 43 6f 6e 76 65 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 #.Conversion.done.with.mk-ca-bun
132c00 64 6c 65 2e 70 6c 20 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 dle.pl.version.1.25..##.SHA1:.6d
132c20 37 64 32 66 30 61 34 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 7d2f0a4fae587e7431be191a081ac125
132c40 37 64 33 30 30 61 0a 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 7d300a.##...Equifax.Secure.CA.==
132c60 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
132c80 46 49 43 41 54 45 2d 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 FICATE-----.MIIDIDCCAomgAwIBAgIE
132ca0 4e 64 37 30 7a 7a 41 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 Nd70zzANBgkqhkiG9w0BAQUFADBOMQsw
132cc0 43 51 59 44 56 51 51 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 CQYDVQQGEwJVUzEQMA4GA1UE.ChMHRXF
132ce0 31 61 57 5a 68 65 44 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 1aWZheDEtMCsGA1UECxMkRXF1aWZheCB
132d00 54 5a 57 4e 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 TZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9
132d20 79 61 58 52 35 0a 4d 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 yaXR5.MB4XDTk4MDgyMjE2NDE1MVoXDT
132d40 45 34 4d 44 67 79 4d 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 E4MDgyMjE2NDE1MVowTjELMAkGA1UEBh
132d60 4d 43 56 56 4d 78 45 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 MCVVMxEDAOBgNVBAoT.B0VxdWlmYXgxL
132d80 54 41 72 42 67 4e 56 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 TArBgNVBAsTJEVxdWlmYXggU2VjdXJlI
132da0 45 4e 6c 63 6e 52 70 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 ENlcnRpZmljYXRlIEF1dGhvcml0eTCB.
132dc0 6e 7a 41 4e 42 67 6b 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 nzANBgkqhkiG9w0BAQEFAAOBjQAwgYkC
132de0 67 59 45 41 77 56 32 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 gYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+
132e00 32 67 52 76 45 34 52 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 2gRvE4RiIcPR.fM6fBeC4AfBONOziipU
132e20 45 5a 4b 7a 78 61 31 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 EZKzxa1NfBbPLZ4C/QgKO/t0BCezhABR
132e40 50 2f 50 76 77 44 4e 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 P/PvwDN1Dulsr4R+AcJkVV5MW.8Q+Xar
132e60 66 43 61 43 4d 63 7a 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 fCaCMczE1ZMKxRHjuvK9buY0V7xdlfUN
132e80 4c 6a 55 41 38 36 69 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 LjUA86iOe/FP3gx7kCAwEAAaOCAQkwgg
132ea0 45 46 4d 48 41 47 0a 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 EFMHAG.A1UdHwRpMGcwZaBjoGGkXzBdM
132ec0 51 73 77 43 51 59 44 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 QswCQYDVQQGEwJVUzEQMA4GA1UEChMHR
132ee0 58 46 31 61 57 5a 68 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 XF1aWZheDEtMCsGA1UE.CxMkRXF1aWZh
132f00 65 43 42 54 5a 57 4e 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 eCBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0
132f20 61 47 39 79 61 58 52 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 aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoG
132f40 0a 41 31 55 64 45 41 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 .A1UdEAQTMBGBDzIwMTgwODIyMTY0MTU
132f60 78 57 6a 41 4c 42 67 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 xWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBg
132f80 77 46 6f 41 55 53 4f 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 wFoAUSOZo+SvS.spXXR9gjIBBPM5iQn9
132fa0 51 77 48 51 59 44 56 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 QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIy
132fc0 41 51 54 7a 4f 59 6b 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 AQTzOYkJ/UMAwGA1UdEwQFMAMB.Af8wG
132fe0 67 59 4a 4b 6f 5a 49 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 gYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDA
133000 67 62 41 4d 41 30 47 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 gbAMA0GCSqGSIb3DQEBBQUAA4GBAFjOK
133020 65 72 38 39 39 36 31 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 er89961.zgK5F7WF0bnj4JXMJTENAKaS
133040 62 6e 2b 32 6b 6d 4f 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 bn+2kmOeUJXRmm/kEd5jhW6Y7qj/WsjT
133060 56 62 4a 6d 63 56 66 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 VbJmcVfewCHrPSqnI0kB.BIZCe/zuf6I
133080 57 55 72 56 6e 5a 39 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 WUrVnZ9NA2zsmWLIodz2uFHdh1voqZie
1330a0 67 44 66 71 6e 63 31 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 gDfqnc1zqcPGUIWVEX/r87yloqaKHee9
1330c0 35 0a 37 30 2b 73 42 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 5.70+sB3c4.-----END.CERTIFICATE-
1330e0 2d 2d 2d 2d 0a 0a 47 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 ----..GlobalSign.Root.CA.=======
133100 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
133120 54 45 2d 2d 2d 2d 2d 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 TE-----.MIIDdTCCAl2gAwIBAgILBAAA
133140 41 41 41 42 46 55 74 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 AAABFUtaw5QwDQYJKoZIhvcNAQEFBQAw
133160 56 7a 45 4c 4d 41 6b 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 VzELMAkGA1UEBhMCQkUx.GTAXBgNVBAo
133180 54 45 45 64 73 62 32 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 TEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgN
1331a0 56 42 41 73 54 42 31 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 VBAsTB1Jvb3QgQ0ExGzAZBgNVBAMTEkd
1331c0 73 0a 62 32 4a 68 62 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 s.b2JhbFNpZ24gUm9vdCBDQTAeFw05OD
1331e0 41 35 4d 44 45 78 4d 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 A5MDExMjAwMDBaFw0yODAxMjgxMjAwMD
133200 42 61 4d 46 63 78 43 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 BaMFcxCzAJBgNV.BAYTAkJFMRkwFwYDV
133220 51 51 4b 45 78 42 48 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 QQKExBHbG9iYWxTaWduIG52LXNhMRAwD
133240 67 59 44 56 51 51 4c 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 gYDVQQLEwdSb290IENBMRswGQYD.VQQD
133260 45 78 4a 48 62 47 39 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 ExJHbG9iYWxTaWduIFJvb3QgQ0EwggEi
133280 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
1332a0 41 6f 49 42 41 51 44 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 AoIBAQDa.DuaZjc6j40+Kfvvxi4Mla+p
1332c0 49 48 2f 45 71 73 4c 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 IH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6
1332e0 4e 69 59 36 61 72 79 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 NiY6arymAZavpxy0Sy6sc.THAHoT0KMM
133300 30 56 6a 55 2f 34 33 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 0VjU/43dSMUBUc71DuxC73/OlS8pF94G
133320 33 56 4e 54 43 4f 58 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 3VNTCOXkNz8kHp1Wrjsok6Vjk4bwY8iG
133340 6c 62 0a 4b 6b 33 46 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 lb.Kk3Fp1S4bInMm/k8yuX9ifUSPJJ4l
133360 74 62 63 64 47 36 54 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 tbcdG6TRGHRjcdGsnUOhugZitVtbNV4F
133380 70 57 69 36 63 67 4b 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 pWi6cgKOOvyJBNP.c1STE4U6G7weNLWL
1333a0 42 59 79 35 64 34 75 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 BYy5d4ux2x8gkasJU26Qzns3dLlwR5Ei
1333c0 55 57 4d 57 65 61 36 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 UWMWea6xrkEmCMgZK9FGqkjWZCrX.gzT
1333e0 2f 4c 43 72 42 62 42 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 /LCrBbBlDSgeF59N89iFo7+ryUp9/k5D
133400 50 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 41 77 49 PAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwI
133420 42 42 6a 41 50 42 67 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 BBjAPBgNV.HRMBAf8EBTADAQH/MB0GA1
133440 55 64 44 67 51 57 42 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 UdDgQWBBRge2YaRQ2XyolQL30EzTSo//
133460 7a 39 53 7a 41 4e 42 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 z9SzANBgkqhkiG9w0BAQUF.AAOCAQEA1
133480 6e 50 6e 66 45 39 32 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 nPnfE920I2/7LqivjTFKDK1fPxsnCwrv
1334a0 51 6d 65 55 37 39 72 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 QmeU79rXqoRSLblCKOzyj1hTdNGCbM+w
1334c0 36 44 6a 0a 59 31 55 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 6Dj.Y1Ub8rrvrTnhQ7k4o+YviiY776BQ
1334e0 56 76 6e 47 43 76 30 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 VvnGCv04zcQLcFGUl5gE38NflNUVyRRB
133500 6e 4d 52 64 64 57 51 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 nMRddWQVDf9VMOyG.j/8N7yy5Y0b2qvz
133520 66 76 47 6e 39 4c 68 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 fvGn9LhJIZJrglfCm7ymPAbEVtQwdpf5
133540 70 4c 47 6b 6b 65 42 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 pLGkkeB6zpxxxYu7KyJesF12KwvhH.hm
133560 34 71 78 46 59 78 6c 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 4qxFYxldBniYUr+WymXUadDKqC5JlR3X
133580 43 33 32 31 59 39 59 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 C321Y9YeRq4VzW9v493kHMB65jUr9TU/
1335a0 51 72 36 63 66 39 74 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 Qr6cf9tveC.X4XSQRjbgbMEHMUfpIBvF
1335c0 53 44 4a 33 67 79 49 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 SDJ3gyICh3WZlXi/EjJKSZp4A==.----
1335e0 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 69 67 -END.CERTIFICATE-----..GlobalSig
133600 6e 20 52 6f 6f 74 20 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 n.Root.CA.-.R2.=================
133620 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---
133640 2d 2d 0a 4d 49 49 44 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 --.MIIDujCCAqKgAwIBAgILBAAAAAABD
133660 34 59 6d 35 67 30 77 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 4Ym5g0wDQYJKoZIhvcNAQEFBQAwTDEgM
133680 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 39 30 B4GA1UECxMXR2xv.YmFsU2lnbiBSb290
1336a0 49 45 4e 42 49 43 30 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 IENBIC0gUjIxEzARBgNVBAoTCkdsb2Jh
1336c0 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 46 4e bFNpZ24xEzARBgNVBAMTCkdsb2Jh.bFN
1336e0 70 5a 32 34 77 48 68 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 pZ24wHhcNMDYxMjE1MDgwMDAwWhcNMjE
133700 78 4d 6a 45 31 4d 44 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 xMjE1MDgwMDAwWjBMMSAwHgYDVQQLExd
133720 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 4d 6a HbG9iYWxT.aWduIFJvb3QgQ0EgLSBSMj
133740 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 4d 42 ETMBEGA1UEChMKR2xvYmFsU2lnbjETMB
133760 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 77 44 EGA1UEAxMKR2xvYmFsU2ln.bjCCASIwD
133780 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 67 QYJKoZIhvcNAQEBBQADggEPADCCAQoCg
1337a0 67 45 42 41 4b 62 50 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 gEBAKbPJA6+Lm8omUVCxKs+IVSbC9N/h
1337c0 48 44 36 0a 45 72 50 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 HD6.ErPLv4dfxn+G07IwXNb9rfF73OX4
1337e0 59 4a 59 4a 6b 68 44 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 YJYJkhD10FPe+3t+c4isUoh7SqbKSaZe
133800 71 4b 65 4d 57 68 47 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 qKeMWhG8eoLrvozp.s6yWJQeXSpkqBy+
133820 30 48 6e 65 2f 69 67 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 0Hne/ig+1AnwblrjFuTosvNYSuetZfeL
133840 51 42 6f 5a 66 58 6b 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 QBoZfXklqtTleiDTsvHgMCJiEbKjN.S7
133860 53 67 66 51 78 35 54 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 SgfQx5TfC4LcshytVsW33hoCmEofnTlE
133880 6e 4c 4a 47 4b 52 49 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 nLJGKRILzdC9XZzPnqJworc5HGnRusyM
1338a0 76 6f 34 4b 44 30 4c 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 vo4KD0L5CL.TfuwNhv2GXqF4G3yYROIX
1338c0 4a 2f 67 6b 77 70 52 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 J/gkwpRl4pazq+r1feqCapgvdzZX99yq
1338e0 57 41 54 58 67 41 42 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 WATXgAByUr6P6TqBwMhAo6C.ygPCm48C
133900 41 77 45 41 41 61 4f 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 AwEAAaOBnDCBmTAOBgNVHQ8BAf8EBAMC
133920 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 41 64 42 67 4e 56 AQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNV
133940 48 51 34 45 0a 46 67 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 HQ4E.FgQUm+IHV2ccHsBqBt5ZtJot39w
133960 5a 68 69 34 77 4e 67 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 Zhi4wNgYDVR0fBC8wLTAroCmgJ4YlaHR
133980 30 63 44 6f 76 4c 32 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 0cDovL2NybC5nbG9i.YWxzaWduLm5ldC
1339a0 39 79 62 32 39 30 4c 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 9yb290LXIyLmNybDAfBgNVHSMEGDAWgB
1339c0 53 62 34 67 64 58 5a 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 Sb4gdXZxwewGoG3lm0mi3f3BmGLjAN.B
1339e0 67 6b 71 68 6b 69 47 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 gkqhkiG9w0BAQUFAAOCAQEAmYFThxxol
133a00 34 61 52 37 4f 42 4b 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 4aR7OBKuEQLq4GsJ0/WwbgcQ3izDJr86
133a20 69 77 38 62 6d 45 62 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 iw8bmEbTUsp.9Z8FHSbBuOmDAGJFtqkI
133a40 6b 37 6d 70 4d 30 73 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 k7mpM0sYmsL4h4hO291xNBrBVNpGP+DT
133a60 4b 71 74 74 56 43 4c 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 KqttVCL1OmLNIG+6KYnX3ZHu.01yiPqF
133a80 62 51 66 58 66 35 57 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 bQfXf5WRDLenVOavSot+3i9DAgBkcRcA
133aa0 74 6a 4f 6a 34 4c 61 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 tjOj4LaR0VknFBbVPFd5uRHg5h6h+u/N
133ac0 35 47 4a 47 37 0a 39 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 5GJG7.9G+dwfCMNYxdAfvDbbnvRG15Rj
133ae0 46 2b 43 76 36 70 67 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 F+Cv6pgsH/76tuIMRQyV+dTZsXjAzlAc
133b00 6d 67 51 57 70 7a 55 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 mgQWpzU/qlULRuJQ/7.TBj0/VLZjmmx6
133b20 42 45 50 33 6f 6a 59 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 BEP3ojY+x1J96relc8geMJgEtslQIxq/
133b40 48 35 43 4f 45 42 6b 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 H5COEBkEveegeGTLg==.-----END.CER
133b60 54 49 46 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 33 20 TIFICATE-----..Verisign.Class.3.
133b80 50 75 62 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 Public.Primary.Certification.Aut
133ba0 68 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 hority.-.G3.====================
133bc0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
133be0 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-
133c00 2d 2d 2d 2d 0a 4d 49 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 ----.MIIEGjCCAwICEQCbfgZJoz5iudX
133c20 75 6b 45 68 78 4b 65 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 ukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIH
133c40 4b 4d 51 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 KMQswCQYDVQQGEwJV.UzEXMBUGA1UECh
133c60 4d 4f 56 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 MOVmVyaVNpZ24sIEluYy4xHzAdBgNVBA
133c80 73 54 46 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 sTFlZlcmlTaWduIFRydXN0IE5ldHdv.c
133ca0 6d 73 78 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 msxOjA4BgNVBAsTMShjKSAxOTk5IFZlc
133cc0 6d 6c 54 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 mlTaWduLCBJbmMuIC0gRm9yIGF1dGhvc
133ce0 6d 6c 36 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 ml6ZWQgdXNl.IG9ubHkxRTBDBgNVBAMT
133d00 50 46 5a 6c 63 6d 6c 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 PFZlcmlTaWduIENsYXNzIDMgUHVibGlj
133d20 49 46 42 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 IFByaW1hcnkgQ2VydGlmaWNh.dGlvbiB
133d40 42 64 58 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 BdXRob3JpdHkgLSBHMzAeFw05OTEwMDE
133d60 77 4d 44 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 wMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIH
133d80 4b 4d 51 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 KMQsw.CQYDVQQGEwJVUzEXMBUGA1UECh
133da0 4d 4f 56 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 MOVmVyaVNpZ24sIEluYy4xHzAdBgNVBA
133dc0 73 54 46 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 sTFlZlcmlTaWduIFRy.dXN0IE5ldHdvc
133de0 6d 73 78 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 msxOjA4BgNVBAsTMShjKSAxOTk5IFZlc
133e00 6d 6c 54 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 mlTaWduLCBJbmMuIC0gRm9yIGF1dGhv.
133e20 63 6d 6c 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 cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMT
133e40 50 46 5a 6c 63 6d 6c 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 PFZlcmlTaWduIENsYXNzIDMgUHVibGlj
133e60 49 46 42 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 IFByaW1hcnkg.Q2VydGlmaWNhdGlvbiB
133e80 42 64 58 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 BdXRob3JpdHkgLSBHMzCCASIwDQYJKoZ
133ea0 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 0a 67 67 45 42 41 4d IhvcNAQEBBQADggEPADCCAQoC.ggEBAM
133ec0 75 36 6e 46 4c 38 65 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 u6nFL8eB8aHm8bN3O9+MlrlBIwT/A2R/
133ee0 58 51 6b 51 72 31 46 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 XQkQr1F8ilYcEWQE37imGQ5XYgwREGfa
133f00 73 73 62 71 62 31 0a 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 ssbqb1.EUGO+i2tKmFZpGcmTNDovFJbc
133f20 43 41 45 57 4e 46 36 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 CAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8
133f40 45 4a 4a 43 35 32 58 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 EJJC52XJ2cybuGukxUc.cLwgTS8Y3pKI
133f60 36 47 79 46 56 78 45 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 6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij
133f80 37 53 71 41 50 33 39 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 7SqAP395ZVc+FSBmCC+Vk7+qRy+oRpfw
133fa0 0a 45 75 4c 2b 77 67 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 .EuL+wgorUeZ25rdGt+INpsyow0xZVYn
133fc0 6d 36 46 4e 63 48 4f 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 m6FNcHOqd8GIWC6fJXwzw3sJ2zq/3avL
133fe0 36 51 61 61 69 4d 78 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 6QaaiMxTJ5Xpj.055iN9WFZZ4O5lMkdB
134000 74 65 48 52 4a 54 57 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 teHRJTW8cs54NJOxWuimi5V5cCAwEAAT
134020 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 0a 45 52 53 57 77 ANBgkqhkiG9w0BAQUFAAOCAQEA.ERSWw
134040 61 75 53 43 50 63 2f 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 auSCPc/L8my/uRan2Te2yFPhpk0djZX3
134060 64 41 56 4c 38 57 74 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 dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbr
134080 6d 41 4a 58 78 35 66 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 mAJXx5f.j267Cz3qWhMeDGBvtcC1IyIu
1340a0 42 77 76 4c 71 58 54 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 BwvLqXTLR7sdwdela8wv0kL9Sd2nic9T
1340c0 75 74 6f 41 57 69 69 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 utoAWii/gt/4uhMdUIaC./Y4wjylGsB4
1340e0 39 4e 64 6f 34 59 68 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 9Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8
134100 53 47 68 4a 6f 75 50 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 SGhJouPtmmRQURVyu565pF4ErWjfJXir
134120 30 0a 78 75 4b 68 58 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 0.xuKhXFSbplQAz/DxwceYMBo7Nhbbo2
134140 37 71 2f 61 32 79 77 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 7q/a2ywtrvAkcTisDxszGtTxzhT5yvDw
134160 79 64 39 33 67 4e 32 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 yd93gN2PQ1VoDa.t20Xj50egWTh/sVFu
134180 71 31 72 75 51 70 36 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 q1ruQp6Tk9LhO5L8X3dEQ==.-----END
1341a0 20 43 45 52 54 49 46 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 .CERTIFICATE-----..Verisign.Clas
1341c0 73 20 34 20 50 75 62 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 s.4.Public.Primary.Certification
1341e0 20 41 75 74 68 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 .Authority.-.G3.================
134200 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
134220 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
134240 41 54 45 2d 2d 2d 2d 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 ATE-----.MIIEGjCCAwICEQDsoKeLbnV
134260 71 41 63 2f 45 66 4d 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 qAc/EfMwvlF7XMA0GCSqGSIb3DQEBBQU
134280 41 4d 49 48 4b 4d 51 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 AMIHKMQswCQYDVQQGEwJV.UzEXMBUGA1
1342a0 55 45 43 68 4d 4f 56 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 UEChMOVmVyaVNpZ24sIEluYy4xHzAdBg
1342c0 4e 56 42 41 73 54 46 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 NVBAsTFlZlcmlTaWduIFRydXN0IE5ldH
1342e0 64 76 0a 63 6d 73 78 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 dv.cmsxOjA4BgNVBAsTMShjKSAxOTk5I
134300 46 5a 6c 63 6d 6c 54 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 FZlcmlTaWduLCBJbmMuIC0gRm9yIGF1d
134320 47 68 76 63 6d 6c 36 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 Ghvcml6ZWQgdXNl.IG9ubHkxRTBDBgNV
134340 42 41 4d 54 50 46 5a 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 BAMTPFZlcmlTaWduIENsYXNzIDQgUHVi
134360 62 47 6c 6a 49 46 42 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 bGljIFByaW1hcnkgQ2VydGlmaWNh.dGl
134380 76 62 69 42 42 64 58 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 vbiBBdXRob3JpdHkgLSBHMzAeFw05OTE
1343a0 77 4d 44 45 77 4d 44 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 wMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTl
1343c0 61 4d 49 48 4b 4d 51 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 aMIHKMQsw.CQYDVQQGEwJVUzEXMBUGA1
1343e0 55 45 43 68 4d 4f 56 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 UEChMOVmVyaVNpZ24sIEluYy4xHzAdBg
134400 4e 56 42 41 73 54 46 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 NVBAsTFlZlcmlTaWduIFRy.dXN0IE5ld
134420 48 64 76 63 6d 73 78 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 HdvcmsxOjA4BgNVBAsTMShjKSAxOTk5I
134440 46 5a 6c 63 6d 6c 54 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 FZlcmlTaWduLCBJbmMuIC0gRm9yIGF1d
134460 47 68 76 0a 63 6d 6c 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 Ghv.cml6ZWQgdXNlIG9ubHkxRTBDBgNV
134480 42 41 4d 54 50 46 5a 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 BAMTPFZlcmlTaWduIENsYXNzIDQgUHVi
1344a0 62 47 6c 6a 49 46 42 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 bGljIFByaW1hcnkg.Q2VydGlmaWNhdGl
1344c0 76 62 69 42 42 64 58 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 vbiBBdXRob3JpdHkgLSBHMzCCASIwDQY
1344e0 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 0a 67 67 JKoZIhvcNAQEBBQADggEPADCCAQoC.gg
134500 45 42 41 4b 33 4c 70 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 EBAK3LpRFpxlmr8Y+1GQ9Wzsy1HyDkni
134520 59 6c 53 2b 42 7a 5a 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 YlS+BzZYlZ3tCD5PUPtbut8XzoIfzk6A
134540 7a 75 66 45 55 69 47 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 zufEUiGXaS.tBO3IFsJ+mGuqPKljYXCK
134560 74 62 65 5a 6a 62 53 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 tbeZjbSmwL0qJJgfJxptI8kHtCGUvYyn
134580 45 46 59 48 69 4b 39 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 EFYHiK9zUVilQhu0GbdU6LM.8BDcVHOL
1345a0 42 4b 46 47 4d 7a 4e 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 BKFGMzNcF0C5nk3T875Vg+ixiY5afJqW
1345c0 49 70 41 37 69 43 58 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 IpA7iCXy0lOIAgwLePLmNxdLMEYH5IBt
1345e0 70 74 69 57 0a 4c 75 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 ptiW.Lugs+BGzOA1mppvqySNb247i8xO
134600 4f 47 6c 6b 74 71 67 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 OGlktqgLw7KSHZtzBP/XYufTsgsbSPZU
134620 64 35 63 42 50 68 4d 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 d5cBPhMnZo0QoBmrX.Razwa2rvTl/4EY
134640 49 65 4f 47 4d 30 5a 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 IeOGM0ZlDUPpNz+jDDZq3/ky2X7wMCAw
134660 45 41 41 54 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 0a 6a EAATANBgkqhkiG9w0BAQUFAAOCAQEA.j
134680 2f 6f 6c 61 30 39 62 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 /ola09b5KROJ1WrIhVZPMq1CtRK26vdo
1346a0 56 39 54 78 61 42 58 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 V9TxaBXOcLORyu+OshWv8LZJxA6sQU8w
1346c0 48 63 78 75 7a 72 54 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 HcxuzrTBXtt.mhwwjIDLk5Mqg6sFUYIC
1346e0 41 42 46 6e 61 2f 4f 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 ABFna/OIYUdfA5PVWw3g8dShMjWFsjrb
134700 73 49 4b 72 30 63 73 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 sIKr0csKvE+MW8VLADsfKoKm.fjaF3H4
134720 38 5a 77 43 31 35 44 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 8ZwC15DtS4KjrXRX5xm3wrR0OhbepmnM
134740 55 57 6c 75 50 51 53 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 UWluPQSjA1egtTaRezarZ7c7c2NU8Qh0
134760 58 77 52 4a 64 0a 52 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 XwRJd.RTjDOPP8hS6DRkiy1yBfkjaP53
134780 6b 50 6d 46 36 5a 36 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 kPmF6Z6PDQpLv1U70qzlmwr25/bLvSHg
1347a0 43 77 49 65 33 34 51 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 CwIe34QWKCudiyxLtG.UPMxxY8BqHTr9
1347c0 58 67 6e 32 75 66 33 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 Xgn2uf3ZkPznoM+IKrDNWCRzg==.----
1347e0 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 74 2e 6e -END.CERTIFICATE-----..Entrust.n
134800 65 74 20 50 72 65 6d 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 et.Premium.2048.Secure.Server.CA
134820 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 .===============================
134840 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
134860 45 2d 2d 2d 2d 2d 0a 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 E-----.MIIEKjCCAxKgAwIBAgIEOGPe+
134880 44 41 4e 42 67 6b 71 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 DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA
1348a0 31 55 45 43 68 4d 4c 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 1UEChMLRW50cnVzdC5u.ZXQxQDA+BgNV
1348c0 42 41 73 55 4e 33 64 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 BAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNf
1348e0 4d 6a 41 30 4f 43 42 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 MjA0OCBpbmNvcnAuIGJ5IHJlZi4gKGxp
134900 0a 62 57 6c 30 63 79 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 .bWl0cyBsaWFiLikxJTAjBgNVBAsTHCh
134920 6a 4b 53 41 78 4f 54 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 jKSAxOTk5IEVudHJ1c3QubmV0IExpbWl
134940 30 5a 57 51 78 4d 7a 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 0ZWQxMzAxBgNV.BAMTKkVudHJ1c3Qubm
134960 56 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 V0IENlcnRpZmljYXRpb24gQXV0aG9yaX
134980 52 35 49 43 67 79 4d 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 R5ICgyMDQ4KTAeFw05OTEyMjQx.NzUwN
1349a0 54 46 61 46 77 30 79 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 TFaFw0yOTA3MjQxNDE1MTJaMIG0MRQwE
1349c0 67 59 44 56 51 51 4b 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 gYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA
1349e0 31 55 45 43 78 51 33 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 1UECxQ3.d3d3LmVudHJ1c3QubmV0L0NQ
134a00 55 31 38 79 4d 44 51 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 U18yMDQ4IGluY29ycC4gYnkgcmVmLiAo
134a20 62 47 6c 74 61 58 52 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 bGltaXRzIGxpYWIuKTEl.MCMGA1UECxM
134a40 63 4b 47 4d 70 49 44 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 cKGMpIDE5OTkgRW50cnVzdC5uZXQgTGl
134a60 74 61 58 52 6c 5a 44 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 taXRlZDEzMDEGA1UEAxMqRW50cnVzdC5
134a80 75 0a 5a 58 51 67 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 u.ZXQgQ2VydGlmaWNhdGlvbiBBdXRob3
134aa0 4a 70 64 48 6b 67 4b 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 JpdHkgKDIwNDgpMIIBIjANBgkqhkiG9w
134ac0 30 42 41 51 45 46 41 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 0BAQEFAAOCAQ8A.MIIBCgKCAQEArU1Lq
134ae0 52 4b 47 73 75 71 6a 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 RKGsuqjIAcVFmQqK0vRvwtKTY7tgHalZ
134b00 37 64 34 51 4d 42 7a 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 7d4QMBzQshowNtTK91euHaYNZOL.Gp18
134b20 45 7a 6f 4f 48 31 75 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 EzoOH1u3Hs/lJBQesYGpjX24zGtLA/EC
134b40 44 4e 79 72 70 55 41 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 DNyrpUAkAH90lKGdCCmziAv1h3edVc3k
134b60 77 33 37 58 61 6d 53 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 w37XamSr.hRSGlVuXMlBvPci6Zgzj/L2
134b80 34 53 63 46 32 69 55 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 4ScF2iUkZ/cCovYmjZy/Gn7xxGWC4Lek
134ba0 73 79 5a 42 32 5a 6e 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 syZB2ZnuU4q941mVTXTzW.nLLPKQP5L6
134bc0 52 51 73 74 52 49 7a 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 RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CF
134be0 56 67 68 54 41 70 2b 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 VghTAp+XtIpGmG4zU/HoZdenoVve8Ajh
134c00 55 69 0a 56 42 63 41 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 Ui.VBcAkCaTvA5JaJG/+EfTnZVCwQ5N3
134c20 32 38 6d 7a 38 4d 59 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 28mz8MYIWJmQ3DW1cAH4QIDAQABo0IwQ
134c40 44 41 4f 42 67 4e 56 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 DAOBgNVHQ8BAf8E.BAMCAQYwDwYDVR0T
134c60 41 51 48 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 56 65 53 42 AQH/BAUwAwEB/zAdBgNVHQ4EFgQUVeSB
134c80 30 52 47 41 76 74 69 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 0RGAvtiJuQijMfmhJAkWuXAwDQYJ.KoZ
134ca0 49 68 76 63 4e 41 51 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 IhvcNAQEFBQADggEBADubj1abMOdTmXx
134cc0 36 65 61 64 4e 6c 39 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 6eadNl9cZlZD7Bh/KM3xGY4+WZiT6QBs
134ce0 68 4a 38 72 6d 63 6e 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 hJ8rmcnPy.T/4xmf3IDExoU8aAghOY+r
134d00 61 74 32 6c 30 39 38 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 at2l098c5u9hURlIIM7j+VrxGrD9cv3h
134d20 38 44 6a 31 63 73 48 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 8Dj1csHsm7mhpElesYT6Yf.zX1XEC+bB
134d40 41 6c 61 68 4c 56 75 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 AlahLVu2B064dae0Wx5XnkcFMXj0EyTO
134d60 32 55 38 37 64 38 39 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 2U87d89vqbllRrDtRnDvV5bu/8j72gZy
134d80 78 4b 54 0a 4a 31 77 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 xKT.J1wDLW8w0B62GqzeWvfRqqgnpv55
134da0 67 63 52 35 6d 54 4e 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 gcR5mTNXuhKwqeBCbJPKVt7+bYQLCIt+
134dc0 6a 65 72 58 6d 43 48 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 jerXmCHG8+c8eS9e.nNFMFY3h7CI3zJp
134de0 44 43 35 66 63 67 4a 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 DC5fcgJCNs2ebb0gIFVbPv/ErfF6adul
134e00 5a 6b 4d 56 38 67 7a 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 ZkMV8gzURZVE=.-----END.CERTIFICA
134e20 54 45 2d 2d 2d 2d 2d 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 TE-----..Baltimore.CyberTrust.Ro
134e40 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 0a 2d 2d 2d ot.=========================.---
134e60 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 64 7a 43 --BEGIN.CERTIFICATE-----.MIIDdzC
134e80 43 41 6c 2b 67 41 77 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 CAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0
134ea0 42 41 51 55 46 41 44 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 BAQUFADBaMQswCQYDVQQGEwJJRTESMBA
134ec0 47 41 31 55 45 0a 43 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 GA1UE.ChMJQmFsdGltb3JlMRMwEQYDVQ
134ee0 51 4c 45 77 70 44 65 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 QLEwpDeWJlclRydXN0MSIwIAYDVQQDEx
134f00 6c 43 59 57 78 30 61 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 lCYWx0aW1vcmUgQ3li.ZXJUcnVzdCBSb
134f20 32 39 30 4d 42 34 58 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 290MB4XDTAwMDUxMjE4NDYwMFoXDTI1M
134f40 44 55 78 4d 6a 49 7a 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 DUxMjIzNTkwMFowWjELMAkGA1UEBhMC.
134f60 53 55 55 78 45 6a 41 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 SUUxEjAQBgNVBAoTCUJhbHRpbW9yZTET
134f80 4d 42 45 47 41 31 55 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 MBEGA1UECxMKQ3liZXJUcnVzdDEiMCAG
134fa0 41 31 55 45 41 78 4d 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 A1UEAxMZQmFs.dGltb3JlIEN5YmVyVHJ
134fc0 31 63 33 51 67 55 6d 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 1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQE
134fe0 42 42 51 41 44 67 67 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 BBQADggEPADCCAQoCggEBAKME.uyKrmD
135000 31 58 36 43 5a 79 6d 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 1X6CZymrV51Cni4eiVgLGw41uOKymaZN
135020 2b 68 58 65 32 77 43 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 +hXe2wCQVt2yguzmKiYv60iNoS6zjrIZ
135040 33 41 51 53 73 42 0a 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 3AQSsB.UnuId9Mcj8e6uYi1agnnc+gRQ
135060 4b 66 52 7a 4d 70 69 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 KfRzMpijS3ljwumUNKoUMMo6vWrJYeKm
135080 70 59 63 71 57 65 34 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 pYcqWe4PwzV9/lSEy/C.G9VwcPCPwBLK
1350a0 42 73 75 61 34 64 6e 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 Bsua4dnKM3p31vjsufFoREJIE9LAwqSu
1350c0 58 6d 44 2b 74 71 59 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 XmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9
1350e0 0a 58 62 49 47 65 76 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 .XbIGevOF6uvUA65ehD5f/xXtabz5OTZ
135100 79 64 63 39 33 55 6b 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 ydc93Uk3zyZAsuT3lySNTPx8kmCFcB5k
135120 70 76 63 59 36 37 4f 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 pvcY67Oduhjpr.l3RjM71oGDHweI12v/
135140 79 65 6a 6c 30 71 68 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 yejl0qhqdNkNwnGjkCAwEAAaNFMEMwHQ
135160 59 44 56 52 30 4f 42 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 YDVR0OBBYEFOWdWTCCR1jMrPoI.VDaGe
135180 7a 71 31 42 45 33 77 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 zq1BE3wMBIGA1UdEwEB/wQIMAYBAf8CA
1351a0 51 4d 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 71 47 53 QMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGS
1351c0 49 62 33 44 51 45 42 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 Ib3DQEB.BQUAA4IBAQCFDF2O5G9RaEIF
1351e0 6f 4e 32 37 54 79 63 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 oN27TyclhAO992T9Ldcw46QQF+vaKSm2
135200 65 54 39 32 39 68 6b 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 eT929hkTI7gQCvlYpNRh.cL0EYWoSihf
135220 56 43 72 33 46 76 44 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 VCr3FvDB81ukMJY2GQE/szKN+OMY3EU/
135240 74 33 57 67 78 6a 6b 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 t3WgxjkzSswF07r51XgdIGn9w/xZchMB
135260 35 0a 68 62 67 46 2f 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 5.hbgF/X++ZRGjD8ACtPhSNzkE1akxeh
135280 69 2f 6f 43 72 30 45 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 i/oCr0Epn3o0WC4zxe9Z2etciefC7IpJ
1352a0 35 4f 43 42 52 4c 62 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 5OCBRLbf1wbWsa.Y71k5h+3zvDyny67G
1352c0 37 66 79 55 49 68 7a 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 7fyUIhzksLi4xaNmjICq44Y3ekQEe5+N
1352e0 61 75 51 72 7a 34 77 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 auQrz4wlHrQMz2nZQ/1/I6eYs9H.RCwB
135300 58 62 73 64 74 54 4c 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 XbsdtTLSR9I4LtD+gdwyah617jzV/OeB
135320 48 52 6e 44 4a 45 4c 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 HRnDJELqYzmp.-----END.CERTIFICAT
135340 45 2d 2d 2d 2d 2d 0a 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 E-----..AddTrust.Low-Value.Servi
135360 63 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 ces.Root.=======================
135380 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
1353a0 2d 2d 2d 2d 2d 0a 4d 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 -----.MIIEGDCCAwCgAwIBAgIBATANBg
1353c0 6b 71 68 6b 69 47 39 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 kqhkiG9w0BAQUFADBlMQswCQYDVQQGEw
1353e0 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 51 67 51 JTRTEUMBIGA1UEChML.QWRkVHJ1c3QgQ
135400 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 52 55 55 UIxHTAbBgNVBAsTFEFkZFRydXN0IFRUU
135420 43 42 4f 5a 58 52 33 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 CBOZXR3b3JrMSEwHwYDVQQDExhBZGRU.
135440 63 6e 56 7a 64 43 42 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 cnVzdCBDbGFzcyAxIENBIFJvb3QwHhcN
135460 4d 44 41 77 4e 54 4d 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 MDAwNTMwMTAzODMxWhcNMjAwNTMwMTAz
135480 4f 44 4d 78 57 6a 42 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 ODMxWjBlMQsw.CQYDVQQGEwJTRTEUMBI
1354a0 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 67 4e GA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgN
1354c0 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 0a 5a 58 52 33 62 33 VBAsTFEFkZFRydXN0IFRUUCBO.ZXR3b3
1354e0 4a 72 4d 53 45 77 48 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 JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbG
135500 46 7a 63 79 41 78 49 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 FzcyAxIENBIFJvb3QwggEiMA0GCSqGSI
135520 62 33 44 51 45 42 0a 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 b3DQEB.AQUAA4IBDwAwggEKAoIBAQCWl
135540 74 51 68 53 57 44 69 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 tQhSWDia+hBBwzexODcEyPNwTXH+9ZOE
135560 51 70 6e 58 76 55 47 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 QpnXvUGW2ulCDtbKRY6.54eyNAbFvAWl
135580 41 33 79 43 79 79 6b 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 A3yCyykQruGIgb3WntP+LVbBFc7jJp0V
1355a0 4c 68 44 37 42 6f 38 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 LhD7Bo8wBN6ntGO0/7Gcrjyvd7ZWxbWr
1355c0 0a 6f 75 6c 70 4f 6a 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 .oulpOj0OM3kyP3CCkplhbY0wCI9xP6Z
1355e0 49 56 78 6e 34 4a 64 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 IVxn4JdxLZlyldI+Yrsj5wAYi56xz36U
135600 75 2b 31 4c 63 73 52 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 u+1LcsRVlIPo1.Zmne3yzxbrww2ywkEt
135620 76 72 4e 54 56 6f 6b 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 vrNTVokMsAsJchPXQhI2U0K7t4WaPW4X
135640 59 35 6d 71 52 4a 6a 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 Y5mqRJjox0r26kmqPZm9I4XJui.GMx1I
135660 34 53 2b 36 2b 4a 4e 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 4S+6+JNM3GOGvDC+Mcdoq0Dlyz4zyXG9
135680 72 67 6b 4d 62 46 6a 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 rgkMbFjXZJ/Y/AlyVMuH79NAgMBAAGjg
1356a0 64 49 77 67 63 38 77 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 dIwgc8w.HQYDVR0OBBYEFJWxtPCUtr3H
1356c0 32 74 45 52 43 53 47 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 2tERCSG+wa9J/RB7MAsGA1UdDwQEAwIB
1356e0 42 6a 41 50 42 67 4e 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 BjAPBgNVHRMBAf8EBTAD.AQH/MIGPBgN
135700 56 48 53 4d 45 67 59 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 VHSMEgYcwgYSAFJWxtPCUtr3H2tERCSG
135720 2b 77 61 39 4a 2f 52 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 +wa9J/RB7oWmkZzBlMQswCQYDVQQGEwJ
135740 54 0a 52 54 45 55 4d 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 T.RTEUMBIGA1UEChMLQWRkVHJ1c3QgQU
135760 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 52 55 55 43 IxHTAbBgNVBAsTFEFkZFRydXN0IFRUUC
135780 42 4f 5a 58 52 33 62 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 BOZXR3b3JrMSEw.HwYDVQQDExhBZGRUc
1357a0 6e 56 7a 64 43 42 44 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 nVzdCBDbGFzcyAxIENBIFJvb3SCAQEwD
1357c0 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 78 74 0a 5a 42 73 66 QYJKoZIhvcNAQEFBQADggEBACxt.ZBsf
1357e0 7a 51 33 64 75 51 48 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 zQ3duQH6lmM0MkhHma6X7f1yFqZzR1r0
135800 36 39 33 70 39 64 62 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 693p9db7RcwpiURdv0Y5PejuvE1Uhh4d
135820 62 4f 4d 58 4a 30 50 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 bOMXJ0Ph.iVYrqW9yTkkz43J8KiOavD7
135840 2f 4b 43 72 74 6f 2f 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 /KCrto/8cI7pDVwlnTUtiBi34/2ydYB7
135860 59 48 45 74 39 74 54 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 YHEt9tTEv2dB8Xfjea4MY.eDdXL+gzB2
135880 66 66 48 73 64 72 4b 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 ffHsdrKpV2ro9Xo/D0UrSpUwjP4E/Tel
1358a0 4f 4c 2f 62 73 63 56 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 OL/bscVjby/rK25Xa71SJlpz/+0WatC7
1358c0 78 72 0a 6d 59 62 76 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 xr.mYbvP33zGDLKe8bjq2RGlfgmadlVg
1358e0 33 73 73 6c 67 66 2f 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 3sslgf/WSxEo8bl6ancoWOAWiFeIc9TV
135900 50 43 36 62 34 6e 62 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 PC6b4nbqKqVz4vj.ccweGyBECMB6tkD9
135920 78 4f 51 31 34 52 30 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 xOQ14R0WHNC8K47Wcdk=.-----END.CE
135940 52 54 49 46 49 43 41 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 RTIFICATE-----..AddTrust.Externa
135960 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 3d 3d 3d 3d 0a 2d 2d l.Root.======================.--
135980 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 4e 6a ---BEGIN.CERTIFICATE-----.MIIENj
1359a0 43 43 41 78 36 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 CCAx6gAwIBAgIBATANBgkqhkiG9w0BAQ
1359c0 55 46 41 44 42 76 4d 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 UFADBvMQswCQYDVQQGEwJTRTEUMBIGA1
1359e0 55 45 43 68 4d 4c 0a 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 UEChML.QWRkVHJ1c3QgQUIxJjAkBgNVB
135a00 41 73 54 48 55 46 6b 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 AsTHUFkZFRydXN0IEV4dGVybmFsIFRUU
135a20 43 42 4f 5a 58 52 33 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 CBOZXR3b3JrMSIwIAYD.VQQDExlBZGRU
135a40 63 6e 56 7a 64 43 42 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 cnVzdCBFeHRlcm5hbCBDQSBSb290MB4X
135a60 44 54 41 77 4d 44 55 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 DTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEw
135a80 0a 4e 44 67 7a 4f 46 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 .NDgzOFowbzELMAkGA1UEBhMCU0UxFDA
135aa0 53 42 67 4e 56 42 41 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 SBgNVBAoTC0FkZFRydXN0IEFCMSYwJAY
135ac0 44 56 51 51 4c 45 78 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 DVQQLEx1BZGRU.cnVzdCBFeHRlcm5hbC
135ae0 42 55 56 46 41 67 54 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 BUVFAgTmV0d29yazEiMCAGA1UEAxMZQW
135b00 52 6b 56 48 4a 31 63 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 RkVHJ1c3QgRXh0ZXJuYWwgQ0Eg.Um9vd
135b20 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 45 50 41 DCCASIwDQYJKoZIhvcNAQEBBQADggEPA
135b40 44 43 43 41 51 6f 43 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 DCCAQoCggEBALf3GjPm8gAELTngTlvtH
135b60 37 78 73 44 38 32 31 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 7xsD821.+iO2zt6bETOXpClMfZOfvUq8
135b80 6b 2b 30 44 47 75 4f 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 k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9
135ba0 75 4d 71 2f 4e 7a 67 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 uMq/NzgtHj6RQa1wVsfw.Tz/oMp50ysi
135bc0 51 56 4f 6e 47 58 77 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 QVOnGXw94nZpAPA6sYapeFI+eh6FqUNz
135be0 58 6d 6b 36 76 42 62 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 Xmk6vBbOmcZSccbNQYArHE504B4YCqOm
135c00 6f 0a 61 53 59 59 6b 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 o.aSYYkKtMsE8jqzpPhNjfzp/haW+710
135c20 4c 58 61 30 54 6b 78 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 LXa0Tkx63ubUFfclpxCDezeWWkWaCUN/
135c40 63 41 4c 77 33 43 6b 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 cALw3CknLa0Dhy.2xSoRcRdKn23tNbE7
135c60 71 7a 4e 45 30 53 33 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 qzNE0S3ySvdQwAl+mG5aWpYIxG3pzOPV
135c80 6e 56 5a 39 63 30 70 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 nVZ9c0p10a3CitlttNCbxWyuHv7.7+ld
135ca0 55 39 55 30 57 69 63 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 U9U0WicCAwEAAaOB3DCB2TAdBgNVHQ4E
135cc0 46 67 51 55 72 62 32 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 FgQUrb2YejS0Jvf6xCZU7wO94CTLVBow
135ce0 43 77 59 44 56 52 30 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 CwYDVR0P.BAQDAgEGMA8GA1UdEwEB/wQ
135d00 46 4d 41 4d 42 41 66 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 FMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2
135d20 59 65 6a 53 30 4a 76 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 YejS0Jvf6xCZU7wO94CTL.VBqhc6RxMG
135d40 38 78 43 7a 41 4a 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 8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEw
135d60 74 42 5a 47 52 55 63 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 tBZGRUcnVzdCBBQjEmMCQGA1UECxMdQW
135d80 52 6b 0a 56 48 4a 31 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 Rk.VHJ1c3QgRXh0ZXJuYWwgVFRQIE5ld
135da0 48 64 76 63 6d 73 78 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 HdvcmsxIjAgBgNVBAMTGUFkZFRydXN0I
135dc0 45 56 34 64 47 56 79 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 EV4dGVybmFsIENB.IFJvb3SCAQEwDQYJ
135de0 4b 6f 5a 49 68 76 63 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 KoZIhvcNAQEFBQADggEBALCb4IUlwtYj
135e00 34 67 2b 57 42 70 4b 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 4g+WBpKdQZic2YR5gdkeWxQHIzZl.j7D
135e20 59 64 37 75 73 51 57 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 Yd7usQWxHYINRsPkyPef89iYTx4AWpb9
135e40 61 2f 49 66 50 65 48 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 a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x
135e60 2b 54 75 35 77 2f 52 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 +Tu5w/Rw5.6wwCURQtjr0W4MHfRnXnJK
135e80 33 73 39 45 4b 30 68 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 3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhem
135ea0 50 52 35 72 75 68 78 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 PR5ruhxSvCNr4TDea9Y355.e6cJDUCra
135ec0 74 32 50 69 73 50 32 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 t2PisP29owaQgVR1EX1n6diIWgVIEM8m
135ee0 65 64 38 76 53 54 59 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 ed8vSTYqZEXc4g/VhsxOBi0cQ+azcgOn
135f00 6f 34 75 0a 47 2b 47 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 o4u.G+GMmIPLHzHxREzGBHNJdmAPx/i9
135f20 46 34 42 72 4c 75 6e 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 F4BrLunMTA5amnkPIAou1Z5jJh5VkpTY
135f40 67 68 64 61 65 39 43 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 ghdae9C8x49OhgQ=.-----END.CERTIF
135f60 49 43 41 54 45 2d 2d 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 ICATE-----..AddTrust.Public.Serv
135f80 69 63 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 ices.Root.======================
135fa0 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--
135fc0 2d 2d 2d 0a 4d 49 49 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 ---.MIIEFTCCAv2gAwIBAgIBATANBgkq
135fe0 68 6b 69 47 39 77 30 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 hkiG9w0BAQUFADBkMQswCQYDVQQGEwJT
136000 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 51 67 51 55 49 RTEUMBIGA1UEChML.QWRkVHJ1c3QgQUI
136020 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 52 55 55 43 42 xHTAbBgNVBAsTFEFkZFRydXN0IFRUUCB
136040 4f 5a 58 52 33 62 33 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 OZXR3b3JrMSAwHgYDVQQDExdBZGRU.cn
136060 56 7a 64 43 42 51 64 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 VzdCBQdWJsaWMgQ0EgUm9vdDAeFw0wMD
136080 41 31 4d 7a 41 78 4d 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 A1MzAxMDQxNTBaFw0yMDA1MzAxMDQxNT
1360a0 42 61 4d 47 51 78 43 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 BaMGQxCzAJ.BgNVBAYTAlNFMRQwEgYDV
1360c0 51 51 4b 45 77 74 42 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 QQKEwtBZGRUcnVzdCBBQjEdMBsGA1UEC
1360e0 78 4d 55 51 57 52 6b 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 xMUQWRkVHJ1c3QgVFRQIE5l.dHdvcmsx
136100 49 44 41 65 42 67 4e 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 IDAeBgNVBAMTF0FkZFRydXN0IFB1Ymxp
136120 59 79 42 44 51 53 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 YyBDQSBSb290MIIBIjANBgkqhkiG9w0B
136140 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 36 52 6f 77 6a 34 4f AQEF.AAOCAQ8AMIIBCgKCAQEA6Rowj4O
136160 49 46 4d 45 67 32 44 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 IFMEg2Dybjxt+A3S72mnTRqX4jsIMEZB
136180 52 70 53 39 6d 56 45 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 RpS9mVEBV6tsfSlbu.nyNu9DnLoblv8n
1361a0 37 35 58 59 63 6d 59 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 75XYcmYZ4c+OLspoH4IcUkzBEMP9smcn
1361c0 72 48 41 5a 63 48 46 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 rHAZcHF/nXGCwwfQ56HmIexkvA/X1i.d
1361e0 39 4e 45 48 69 66 32 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 9NEHif2P0tEs7c42TkfYNVRknMDtABp4
136200 2f 4d 55 54 75 37 52 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 /MUTu7R3AnPdzRGULD4EfL+OHn3Bzn+U
136220 5a 4b 58 43 31 73 49 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 ZKXC1sIXzSG.Aa2Il+tmzV7R/9x98oTa
136240 75 6e 65 74 33 49 41 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 unet3IAIx6eH1lWfl2royBFkuucZKT8R
136260 73 33 69 51 68 43 42 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 s3iQhCBSWxHveNCD9tVIkNAw.HM+A+WD
136280 2b 65 65 53 49 38 74 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 +eeSI8t0A65RF62WUaUC6wNW0uLp9BBG
1362a0 6f 36 7a 45 46 6c 70 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 o6zEFlpROWCGOn9Bg/QIDAQABo4HRMIH
1362c0 4f 4d 42 30 47 0a 41 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 OMB0G.A1UdDgQWBBSBPjfYkrAfd59ctK
1362e0 74 7a 71 75 66 32 4e 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 tzquf2NGAv+jALBgNVHQ8EBAMCAQYwDw
136300 59 44 56 52 30 54 41 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 YDVR0TAQH/BAUwAwEB./zCBjgYDVR0jB
136320 49 47 47 4d 49 47 44 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 IGGMIGDgBSBPjfYkrAfd59ctKtzquf2N
136340 47 41 76 2b 71 46 6f 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 GAv+qFopGYwZDELMAkGA1UEBhMCU0Ux.
136360 46 44 41 53 42 67 4e 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 FDASBgNVBAoTC0FkZFRydXN0IEFCMR0w
136380 47 77 59 44 56 51 51 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 GwYDVQQLExRBZGRUcnVzdCBUVFAgTmV0
1363a0 64 32 39 79 61 7a 45 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 d29yazEgMB4G.A1UEAxMXQWRkVHJ1c3Q
1363c0 67 55 48 56 69 62 47 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 gUHVibGljIENBIFJvb3SCAQEwDQYJKoZ
1363e0 49 68 76 63 4e 41 51 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 IhvcNAQEFBQADggEBAAP3FUr4.JNojVh
136400 61 54 64 74 30 32 4b 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 aTdt02KLmuG7jD8WS6IBh4lSknVwW8fC
136420 72 30 75 56 46 56 32 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 r0uVFV2ocC3g8WFzH4qnkuCRO7r7IgGR
136440 4c 6c 6b 2f 6c 4c 0a 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 Llk/lL.+YPoRNWyQSW/iHVv/xD8SlTQX
136460 2f 44 36 37 7a 5a 7a 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 /D67zZzfRs2RcYhbbQVuE7PnFylPVoAj
136480 67 62 6a 50 47 73 79 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 gbjPGsye/Kf8Lb93/Ao.GEjwxrzQvzSA
1364a0 6c 73 4a 4b 73 57 32 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 lsJKsW2Ox5BF3i9nrEUEo3rcVZLJR2bY
1364c0 47 6f 7a 48 37 5a 78 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 GozH7ZxOmuASu7VqTITh4SINhwBk/ox9
1364e0 0a 59 6a 6c 6c 70 75 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 .Yjllpu9CtoAlEmEBqCQTcAARJl/6NVD
136500 46 53 4d 77 47 52 2b 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 FSMwGR+gn2HCNX2TmoUQmXiLsks3/Qpp
136520 45 49 57 31 63 78 65 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 EIW1cxeMiHV9H.EufOX1362KqxMy3Zdv
136540 4a 4f 4f 6a 4d 4d 4b 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 JOOjMMK7MtkAY=.-----END.CERTIFIC
136560 41 54 45 2d 2d 2d 2d 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 ATE-----..AddTrust.Qualified.Cer
136580 74 69 66 69 63 61 74 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 tificates.Root.=================
1365a0 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
1365c0 45 52 54 49 46 49 43 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 ERTIFICATE-----.MIIEHjCCAwagAwIB
1365e0 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 6e 4d 51 73 77 AgIBATANBgkqhkiG9w0BAQUFADBnMQsw
136600 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 51 57 52 CQYDVQQGEwJTRTEUMBIGA1UEChML.QWR
136620 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 46 6b 5a 46 52 kVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFR
136640 79 64 58 4e 30 49 46 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 ydXN0IFRUUCBOZXR3b3JrMSMwIQYDVQQ
136660 44 45 78 70 42 5a 47 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 DExpBZGRU.cnVzdCBRdWFsaWZpZWQgQ0
136680 45 67 55 6d 39 76 64 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 EgUm9vdDAeFw0wMDA1MzAxMDQ0NTBaFw
1366a0 30 79 4d 44 41 31 4d 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 0yMDA1MzAxMDQ0NTBaMGcx.CzAJBgNVB
1366c0 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 6e 56 7a 64 AYTAlNFMRQwEgYDVQQKEwtBZGRUcnVzd
1366e0 43 42 42 51 6a 45 64 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 CBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgV
136700 46 52 51 0a 49 45 35 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 FRQ.IE5ldHdvcmsxIzAhBgNVBAMTGkFk
136720 5a 46 52 79 64 58 4e 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 ZFRydXN0IFF1YWxpZmllZCBDQSBSb290
136740 4d 49 49 42 49 6a 41 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 MIIBIjANBgkqhkiG.9w0BAQEFAAOCAQ8
136760 41 4d 49 49 42 43 67 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 AMIIBCgKCAQEA5B6a/twJWoekn0e+EV+
136780 76 68 44 54 62 59 6a 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 vhDTbYjx5eLfpMLXsDBwqxBb/4Oxx.64
1367a0 72 31 45 57 37 74 54 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 r1EW7tTw2R0hIYLUkVAcKkIhPHEWT/Ih
1367c0 4b 61 75 59 35 63 4c 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 KauY5cLwjPcWqzZwFZ8V1G87B4pfYOQn
1367e0 72 6a 66 78 76 4d 30 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 rjfxvM0PC3.KP0q6p6zsLkEqv32x7Sxu
136800 43 71 67 2b 31 6a 78 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 Cqg+1jxGaBvcCV+PmlKfw8i2O+tCBGaK
136820 5a 6e 68 71 6b 52 46 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 ZnhqkRFmhJePp1tUvznoD1o.L/BLcHwT
136840 4f 4b 32 38 46 53 58 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 OK28FSXx1s6rosAx1i+f4P8UWfyEk9mH
136860 66 45 78 55 45 2b 75 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 fExUE+uf0S0R+Bg6Ot4l2ffTQO2kBhLE
136880 4f 2b 47 52 0a 77 56 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 O+GR.wVY18BTcZTYJbqukB8c10cIDMzZ
1368a0 62 64 53 5a 74 51 76 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 bdSZtQvESa0NvS3GU+jQd7RNuyoB/mC9
1368c0 73 75 57 58 59 36 51 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 suWXY6QIDAQABo4HU.MIHRMB0GA1UdDg
1368e0 51 57 42 42 51 35 6c 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 QWBBQ5lYtii1zJ1IC6WA+XPxUIQ8yYpz
136900 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 51 48 2f 0a 42 ALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/.B
136920 41 55 77 41 77 45 42 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 AUwAwEB/zCBkQYDVR0jBIGJMIGGgBQ5l
136940 59 74 69 69 31 7a 4a 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 Ytii1zJ1IC6WA+XPxUIQ8yYp6FrpGkwZ
136960 7a 45 4c 4d 41 6b 47 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 zELMAkGA1UE.BhMCU0UxFDASBgNVBAoT
136980 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 4c 45 78 52 42 C0FkZFRydXN0IEFCMR0wGwYDVQQLExRB
1369a0 5a 47 52 55 63 6e 56 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 ZGRUcnVzdCBUVFAgTmV0d29y.azEjMCE
1369c0 47 41 31 55 45 41 78 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 GA1UEAxMaQWRkVHJ1c3QgUXVhbGlmaWV
1369e0 6b 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 45 kIENBIFJvb3SCAQEwDQYJKoZIhvcNAQE
136a00 46 42 51 41 44 0a 67 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 FBQAD.ggEBABmrder4i2VhlRO6aQTvhs
136a20 6f 54 6f 4d 65 71 54 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 oToMeqT2QbPxj2qC0sVY8FtzDqQmodwC
136a40 56 52 4c 61 65 2f 44 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 VRLae/DLPt7wh/bDxG.GuoYQ992zPlmh
136a60 70 77 73 61 50 58 70 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 pwsaPXpF/gxsxjE1kh9I0xowX67ARRvx
136a80 64 6c 75 33 72 73 45 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 dlu3rsEQmr49lx95dr6h+sNNVJn0J6X.
136aa0 64 67 57 54 50 35 58 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 dgWTP5XHAeZpVTh/EGGZyeNfpso+gmNI
136ac0 71 75 49 49 53 44 36 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 quIISD6q8rKFYqa0p9m9N5xotS1WfbC3
136ae0 50 36 43 78 42 39 62 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 P6CxB9bpT9ze.RXEwMn8bLgn5v1Kh7sK
136b00 41 50 67 5a 63 4c 6c 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 APgZcLlVAwRv1cEWw3F369nJad9Jjzc9
136b20 59 69 51 42 43 59 7a 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 YiQBCYz95OdBEsIJuQRno3eDB.iFrRHn
136b40 47 54 48 79 51 77 64 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 GTHyQwdOUeqN48Jzd/g66ed8/wMLH/S5
136b60 6e 6f 78 71 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 noxqE=.-----END.CERTIFICATE-----
136b80 0a 0a 45 6e 74 72 75 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 ..Entrust.Root.Certification.Aut
136ba0 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.=========================
136bc0 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
136be0 54 45 2d 2d 2d 2d 2d 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 TE-----.MIIEkTCCA3mgAwIBAgIERWtQ
136c00 56 44 41 4e 42 67 6b 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 VDANBgkqhkiG9w0BAQUFADCBsDELMAkG
136c20 41 31 55 45 42 68 4d 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 A1UEBhMCVVMxFjAUBgNV.BAoTDUVudHJ
136c40 31 63 33 51 73 49 45 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 1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5
136c60 6c 62 6e 52 79 64 58 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 lbnRydXN0Lm5ldC9DUFMgaXMgaW5jb3J
136c80 77 0a 62 33 4a 68 64 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 w.b3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB
136ca0 30 47 41 31 55 45 43 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 0GA1UECxMWKGMpIDIwMDYgRW50cnVzdC
136cc0 77 67 53 57 35 6a 4c 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 wgSW5jLjEtMCsG.A1UEAxMkRW50cnVzd
136ce0 43 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 CBSb290IENlcnRpZmljYXRpb24gQXV0a
136d00 47 39 79 61 58 52 35 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 G9yaXR5MB4XDTA2MTEyNzIwMjM0.MloX
136d20 44 54 49 32 4d 54 45 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 DTI2MTEyNzIwNTM0MlowgbAxCzAJBgNV
136d40 42 41 59 54 41 6c 56 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 BAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0
136d60 4c 43 42 4a 62 6d 4d 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 LCBJbmMu.MTkwNwYDVQQLEzB3d3cuZW5
136d80 30 63 6e 56 7a 64 43 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 0cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9
136da0 79 59 58 52 6c 5a 43 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 yYXRlZCBieSByZWZlcmVu.Y2UxHzAdBg
136dc0 4e 56 42 41 73 54 46 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 NVBAsTFihjKSAyMDA2IEVudHJ1c3QsIE
136de0 6c 75 59 79 34 78 4c 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 luYy4xLTArBgNVBAMTJEVudHJ1c3QgUm
136e00 39 76 0a 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 47 68 76 63 9v.dCBDZXJ0aWZpY2F0aW9uIEF1dGhvc
136e20 6d 6c 30 65 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 ml0eTCCASIwDQYJKoZIhvcNAQEBBQADg
136e40 67 45 50 41 44 43 43 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 gEPADCCAQoCggEB.ALaVtkNC+sZtKm9I
136e60 33 35 52 4d 4f 56 63 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 35RMOVcF7sN5EUFoNu3s/poBj6E4KPz3
136e80 45 45 5a 6d 4c 6b 30 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 EEZmLk0eGrEaTsbRwJWIsMn/MYsz.A9u
136ea0 33 67 33 73 2b 49 49 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 3g3s+IIRe7bJWKKf44LlAcTfFy0cOlyp
136ec0 6f 77 43 4b 56 59 68 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 owCKVYhXbR9n10Cv/gkvJrT7eTNuQgFA
136ee0 2f 43 59 71 45 41 4f 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 /CYqEAOww.Cj0Yzfv9KlmaI5UXLEWeH2
136f00 35 44 65 57 30 4d 58 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 5DeW0MXJj+SKfFI0dcXv1u5x609mhF0Y
136f20 61 44 57 36 4b 4b 6a 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 aDW6KKjbHjKYD+JXGIrb68.j6xSlkuqU
136f40 59 33 6b 45 7a 45 5a 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 Y3kEzEZ6E5Nn9uss2rVvDlUccp6en+Q3
136f60 58 30 64 67 4e 6d 42 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 X0dgNmBu1kmwhH+5pPi94DkZfs0Nw4pg
136f80 48 42 4e 0a 72 7a 69 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 HBN.rziGLp5/V6+eF67rHMsoIV+2HNjn
136fa0 6f 67 51 69 2b 64 50 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 ogQi+dPa2MsCAwEAAaOBsDCBrTAOBgNV
136fc0 48 51 38 42 41 66 38 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 HQ8BAf8EBAMCAQYw.DwYDVR0TAQH/BAU
136fe0 77 41 77 45 42 2f 7a 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 wAwEB/zArBgNVHRAEJDAigA8yMDA2MTE
137000 79 4e 7a 49 77 4d 6a 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 yNzIwMjM0MlqBDzIwMjYxMTI3MjA1.Mz
137020 51 79 57 6a 41 66 42 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 QyWjAfBgNVHSMEGDAWgBRokORnpKZTgM
137040 65 47 5a 71 54 78 39 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 eGZqTx90tD+4S9bTAdBgNVHQ4EFgQUaJ
137060 44 6b 5a 36 53 6d 55 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 DkZ6SmU4DH.hmak8fdLQ/uEvW0wHQYJK
137080 6f 5a 49 68 76 5a 39 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 oZIhvZ9B0EABBAwDhsIVjcuMTo0LjADA
1370a0 67 53 51 4d 41 30 47 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 gSQMA0GCSqGSIb3DQEBBQUA.A4IBAQCT
1370c0 31 44 43 77 31 77 4d 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 1DCw1wMgKtD5Y+iRDAUgqV8ZyntyTtSx
1370e0 32 39 43 57 2b 31 52 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 29CW+1RaGSwMCPeyvIWonX9tO1KzKtvn
137100 31 49 53 4d 0a 59 2f 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 1ISM.Y/YPyyYBkVBs9F8U4pN0wBOeMDp
137120 51 34 37 52 67 78 52 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 Q47RgxRzwIkSNcUesyBrJ6ZuaAGAT/3B
137140 2b 58 78 46 4e 53 52 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 +XxFNSRuzFVJ7yVTa.v52Vr2ua2J7p8e
137160 52 44 6a 65 49 52 52 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 RDjeIRRDq/r72DQnNSi6q7pynP9WQcCk
137180 33 52 76 4b 71 73 6e 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 3RvKqsnyrQ/39/2n3qse0wJcGE2jTS.W
1371a0 33 69 44 56 75 79 63 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 3iDVuycNsMm4hH2Z0kdkquM++v/eu6FS
1371c0 71 64 51 67 50 43 6e 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 qdQgPCnXEqULl8FmTxSQeDNtGPPAUO6n
1371e0 49 50 63 6a 32 41 37 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 IPcj2A781q0.tHuu2guQOHXvgR1m0vdX
137200 63 44 61 7a 76 2f 77 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 cDazv/wor3ElhVsT/h5/WrQ8.-----EN
137220 44 20 43 45 52 54 49 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 D.CERTIFICATE-----..RSA.Security
137240 20 32 30 34 38 20 76 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 .2048.v3.====================.--
137260 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 59 54 ---BEGIN.CERTIFICATE-----.MIIDYT
137280 43 43 41 6b 6d 67 41 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 CCAkmgAwIBAgIQCgEBAQAAAnwAAAAKAA
1372a0 41 41 41 6a 41 4e 42 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 AAAjANBgkqhkiG9w0BAQUFADA6MRkwFw
1372c0 59 44 56 51 51 4b 0a 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 YDVQQK.ExBSU0EgU2VjdXJpdHkgSW5jM
1372e0 52 30 77 47 77 59 44 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 R0wGwYDVQQLExRSU0EgU2VjdXJpdHkgM
137300 6a 41 30 4f 43 42 57 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 jA0OCBWMzAeFw0wMTAy.MjIyMDM5MjNa
137320 46 77 30 79 4e 6a 41 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 Fw0yNjAyMjIyMDM5MjNaMDoxGTAXBgNV
137340 42 41 6f 54 45 46 4a 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 BAoTEFJTQSBTZWN1cml0eSBJbmMxHTAb
137360 0a 42 67 4e 56 42 41 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 .BgNVBAsTFFJTQSBTZWN1cml0eSAyMDQ
137380 34 49 46 59 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 4IFYzMIIBIjANBgkqhkiG9w0BAQEFAAO
1373a0 43 41 51 38 41 4d 49 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 CAQ8AMIIBCgKC.AQEAt49VcdKA3Xtpea
1373c0 66 77 47 46 41 79 50 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 fwGFAyPGJn9gqVB93mG/Oe2dJBVGutn3
1373e0 79 2b 47 63 33 37 52 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 y+Gc37RqtBaB4Y6lXIL5F4iSj7.Jylg/
137400 39 2b 50 6a 44 76 4a 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 9+PjDvJSZu1pJTOAeo+tWN7fyb9Gd3AI
137420 62 32 45 30 53 31 50 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 b2E0S1PRsNO3Ng3OTsor8udGuorryGlw
137440 53 4d 69 75 4c 67 62 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 SMiuLgb.WhOHV4PR8CDn6E8jQrAApX2J
137460 36 65 6c 68 63 35 53 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 6elhc5SYcSa8LWrg903w8bYqODGBDSnh
137480 41 4d 46 52 44 30 78 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 AMFRD0xS+ARaqn1y07iH.KrtjEAMqs6F
1374a0 50 44 56 70 65 52 72 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 PDVpeRrc9DvV07Jmf+T0kgYim3WBU6JU
1374c0 32 50 63 59 4a 6b 35 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 2PcYJk5qjEoAAVZkZR73QpXzDuvsf9/U
1374e0 50 0a 2b 4b 79 35 74 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 P.+Ky5tfQ3mBMY3oVbtwyCO4dvlTlYMN
137500 70 75 41 57 67 58 49 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 puAWgXIszACwIDAQABo2MwYTAPBgNVHR
137520 4d 42 41 66 38 45 42 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 MBAf8EBTADAQH/.MA4GA1UdDwEB/wQEA
137540 77 49 42 42 6a 41 66 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 wIBBjAfBgNVHSMEGDAWgBQHw1EwpKrpR
137560 61 34 31 4a 50 72 2f 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 a41JPr/JCwz0LGdjDAdBgNVHQ4E.FgQU
137580 42 38 4e 52 4d 4b 53 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 B8NRMKSq6UWuNST6/yQsM9CxnYwwDQYJ
1375a0 4b 6f 5a 49 68 76 63 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 KoZIhvcNAQEFBQADggEBAF8+hnZuuDU8
1375c0 54 6a 59 63 48 6e 6d 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 TjYcHnmY.v/3VEhF5Ug7uMYm83X/50cY
1375e0 56 49 65 69 4b 41 56 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 VIeiKAVQNOvtUudZj1LGqlk2iQk3UUx+
137600 4c 45 4e 35 2f 5a 62 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 LEN5/Zb5gEydxiKRz44Rj.0aRV4VCT5h
137620 73 4f 65 64 42 6e 76 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 sOedBnvEbIvz8XDZXmxpBp3ue0L96Vfd
137640 41 53 50 7a 30 2b 66 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 ASPz0+f00/FGj1EVDVwfSQpQgdMWD/YI
137660 77 6a 0a 56 41 71 76 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 wj.VAqv/qFuxdF6Kmh4zx6CCiC0H63lh
137680 62 4a 71 61 48 56 4f 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 bJqaHVOrSU3lIW+vaHU6rcMSzyd6BIA8
1376a0 46 2b 73 44 65 47 73 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 F+sDeGscGNz9395.nzIlQnQFgCi/vcEk
1376c0 6c 6c 67 56 73 52 63 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 llgVsRch6YlL2weIZ/QVrXA+L02FO8K3
1376e0 32 2f 36 59 61 43 4f 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 2/6YaCOJ4XQP3vTFhGMpG8zLB8kA.pKn
137700 58 77 69 4a 50 5a 39 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 XwiJPZ9d37CAFYd4=.-----END.CERTI
137720 46 49 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 0a FICATE-----..GeoTrust.Global.CA.
137740 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
137760 52 54 49 46 49 43 41 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 RTIFICATE-----.MIIDVDCCAjygAwIBA
137780 67 49 44 41 6a 52 57 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 gIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxC
1377a0 7a 41 4a 42 67 4e 56 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 zAJBgNVBAYTAlVTMRYwFAYDVQQK.Ew1H
1377c0 5a 57 39 55 63 6e 56 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 ZW9UcnVzdCBJbmMuMRswGQYDVQQDExJH
1377e0 5a 57 39 55 63 6e 56 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 ZW9UcnVzdCBHbG9iYWwgQ0EwHhcNMDIw
137800 4e 54 49 78 4d 44 51 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 NTIxMDQw.MDAwWhcNMjIwNTIxMDQwMDA
137820 77 57 6a 42 43 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 wWjBCMQswCQYDVQQGEwJVUzEWMBQGA1U
137840 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 62 4d 42 6b 47 41 31 EChMNR2VvVHJ1c3QgSW5j.LjEbMBkGA1
137860 55 45 41 78 4d 53 52 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 UEAxMSR2VvVHJ1c3QgR2xvYmFsIENBMI
137880 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
1378a0 49 42 0a 43 67 4b 43 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 IB.CgKCAQEA2swYYzD99BcjGlZ+W988b
1378c0 44 6a 6b 63 62 64 34 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 Djkcbd4kdS8odhM+KhDtgPpTSEHCIjaW
1378e0 43 39 6d 4f 53 6d 39 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 C9mOSm9BXiLnTjo.BbdqfnGk5sRgprDv
137900 67 4f 53 4a 4b 41 2b 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 gOSJKA+eJdbtg/OtppHHmMlCGDUUna2Y
137920 52 70 49 75 54 38 72 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 RpIuT8rxh0PBFpVXLVDviS2Aelet.8u5
137940 66 61 39 49 41 6a 62 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 fa9IAjbkU+BQVNdnARqN7csiRv8lVK83
137960 51 6c 7a 36 63 4a 6d 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 Qlz6cJmTM386DGXHKTubU1XupGc1V3sj
137980 73 30 6c 34 34 55 2b 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 s0l44U+Vc.T4wt/lAjNvxm5suOpDkZAL
1379a0 65 56 41 6a 6d 52 43 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 eVAjmRCw7+OC7RHQWa9k0+bw8HHa8sHo
1379c0 39 67 4f 65 4c 36 4e 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 9gOeL6NlMTOdReJivbPagU.vTLrGAMoU
1379e0 67 52 78 35 61 73 7a 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 gRx5aszPeE4uwc2hGKceeoWMPRfwCvoc
137a00 57 76 6b 2b 51 49 44 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 Wvk+QIDAQABo1MwUTAPBgNVHRMBAf8EB
137a20 54 41 44 0a 41 51 48 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 TAD.AQH/MB0GA1UdDgQWBBTAephojYn7
137a40 71 77 56 6b 44 42 46 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 qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAW
137a60 67 42 54 41 65 70 68 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 gBTAephojYn7qwVk.DBF9qn1luMrMTjA
137a80 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 4e 65 4d 70 61 75 55 NBgkqhkiG9w0BAQUFAAOCAQEANeMpauU
137aa0 76 58 56 53 4f 4b 56 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 vXVSOKVCUn5kaFOSPeCpilKInZ57Q.zx
137ac0 70 65 52 2b 6e 42 73 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 peR+nBsqTP3UEaBU6bS+5Kb1VSsyShNw
137ae0 72 72 5a 48 59 71 4c 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 rrZHYqLizz/Tt1kL/6cdjHPTfStQWVYr
137b00 6d 6d 33 6f 6b 39 4e 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 mm3ok9Nns4.d0iXrKYgjy6myQzCsplFA
137b20 4d 66 4f 45 56 45 69 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 MfOEVEiIuCl6rYVSAlk6l5PdPcFPseKU
137b40 67 7a 62 46 62 53 39 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 gzbFbS9bZvlxrFUaKnjaZC2.mqUPuLk/
137b60 49 48 32 75 53 72 57 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 IH2uSrW4nOQdtqvmlKXBx4Ot2/Unhw4E
137b80 62 4e 58 2f 33 61 42 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 bNX/3aBd7YdStysVAq45pmp06drE57xN
137ba0 4e 42 36 70 0a 58 45 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 NB6p.XE0zX5IJL4hmXXeXxx12E6nV5fE
137bc0 57 43 52 45 31 31 61 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 WCRE11azbJHFwLJhWC9kXtNHjUStedej
137be0 56 30 4e 78 50 4e 4f 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 V0NxPNO3CBWaAocvm.Mw==.-----END.
137c00 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 47 6c 6f 62 61 CERTIFICATE-----..GeoTrust.Globa
137c20 6c 20 43 41 20 32 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 l.CA.2.====================.----
137c40 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 5a 6a 43 43 -BEGIN.CERTIFICATE-----.MIIDZjCC
137c60 41 6b 36 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 Ak6gAwIBAgIBATANBgkqhkiG9w0BAQUF
137c80 41 44 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 31 55 45 ADBEMQswCQYDVQQGEwJVUzEWMBQGA1UE
137ca0 43 68 4d 4e 0a 52 32 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 ChMN.R2VvVHJ1c3QgSW5jLjEdMBsGA1U
137cc0 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 49 44 49 EAxMUR2VvVHJ1c3QgR2xvYmFsIENBIDI
137ce0 77 48 68 63 4e 4d 44 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 wHhcNMDQwMzA0MDUw.MDAwWhcNMTkwMz
137d00 41 30 4d 44 55 77 4d 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 A0MDUwMDAwWjBEMQswCQYDVQQGEwJVUz
137d20 45 57 4d 42 51 47 41 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 EWMBQGA1UEChMNR2VvVHJ1c3QgSW5j.L
137d40 6a 45 64 4d 42 73 47 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 jEdMBsGA1UEAxMUR2VvVHJ1c3QgR2xvY
137d60 6d 46 73 49 45 4e 42 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 mFsIENBIDIwggEiMA0GCSqGSIb3DQEBA
137d80 51 55 41 41 34 49 42 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 QUAA4IBDwAw.ggEKAoIBAQDvPE1APRDf
137da0 4f 31 4d 41 34 57 66 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 O1MA4Wf+lGAVPoWI8YkNkMgoI5kF6Csg
137dc0 6e 63 62 7a 59 45 62 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 ncbzYEbYwbLVjDHZ3CB5JIG/.NTL8Y2n
137de0 62 73 53 70 72 37 69 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 bsSpr7iFY8gjpeMtvy/wWUsiRxP89c96
137e00 78 50 71 66 43 66 57 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 xPqfCfWbB9X5SJBri1WeR0IIQ13hLTyt
137e20 43 4f 62 31 6b 0a 4c 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 COb1k.LUCgsBDTOEhGiKEMuzozKmKY+w
137e40 43 64 45 31 6c 2f 62 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 CdE1l/bztyqu6mD4b5BWHqZ38MN5aL5m
137e60 6b 57 52 78 48 43 4a 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 kWRxHCJ1kDs6ZgwiFA.Vvqgx306E+PsV
137e80 38 65 7a 31 71 36 64 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 8ez1q6diYD3Aecs9pYrEw15LNnA5IZ7S
137ea0 34 77 4d 63 6f 4b 4b 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 4wMcoKK+xfNAGw6EzywhIdLFnopsk/b.
137ec0 48 64 51 4c 38 32 59 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 HdQL82Y3vdj2V7teJHq4PIu5+pIaGoSe
137ee0 32 48 53 50 71 68 74 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 2HSPqht/XvT+RSIhAgMBAAGjYzBhMA8G
137f00 41 31 55 64 45 77 45 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 A1UdEwEB/wQF.MAMBAf8wHQYDVR0OBBY
137f20 45 46 48 45 34 4e 76 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 EFHE4NvICMVNHK266ZUapEBVYIAUJMB8
137f40 47 41 31 55 64 49 77 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 GA1UdIwQYMBaAFHE4NvICMVNH.K266ZU
137f60 61 70 45 42 56 59 49 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 apEBVYIAUJMA4GA1UdDwEB/wQEAwIBhj
137f80 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 41 2f 65 31 4b 36 ANBgkqhkiG9w0BAQUFAAOCAQEAA/e1K6
137fa0 74 64 45 50 78 37 0a 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 tdEPx7.srJerJsOflN4WT5CBP51o62sg
137fc0 55 37 58 41 6f 74 65 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 U7XAotexC3IUnbHLB/8gTKY0UvGkpMzN
137fe0 54 45 76 2f 4e 67 64 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 TEv/NgdRN3ggX+d6Yvh.ZJFiCzkIjKx0
138000 6e 56 6e 5a 65 6c 6c 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 nVnZellSlxG5FntvRdOW2TF9AjYPnDtu
138020 7a 79 77 4e 41 30 5a 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 zywNA0ZF66D0f0hExghAzN4bcLUprbqL
138040 0a 4f 7a 52 6c 64 52 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 .OzRldRtxIR0sFAqwlpW41uryZfspuk/
138060 71 6b 5a 4e 30 61 62 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 qkZN0abby/+Ea0AzRdoXLiiW9l14sbxW
138080 5a 4a 75 65 32 4b 66 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 ZJue2Kf8i7MkC.x1YAzUm5s2x7UwQa4q
1380a0 6a 4a 71 68 49 46 49 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 jJqhIFI8LO57sEAszAR6LkxCkvW0VXiV
1380c0 48 75 50 4f 74 53 43 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 HuPOtSCP8HNR6fNWpHSlaY0VqF.H4z1I
1380e0 72 2b 72 7a 6f 50 7a 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 r+rzoPz4iIprn2DQKi6bA==.-----END
138100 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 55 6e 69 76 .CERTIFICATE-----..GeoTrust.Univ
138120 65 72 73 61 6c 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 0a 2d ersal.CA.=====================.-
138140 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 61 ----BEGIN.CERTIFICATE-----.MIIFa
138160 44 43 43 41 31 43 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 DCCA1CgAwIBAgIBATANBgkqhkiG9w0BA
138180 51 55 46 41 44 42 46 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 QUFADBFMQswCQYDVQQGEwJVUzEWMBQGA
1381a0 31 55 45 43 68 4d 4e 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 1UEChMN.R2VvVHJ1c3QgSW5jLjEeMBwG
1381c0 41 31 55 45 41 78 4d 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 A1UEAxMVR2VvVHJ1c3QgVW5pdmVyc2Fs
1381e0 49 45 4e 42 4d 42 34 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 IENBMB4XDTA0MDMwNDA1.MDAwMFoXDTI
138200 35 4d 44 4d 77 4e 44 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 5MDMwNDA1MDAwMFowRTELMAkGA1UEBhM
138220 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 4e 30 49 45 6c CVVMxFjAUBgNVBAoTDUdlb1RydXN0IEl
138240 75 0a 59 79 34 78 48 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 u.Yy4xHjAcBgNVBAMTFUdlb1RydXN0IF
138260 56 75 61 58 5a 6c 63 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 VuaXZlcnNhbCBDQTCCAiIwDQYJKoZIhv
138280 63 4e 41 51 45 42 42 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 cNAQEBBQADggIP.ADCCAgoCggIBAKYVV
1382a0 61 43 6a 78 75 41 66 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 aCjxuAfjJ0hUNfBvitbtaSeodlyWL0AG
1382c0 30 79 2f 59 63 6b 55 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 0y/YckUHUWCq8YdgNY96xCcOq9t.JPi8
1382e0 63 51 47 65 42 76 56 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 cQGeBvV8Xx7BDlXKg5pZMK4ZyzBIle0i
138300 4e 34 33 30 53 70 70 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 N430SppyZj6tlcDgFgDgEB8rMQ7XlFTT
138320 51 6a 4f 67 4e 42 30 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 QjOgNB0e.RXbdT8oYN+yFFXoZCPzVx5z
138340 77 38 71 6b 75 45 4b 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 w8qkuEKmS5j1YPakWaDwvdSEYfyh3peF
138360 68 46 37 65 6d 36 66 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 hF7em6fgemdtzbvQKoiFs.7tqqhZJmr/
138380 5a 36 61 34 4c 61 75 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 Z6a4LauiIINQ/PQvE1+mrufislzDoR5G
1383a0 32 76 63 37 4a 32 48 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 2vc7J2Ha3QsnhnGqQ5HFELZ1aD/ThdDc
1383c0 37 64 0a 38 4c 73 72 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 7d.8Lsrlh/eezJS/R27tQahsiFepdaVa
1383e0 48 2f 77 6d 5a 37 63 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 H/wmZ7cRQg+59IJDTWU3YBOU5fXtQlEI
138400 47 51 57 46 77 4d 43 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 GQWFwMCTFMNaN7V.qnJNk22CDtucvc+0
138420 38 31 78 64 56 48 70 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 81xdVHppCZbW2xHBjXWotM85yM48vCR8
138440 35 6d 4c 4b 34 62 31 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 5mLK4b19p71XZQvk/iXttmkQ3Cga.Rr0
138460 42 48 64 43 58 74 65 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 BHdCXteGYO8A3ZNY9lO4L4fUorgtWv3G
138480 4c 49 79 6c 42 6a 6f 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 LIylBjobFS1J72HGrH4oVpjuDWtdYAVH
1384a0 47 54 45 48 5a 66 39 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 GTEHZf9hB.Z3KiKN9gg6meyHv8U3NyWf
1384c0 57 54 65 68 64 32 44 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 WTehd2Ds735VzZC1U0oqpbtWpU5xPKV+
1384e0 79 58 62 66 52 65 42 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 yXbfReBi9Fi1jUIxaS5BZu.KGNZMN9QA
138500 5a 78 6a 69 52 71 66 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 ZxjiRqf2xeUgnA3wySemkfWWspOqGmJc
138520 68 2b 52 62 4e 74 2b 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 h+RbNt+nhutxx9z3SxPGWX9f5NAEC7S8
138540 4f 30 38 0a 6e 69 34 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 O08.ni4oPmkmM8V7AgMBAAGjYzBhMA8G
138560 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 42 59 45 A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE
138580 46 4e 71 37 4c 71 71 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 FNq7LqqwDLiIJlF0.XG0D08DYj3rWMB8
1385a0 47 41 31 55 64 49 77 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 GA1UdIwQYMBaAFNq7LqqwDLiIJlF0XG0
1385c0 44 30 38 44 59 6a 33 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 D08DYj3rWMA4GA1UdDwEB/wQEAwIB.hj
1385e0 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 4d 58 6a 6d 78 37 ANBgkqhkiG9w0BAQUFAAOCAgEAMXjmx7
138600 58 66 75 4a 52 41 79 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 XfuJRAyXHEqDXsRh3ChfMoWIawC/yOsj
138620 6d 50 52 46 57 72 5a 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 mPRFWrZIRc.aanQmjg8+uUfNeVE44B5l
138640 47 69 6b 75 38 53 66 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 Giku8SfPeE0zTBGi1QrlaXv9z+ZhP015
138660 73 38 78 78 74 78 71 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 s8xxtxqv6fXIwjhmF7DWgh2.qaavdy+3
138680 59 4c 31 45 52 6d 72 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 YL1ERmrvl/9zlcGO6JP7/TG37FcREUWb
1386a0 4d 50 45 61 69 44 6e 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 MPEaiDnBTzynANXH/KttgCJwpQzgXQQp
1386c0 41 76 76 4c 0a 6f 4a 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 AvvL.oJHRfNbDflDVnVi+QTjruXU8Fdm
1386e0 62 79 55 71 44 57 63 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 byUqDWcDaU/0zuzYYm4UPFd3uLax2k7n
138700 5a 41 59 31 49 45 4b 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 ZAY1IEKj79TiG8dsK.xr2EoyNB3tZ3b4
138720 58 55 68 52 78 51 34 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 XUhRxQ4K5RirqNPnbiucon8l+f725ZDQ
138740 62 59 4b 78 65 6b 30 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 bYKxek0nxru18UGkiPGkzns0ccjkxF.K
138760 79 44 75 53 4e 2f 6e 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 yDuSN/n3QmOGKjaQI2SJhFTYXNd673nx
138780 45 30 70 4e 32 48 72 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 E0pN2HrrDktZy4W1vUAg4WhzH92xH3kt
1387a0 30 74 6d 37 77 4e 46 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 0tm7wNFYGm2.DFKWkoRepqO1pD4r2czY
1387c0 47 30 65 71 38 6b 54 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 G0eq8kTaT/kD6PAUyz/zg97QwVTjt+gK
1387e0 4e 30 32 4c 49 46 6b 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 N02LIFkDMBmhLMi9ER/frslK.xfMnZma
138800 47 72 47 69 52 2f 39 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 GrGiR/9nmUxwPi1xpZQomyB40w11Re9e
138820 70 6e 41 61 68 4e 74 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 pnAahNt3ViZS82eQtDF4JbAiXfKM9fJP
138840 2f 50 36 45 55 0a 70 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 /P6EU.p8+1Xevb2xzEdt+Iub1FBZUbrv
138860 78 47 61 6b 79 76 53 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 xGakyvSOPOrg/SfuvmbJxPgWp6ZKy7Pt
138880 58 6e 79 33 59 75 78 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 Xny3YuxadIwVyQD8vI.P/rmMuGNG2+k5
1388a0 6f 37 59 2b 53 6c 49 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 o7Y+SlIis5z/iw=.-----END.CERTIFI
1388c0 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 41 CATE-----..GeoTrust.Universal.CA
1388e0 20 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 2d 2d 2d 2d 2d .2.=======================.-----
138900 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 62 44 43 43 41 BEGIN.CERTIFICATE-----.MIIFbDCCA
138920 31 53 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 1SgAwIBAgIBATANBgkqhkiG9w0BAQUFA
138940 44 42 48 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 DBHMQswCQYDVQQGEwJVUzEWMBQGA1UEC
138960 68 4d 4e 0a 52 32 56 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 hMN.R2VvVHJ1c3QgSW5jLjEgMB4GA1UE
138980 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 32 46 73 49 45 4e 42 AxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENB
1389a0 49 44 49 77 48 68 63 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 IDIwHhcNMDQwMzA0.MDUwMDAwWhcNMjk
1389c0 77 4d 7a 41 30 4d 44 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 wMzA0MDUwMDAwWjBHMQswCQYDVQQGEwJ
1389e0 56 55 7a 45 57 4d 42 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 VUzEWMBQGA1UEChMNR2VvVHJ1c3Qg.SW
138a00 35 6a 4c 6a 45 67 4d 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 5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW
138a20 35 70 64 6d 56 79 63 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 5pdmVyc2FsIENBIDIwggIiMA0GCSqGSI
138a40 62 33 44 51 45 42 41 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 b3DQEBAQUA.A4ICDwAwggIKAoICAQCzV
138a60 46 4c 42 79 54 37 79 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 FLByT7y2dyxUxpZKeexw0Uo5dfR7cXFS
138a80 36 47 71 64 48 74 58 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 6GqdHtXr0om/Nj1XqduGdt0.DE81WzIL
138aa0 41 65 50 62 36 33 70 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 AePb63p3NeqqWuDW6KFXlPCQo3RWlEQw
138ac0 41 78 35 63 54 69 75 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 Ax5cTiuFJnSCegx2oG9NzkEtoBUGFF+3
138ae0 51 73 31 37 0a 6a 31 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 Qs17.j1hhNNwqCPkuwwGmIkQcTAeC5lv
138b00 4f 30 45 70 38 42 4e 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 O0Ep8BNMZcyfwqph/Lq9O64ceJHdqXbb
138b20 6f 57 30 57 36 33 4d 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 oW0W63MOhBW9Wjo8Q.JqVJwy7XQYci4E
138b40 2b 47 79 6d 43 31 36 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 +GymC16qFjwAGXEHm9ADwSbSsVsaxLse
138b60 34 59 75 55 36 57 33 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 4YuU6W3Nx2/zu+z18DwPw76L5GG//a.Q
138b80 4d 4a 53 39 2f 37 6a 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 MJS9/7jOvdqdzXQ2o3rXhhqMcceujwbK
138ba0 4e 5a 72 56 4d 61 71 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 NZrVMaqW9eiLBsZzKIC9ptZvTdrhrVtg
138bc0 72 72 59 36 73 6c 57 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 rrY6slWvKk2.WP0+GfPtDCapkzj4T8Fd
138be0 49 67 62 51 6c 2b 72 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 IgbQl+rhrcZV4IErKIM6+vR7IVEAvlI4
138c00 7a 73 31 6d 65 61 6a 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 zs1meaj0gVbi0IMJR1FbUGrP.20gaXT7
138c20 33 79 2f 5a 6c 39 32 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 3y/Zl92zxlfgCOzJWgjl6W70viRu/obT
138c40 6f 2f 33 2b 4e 6a 4e 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 o/3+NjN8D8WBOWBFM66M/ECuDmgFz2ZR
138c60 74 68 41 41 6e 0a 5a 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 thAAn.ZqzwcEAJQpKtT5MNYQlRJNiS1Q
138c80 75 55 59 62 4b 48 73 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 uUYbKHsu3/mjX/hVTK7URDrBs8FmtISg
138ca0 6f 63 51 49 67 66 6b 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 ocQIgfksILAAX/8sgC.SqSqqcyZlpwvW
138cc0 4f 42 39 34 62 36 37 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 OB94b67B9xfBHJcMTTD7F8t4D1kkCLm0
138ce0 65 79 34 4c 74 31 5a 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 ey4Lt1ZrtmhN79UNdxzMk+MBB4zsslG.
138d00 38 64 68 63 79 46 56 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 8dhcyFVQyWi9qLo2CQIDAQABo2MwYTAP
138d20 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 44 67 51 57 BgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
138d40 42 42 52 32 38 31 58 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 BBR281Xh+qQ2.+/CfXGJx7Tz0RzgQKzA
138d60 66 42 67 4e 56 48 53 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 fBgNVHSMEGDAWgBR281Xh+qQ2+/CfXGJ
138d80 78 37 54 7a 30 52 7a 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 x7Tz0RzgQKzAOBgNVHQ8BAf8E.BAMCAY
138da0 59 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 47 62 42 78 69 YwDQYJKoZIhvcNAQEFBQADggIBAGbBxi
138dc0 50 7a 32 65 41 75 62 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 Pz2eAubl/oz66wsCVNK/g7WJtAJDday6
138de0 73 57 53 66 2b 7a 0a 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 sWSf+z.dXkzoS9tcBc0kf5nfo/sm+Veg
138e00 71 6c 56 48 79 2f 63 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 qlVHy/c1FEHEv6sFj4sNcZj/NwQ6w2jq
138e20 74 42 38 7a 4e 48 51 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 tB8zNHQL1EuxBRa3ugZ.4T7GzKQp5y6E
138e40 71 67 59 77 65 48 5a 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 qgYweHZUcyiYWTjgAA1i00J9IZ+uPTqM
138e60 31 66 70 33 44 52 67 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 1fp3DRgrFg5fNuH8KrUwJM/gYwx7WBr+
138e80 0a 6d 62 70 43 45 72 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 .mbpCErGR9Hxo4sjoryzqyX6uuyo9DRX
138ea0 63 4e 4a 57 32 47 48 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 cNJW2GHSoag/HtPQTxORb7QrSpJdMKu0
138ec0 76 62 42 4b 4a 50 66 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 vbBKJPfEncKpq.A1Ihn0CoZ1Dy81of39
138ee0 38 6a 39 74 78 34 54 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 8j9tx4TuaYT1U6U+Pv8vSfx3zYWK8pIp
138f00 65 34 34 4c 32 52 4c 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 e44L2RLrB27FcRz+8pRPPphXpg.Y+RdM
138f20 34 6b 58 32 54 47 71 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 4kX2TGq2tbzGDVyz4crL2MjhF2EjD9Xo
138f40 49 6a 38 6d 5a 45 6f 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 Ij8mZEoJmmZ1I+XRL6O1UixpCgp8RW04
138f60 65 57 65 33 66 69 50 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 eWe3fiP.pm8m1wk8OhwRDqZsN/etRIcs
138f80 4b 4d 66 59 64 49 4b 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 KMfYdIKz0G9KV7s1KSegi+ghp4dkNl3M
138fa0 32 42 61 73 78 37 49 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 2Basx7InQJJVOCiNUW7d.FGdTbHFcJoR
138fc0 4e 64 56 71 32 66 6d 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 NdVq2fmBWqU2t+5sel/MN2dKXVHfaPRK
138fe0 33 34 42 37 76 43 41 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 34B7vCAas+YWH6aLcr34YEoP9VhdBLtU
139000 70 0a 67 6e 32 5a 39 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 p.gn2Z9DH2canPLAEnpQW5qrJITirvn5
139020 4e 53 55 5a 55 38 55 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 NSUZU8UnOOVkwXQMAJKOSLakhT2+zNVV
139040 58 78 78 76 6a 70 6f 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 XxxvjpoixMptEm.X36vWkzaH6byHCx+r
139060 67 49 57 30 6c 62 51 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 gIW0lbQL1dTR+iS.-----END.CERTIFI
139080 43 41 54 45 2d 2d 2d 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 CATE-----..Visa.eCommerce.Root.=
1390a0 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
1390c0 52 54 49 46 49 43 41 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 RTIFICATE-----.MIIDojCCAoqgAwIBA
1390e0 67 49 51 45 34 59 31 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 gIQE4Y1TR0/BvLB+WUF1ZAcYjANBgkqh
139100 6b 69 47 39 77 30 42 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 kiG9w0BAQUFADBrMQswCQYDVQQG.EwJV
139120 55 7a 45 4e 4d 41 73 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 UzENMAsGA1UEChMEVklTQTEvMC0GA1UE
139140 43 78 4d 6d 56 6d 6c 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 CxMmVmlzYSBJbnRlcm5hdGlvbmFsIFNl
139160 63 6e 5a 70 59 32 55 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 cnZpY2Ug.QXNzb2NpYXRpb24xHDAaBgN
139180 56 42 41 4d 54 45 31 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 VBAMTE1Zpc2EgZUNvbW1lcmNlIFJvb3Q
1391a0 77 48 68 63 4e 4d 44 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 wHhcNMDIwNjI2MDIxODM2.WhcNMjIwNj
1391c0 49 30 4d 44 41 78 4e 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 I0MDAxNjEyWjBrMQswCQYDVQQGEwJVUz
1391e0 45 4e 4d 41 73 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 ENMAsGA1UEChMEVklTQTEvMC0GA1UECx
139200 4d 6d 0a 56 6d 6c 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 Mm.VmlzYSBJbnRlcm5hdGlvbmFsIFNlc
139220 6e 5a 70 59 32 55 67 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 nZpY2UgQXNzb2NpYXRpb24xHDAaBgNVB
139240 41 4d 54 45 31 5a 70 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 AMTE1Zpc2EgZUNv.bW1lcmNlIFJvb3Qw
139260 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
139280 67 67 45 4b 41 6f 49 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 ggEKAoIBAQCvV95WHm6h2mCxlCfL.F9s
1392a0 48 50 34 43 46 54 38 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 HP4CFT8icttD0b0/Pmdjh28JIXDqsOTP
1392c0 48 48 32 71 4c 4a 6a 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 HH2qLJj0rNfVIsZHBAk4ElpF7sDPwsRR
1392e0 4f 45 57 2b 31 51 4b 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 OEW+1QK8b.RaVK7362rPKgH1g/EkZgPI
139300 32 68 34 48 33 50 56 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 2h4H3PVz4zHvtH8aoVlwdVZqW1LS7YgF
139320 6d 79 70 77 32 33 52 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 mypw23RuwhY/81q6UCzyr0.TP579ZRdh
139340 45 32 6f 38 6d 43 50 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 E2o8mCP2w4lPJ9zcc+U30rq299yOIzzl
139360 72 33 78 46 37 7a 53 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 r3xF7zSujtFWsan9sYXiwGd/BmoKoMWu
139380 44 70 49 0a 2f 6b 34 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 DpI./k4+oKsGGelT84ATB+0tvz8KPFUg
1393a0 4f 53 77 73 41 47 6c 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 OSwsAGl0lUq8ILKpeeUYiZGo3BxN77t+
1393c0 4e 77 74 64 2f 6a 6d 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 Nwtd/jmliFKMAGzs.GHxBvfaLdXe6YJ2
1393e0 45 35 2f 34 74 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 77 51 E5/4tAgMBAAGjQjBAMA8GA1UdEwEB/wQ
139400 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 0a 4d 42 FMAMBAf8wDgYDVR0PAQH/BAQDAgEG.MB
139420 30 47 41 31 55 64 44 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 0GA1UdDgQWBBQVOIMPPyw/cDMezUb+B4
139440 77 67 34 4e 66 44 74 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 wg4NfDtzANBgkqhkiG9w0BAQUFAAOCAQ
139460 45 41 58 2f 46 42 66 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 EAX/FBfXxc.CLkr4NWSR/pnXKUTwwMhm
139480 79 74 4d 69 55 62 50 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 ytMiUbPWU3J/qVAtmPN3XEolWcRzCSs0
1394a0 30 52 73 63 61 34 42 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 0Rsca4BIGsDoo8Ytyk6feUW.YFN4PMCv
1394c0 46 59 50 33 6a 31 49 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 FYP3j1IzJL1kk5fui/fbGKhtcbP3LBfQ
1394e0 64 43 56 70 39 2f 35 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 dCVp9/5rPJS+TUtBjE7ic9DjkCJzQ83z
139500 37 2b 70 7a 0a 7a 6b 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 7+pz.zkWKsKZJ/0x9nXGIxHYdkFsd7v3
139520 4d 39 2b 37 39 59 4b 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 M9+79YKWxehZx0RbQfBI8bGmX265fOZp
139540 77 4c 77 55 38 47 55 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 wLwU8GUYEmSA20GBu.YQa7FkKMcPcw++
139560 44 62 5a 71 4d 41 41 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 DbZqMAAb3mLNqRX6BGi01qnD093QVG/n
139580 61 2f 6f 41 6f 38 35 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 a/oAo85ADmJ7f/hC3euiInlhBx6yLt.3
1395a0 39 38 7a 6e 4d 2f 6a 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 98znM/jra6O1I7mT1GvFpLgXPYHDw==.
1395c0 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 75 -----END.CERTIFICATE-----..Certu
1395e0 6d 20 52 6f 6f 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 m.Root.CA.==============.-----BE
139600 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 44 44 43 43 41 66 53 GIN.CERTIFICATE-----.MIIDDDCCAfS
139620 67 41 77 49 42 41 67 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 gAwIBAgIDAQAgMA0GCSqGSIb3DQEBBQU
139640 41 4d 44 34 78 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 AMD4xCzAJBgNVBAYTAlBMMRswGQYDVQQ
139660 4b 0a 45 78 4a 56 62 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 K.ExJVbml6ZXRvIFNwLiB6IG8uby4xEj
139680 41 51 42 67 4e 56 42 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 AQBgNVBAMTCUNlcnR1bSBDQTAeFw0wMj
1396a0 41 32 4d 54 45 78 4d 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 A2MTExMDQ2Mzla.Fw0yNzA2MTExMDQ2M
1396c0 7a 6c 61 4d 44 34 78 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 zlaMD4xCzAJBgNVBAYTAlBMMRswGQYDV
1396e0 51 51 4b 45 78 4a 56 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 QQKExJVbml6ZXRvIFNwLiB6IG8u.by4x
139700 45 6a 41 51 42 67 4e 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 EjAQBgNVBAMTCUNlcnR1bSBDQTCCASIw
139720 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
139740 67 67 45 42 41 4d 36 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 ggEBAM6x.wS7TT3zNJc4YPk/EjG+AanP
139760 49 57 31 48 34 6d 39 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 IW1H4m9LcuwBcsaD8dQPugfCI7iNS6eY
139780 56 4d 34 32 73 4c 51 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 VM42sLQnFdvkrOYCJ5JdL.kKWoePhzQ3
1397a0 75 6b 59 62 44 59 57 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 ukYbDYWMzhbGZ+nPMJXlVjhNWo7/OxLj
1397c0 42 6f 73 38 51 38 32 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 Bos8Q82KxujZlakE403Daaj4GIULdtlk
1397e0 49 4a 0a 38 39 65 56 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 IJ.89eVgw1BS7Bqa/j8D35in2fE7SZfE
139800 43 59 50 43 45 2f 77 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 CYPCE/wpFcozo+47UX2bu4lXapuOb7kk
139820 79 2f 5a 52 36 42 79 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 y/ZR6By6/qmW6/K.Uz/iDsaWVhFu9+lm
139840 71 53 62 59 66 35 56 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 qSbYf5VT7QqFiLpPKaVCjF62/IUgAKpo
139860 43 36 45 61 68 51 47 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 C6EahQGcxEZjgoi2IrHu/qpGWX7P.NSz
139880 56 74 74 70 64 39 30 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 Vttpd90gzFFS269lvzs2I1qsb2pY7HVk
1398a0 43 41 77 45 41 41 61 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 CAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwE
1398c0 42 2f 7a 41 4e 42 67 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 B/zANBgkq.hkiG9w0BAQUFAAOCAQEAuI
1398e0 33 4f 37 2b 63 55 75 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 3O7+cUus/usESSbLQ5PqKEbq24IXfS1H
139900 65 43 68 2b 59 67 51 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 eCh+YgQYHu4vgRt2PRFze+.GXYkHAQaT
139920 4f 73 39 71 6d 64 76 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 Os9qmdvLdTN/mUxcMUbpgIKumB7bVjCm
139940 6b 6e 2b 59 7a 49 4c 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 kn+YzILa+M6wKyrO7Do0wlRjBCDxjTgx
139960 53 76 67 0a 47 72 5a 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 Svg.GrZgFCdsMneMvLJymM/NzD+5yCRC
139980 46 4e 5a 58 2f 4f 59 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 FNZX/OYmQ6kd5YCQzgNUKD73P9P4Te1q
1399a0 43 6a 71 54 45 35 73 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 CjqTE5s7FCMTY5w/.0YcneeVMUeMBrYV
1399c0 64 47 6a 75 78 31 58 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 dGjux1XMQpNPyvG5k9VpWkKjHDkx0Dy5
1399e0 78 4f 2f 66 49 52 2f 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 xO/fIR/RpbxXyEV6DHpx8Uq79AtoS.qF
139a00 6c 6e 47 4e 75 38 63 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 lnGNu8cN2bsWntgM6JQEhqDjXKKWYVIZ
139a20 51 73 36 47 41 71 6d 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 Qs6GAqm4VKQPNriiTsBhYscw==.-----
139a40 45 4e 44 20 43 45 52 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 END.CERTIFICATE-----..Comodo.AAA
139a60 20 53 65 72 76 69 63 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 .Services.root.=================
139a80 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--
139aa0 2d 2d 2d 0a 4d 49 49 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 ---.MIIEMjCCAxqgAwIBAgIBATANBgkq
139ac0 68 6b 69 47 39 77 30 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 hkiG9w0BAQUFADB7MQswCQYDVQQGEwJH
139ae0 51 6a 45 62 4d 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 QjEbMBkGA1UECAwS.R3JlYXRlciBNYW5
139b00 6a 61 47 56 7a 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 jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3J
139b20 6b 4d 52 6f 77 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 kMRowGAYDVQQKDBFDb21vZG8gQ0Eg.TG
139b40 6c 74 61 58 52 6c 5a 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 ltaXRlZDEhMB8GA1UEAwwYQUFBIENlcn
139b60 52 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 RpZmljYXRlIFNlcnZpY2VzMB4XDTA0MD
139b80 45 77 4d 54 41 77 4d 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 EwMTAwMDAw.MFoXDTI4MTIzMTIzNTk1O
139ba0 56 6f 77 65 7a 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 VowezELMAkGA1UEBhMCR0IxGzAZBgNVB
139bc0 41 67 4d 45 6b 64 79 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 AgMEkdyZWF0ZXIgTWFuY2hl.c3RlcjEQ
139be0 4d 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 MA4GA1UEBwwHU2FsZm9yZDEaMBgGA1UE
139c00 43 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 49 54 41 66 CgwRQ29tb2RvIENBIExpbWl0ZWQxITAf
139c20 42 67 4e 56 0a 42 41 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 BgNV.BAMMGEFBQSBDZXJ0aWZpY2F0ZSB
139c40 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 41 51 45 TZXJ2aWNlczCCASIwDQYJKoZIhvcNAQE
139c60 42 42 51 41 44 67 67 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 BBQADggEPADCCAQoC.ggEBAL5AnfRu4e
139c80 70 32 68 78 78 4e 52 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 p2hxxNRUSOvkbIgwadwSr+GB+O5AL686
139ca0 74 64 55 49 6f 57 4d 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 tdUIoWMQuaBtDFcCLNSS1UY8y2bmhG.C
139cc0 31 50 71 79 30 77 6b 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 1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4
139ce0 74 71 4a 56 66 4d 69 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 tqJVfMiWPPe3M/vg4aijJRPn2jymJBGh
139d00 43 66 48 64 72 2f 6a 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 CfHdr/jzDUs.i14HZGWCwEiwqJH5YZ92
139d20 49 46 43 6f 6b 63 64 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 IFCokcdmtet4YgNW8IoaE+oxox6gmf04
139d40 39 76 59 6e 4d 6c 68 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 9vYnMlhvB/VruPsUK6+3qszW.Y19zjNo
139d60 46 6d 61 67 34 71 4d 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 Fmag4qMsXeDZRrOme9Hg6jc8P2ULimAy
139d80 72 4c 35 38 4f 41 64 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 rL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH
139da0 35 6b 42 6a 48 0a 59 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 5kBjH.Ypy+g8cmez6KJcfA3Z3mNWgQIJ
139dc0 32 50 32 4e 37 53 77 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 2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvT
139de0 41 64 42 67 4e 56 48 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 AdBgNVHQ4EFgQUoBEK.Iz6W8Qfs4q8p7
139e00 34 4b 6c 66 39 41 77 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 4Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGM
139e20 41 38 47 41 31 55 64 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 A8GA1UdEwEB/wQFMAMBAf8wewYDVR0f.
139e40 42 48 51 77 63 6a 41 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 BHQwcjA4oDagNIYyaHR0cDovL2NybC5j
139e60 62 32 31 76 5a 47 39 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 b21vZG9jYS5jb20vQUFBQ2VydGlmaWNh
139e80 64 47 56 54 5a 58 4a 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 dGVTZXJ2aWNl.cy5jcmwwNqA0oDKGMGh
139ea0 30 64 48 41 36 4c 79 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 0dHA6Ly9jcmwuY29tb2RvLm5ldC9BQUF
139ec0 44 5a 58 4a 30 61 57 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 DZXJ0aWZpY2F0ZVNlcnZpY2Vz.LmNybD
139ee0 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 43 46 62 38 41 76 ANBgkqhkiG9w0BAQUFAAOCAQEACFb8Av
139f00 43 62 36 50 2b 6b 2b 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 Cb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSW
139f20 67 45 64 75 6a 6d 0a 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 gEdujm.7l3sAg9g1o1QGE8mTgHj5rCl7
139f40 72 2b 38 64 46 52 42 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 r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9
139f60 76 48 43 76 38 53 35 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 vHCv8S5dIa2LX1rzNLz.Rt0vxuBqw8M0
139f80 41 79 78 39 6c 74 31 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 Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdV
139fa0 43 59 66 65 55 30 42 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 CYfeU0BsWO/8tqtlbgT2G9w84FoVxp7Z
139fc0 0a 38 56 6c 49 4d 43 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 .8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/
139fe0 36 75 67 4c 4f 70 79 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 6ugLOpyypEBMs1OUIJqsil2D4kF501KK
13a000 61 55 37 33 79 71 57 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 aU73yqWjgom7C.12yxow+ev+to51byrv
13a020 4c 6a 4b 7a 67 36 43 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 LjKzg6CYG1a4XXvi3tPxq3smPi9WIsgt
13a040 52 71 41 45 46 51 38 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 RqAEFQ8TmDn5XpNpaYbg==.-----END.
13a060 43 45 52 54 49 46 49 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 CERTIFICATE-----..Comodo.Secure.
13a080 53 65 72 76 69 63 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 Services.root.==================
13a0a0 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
13a0c0 2d 2d 2d 2d 2d 0a 4d 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 -----.MIIEPzCCAyegAwIBAgIBATANBg
13a0e0 6b 71 68 6b 69 47 39 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 kqhkiG9w0BAQUFADB+MQswCQYDVQQGEw
13a100 4a 48 51 6a 45 62 4d 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 JHQjEbMBkGA1UECAwS.R3JlYXRlciBNY
13a120 57 35 6a 61 47 56 7a 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 W5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb
13a140 33 4a 6b 4d 52 6f 77 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 3JkMRowGAYDVQQKDBFDb21vZG8gQ0Eg.
13a160 54 47 6c 74 61 58 52 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 TGltaXRlZDEkMCIGA1UEAwwbU2VjdXJl
13a180 49 45 4e 6c 63 6e 52 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 IENlcnRpZmljYXRlIFNlcnZpY2VzMB4X
13a1a0 44 54 41 30 4d 44 45 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 DTA0MDEwMTAw.MDAwMFoXDTI4MTIzMTI
13a1c0 7a 4e 54 6b 31 4f 56 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 zNTk1OVowfjELMAkGA1UEBhMCR0IxGzA
13a1e0 5a 42 67 4e 56 42 41 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 ZBgNVBAgMEkdyZWF0ZXIgTWFu.Y2hlc3
13a200 52 6c 63 6a 45 51 4d 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 RlcjEQMA4GA1UEBwwHU2FsZm9yZDEaMB
13a220 67 47 41 31 55 45 43 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 gGA1UECgwRQ29tb2RvIENBIExpbWl0ZW
13a240 51 78 4a 44 41 69 0a 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 QxJDAi.BgNVBAMMG1NlY3VyZSBDZXJ0a
13a260 57 5a 70 59 32 46 30 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 WZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJK
13a280 6f 5a 49 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 oZIhvcNAQEBBQADggEP.ADCCAQoCggEB
13a2a0 41 4d 42 78 4d 34 4b 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 AMBxM4KK0HDrc4eCQNUd5MvJDkKQ+d40
13a2c0 75 61 47 36 45 66 51 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 uaG6EfQlhfPMcm3ye5drswfxdySRXyWP
13a2e0 0a 39 6e 51 39 35 49 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 .9nQ95IDC+DwN879A6vfIUtFyb+/Iq0G
13a300 34 62 69 34 58 4b 70 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 4bi4XKpVpDM3SHpR7LZQdqnXXs5jLrLx
13a320 6b 55 30 43 38 6a 36 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 kU0C8j6ysNstc.rbvd4JQX7NFc0L/vpZ
13a340 58 4a 6b 4d 57 77 72 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 XJkMWwrPsbQ996CF23uPJAGysnnlDOXm
13a360 57 43 69 49 78 65 30 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 WCiIxe004MeuoIkbY2qitC++rC.oznl2
13a380 79 59 34 72 59 73 4b 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 yY4rYsK7hljxxwk3wN42ubqwUcaCwtGC
13a3a0 64 30 43 2f 4e 37 4c 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 d0C/N7Lh1/XMGNooa7cMqG6vv5Eq2i2p
13a3c0 52 63 56 2f 62 33 56 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 RcV/b3V.p6ea5EQz6YiO/O1R65NxTq0B
13a3e0 35 30 53 4f 71 79 33 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 50SOqy3LqP4BSUjwwN3HaNiS/j0CAwEA
13a400 41 61 4f 42 78 7a 43 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 AaOBxzCBxDAdBgNVHQ4E.FgQUPNiTiML
13a420 41 67 67 6e 4d 41 5a 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 AggnMAZkGkyDpnnAJY08wDgYDVR0PAQH
13a440 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 41 66 38 /BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8
13a460 77 0a 67 59 45 47 41 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 w.gYEGA1UdHwR6MHgwO6A5oDeGNWh0dH
13a480 41 36 4c 79 39 6a 63 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 A6Ly9jcmwuY29tb2RvY2EuY29tL1NlY3
13a4a0 56 79 5a 55 4e 6c 63 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 VyZUNlcnRpZmlj.YXRlU2VydmljZXMuY
13a4c0 33 4a 73 4d 44 6d 67 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 3JsMDmgN6A1hjNodHRwOi8vY3JsLmNvb
13a4e0 57 39 6b 62 79 35 75 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 W9kby5uZXQvU2VjdXJlQ2VydGlm.aWNh
13a500 64 47 56 54 5a 58 4a 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 dGVTZXJ2aWNlcy5jcmwwDQYJKoZIhvcN
13a520 41 51 45 46 42 51 41 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 AQEFBQADggEBAIcBbSMdflsXfcFhMs+P
13a540 35 2f 4f 4b 6c 46 6c 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 5/OKlFlm.4J4oqF7Tt/Q05qo5spcWxYJ
13a560 76 4d 71 54 70 6a 4f 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 vMqTpjOev/e/C6LlLqqP05tqNZSH7uoD
13a580 72 4a 69 69 46 47 76 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 rJiiFGv45jN5bBAS0VPmj.Z55B+glSzA
13a5a0 56 49 71 4d 6b 2f 49 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 VIqMk/IQQezkhr/IXownuvf7fM+F86/T
13a5c0 58 47 44 65 2b 58 33 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 XGDe+X3EyrEeFryzHRbPtIgKvcnDe4IR
13a5e0 52 4c 0a 44 58 45 39 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 RL.DXE97IMzbtFuMhbsmMcWi1mmNKsFV
13a600 79 32 54 39 36 6f 54 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 y2T96oTy9IT4rcuO81rUBcJaD61Jlfut
13a620 75 43 32 33 62 6b 70 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 uC23bkpgHl9j6Pw.pCikFcSF9CfUa7/l
13a640 58 4f 52 6c 41 6e 5a 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 XORlAnZUtOM3ZiTTGWHIUhDlizeauan5
13a660 48 62 2f 71 6d 5a 4a 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 Hb/qmZJhlv8BzaFfDbxxvA6sCx1H.RR3
13a680 42 37 48 7a 73 2f 53 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 B7Hzs/Sk=.-----END.CERTIFICATE--
13a6a0 2d 2d 2d 0a 0a 43 6f 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 ---..Comodo.Trusted.Services.roo
13a6c0 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 0a 2d t.============================.-
13a6e0 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 51 ----BEGIN.CERTIFICATE-----.MIIEQ
13a700 7a 43 43 41 79 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 zCCAyugAwIBAgIBATANBgkqhkiG9w0BA
13a720 51 55 46 41 44 42 2f 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 QUFADB/MQswCQYDVQQGEwJHQjEbMBkGA
13a740 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 56 79 1UECAwS.R3JlYXRlciBNYW5jaGVzdGVy
13a760 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 59 44 MRAwDgYDVQQHDAdTYWxmb3JkMRowGAYD
13a780 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 44 45 VQQKDBFDb21vZG8gQ0Eg.TGltaXRlZDE
13a7a0 6c 4d 43 4d 47 41 31 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 lMCMGA1UEAwwcVHJ1c3RlZCBDZXJ0aWZ
13a7c0 70 59 32 46 30 5a 53 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 pY2F0ZSBTZXJ2aWNlczAeFw0wNDAxMDE
13a7e0 77 0a 4d 44 41 77 4d 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 w.MDAwMDBaFw0yODEyMzEyMzU5NTlaMH
13a800 38 78 43 7a 41 4a 42 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 8xCzAJBgNVBAYTAkdCMRswGQYDVQQIDB
13a820 4a 48 63 6d 56 68 64 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 JHcmVhdGVyIE1h.bmNoZXN0ZXIxEDAOB
13a840 67 4e 56 42 41 63 4d 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 gNVBAcMB1NhbGZvcmQxGjAYBgNVBAoME
13a860 55 4e 76 62 57 39 6b 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 UNvbW9kbyBDQSBMaW1pdGVkMSUw.IwYD
13a880 56 51 51 44 44 42 78 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 VQQDDBxUcnVzdGVkIENlcnRpZmljYXRl
13a8a0 49 46 4e 6c 63 6e 5a 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 IFNlcnZpY2VzMIIBIjANBgkqhkiG9w0B
13a8c0 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 33 33 46 76 4e 6c 68 AQEFAAOC.AQ8AMIIBCgKCAQEA33FvNlh
13a8e0 54 57 76 49 32 56 46 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 TWvI2VFeAxHQIIO0Yfyod5jWaHiWsnOW
13a900 57 66 6e 4a 53 6f 42 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 WfnJSoBVC21ndZHoa0Lh7.3TkVvFVIxO
13a920 30 36 41 4f 6f 78 45 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 06AOoxEbrycXQaZ7jPM8yoMa+j49d/vz
13a940 4d 74 54 47 6f 38 37 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 MtTGo87IvDktJTdyR0nAducPy9C1t2ul
13a960 2f 79 0a 2f 39 63 33 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 /y./9c3S0pgePfw+spwtOpZqqPOSC+pw
13a980 37 49 4c 66 68 64 79 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 7ILfhdyFgymBwwbOM/JYrc/oJOlh0Hyt
13a9a0 33 42 41 64 39 69 2b 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 3BAd9i+FHzjqMB6.juljatEPmsbS9Is6
13a9c0 46 41 52 57 31 4f 32 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 FARW1O24zG71++IsWL1/T2sr92AkWCTO
13a9e0 4a 75 38 30 6b 54 72 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 Ju80kTrV44HQsvAEAtdbtz6SrGsS.ivn
13aa00 6b 42 62 41 37 6b 55 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 kBbA7kUlcsutT6vifR4buv5XAwAaf0lt
13aa20 65 45 52 76 30 78 77 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 eERv0xwQ1KdJVXOTt6wIDAQABo4HJMIH
13aa40 47 4d 42 30 47 41 31 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 GMB0GA1Ud.DgQWBBTFe1i97doladL3WR
13aa60 61 6f 73 7a 4c 41 65 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 aoszLAeydb9DAOBgNVHQ8BAf8EBAMCAQ
13aa80 59 77 44 77 59 44 56 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 YwDwYDVR0TAQH/BAUwAwEB./zCBgwYDV
13aaa0 52 30 66 42 48 77 77 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 R0fBHwwejA8oDqgOIY2aHR0cDovL2Nyb
13aac0 43 35 6a 62 32 31 76 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 C5jb21vZG9jYS5jb20vVHJ1c3RlZENlc
13aae0 6e 52 70 0a 5a 6d 6c 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 nRp.ZmljYXRlU2VydmljZXMuY3JsMDqg
13ab00 4f 4b 41 32 68 6a 52 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 OKA2hjRodHRwOi8vY3JsLmNvbW9kby5u
13ab20 5a 58 51 76 56 48 4a 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 ZXQvVHJ1c3RlZENl.cnRpZmljYXRlU2V
13ab40 79 64 6d 6c 6a 5a 58 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 ydmljZXMuY3JsMA0GCSqGSIb3DQEBBQU
13ab60 41 41 34 49 42 41 51 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 AA4IBAQDIk4E7ibSvuIQSTI3S8Ntw.ul
13ab80 65 47 46 54 51 51 75 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 eGFTQQuS9/HrCoiWChisJ3DFBKmwCL2I
13aba0 76 30 51 65 4c 51 67 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 v0QeLQg4pKHBQGsKNoBXAxMKdTmw7pSq
13abc0 42 59 61 57 63 4f 72 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 BYaWcOrp32.pSxBvzwGa+RZzG0Q8ZZvH
13abe0 39 2f 30 42 41 4b 6b 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 9/0BAKkn0U+yNj6NkZEUD+Cl5EfKNsYE
13ac00 59 77 71 35 47 57 44 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 Ywq5GWDVxISjBc/lDb+XbDA.BHcTuPQV
13ac20 31 54 38 34 7a 4a 51 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 1T84zJQ6VdCsmPW6AF/ghhmBeC8owH7T
13ac40 7a 45 49 4b 39 61 35 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 zEIK9a5QoNE+xqFx7D+gIIxmOom0jtTY
13ac60 73 55 30 6c 0a 52 2b 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 sU0l.R+4viMi14QVFwL4Ucd56/Y57fU0
13ac80 49 6c 71 55 53 63 2f 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 IlqUSc/AtyjcndBInTMu2l+nZrghtWjl
13aca0 41 33 51 56 48 64 57 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 A3QVHdWpaIbOjGM9O.9y5Xt5hwXsjEeL
13acc0 42 69 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 51 75 Bi.-----END.CERTIFICATE-----..Qu
13ace0 6f 56 61 64 69 73 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 0a oVadis.Root.CA.================.
13ad00 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
13ad20 30 44 43 43 42 4c 69 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 0DCCBLigAwIBAgIEOrZQizANBgkqhkiG
13ad40 39 77 30 42 41 51 55 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 9w0BAQUFADB/MQswCQYDVQQGEwJCTTEZ
13ad60 4d 42 63 47 41 31 55 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 MBcGA1UE.ChMQUXVvVmFkaXMgTGltaXR
13ad80 6c 5a 44 45 6c 4d 43 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 lZDElMCMGA1UECxMcUm9vdCBDZXJ0aWZ
13ada0 70 59 32 46 30 61 57 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 pY2F0aW9uIEF1dGhvcml0.eTEuMCwGA1
13adc0 55 45 41 78 4d 6c 55 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 UEAxMlUXVvVmFkaXMgUm9vdCBDZXJ0aW
13ade0 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 46 77 30 77 4d 54 ZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMT
13ae00 41 7a 0a 4d 54 6b 78 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 Az.MTkxODMzMzNaFw0yMTAzMTcxODMzM
13ae20 7a 4e 61 4d 48 38 78 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 zNaMH8xCzAJBgNVBAYTAkJNMRkwFwYDV
13ae40 51 51 4b 45 78 42 52 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 QQKExBRdW9WYWRp.cyBMaW1pdGVkMSUw
13ae60 49 77 59 44 56 51 51 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 IwYDVQQLExxSb290IENlcnRpZmljYXRp
13ae80 62 32 34 67 51 58 56 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 b24gQXV0aG9yaXR5MS4wLAYDVQQD.EyV
13aea0 52 64 57 39 57 59 57 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 RdW9WYWRpcyBSb290IENlcnRpZmljYXR
13aec0 70 62 32 34 67 51 58 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 pb24gQXV0aG9yaXR5MIIBIjANBgkqhki
13aee0 47 39 77 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 76 32 G9w0BAQEF.AAOCAQ8AMIIBCgKCAQEAv2
13af00 47 31 6c 56 4f 36 56 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 G1lVO6V/z68mcLOhrfEYBklbTRvM16z/
13af20 59 70 6c 69 34 6b 56 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 Ypli4kVEAkOPcahdxYTMuk.J0KX0J+Di
13af40 73 50 6b 42 67 4e 62 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 sPkBgNbAKVRHnAEdOLB1Dqr1607BxgFj
13af60 76 32 44 72 4f 70 6d 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 v2DrOpm2RgbaIr1VxqYuvXtdj182d6Ua
13af80 6a 74 4c 0a 46 38 48 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 jtL.F8HVj71lODqV0D1VNk7feVcxKh7Y
13afa0 57 57 56 4a 57 43 43 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 WWVJWCCYfqtffp/p1k3sg3Spx2zY7ilK
13afc0 68 53 6f 47 46 50 6c 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 hSoGFPlU5tPaZQeL.YzcS19Dsw3sgQUS
13afe0 6a 37 63 75 67 46 2b 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 j7cugF+FxZc4dZjH3dgEZyH0DWLaVSR2
13b000 6d 45 69 62 6f 78 67 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 mEiboxgx24ONmy+pdpibu5cxfvWen.AS
13b020 63 4f 6f 73 70 55 78 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 cOospUxbF6lR1xHkopigPcakXBpBlebz
13b040 62 4e 77 36 4b 77 74 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 bNw6Kwt/5cOOJSvPhEQ+aQuwIDAQABo4
13b060 49 43 55 6a 43 43 41 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 ICUjCCAk4w.PQYIKwYBBQUHAQEEMTAvM
13b080 43 30 47 43 43 73 47 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 C0GCCsGAQUFBzABhiFodHRwczovL29jc
13b0a0 33 41 75 63 58 56 76 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 3AucXVvdmFkaXNvZmZzaG9y.ZS5jb20w
13b0c0 44 77 59 44 56 52 30 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 DwYDVR0TAQH/BAUwAwEB/zCCARoGA1Ud
13b0e0 49 41 53 43 41 52 45 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 IASCAREwggENMIIBCQYJKwYBBAG+WAAB
13b100 4d 49 48 37 0a 4d 49 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 MIH7.MIHUBggrBgEFBQcCAjCBxxqBxFJ
13b120 6c 62 47 6c 68 62 6d 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 lbGlhbmNlIG9uIHRoZSBRdW9WYWRpcyB
13b140 53 62 32 39 30 49 45 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 Sb290IENlcnRpZmlj.YXRlIGJ5IGFueS
13b160 42 77 59 58 4a 30 65 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 BwYXJ0eSBhc3N1bWVzIGFjY2VwdGFuY2
13b180 55 67 62 32 59 67 64 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 Ugb2YgdGhlIHRoZW4gYXBwbGljYWJs.Z
13b1a0 53 42 7a 64 47 46 75 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 SBzdGFuZGFyZCB0ZXJtcyBhbmQgY29uZ
13b1c0 47 6c 30 61 57 39 75 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 Gl0aW9ucyBvZiB1c2UsIGNlcnRpZmljY
13b1e0 58 52 70 62 32 34 67 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 XRpb24gcHJh.Y3RpY2VzLCBhbmQgdGhl
13b200 49 46 46 31 62 31 5a 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 IFF1b1ZhZGlzIENlcnRpZmljYXRlIFBv
13b220 62 47 6c 6a 65 53 34 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 bGljeS4wIgYIKwYBBQUHAgEW.Fmh0dHA
13b240 36 4c 79 39 33 64 33 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 6Ly93d3cucXVvdmFkaXMuYm0wHQYDVR0
13b260 4f 42 42 59 45 46 49 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 OBBYEFItLbe3TKbkGGew5Oanwl4Rqy+/
13b280 66 4d 49 47 75 0a 42 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 fMIGu.BgNVHSMEgaYwgaOAFItLbe3TKb
13b2a0 6b 47 47 65 77 35 4f 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 kGGew5Oanwl4Rqy+/foYGEpIGBMH8xCz
13b2c0 41 4a 42 67 4e 56 42 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 AJBgNVBAYTAkJNMRkw.FwYDVQQKExBRd
13b2e0 57 39 57 59 57 52 70 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 W9WYWRpcyBMaW1pdGVkMSUwIwYDVQQLE
13b300 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 30 0a xxSb290IENlcnRpZmljYXRpb24gQXV0.
13b320 61 47 39 79 61 58 52 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 aG9yaXR5MS4wLAYDVQQDEyVRdW9WYWRp
13b340 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 56 30 cyBSb290IENlcnRpZmljYXRpb24gQXV0
13b360 61 47 39 79 61 58 52 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 aG9yaXR5ggQ6.tlCLMA4GA1UdDwEB/wQ
13b380 45 41 77 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 EAwIBBjANBgkqhkiG9w0BAQUFAAOCAQE
13b3a0 41 69 74 51 55 74 66 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 AitQUtf70mpKnGdSkfnIYj9lo.fFIk3W
13b3c0 64 76 4f 58 72 45 71 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 dvOXrEql494liwTXCYhGHoG+NpGA7O+0
13b3e0 64 51 6f 45 37 2f 38 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 dQoE7/8CQfvbLO9Sf87C9TqnN7Az10bu
13b400 59 57 6e 75 75 6c 0a 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 YWnuul.LsS/VidQK2K6vkscPFVcQR0kv
13b420 6f 49 67 52 31 33 56 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 oIgR13VRH56FmjffU1RcHhXHTMe/QKZn
13b440 41 7a 4e 43 67 56 50 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 AzNCgVPx7uOpHX6Sm2x.gI4JVrmcGmD+
13b460 58 63 48 58 65 74 77 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 XcHXetwReNDWXcG31a0ymQM6isxUJTkx
13b480 67 58 73 54 49 6c 47 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 gXsTIlG6Rmyhu576BGxJJnSP0nPrzDCi
13b4a0 0a 35 75 70 5a 49 6f 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 .5upZIof4l/UO/erMkqQWxFIY6iHOsfH
13b4c0 6d 68 49 48 6c 75 71 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 mhIHluqmGKPJDWl0Snawe2ajlCmqnf6C
13b4e0 48 4b 63 2f 79 69 55 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 HKc/yiU3U7MXi.5nrQNiOKSnQ2+Q==.-
13b500 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 51 75 6f 56 61 64 ----END.CERTIFICATE-----..QuoVad
13b520 69 73 20 52 6f 6f 74 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 is.Root.CA.2.==================.
13b540 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
13b560 74 7a 43 43 41 35 2b 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 tzCCA5+gAwIBAgICBQkwDQYJKoZIhvcN
13b580 41 51 45 46 42 51 41 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 AQEFBQAwRTELMAkGA1UEBhMCQk0xGTAX
13b5a0 42 67 4e 56 42 41 6f 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 BgNVBAoT.EFF1b1ZhZGlzIExpbWl0ZWQ
13b5c0 78 47 7a 41 5a 42 67 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 xGzAZBgNVBAMTElF1b1ZhZGlzIFJvb3Q
13b5e0 67 51 30 45 67 4d 6a 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 gQ0EgMjAeFw0wNjExMjQx.ODI3MDBaFw
13b600 30 7a 4d 54 45 78 4d 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 0zMTExMjQxODIzMzNaMEUxCzAJBgNVBA
13b620 59 54 41 6b 4a 4e 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 YTAkJNMRkwFwYDVQQKExBRdW9WYWRpcy
13b640 42 4d 0a 61 57 31 70 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 BM.aW1pdGVkMRswGQYDVQQDExJRdW9WY
13b660 57 52 70 63 79 42 53 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 WRpcyBSb290IENBIDIwggIiMA0GCSqGS
13b680 49 62 33 44 51 45 42 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 Ib3DQEBAQUAA4IC.DwAwggIKAoICAQCa
13b6a0 47 4d 70 4c 6c 41 30 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 GMpLlA0ALa8DKYrwD4HIrkwZhR0In6sp
13b6c0 52 49 58 7a 4c 34 47 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 RIXzL4GtMh6QRr+jhiYaHv5+HBg6.XJx
13b6e0 67 46 79 6f 36 64 49 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 gFyo6dIMzMH1hVBHL7avg5tKifvVrbxi
13b700 33 43 67 73 74 2f 65 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 3Cgst/ek+7wrGsxDp3MJGF/hd/aTa/55
13b720 4a 57 70 7a 6d 4d 2b 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 JWpzmM+Yk.lvc/ulsrHHo1wtZn/qtmUI
13b740 74 74 4b 47 41 72 37 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 ttKGAr79dgw8eTvI02kfN/+NsRE8Scd3
13b760 62 42 72 72 63 43 61 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 bBrrcCaoF6qUWD4gXmuVbB.lDePSHFjI
13b780 75 77 58 5a 51 65 56 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 uwXZQeVikvfj8ZaCuWw419eaxGrDPmF6
13b7a0 30 54 70 2b 41 52 7a 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 0Tp+ARz8un+XJiM9XOva7R+zdRcAitMO
13b7c0 65 47 79 0a 6c 5a 55 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 eGy.lZUtQofX1bOQQ7dsE/He3fbE+Ik/
13b7e0 30 58 58 31 6b 73 4f 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 0XX1ksOR1YqI0JDs3G3eicJlcZaLDQP9
13b800 6e 4c 39 62 46 71 79 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 nL9bFqyS2+r+eXyt.66/3FsvbzSUr5R/
13b820 37 6d 70 2f 69 55 63 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 7mp/iUcw6UwxI5g69ybR2BlLmEROFcmM
13b840 44 42 4f 41 45 4e 69 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 DBOAENisgGQLodKcftslWZvB1Jdxn.wQ
13b860 35 68 59 49 69 7a 50 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 5hYIizPtGo/KPaHbDRsSNU30R2be1B2M
13b880 47 79 49 72 5a 54 48 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 GyIrZTHN81Hdyhdyox5C315eXbyOD/5Y
13b8a0 44 58 43 32 4f 67 2f 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 DXC2Og/zOh.D7osFRXql7PSorW+8oyWH
13b8c0 68 71 50 48 57 79 6b 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 hqPHWykYTe5hnMz15eWniN9gqRMgeKh0
13b8e0 62 70 6e 58 35 55 48 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 bpnX5UHoycR7hYQe7xFSkyy.BNKr79X9
13b900 44 46 48 4f 55 47 6f 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 DFHOUGoIMfmR2gyPZFwDwzqLID9ujWc9
13b920 4f 74 62 2b 66 56 75 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 Otb+fVuIyV77zGHcizN300QyNQliBJIW
13b940 45 4e 69 65 0a 4a 30 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 ENie.J0f7OyHj+OsdWwIDAQABo4GwMIG
13b960 74 4d 41 38 47 41 31 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 tMA8GA1UdEwEB/wQFMAMBAf8wCwYDVR0
13b980 50 42 41 51 44 41 67 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 PBAQDAgEGMB0GA1Ud.DgQWBBQahGK8SE
13b9a0 77 7a 4a 51 54 55 37 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 wzJQTU7tD2A8QZRtGUazBuBgNVHSMEZz
13b9c0 42 6c 67 42 51 61 68 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 BlgBQahGK8SEwzJQTU7tD2A8QZRtGU.a
13b9e0 36 46 4a 70 45 63 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 6FJpEcwRTELMAkGA1UEBhMCQk0xGTAXB
13ba00 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 30 5a 57 51 78 47 gNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxG
13ba20 7a 41 5a 42 67 4e 56 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 zAZBgNVBAMT.ElF1b1ZhZGlzIFJvb3Qg
13ba40 51 30 45 67 4d 6f 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 44 Q0EgMoICBQkwDQYJKoZIhvcNAQEFBQAD
13ba60 67 67 49 42 41 44 34 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 ggIBAD4KFk2fBluornFdLwUv.Z+YTRYP
13ba80 45 4e 76 62 7a 77 43 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 ENvbzwCYMDbVHZF34tHLJRqUDGCdViXh
13baa0 39 64 75 71 57 4e 49 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 9duqWNIAXINzng/iN/Ae42l9NLmeyhP3
13bac0 5a 52 50 78 33 0a 55 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 ZRPx3.UIHmfLTJDQtyU/h2BwdBR5YM++
13bae0 43 43 4a 70 4e 56 6a 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 CCJpNVjP4iH2BlfF/nJrP3MpCYUNQ3cV
13bb00 58 32 6b 69 46 34 39 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 X2kiF495V5+vgtJodm.VjB3pjd4M1IQW
13bb20 4b 34 2f 59 59 37 79 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 K4/YY7yarHvGH5KWWPKjaJW1acvvFYfz
13bb40 7a 6e 42 34 76 73 4b 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 znB4vsKqBUsfU16Y8Zsl0Q80m/DShcK.
13bb60 2b 4a 44 53 56 36 49 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 +JDSV6IZUaUtl0HaB0+pUNqQjZRG4T7w
13bb80 6c 50 30 51 41 44 6a 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 lP0QADj1O+hA4bRuVhogzG9Yje0uRY/W
13bba0 36 5a 4d 2f 35 37 45 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 6ZM/57Es3zrW.IozchLsib9D45MY56QS
13bbc0 49 50 4d 4f 36 36 31 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 IPMO661V6bYCZJPVsAfv4l7CUW+v90m/
13bbe0 78 64 32 67 4e 4e 57 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 xd2gNNWQjrLhVoQPRTUIZ3Ph1.WVaj+a
13bc00 68 4a 65 66 69 76 44 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 hJefivDrkRoHy3au000LYmYjgahwz46P
13bc20 30 75 30 35 42 2f 42 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 0u05B/B5EqHdZ+XIWDmbA4CD/pXvk1B+
13bc40 54 4a 59 6d 35 58 0a 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 TJYm5X.f6dQlfe6yJvmjqIBxdZmv3lh8
13bc60 7a 77 63 34 62 6d 43 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 zwc4bmCXF2gw+nYSL0ZohEUGW6yhhtoP
13bc80 6b 67 33 47 6f 69 33 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 kg3Goi3XZZenMfvJ2II.4pEZXNLxId26
13bca0 46 30 4b 43 6c 33 47 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 F0KCl3GBUzGpn/Z9Yr9y4aOTHcyKJloJ
13bcc0 4f 4e 44 4f 31 77 32 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 ONDO1w2AFrR4pTqHTI2KpdVGl/IsELm8
13bce0 0a 56 43 4c 41 41 56 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 .VCLAAVBpQ570su9t+Oza8eOx79+Rj1Q
13bd00 71 43 79 58 42 4a 68 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 qCyXBJhnEUhAFZdWCEOrCMc0u.-----E
13bd20 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 52 6f ND.CERTIFICATE-----..QuoVadis.Ro
13bd40 6f 74 20 43 41 20 33 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 ot.CA.3.==================.-----
13bd60 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 47 6e 54 43 43 42 BEGIN.CERTIFICATE-----.MIIGnTCCB
13bd80 49 57 67 41 77 49 42 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 IWgAwIBAgICBcYwDQYJKoZIhvcNAQEFB
13bda0 51 41 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 QAwRTELMAkGA1UEBhMCQk0xGTAXBgNVB
13bdc0 41 6f 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 AoT.EFF1b1ZhZGlzIExpbWl0ZWQxGzAZ
13bde0 42 67 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 BgNVBAMTElF1b1ZhZGlzIFJvb3QgQ0Eg
13be00 4d 7a 41 65 46 77 30 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 MzAeFw0wNjExMjQx.OTExMjNaFw0zMTE
13be20 78 4d 6a 51 78 4f 54 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 xMjQxOTA2NDRaMEUxCzAJBgNVBAYTAkJ
13be40 4e 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 0a 61 57 NMRkwFwYDVQQKExBRdW9WYWRpcyBM.aW
13be60 31 70 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 1pdGVkMRswGQYDVQQDExJRdW9WYWRpcy
13be80 42 53 62 32 39 30 49 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 BSb290IENBIDMwggIiMA0GCSqGSIb3DQ
13bea0 45 42 41 51 55 41 41 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 EBAQUAA4IC.DwAwggIKAoICAQDMV0IWV
13bec0 4a 7a 6d 6d 4e 50 54 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 JzmmNPTTe7+7cefQzlKZbPoFog02w1Zk
13bee0 58 54 50 6b 72 67 45 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 XTPkrgEQK0CSzGrvI2RaNgg.DhoB4hp7
13bf00 54 68 64 64 34 6f 71 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 Thdd4oq3P5kazethq8Jlph+3t723j/z9
13bf20 63 49 38 4c 6f 47 65 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 cI8LoGe+AaJZz3HmDyl2/7FWeUUrH556
13bf40 56 4f 69 6a 0a 4b 54 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 VOij.KTVopAFPD6QuN+8bv+OPEKhyq1h
13bf60 58 35 31 53 47 79 4d 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 X51SGyMnzW9os2l2ObjyjPtr7guXd8ly
13bf80 79 42 54 4e 76 69 6a 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 yBTNvijbO0BNO/79K.DDRMpsMhvVAEVe
13bfa0 75 78 75 35 33 37 52 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 uxu537RR5kFd5VAYwCdrXLoT9CabwvvW
13bfc0 68 44 46 6c 61 4a 4b 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 hDFlaJKjdhkf2mrk7AyxRllDdLkgbv.B
13bfe0 4e 44 49 6e 49 6a 62 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 NDInIjbC3uBr7E9KsRlOni27tyAsdLTm
13c000 5a 77 36 37 6d 74 61 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 Zw67mtaa7ONt9XOnMK+pUsvFrGeaDsGb
13c020 36 35 39 6e 2f 6a 65 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 659n/je7Mwp.p5ijJUMv7/FfJuGITfhe
13c040 62 74 66 5a 46 47 34 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 btfZFG4ZM2mnO4SJk8RTVROhUXhA+LjJ
13c060 6f 75 35 37 75 6c 4a 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 ou57ulJCg54U7QVSWllWp5f8.nT8KKdj
13c080 63 54 35 45 4f 45 37 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 cT5EOE7zelaTfi5m+rJsziO+1ga8bxiJ
13c0a0 54 79 50 62 48 37 70 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 TyPbH7pcUsMV8eFLI8M5ud2CEpukqdiD
13c0c0 74 57 41 45 58 0a 4d 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 tWAEX.MJPpGovgc2PZapKUSU60rUqFxK
13c0e0 4d 69 4d 50 77 4a 37 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 MiMPwJ7Wgic6aIDFUhWMXhOp8q3crhkO
13c100 44 5a 63 36 74 73 67 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 DZc6tsgLjoC2SToJyM.Gf+z0gzskSaHi
13c120 72 4f 69 34 58 43 50 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 rOi4XCPLArlzW1oUevaPwV/izLmE1xr/
13c140 6c 39 41 34 69 4c 49 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 l9A4iLItLRkT9a6fUg+qGkM17uGcclz.
13c160 75 44 38 37 6e 53 56 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 uD87nSVL2v9A6wIDAQABo4IBlTCCAZEw
13c180 44 77 59 44 56 52 30 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 DwYDVR0TAQH/BAUwAwEB/zCB4QYDVR0g
13c1a0 42 49 48 5a 4d 49 48 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 BIHZMIHWMIHT.BgkrBgEEAb5YAAMwgcU
13c1c0 77 67 5a 4d 47 43 43 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 wgZMGCCsGAQUFBwICMIGGGoGDQW55IHV
13c1e0 7a 5a 53 42 76 5a 69 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 zZSBvZiB0aGlzIENlcnRpZmlj.YXRlIG
13c200 4e 76 62 6e 4e 30 61 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 NvbnN0aXR1dGVzIGFjY2VwdGFuY2Ugb2
13c220 59 67 64 47 68 6c 49 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 YgdGhlIFF1b1ZhZGlzIFJvb3QgQ0EgMy
13c240 42 44 5a 58 4a 30 0a 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 BDZXJ0.aWZpY2F0ZSBQb2xpY3kgLyBDZ
13c260 58 4a 30 61 57 5a 70 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 XJ0aWZpY2F0aW9uIFByYWN0aWNlIFN0Y
13c280 58 52 6c 62 57 56 75 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 XRlbWVudC4wLQYIKwYB.BQUHAgEWIWh0
13c2a0 64 48 41 36 4c 79 39 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 dHA6Ly93d3cucXVvdmFkaXNnbG9iYWwu
13c2c0 59 32 39 74 4c 32 4e 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 Y29tL2NwczALBgNVHQ8EBAMCAQYwHQYD
13c2e0 0a 56 52 30 4f 42 42 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 .VR0OBBYEFPLAE+CCQz777i9nMpY1XNu
13c300 34 79 77 4c 51 4d 47 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 4ywLQMG4GA1UdIwRnMGWAFPLAE+CCQz7
13c320 37 37 69 39 6e 4d 70 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 77i9nMpY1XNu4.ywLQoUmkRzBFMQswCQ
13c340 59 44 56 51 51 47 45 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 YDVQQGEwJCTTEZMBcGA1UEChMQUXVvVm
13c360 46 6b 61 58 4d 67 54 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 FkaXMgTGltaXRlZDEbMBkGA1UE.AxMSU
13c380 58 56 76 56 6d 46 6b 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 XVvVmFkaXMgUm9vdCBDQSAzggIFxjANB
13c3a0 67 6b 71 68 6b 69 47 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 gkqhkiG9w0BAQUFAAOCAgEAT62gLEz6w
13c3c0 50 4a 76 39 32 5a 56 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 PJv92ZV.qyM07ucp2sNbtrCD2dDQ4iH7
13c3e0 38 32 43 6e 4f 31 31 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 82CnO11gUyeim/YIIirnv6By5ZwkajGx
13c400 6b 48 6f 6e 32 34 51 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 kHon24QRiSemd1o417+s.hvzuXYO8Bsb
13c420 52 64 32 73 50 62 53 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 Rd2sPbSQvS3pspweWyuOEn62Iix2rFo1
13c440 62 5a 68 66 5a 46 76 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 bZhfZFvSLgNLd+LJ2w/w4E6oM3kJpK27
13c460 7a 0a 50 4f 75 41 4a 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 z.POuAJ9v1pkQNn1pVWQvVDVJIxa6f8i
13c480 2b 41 78 65 6f 79 55 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 +AxeoyUDUSly7B4f/xI4hROJ/yZlZ25w
13c4a0 39 52 6c 36 56 53 44 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 9Rl6VSDE1JUZU2.Pb+iSwwQHYaZTKrzc
13c4c0 68 47 54 35 4f 72 32 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 hGT5Or2m9qoXadNt54CrnMAyNojA+j56
13c4e0 68 6c 30 59 67 43 55 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 hl0YgCUyyIgvpSnWbWCar6ZeXqp.8kok
13c500 55 76 64 30 2f 62 70 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 Uvd0/bpO5qgdAm6xDYBEwa7TIzdfu4V8
13c520 4b 35 49 75 36 48 36 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 K5Iu6H6li92Z4b8nby1dqnuH/grdS/yO
13c540 39 53 62 6b 62 6e 42 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 9SbkbnBC.bjPsMZ57k8HkyWkaPcBrTiJ
13c560 74 37 71 74 59 54 63 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 t7qtYTcbQQcEr6k8Sh17rRdhs9ZgC06D
13c580 59 56 59 6f 47 6d 52 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 YVYoGmRmioHfRMJ6szHXu.g/WwYjnPbF
13c5a0 66 69 54 4e 4b 52 43 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 fiTNKRCw51KBuav/0aQ/HKd/s7j2G4aS
13c5c0 67 57 51 67 52 65 63 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 gWQgRecCocIdiP4b0jWy10QJLZYxkNc9
13c5e0 31 70 0a 76 47 4a 48 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 1p.vGJHvOB0K7Lrfb5BG7XARsWhIstfT
13c600 73 45 6f 6b 74 34 59 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 sEokt4YutUqKLsRixeTmJlglFwjz1onl
13c620 31 34 4c 42 51 61 54 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 14LBQaTNx47aTbr.qZ5hHY8y2o4M1nQ+
13c640 65 77 6b 6b 32 67 46 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 ewkk2gF3R8Q7zTSMmfXK4SVhM7JZG+Ju
13c660 31 7a 64 58 74 67 32 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 1zdXtg2pEto=.-----END.CERTIFICAT
13c680 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 52 E-----..Security.Communication.R
13c6a0 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.=========================
13c6c0 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----
13c6e0 2d 0a 4d 49 49 44 57 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 -.MIIDWjCCAkKgAwIBAgIBADANBgkqhk
13c700 69 47 39 77 30 42 41 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 iG9w0BAQUFADBQMQswCQYDVQQGEwJKUD
13c720 45 59 4d 42 59 47 41 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 EYMBYGA1UEChMP.U0VDT00gVHJ1c3Qub
13c740 6d 56 30 4d 53 63 77 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 mV0MScwJQYDVQQLEx5TZWN1cml0eSBDb
13c760 32 31 74 64 57 35 70 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 21tdW5pY2F0aW9uIFJvb3RDQTEw.HhcN
13c780 4d 44 4d 77 4f 54 4d 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 MDMwOTMwMDQyMDQ5WhcNMjMwOTMwMDQy
13c7a0 4d 44 51 35 57 6a 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 MDQ5WjBQMQswCQYDVQQGEwJKUDEYMBYG
13c7c0 41 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 A1UEChMP.U0VDT00gVHJ1c3QubmV0MSc
13c7e0 77 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 wJQYDVQQLEx5TZWN1cml0eSBDb21tdW5
13c800 70 59 32 46 30 61 57 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 pY2F0aW9uIFJvb3RDQTEw.ggEiMA0GCS
13c820 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 42 41 51 qGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQ
13c840 43 7a 73 2f 35 2f 30 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 Czs/5/022x7xZ8V6UMbXaKL0u/ZPtM7o
13c860 72 77 0a 38 79 6c 38 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 rw.8yl89f/uKuDp6bpbZCKamm8sOiZpU
13c880 51 57 5a 4a 74 7a 56 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 QWZJtzVHGpxxpp9Hp3dfGzGjGdnSj74c
13c8a0 62 41 5a 4a 36 6b 4a 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 bAZJ6kJDKaVv0uM.DPpVmDvY6CKhS3E4
13c8c0 65 61 79 58 6b 6d 6d 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 eayXkmmziX7qIWgGmBSWh9JhNrxtJ1ae
13c8e0 56 2b 37 41 77 46 62 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 V+7AwFb9Ms+k2Y7CI9eNqPPYJayX.5HA
13c900 34 39 4c 59 36 74 4a 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 49LY6tJ07lyZDo6G8SVlyTCMwhwFY9k6
13c920 2b 48 47 68 57 5a 71 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 +HGhWZq/NQV3Is00qVUarH9oe4kA9281
13c940 39 75 5a 4b 41 6e 44 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 9uZKAnDfd.DJZkndwi92SL32HeFZRSFa
13c960 42 39 55 73 6c 4c 71 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 B9UslLqCHJxrHty8OVYNEP8Ktw+N/LTX
13c980 37 73 31 76 71 72 32 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 7s1vqr2b1/VPKl6Xn62dZ2.JChzAgMBA
13c9a0 41 47 6a 50 7a 41 39 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 AGjPzA9MB0GA1UdDgQWBBSgc0mZaNyFW
13c9c0 32 58 6a 6d 79 67 76 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 2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCA
13c9e0 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 41 4e 42 67 6b 71 QYw.DwYDVR0TAQH/BAUwAwEB/zANBgkq
13ca00 68 6b 69 47 39 77 30 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 hkiG9w0BAQUFAAOCAQEAaECpqLvkT115
13ca20 73 77 57 31 46 37 4e 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 swW1F7NgE+vGkl3g.0dNq/vu+m22/xwV
13ca40 74 57 53 44 45 48 50 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 tWSDEHPC32oRYAmP6SBbvT6UL90qY8j+
13ca60 65 47 36 31 48 61 32 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 eG61Ha2POCEfrUj94nK9NrvjVT8+a.mC
13ca80 6f 51 51 54 6c 53 78 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 oQQTlSxN3Zmw7vkwGusi7KaEIkQmywsz
13caa0 6f 2b 7a 65 6e 61 53 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 o+zenaSMQVy+n5Bw+SUEmK3TGXX8npN6
13cac0 6f 37 57 57 57 58 6c 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 o7WWWXlDLJ.s58+OmJYxUmtYg5xpTKqL
13cae0 38 61 4a 64 6b 4e 41 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 8aJdkNAExNnPaJUJRDL8Try2frbSVa7p
13cb00 76 36 6e 51 54 58 44 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 v6nQTXD4IhhyYjH3zYQIphZ.6rBK+1YW
13cb20 63 32 36 73 54 66 63 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 c26sTfcioU+tHXotRSflMMFe8toTyyVC
13cb40 55 5a 56 48 41 34 78 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 UZVHA4xsIcx0Qu1T/zOLjw9XARYvz6bu
13cb60 79 58 41 69 0a 46 4c 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 yXAi.FL39vmwLAw==.-----END.CERTI
13cb80 46 49 43 41 54 45 2d 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 FICATE-----..Sonera.Class.2.Root
13cba0 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 0a 2d 2d 2d 2d 2d .CA.======================.-----
13cbc0 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 49 44 43 43 41 BEGIN.CERTIFICATE-----.MIIDIDCCA
13cbe0 67 69 67 41 77 49 42 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 gigAwIBAgIBHTANBgkqhkiG9w0BAQUFA
13cc00 44 41 35 4d 51 73 77 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 DA5MQswCQYDVQQGEwJGSTEPMA0GA1UEC
13cc20 68 4d 47 0a 55 32 39 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 hMG.U29uZXJhMRkwFwYDVQQDExBTb25l
13cc40 63 6d 45 67 51 32 78 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 cmEgQ2xhc3MyIENBMB4XDTAxMDQwNjA3
13cc60 4d 6a 6b 30 4d 46 6f 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 Mjk0MFoXDTIxMDQw.NjA3Mjk0MFowOTE
13cc80 4c 4d 41 6b 47 41 31 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 LMAkGA1UEBhMCRkkxDzANBgNVBAoTBlN
13cca0 76 62 6d 56 79 59 54 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 vbmVyYTEZMBcGA1UEAxMQU29uZXJh.IE
13ccc0 4e 73 59 58 4e 7a 4d 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 NsYXNzMiBDQTCCASIwDQYJKoZIhvcNAQ
13cce0 45 42 42 51 41 44 67 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 EBBQADggEPADCCAQoCggEBAJAXSjWdyv
13cd00 41 4e 6c 73 64 45 2b 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 ANlsdE+hY3./Ei9vX+ALTU74W+oZ6m/A
13cd20 78 78 4e 6a 47 38 79 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 xxNjG8yR9VBaKQTBME1DJqEQ/xcHf+Js
13cd40 2b 67 58 47 4d 32 52 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 +gXGM2RX/uJ4+q/Tl18GybT.dXnt5oTj
13cd60 56 2b 57 74 4b 63 54 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 V+WtKcT0OijnpXuENmmz/V52vaMtmdOQ
13cd80 54 69 4d 6f 66 52 68 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 TiMofRhj8VQ7Jp12W5dCsv+u8E7s3TmV
13cda0 54 6f 4d 47 0a 66 2b 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 ToMG.f+dJQMjFAbJUWmYdPfz56TwKnoG
13cdc0 34 63 50 41 42 69 2b 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 4cPABi+QjVHzIrviQHgCWctRUz2EjvOr
13cde0 37 6e 51 4b 56 30 62 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 7nQKV0ba5cTppCD8P.tOFCx4j1P5iop7
13ce00 6f 63 34 48 46 78 37 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 oc4HFx71hXgVB6XGt0Rg6DA5jDjqhu8n
13ce20 59 79 62 69 65 44 77 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 YybieDwnPz3BjotJPqdURrBGAgcVeH.n
13ce40 66 4f 2b 6f 4a 41 6a 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 fO+oJAjPYok4doh28MCAwEAAaMzMDEwD
13ce60 77 59 44 56 52 30 54 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 wYDVR0TAQH/BAUwAwEB/zARBgNVHQ4EC
13ce80 67 51 49 53 71 43 71 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 gQISqCqWITT.XjwwCwYDVR0PBAQDAgEG
13cea0 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 42 61 7a 6f 66 35 MA0GCSqGSIb3DQEBBQUAA4IBAQBazof5
13cec0 46 6e 49 56 56 30 73 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 FnIVV0sd2ZvnoiYw7JNn39Yt.0jSv9zi
13cee0 6c 7a 71 73 57 75 61 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 lzqsWuasvfDXLrNAPtEwr/IDva4yRXzZ
13cf00 32 39 39 75 7a 47 78 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 299uzGxnq9LIR/WFxRL8oszodv7ND6J+
13cf20 2f 33 44 45 49 0a 63 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 /3DEI.cbCdjdY0RzKQxmUk96BKfARzjz
13cf40 6c 76 46 34 78 79 74 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 lvF4xytb1LyHr4e4PDKE6cCepnP7JnBB
13cf60 76 44 46 4e 72 34 35 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 vDFNr450kkkdAdavph.Oe9r5yF1BgfYE
13cf80 72 51 68 49 48 42 43 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 rQhIHBCcYHaPJo2vqZbDWpsmh+Re/n57
13cfa0 30 4b 36 54 6b 36 65 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 0K6Tk6ezAyNlNzZRZxe7EJQY670XcSx.
13cfc0 45 74 7a 4b 4f 36 67 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 EtzKO6gunRRaBXW37Ndj4ro1tgQIkeja
13cfe0 6e 5a 7a 32 5a 72 55 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 nZz2ZrUYrAqmVCY0M9IbwdR/GjqOC6oy
13d000 62 74 76 38 54 79 57 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 btv8TyWf2TLH.llpwrN9M.-----END.C
13d020 45 52 54 49 46 49 43 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 ERTIFICATE-----..Staat.der.Neder
13d040 6c 61 6e 64 65 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 landen.Root.CA.=================
13d060 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
13d080 41 54 45 2d 2d 2d 2d 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 ATE-----.MIIDujCCAqKgAwIBAgIEAJi
13d0a0 57 69 6a 41 4e 42 67 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 WijANBgkqhkiG9w0BAQUFADBVMQswCQY
13d0c0 44 56 51 51 47 45 77 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 DVQQGEwJOTDEeMBwGA1UE.ChMVU3RhYX
13d0e0 51 67 5a 47 56 79 49 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 QgZGVyIE5lZGVybGFuZGVuMSYwJAYDVQ
13d100 51 44 45 78 31 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 QDEx1TdGFhdCBkZXIgTmVkZXJsYW5kZW
13d120 34 67 0a 55 6d 39 76 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 4g.Um9vdCBDQTAeFw0wMjEyMTcwOTIzN
13d140 44 6c 61 46 77 30 78 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 DlaFw0xNTEyMTYwOTE1MzhaMFUxCzAJB
13d160 67 4e 56 42 41 59 54 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 gNVBAYTAk5MMR4w.HAYDVQQKExVTdGFh
13d180 64 43 42 6b 5a 58 49 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 dCBkZXIgTmVkZXJsYW5kZW4xJjAkBgNV
13d1a0 42 41 4d 54 48 56 4e 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 BAMTHVN0YWF0IGRlciBOZWRlcmxh.bmR
13d1c0 6c 62 69 42 53 62 32 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 lbiBSb290IENBMIIBIjANBgkqhkiG9w0
13d1e0 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 6d 4e 4b 31 55 52 46 BAQEFAAOCAQ8AMIIBCgKCAQEAmNK1URF
13d200 36 67 61 59 55 6d 48 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 6gaYUmHFt.vsznExvWJw56s2oYHLZhWt
13d220 56 68 43 62 2f 65 6b 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 VhCb/ekBPHZ+7d89rFDBKeNVU+LCeIQG
13d240 76 33 33 4e 30 69 59 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 v33N0iYfXCxw719tV2U02P.jLwYdjeFn
13d260 65 6a 4b 53 63 66 53 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 ejKScfST5gTCaI+Ioicf9byEGW07l8Y1
13d280 52 66 6a 2b 4d 58 39 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 Rfj+MX94p2i71MOhXeiD+EwR+4A5zN9R
13d2a0 47 63 61 0a 43 31 48 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 Gca.C1Hoi6CeUJhoNFIfLm0B8mBF8jHr
13d2c0 71 54 46 6f 4b 62 74 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 qTFoKbt6QZ7GGX+UtFE5A3+y3qcym7RH
13d2e0 6a 6d 2b 30 53 71 37 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 jm+0Sq7lr7HcsBth.vJly3uSJt3omXdo
13d300 7a 53 56 74 53 6e 41 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 zSVtSnA71iq3DuD3oBmrC1SoLbHuEvVY
13d320 46 79 34 5a 6c 6b 75 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 Fy4ZlkuxEK7COudxwC0barbxjiDn6.22
13d340 72 2b 49 2f 71 38 35 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 r+I/q85Ej0ZytqERAhSQIDAQABo4GRMI
13d360 47 4f 4d 41 77 47 41 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 GOMAwGA1UdEwQFMAMBAf8wTwYDVR0gBE
13d380 67 77 52 6a 42 45 42 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 gwRjBEBgRV.HSAAMDwwOgYIKwYBBQUHA
13d3a0 67 45 57 4c 6d 68 30 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 gEWLmh0dHA6Ly93d3cucGtpb3Zlcmhla
13d3c0 57 51 75 62 6d 77 76 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 WQubmwvcG9saWNpZXMvcm9v.dC1wb2xp
13d3e0 59 33 6b 77 44 67 59 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 Y3kwDgYDVR0PAQH/BAQDAgEGMB0GA1Ud
13d400 44 67 51 57 42 42 53 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 DgQWBBSofeu8Y6R0E3QA7Jbg0zTBLL9s
13d420 2b 44 41 4e 0a 42 67 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 +DAN.BgkqhkiG9w0BAQUFAAOCAQEABYS
13d440 48 56 58 51 32 59 63 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 HVXQ2YcG70dTGFagTtJ+k/rvuFbQvBgw
13d460 70 38 71 69 53 70 47 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 p8qiSpGEN/KtcCFtR.EytNwiphyPgJWP
13d480 77 74 41 72 49 35 66 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 wtArI5fZlmgb9uXJVFIGzmeafR2Bwp/M
13d4a0 49 67 4a 31 48 49 38 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 IgJ1HI8XxdNGdphREwxgDS1/PTfLbw.M
13d4c0 56 63 6f 45 6f 4a 7a 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 VcoEoJz6TMvplW0C5GUR5z6u3pCMuiuf
13d4e0 69 33 49 76 4b 77 55 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 i3IvKwUv9kP2Vv8wfl6leF9fpb8cbDCT
13d500 4d 6a 66 52 54 54 4a 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 MjfRTTJzg3y.nGQI0DvDKcWy7ZAEwbEp
13d520 6b 63 55 77 62 38 47 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 kcUwb8GpcjPM/l0WFywRaed+/sWDCN+8
13d540 33 43 49 36 4c 69 42 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 3CI6LiBpIzlWYGeQiy52OfsR.iJf2fL1
13d560 4c 75 43 41 57 5a 77 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 LuCAWZwWN4jvBcj+UlTfHXbme2JOhF4/
13d580 2f 44 47 59 56 77 53 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 /DGYVwSR8MnwDHTuhWEUykw==.-----E
13d5a0 4e 44 20 43 45 52 54 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 ND.CERTIFICATE-----..UTN.DATACor
13d5c0 70 20 53 47 43 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 p.SGC.Root.CA.==================
13d5e0 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---
13d600 2d 2d 0a 4d 49 49 45 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 --.MIIEXjCCA0agAwIBAgIQRL4Mi1AAI
13d620 62 51 52 30 79 70 6f 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 bQR0ypoBqmtaTANBgkqhkiG9w0BAQUFA
13d640 44 43 42 6b 7a 45 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 DCBkzELMAkGA1UE.BhMCVVMxCzAJBgNV
13d660 42 41 67 54 41 6c 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 BAgTAlVUMRcwFQYDVQQHEw5TYWx0IExh
13d680 61 32 55 67 51 32 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 a2UgQ2l0eTEeMBwGA1UEChMVVGhl.IFV
13d6a0 54 52 56 4a 55 55 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 TRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQ
13d6c0 4c 45 78 68 6f 64 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 LExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5
13d6e0 6a 62 32 30 78 47 7a 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 jb20xGzAZ.BgNVBAMTElVUTiAtIERBVE
13d700 46 44 62 33 4a 77 49 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 FDb3JwIFNHQzAeFw05OTA2MjQxODU3Mj
13d720 46 61 46 77 30 78 4f 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 FaFw0xOTA2MjQxOTA2MzBa.MIGTMQswC
13d740 51 59 44 56 51 51 47 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 QYDVQQGEwJVUzELMAkGA1UECBMCVVQxF
13d760 7a 41 56 42 67 4e 56 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 zAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5M
13d780 52 34 77 0a 48 41 59 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 R4w.HAYDVQQKExVUaGUgVVNFUlRSVVNU
13d7a0 49 45 35 6c 64 48 64 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 IE5ldHdvcmsxITAfBgNVBAsTGGh0dHA6
13d7c0 4c 79 39 33 64 33 63 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 Ly93d3cudXNlcnRy.dXN0LmNvbTEbMBk
13d7e0 47 41 31 55 45 41 78 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 GA1UEAxMSVVROIC0gREFUQUNvcnAgU0d
13d800 44 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 0a 41 51 DMIIBIjANBgkqhkiG9w0BAQEFAAOC.AQ
13d820 38 41 4d 49 49 42 43 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 8AMIIBCgKCAQEA3+5YEKIrblXEjr8uRg
13d840 6e 6e 34 41 67 50 4c 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 nn4AgPLit6E5Qbvfa2gI5lBZMAHryv4g
13d860 2b 4f 47 51 30 53 52 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 +OGQ0SR+ys.raP6LnD43m77VkIVni5c7
13d880 79 50 65 49 62 6b 46 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 yPeIbkFdicZD0/Ww5y0vpQZY/KmEQrrU
13d8a0 30 69 63 76 76 49 70 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 0icvvIpOxboGqBMpsn0GFlo.wHDyUwDA
13d8c0 58 6c 43 43 70 56 5a 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 XlCCpVZvNvlK4ESGoE1O1kduSUrLZ9em
13d8e0 78 41 57 35 6a 68 37 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 xAW5jh70/P/N5zbgnAVssjMiFdC04MwX
13d900 77 4c 4c 41 0a 39 50 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 wLLA.9P4yPykqlXvY8qdOD1R8oQ2Aswk
13d920 44 77 66 39 63 33 56 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 Dwf9c3V6aPryuvEeKaq5xyh+xKrhfQgU
13d940 4c 37 45 59 77 30 58 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 L7EYw0XILyulWbfXv.33i+Ybqypa4ETL
13d960 79 6f 72 47 6b 56 6c 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 yorGkVl73v67SMvzX41MPRKA5cOp9wGD
13d980 4d 67 64 38 53 69 72 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 Mgd8SirwIDAQABo4GrMIGoMAsGA1Ud.D
13d9a0 77 51 45 41 77 49 42 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 wQEAwIBxjAPBgNVHRMBAf8EBTADAQH/M
13d9c0 42 30 47 41 31 55 64 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 B0GA1UdDgQWBBRTMtGzz3/64PGgXYVOk
13d9e0 74 4b 65 52 52 32 30 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 tKeRR20TzA9.BgNVHR8ENjA0MDKgMKAu
13da00 68 69 78 6f 64 48 52 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 hixodHRwOi8vY3JsLnVzZXJ0cnVzdC5j
13da20 62 32 30 76 56 56 52 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 b20vVVROLURBVEFDb3JwU0dD.LmNybDA
13da40 71 42 67 4e 56 48 53 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 qBgNVHSUEIzAhBggrBgEFBQcDAQYKKwY
13da60 42 42 41 47 43 4e 77 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 BBAGCNwoDAwYJYIZIAYb4QgQBMA0GCSq
13da80 47 53 49 62 33 0a 44 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 GSIb3.DQEBBQUAA4IBAQAnNZcAiosovc
13daa0 59 7a 4d 42 34 70 2f 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 YzMB4p/OL31ZjUQLtgyr+rFywJNn9Q+k
13dac0 48 63 72 70 59 36 43 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 HcrpY6CiM+iVnJowft.Gzet/Hy+UUla3
13dae0 6a 6f 4b 56 41 67 57 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 joKVAgWRcKZsYfNjGjgaQPpxE6YsjuMF
13db00 72 4d 4f 6f 41 79 59 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 rMOoAyYUJuTqXAJyCyjj98C5OBxOvG0.
13db20 49 33 4b 67 71 67 48 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 I3KgqgHf35g+FFCgMSa9KOlaMCZ1+Xtg
13db40 48 49 33 7a 7a 56 41 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 HI3zzVAmbQQnmt/VDUVHKWss5nbZqSl9
13db60 4d 74 33 4a 4e 6a 79 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 Mt3JNjy9rjXx.EZ4du5A/EkdOjtd+D2J
13db80 7a 48 56 49 6d 4f 42 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 zHVImOBwYSf0wdJrE5SIv2MCN7ZF6TAC
13dba0 50 63 6e 39 64 32 74 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 Pcn9d2t0bi0Vr591pl6jFVkwP.DPafep
13dbc0 45 33 39 70 65 43 34 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 E39peC4N1xaf92P2BNPM/3mfnGV/TJVT
13dbe0 6c 34 75 69 78 35 79 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 l4uix5yaaIK/QI.-----END.CERTIFIC
13dc00 41 54 45 2d 2d 2d 2d 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 ATE-----..UTN.USERFirst.Hardware
13dc20 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 3d 3d .Root.CA.=======================
13dc40 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--
13dc60 2d 2d 2d 0a 4d 49 49 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 ---.MIIEdDCCA1ygAwIBAgIQRL4Mi1AA
13dc80 4a 4c 51 52 30 7a 59 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 JLQR0zYq/mUK/TANBgkqhkiG9w0BAQUF
13dca0 41 44 43 42 6c 7a 45 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 ADCBlzELMAkGA1UE.BhMCVVMxCzAJBgN
13dcc0 56 42 41 67 54 41 6c 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 VBAgTAlVUMRcwFQYDVQQHEw5TYWx0IEx
13dce0 68 61 32 55 67 51 32 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 ha2UgQ2l0eTEeMBwGA1UEChMVVGhl.IF
13dd00 56 54 52 56 4a 55 55 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 VTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQ
13dd20 51 4c 45 78 68 6f 64 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 QLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC
13dd40 35 6a 62 32 30 78 48 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 5jb20xHzAd.BgNVBAMTFlVUTi1VU0VSR
13dd60 6d 6c 79 63 33 51 74 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 mlyc3QtSGFyZHdhcmUwHhcNOTkwNzA5M
13dd80 54 67 78 4d 44 51 79 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 TgxMDQyWhcNMTkwNzA5MTgx.OTIyWjCB
13dda0 6c 7a 45 4c 4d 41 6b 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 lzELMAkGA1UEBhMCVVMxCzAJBgNVBAgT
13ddc0 41 6c 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 AlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug
13dde0 51 32 6c 30 0a 65 54 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 Q2l0.eTEeMBwGA1UEChMVVGhlIFVTRVJ
13de00 55 55 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 UUlVTVCBOZXR3b3JrMSEwHwYDVQQLExh
13de20 6f 64 48 52 77 4f 69 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 odHRwOi8vd3d3LnVz.ZXJ0cnVzdC5jb2
13de40 30 78 48 7a 41 64 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 0xHzAdBgNVBAMTFlVUTi1VU0VSRmlyc3
13de60 51 74 53 47 46 79 5a 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 QtSGFyZHdhcmUwggEiMA0GCSqGSIb3.D
13de80 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 78 39 38 4d 34 50 QEBAQUAA4IBDwAwggEKAoIBAQCx98M4P
13dea0 37 53 6f 66 38 38 35 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 7Sof885glFn0G2f0v9Y8+efK+wNiVSZu
13dec0 54 69 5a 46 76 66 67 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 TiZFvfgIXlI.wrthdBKWHTxqctU8EGc6
13dee0 4f 65 30 72 45 38 31 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 Oe0rE81m65UJM6Rsl7HoxuzBdXmcRl6N
13df00 71 39 42 71 2f 62 6b 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 q9Bq/bkqVRcQVLMZ8Jr28bFd.tqdt++B
13df20 78 46 32 75 69 69 50 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 xF2uiiPsA3/4aMXcMmgF6sTLjKwEHOG7
13df40 44 70 56 34 6a 76 45 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 DpV4jvEWbe1DByTCP2+UretNb+zNAHqD
13df60 56 6d 42 65 38 0a 69 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 VmBe8.i4fDidNdoI6yqqr2jmmIBsX6iS
13df80 48 7a 43 4a 31 70 4c 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 HzCJ1pLgkzmykNRg+MzEk0sGlRvfkGzW
13dfa0 69 74 5a 6b 79 38 50 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 itZky8PqxhvQqIDsjf.Pe58BEydCl5rk
13dfc0 64 62 75 78 2b 30 6f 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 dbux+0ojatNh4lz0G6k0B4WixThdkQDf
13dfe0 32 4f 73 35 4d 31 4a 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 2Os5M1JnMWS9KsyoUhbAgMBAAGjgbkw.
13e000 67 62 59 77 43 77 59 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 gbYwCwYDVR0PBAQDAgHGMA8GA1UdEwEB
13e020 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 4b 46 79 58 79 59 62 /wQFMAMBAf8wHQYDVR0OBBYEFKFyXyYb
13e040 4b 4a 68 44 6c 56 30 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 KJhDlV0HN9WF.lp1L0sNFMEQGA1UdHwQ
13e060 39 4d 44 73 77 4f 61 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 9MDswOaA3oDWGM2h0dHA6Ly9jcmwudXN
13e080 6c 63 6e 52 79 64 58 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 lcnRydXN0LmNvbS9VVE4tVVNF.UkZpcn
13e0a0 4e 30 4c 55 68 68 63 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 N0LUhhcmR3YXJlLmNybDAxBgNVHSUEKj
13e0c0 41 6f 42 67 67 72 42 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 AoBggrBgEFBQcDAQYIKwYBBQUHAwUGCC
13e0e0 73 47 41 51 55 46 0a 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 sGAQUF.BwMGBggrBgEFBQcDBzANBgkqh
13e100 6b 69 47 39 77 30 42 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 kiG9w0BAQUFAAOCAQEARxkP3nTGmZev/
13e120 4b 30 6f 58 6e 57 4f 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 K0oXnWO6y1n7k57K9cM.//bey1WiCuFM
13e140 56 47 57 54 59 47 75 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 VGWTYGufEpytXoMs61quwOQt9ABjHbjA
13e160 62 50 4c 50 53 62 74 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 bPLPSbtNk28GpgoiskliCE7/yMgUsogW
13e180 0a 58 65 63 42 35 42 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 .XecB5BKV5UU0s4tpvc+0hY91UZ59Ojg
13e1a0 36 46 45 67 53 78 76 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 6FEgSxvunOxqNDYJAB+gECJChicsZUN/
13e1c0 4b 48 41 47 38 48 51 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 KHAG8HQQZexB2.lzvukJDKxA4fFm517z
13e1e0 50 34 30 32 39 62 48 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 P4029bHpbj4HR3dHuKom4t3XbWOTCC8K
13e200 75 63 55 76 49 71 78 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 ucUvIqx69JXn7HaOWCgchqJ/kn.iCrVW
13e220 46 43 56 48 2f 41 37 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 FCVH/A7HFe7fRQ5YiuayZSSKqMiDP+JJ
13e240 6e 31 66 49 79 74 48 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 n1fIytH1xUdqWqeUQ0qUZ6B+dQ7XnASf
13e260 78 41 79 6e 42 36 37 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 xAynB67.nfhmqA==.-----END.CERTIF
13e280 49 43 41 54 45 2d 2d 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 ICATE-----..Camerfirma.Chambers.
13e2a0 6f 66 20 43 6f 6d 6d 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 of.Commerce.Root.===============
13e2c0 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
13e2e0 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 43 41 36 57 67 41 77 .CERTIFICATE-----.MIIEvTCCA6WgAw
13e300 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 42 2f 4d 51 IBAgIBADANBgkqhkiG9w0BAQUFADB/MQ
13e320 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 4d 65 0a 51 swCQYDVQQGEwJFVTEnMCUGA1UEChMe.Q
13e340 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 54 67 79 4e UMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyN
13e360 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 69 38 76 64 zQzMjg3MSMwIQYDVQQLExpodHRwOi8vd
13e380 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 69 4d 43 41 47 3d3LmNoYW1i.ZXJzaWduLm9yZzEiMCAG
13e3a0 41 31 55 45 41 78 4d 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 A1UEAxMZQ2hhbWJlcnMgb2YgQ29tbWVy
13e3c0 59 32 55 67 55 6d 39 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 Y2UgUm9vdDAeFw0wMzA5MzAx.NjEzNDN
13e3e0 61 46 77 30 7a 4e 7a 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 aFw0zNzA5MzAxNjEzNDRaMH8xCzAJBgN
13e400 56 42 41 59 54 41 6b 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 VBAYTAkVVMScwJQYDVQQKEx5BQyBDYW1
13e420 6c 63 6d 5a 70 0a 63 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 lcmZp.cm1hIFNBIENJRiBBODI3NDMyOD
13e440 63 78 49 7a 41 68 42 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 cxIzAhBgNVBAsTGmh0dHA6Ly93d3cuY2
13e460 68 68 62 57 4a 6c 63 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 hhbWJlcnNpZ24ub3Jn.MSIwIAYDVQQDE
13e480 78 6c 44 61 47 46 74 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 xlDaGFtYmVycyBvZiBDb21tZXJjZSBSb
13e4a0 32 39 30 4d 49 49 42 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 290MIIBIDANBgkqhkiG9w0BAQEFAAOC.
13e4c0 41 51 30 41 4d 49 49 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 AQ0AMIIBCAKCAQEAtzZV5aVdGDDg2olU
13e4e0 6b 66 7a 49 78 31 4c 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 kfzIx1L4L1DZ77F1c2VHfRtbunXF/KGI
13e500 4a 50 6f 76 37 63 6f 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 JPov7coISjlU.xFF6tdpg6jg8gbLL8bv
13e520 5a 6b 53 4d 2f 53 41 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 ZkSM/SAFwdakFKq0fcfPJVD0dBmpAPrM
13e540 4d 68 65 35 63 47 33 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 Mhe5cG3nCYsS4No41XQEMIwRH.NaqbYE
13e560 36 67 5a 6a 33 4c 4a 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 6gZj3LJgqcQKH0XZi/caulAGgq7YN6D6
13e580 49 55 74 64 51 69 73 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 IUtdQis4CwPAxaUWktWBiP7Zme8a7ile
13e5a0 62 32 52 36 6a 57 0a 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 b2R6jW.DA+wWFjbw2Y3npuRVDM30pQca
13e5c0 6b 6a 4a 79 66 4b 6c 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 kjJyfKl2qUMI/cjDpwyVV5xnIQFUZot/
13e5e0 65 5a 4f 4b 6a 52 61 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 eZOKjRa3spAN2cMVCFV.d9oKDMyXroDc
13e600 6c 44 5a 4b 39 44 37 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 lDZK9D7ONhMeU+SsTjoF7Nuucpw4i9A5
13e620 4f 34 6b 4b 50 6e 66 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 O4kKPnf+dQIBA6OCAUQwggFAMBIGA1Ud
13e640 0a 45 77 45 42 2f 77 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 .EwEB/wQIMAYBAf8CAQwwPAYDVR0fBDU
13e660 77 4d 7a 41 78 6f 43 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 wMzAxoC+gLYYraHR0cDovL2NybC5jaGF
13e680 74 59 6d 56 79 63 32 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 tYmVyc2lnbi5v.cmcvY2hhbWJlcnNyb2
13e6a0 39 30 4c 6d 4e 79 62 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 90LmNybDAdBgNVHQ4EFgQU45T1sU3p26
13e6c0 45 70 57 31 65 4c 54 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 EpW1eLTXYGduHRooowDgYDVR0P.AQH/B
13e6e0 41 51 44 41 67 45 47 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 AQDAgEGMBEGCWCGSAGG+EIBAQQEAwIAB
13e700 7a 41 6e 42 67 4e 56 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 zAnBgNVHREEIDAegRxjaGFtYmVyc3Jvb
13e720 33 52 41 59 32 68 68 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 3RAY2hh.bWJlcnNpZ24ub3JnMCcGA1Ud
13e740 45 67 51 67 4d 42 36 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 EgQgMB6BHGNoYW1iZXJzcm9vdEBjaGFt
13e760 59 6d 56 79 63 32 6c 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 YmVyc2lnbi5vcmcwWAYD.VR0gBFEwTzB
13e780 4e 42 67 73 72 42 67 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 NBgsrBgEEAYGHLgoDATA+MDwGCCsGAQU
13e7a0 46 42 77 49 42 46 6a 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 FBwIBFjBodHRwOi8vY3BzLmNoYW1iZXJ
13e7c0 7a 0a 61 57 64 75 4c 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 z.aWduLm9yZy9jcHMvY2hhbWJlcnNyb2
13e7e0 39 30 4c 6d 68 30 62 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 90Lmh0bWwwDQYJKoZIhvcNAQEFBQADgg
13e800 45 42 41 41 78 42 6c 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 EBAAxBl8IahsAi.fJ/7kPMa0QOx7xP5I
13e820 56 38 45 6e 4e 72 4a 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 V8EnNrJpY0nbJaHkb5BkAFyk+cefV/2i
13e840 63 5a 64 70 30 41 4a 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 cZdp0AJPaxJRUXcLo0waLIJuvvD.L8y6
13e860 43 39 38 2f 64 33 74 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 C98/d3tGfToSJI6WjzwFCm/SlCgdbQzA
13e880 4c 6f 67 69 31 64 6a 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 Logi1djPHRPH8EjX1wWnz8dHnjs8NMiA
13e8a0 54 39 51 55 75 2f 77 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 T9QUu/wN.UPf6s+xCX6ndbcj0dc97wXI
13e8c0 6d 73 51 45 63 58 43 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 msQEcXCz9ek60AcUFV7nnPKoF2YjpB0Z
13e8e0 42 7a 75 39 42 67 61 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 Bzu9Bga5Y34OirsrXdx/n.ADydb47kMg
13e900 6b 64 54 58 67 30 65 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 kdTXg0eDQ8lJsm7U9xxhl6vSAiSFr+S3
13e920 30 44 74 2b 64 59 76 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 0Dt+dYvsYyTnQeaN2oaFuzPu5ifdmA6A
13e940 70 31 0a 65 72 66 75 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 p1.erfutGWaIZDgqtCYvDi1czyL+Nw=.
13e960 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 61 6d 65 72 -----END.CERTIFICATE-----..Camer
13e980 66 69 72 6d 61 20 47 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 firma.Global.Chambersign.Root.==
13e9a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
13e9c0 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
13e9e0 45 78 54 43 43 41 36 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 ExTCCA62gAwIBAgIBADANBgkqhkiG9w0
13ea00 42 41 51 55 46 41 44 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 BAQUFADB9MQswCQYDVQQGEwJFVTEnMCU
13ea20 47 41 31 55 45 43 68 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 GA1UEChMe.QUMgQ2FtZXJmaXJtYSBTQS
13ea40 42 44 53 55 59 67 51 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 BDSUYgQTgyNzQzMjg3MSMwIQYDVQQLEx
13ea60 70 6f 64 48 52 77 4f 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 podHRwOi8vd3d3LmNoYW1i.ZXJzaWduL
13ea80 6d 39 79 5a 7a 45 67 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 m9yZzEgMB4GA1UEAxMXR2xvYmFsIENoY
13eaa0 57 31 69 5a 58 4a 7a 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 W1iZXJzaWduIFJvb3QwHhcNMDMwOTMwM
13eac0 54 59 78 0a 4e 44 45 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 TYx.NDE4WhcNMzcwOTMwMTYxNDE4WjB9
13eae0 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 4d 65 MQswCQYDVQQGEwJFVTEnMCUGA1UEChMe
13eb00 51 55 4d 67 51 32 46 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 QUMgQ2FtZXJmaXJt.YSBTQSBDSUYgQTg
13eb20 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 69 38 yNzQzMjg3MSMwIQYDVQQLExpodHRwOi8
13eb40 76 64 33 64 33 4c 6d 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 vd3d3LmNoYW1iZXJzaWduLm9yZzEg.MB
13eb60 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 61 57 4GA1UEAxMXR2xvYmFsIENoYW1iZXJzaW
13eb80 64 75 49 46 4a 76 62 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 duIFJvb3QwggEgMA0GCSqGSIb3DQEBAQ
13eba0 55 41 41 34 49 42 44 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 UAA4IBDQAw.ggEIAoIBAQCicKLQn0KuW
13ebc0 78 66 48 32 48 33 50 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 xfH2H3PFIP8T8mhtxOviteePgQKkotgV
13ebe0 76 71 30 4d 69 2b 49 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 vq0Mi+ITaFgCPS3CU6gSS9J.1tPfnZda
13ec00 6e 35 51 45 63 4f 77 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 n5QEcOw/Wdm3zGaLmFIoCQLfxS+EjXqX
13ec20 64 37 2f 73 51 4a 30 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 d7/sQJ0lcqu1PzKY+7e3/HKE5TWH+VX6
13ec40 6f 78 38 4f 0a 62 79 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 ox8O.by4o3Wmg2UIQxvi1RMLQQ3/bvOS
13ec60 69 50 47 70 56 65 41 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 iPGpVeAp3qdjqGTK3L/5cPxvusZjsyq1
13ec80 36 61 55 58 6a 6c 67 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 6aUXjlg9V9ubtdepl.6DJWk0aJqCWKZQ
13eca0 62 75 61 37 39 35 42 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 bua795B9Dxt6/tLE2Su8CoX6dnfQTyFQ
13ecc0 68 77 72 4a 4c 57 66 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 hwrJLWfQTSM/tMtgsL+xrJxI0DqX5c.8
13ece0 6c 43 72 45 71 57 68 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 lCrEqWhz0hQpe/SyBoT+rB/sYIcd2oPX
13ed00 39 77 4c 6c 59 2f 76 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 9wLlY/vQ37mRQklAgEDo4IBUDCCAUwwE
13ed20 67 59 44 56 52 30 54 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 gYDVR0TAQH/.BAgwBgEB/wIBDDA/BgNV
13ed40 48 52 38 45 4f 44 41 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 HR8EODA2MDSgMqAwhi5odHRwOi8vY3Js
13ed60 4c 6d 4e 6f 59 57 31 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 LmNoYW1iZXJzaWduLm9yZy9j.aGFtYmV
13ed80 79 63 32 6c 6e 62 6e 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 yc2lnbnJvb3QuY3JsMB0GA1UdDgQWBBR
13eda0 44 6e 44 61 66 73 4a 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 DnDafsJ4wTcbOX60Qq+UDpfqpFDAOBgN
13edc0 56 48 51 38 42 0a 41 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 VHQ8B.Af8EBAMCAQYwEQYJYIZIAYb4Qg
13ede0 45 42 42 41 51 44 41 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 EBBAQDAgAHMCoGA1UdEQQjMCGBH2NoYW
13ee00 31 69 5a 58 4a 7a 61 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 1iZXJzaWducm9vdEBj.aGFtYmVyc2lnb
13ee20 69 35 76 63 6d 63 77 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 i5vcmcwKgYDVR0SBCMwIYEfY2hhbWJlc
13ee40 6e 4e 70 5a 32 35 79 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 nNpZ25yb290QGNoYW1iZXJzaWduLm9y.
13ee60 5a 7a 42 62 42 67 4e 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 ZzBbBgNVHSAEVDBSMFAGCysGAQQBgYcu
13ee80 43 67 45 42 4d 45 45 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 CgEBMEEwPwYIKwYBBQUHAgEWM2h0dHA6
13eea0 4c 79 39 6a 63 48 4d 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 Ly9jcHMuY2hh.bWJlcnNpZ24ub3JnL2N
13eec0 77 63 79 39 6a 61 47 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 wcy9jaGFtYmVyc2lnbnJvb3QuaHRtbDA
13eee0 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 0a 50 44 74 77 6b 66 NBgkqhkiG9w0BAQUFAAOCAQEA.PDtwkf
13ef00 6b 45 56 43 65 52 34 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 kEVCeR4e3t/mh/YV3lQWVPMvEYBZRqHN
13ef20 34 66 63 4e 73 2b 65 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 4fcNs+ezICNLUMbKGKfKX0j//U2K0X1S
13ef40 30 45 30 54 39 59 0a 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 0E0T9Y.gOKBWYi+wONGkyT+kL0mojAt6
13ef60 4a 63 6d 56 7a 57 4a 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 JcmVzWJdJYY9hXiryQZVgICsroPFOrGi
13ef80 6d 62 42 68 6b 56 56 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 mbBhkVVi76SvpykBMdJ.PJ7oKXqJ1/6v
13efa0 2f 32 6a 31 70 52 65 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 /2j1pReQvayZzKWGVwlnRtvWFsJG8eSp
13efc0 55 50 57 50 30 5a 49 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 UPWP0ZIV018+xgBJOm5YstHRJw0lyDL4
13efe0 0a 49 42 48 4e 66 54 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 .IBHNfTIzSJRUTN3cecQwn+uOuFW114h
13f000 63 78 57 6f 6b 50 62 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 cxWokPbLTBQNRxgfvzBRydD1ucs4YKIx
13f020 4b 6f 48 66 6c 43 53 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 KoHflCStFREes.t2d/AYoFWpO+ocH/+O
13f040 63 4f 5a 36 52 48 53 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 cOZ6RHSXZddZAa9SaP8A==.-----END.
13f060 43 45 52 54 49 46 49 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 CERTIFICATE-----..NetLock.Notary
13f080 20 28 43 6c 61 73 73 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 .(Class.A).Root.================
13f0a0 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
13f0c0 43 41 54 45 2d 2d 2d 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 CATE-----.MIIGfTCCBWWgAwIBAgICAQ
13f0e0 4d 77 44 51 59 4a 4b 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 MwDQYJKoZIhvcNAQEEBQAwga8xCzAJBg
13f100 4e 56 42 41 59 54 41 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 NVBAYTAkhVMRAwDgYDVQQI.EwdIdW5nY
13f120 58 4a 35 4d 52 45 77 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 XJ5MREwDwYDVQQHEwhCdWRhcGVzdDEnM
13f140 43 55 47 41 31 55 45 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 CUGA1UEChMeTmV0TG9jayBIYWxvemF0Y
13f160 6d 6c 36 0a 64 47 39 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 ml6.dG9uc2FnaSBLZnQuMRowGAYDVQQL
13f180 45 78 46 55 59 57 35 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 ExFUYW51c2l0dmFueWtpYWRvazE2MDQG
13f1a0 41 31 55 45 41 78 4d 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 A1UEAxMtTmV0TG9j.ayBLb3pqZWd5em9
13f1c0 70 49 43 68 44 62 47 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 pIChDbGFzcyBBKSBUYW51c2l0dmFueWt
13f1e0 70 59 57 52 76 4d 42 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 pYWRvMB4XDTk5MDIyNDIzMTQ0N1oX.DT
13f200 45 35 4d 44 49 78 4f 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 E5MDIxOTIzMTQ0N1owga8xCzAJBgNVBA
13f220 59 54 41 6b 68 56 4d 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 YTAkhVMRAwDgYDVQQIEwdIdW5nYXJ5MR
13f240 45 77 44 77 59 44 56 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 EwDwYDVQQH.EwhCdWRhcGVzdDEnMCUGA
13f260 31 55 45 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 64 1UEChMeTmV0TG9jayBIYWxvemF0Yml6d
13f280 47 39 75 63 32 46 6e 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 G9uc2FnaSBLZnQuMRowGAYD.VQQLExFU
13f2a0 59 57 35 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 YW51c2l0dmFueWtpYWRvazE2MDQGA1UE
13f2c0 41 78 4d 74 54 6d 56 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 AxMtTmV0TG9jayBLb3pqZWd5em9pIChD
13f2e0 62 47 46 7a 0a 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 bGFz.cyBBKSBUYW51c2l0dmFueWtpYWR
13f300 76 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 vMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8
13f320 41 4d 49 49 42 43 67 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 AMIIBCgKCAQEAvHSM.D7tM9DceqQWC2O
13f340 62 68 62 48 44 71 65 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 bhbHDqeLVu0ThEDaiDzl3S1tWBxdRL51
13f360 75 55 63 43 62 62 4f 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 uUcCbbO51qTGL3cfNk1mE7PetzozfZ.z
13f380 2b 71 4d 6b 6a 76 4e 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 +qMkjvN9wfcZnSX9EUi3fRc4L9t875lM
13f3a0 2b 51 56 4f 72 2f 62 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 +QVOr/bmJBVOMTtplVjC7B4BPTjbsE/j
13f3c0 76 78 52 65 42 2b 53 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 vxReB+SnoPC./tmwqcm8WgD/qaiYdPv2
13f3e0 4c 44 34 56 4f 51 32 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 LD4VOQ22BFWoDpggQrOxJa1+mm9dU7Gr
13f400 44 50 7a 72 34 50 4e 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 DPzr4PN6s6iz/0b2Y6LYOph7.tqyF/7A
13f420 6c 54 33 52 6a 35 78 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 lT3Rj5xMHpQqPBffAZG9+pyeAlt7ULoZ
13f440 67 78 32 73 72 58 6e 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 gx2srXnN7F+eRP2QM2EsiNCubMvJIH5+
13f460 68 43 6f 52 36 0a 34 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 hCoR6.4sKtlz2O1cH5VqNQ6ca0+pii7p
13f480 58 6d 4b 67 4f 4d 33 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 XmKgOM3wIDAQABo4ICnzCCApswDgYDVR
13f4a0 30 50 41 51 48 2f 42 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 0PAQH/BAQDAgAGMBIG.A1UdEwEB/wQIM
13f4c0 41 59 42 41 66 38 43 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 AYBAf8CAQQwEQYJYIZIAYb4QgEBBAQDA
13f4e0 67 41 48 4d 49 49 43 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 gAHMIICYAYJYIZIAYb4QgENBIICURaC.
13f500 41 6b 31 47 53 55 64 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 Ak1GSUdZRUxFTSEgRXplbiB0YW51c2l0
13f520 64 6d 46 75 65 53 42 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 dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRh
13f540 62 47 46 75 62 33 4d 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 bGFub3MgU3pv.bGdhbHRhdGFzaSBGZWx
13f560 30 5a 58 52 6c 62 47 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 0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXN
13f580 76 61 79 42 68 62 47 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 vayBhbGFwamFuIGtlc3p1bHQu.IEEgaG
13f5a0 6c 30 5a 57 78 6c 63 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 l0ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE
13f5c0 35 6c 64 45 78 76 59 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 5ldExvY2sgS2Z0LiB0ZXJtZWtmZWxlbG
13f5e0 39 7a 63 32 56 6e 0a 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 9zc2Vn.LWJpenRvc2l0YXNhIHZlZGkuI
13f600 45 45 67 5a 47 6c 6e 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 EEgZGlnaXRhbGlzIGFsYWlyYXMgZWxmb
13f620 32 64 68 5a 47 46 7a 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 2dhZGFzYW5hayBmZWx0.ZXRlbGUgYXog
13f640 5a 57 78 76 61 58 4a 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 ZWxvaXJ0IGVsbGVub3J6ZXNpIGVsamFy
13f660 59 58 4d 67 62 57 56 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 YXMgbWVndGV0ZWxlLiBBeiBlbGphcmFz
13f680 0a 49 47 78 6c 61 58 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 .IGxlaXJhc2EgbWVndGFsYWxoYXRvIGE
13f6a0 67 54 6d 56 30 54 47 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 gTmV0TG9jayBLZnQuIEludGVybmV0IGh
13f6c0 76 62 6d 78 68 63 47 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 vbmxhcGphbiBh.IGh0dHBzOi8vd3d3Lm
13f6e0 35 6c 64 47 78 76 59 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 5ldGxvY2submV0L2RvY3MgY2ltZW4gdm
13f700 46 6e 65 53 42 72 5a 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 FneSBrZXJoZXRvIGF6IGVsbGVu.b3J6Z
13f720 58 4e 41 62 6d 56 30 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 XNAbmV0bG9jay5uZXQgZS1tYWlsIGNpb
13f740 57 56 75 4c 69 42 4a 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 WVuLiBJTVBPUlRBTlQhIFRoZSBpc3N1Y
13f760 57 35 6a 5a 53 42 68 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 W5jZSBh.bmQgdGhlIHVzZSBvZiB0aGlz
13f780 49 47 4e 6c 63 6e 52 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 IGNlcnRpZmljYXRlIGlzIHN1YmplY3Qg
13f7a0 64 47 38 67 64 47 68 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 dG8gdGhlIE5ldExvY2sg.Q1BTIGF2YWl
13f7c0 73 59 57 4a 73 5a 53 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 sYWJsZSBhdCBodHRwczovL3d3dy5uZXR
13f7e0 73 62 32 4e 72 4c 6d 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 sb2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWF
13f800 70 0a 62 43 42 68 64 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 p.bCBhdCBjcHNAbmV0bG9jay5uZXQuMA
13f820 30 47 43 53 71 47 53 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 0GCSqGSIb3DQEBBAUAA4IBAQBIJEb3ul
13f840 5a 76 2b 73 67 6f 41 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 Zv+sgoA0BO5TE5.ayZrU3/b39/zcT0mw
13f860 42 51 4f 78 6d 64 37 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 BQOxmd7I6gMc90Bu8bKbjc5VdXHjFYgD
13f880 69 67 4b 44 74 49 71 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 igKDtIqpLBJUsY4B/6+CgmM0ZjP.ytoU
13f8a0 4d 61 46 50 30 6a 6e 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 MaFP0jn8DxEsQ8Pdq5PHVT5HfBgaANzz
13f8c0 65 39 6a 79 66 31 4a 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 e9jyf1JsIPQLX2lS9O74silg6+NJMSEN
13f8e0 31 72 55 51 51 65 4a 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 1rUQQeJB.CWziGppWS3cC9qCbmieH6FU
13f900 70 63 63 4b 51 6e 30 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 pccKQn0V4GuEVZD3QDtigdp+uxdAu6tY
13f920 50 56 75 78 6b 66 31 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 PVuxkf1qbFFgBJ34TUMdr.KuZoPL9coA
13f940 6f 62 34 51 35 36 36 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 ob4Q566eKAw+np9v1sEZ7Q5SgnK1QyQh
13f960 53 43 64 65 5a 4b 38 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 SCdeZK8CtmdWOMovsEPoMOmzbwGOQmIM
13f980 4f 4d 0a 38 43 67 48 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 OM.8CgHrTwXZoi1/baI.-----END.CER
13f9a0 54 49 46 49 43 41 54 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 TIFICATE-----..XRamp.Global.CA.R
13f9c0 6f 6f 74 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 oot.====================.-----BE
13f9e0 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 44 43 43 41 78 69 GIN.CERTIFICATE-----.MIIEMDCCAxi
13fa00 67 41 77 49 42 41 67 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 gAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTA
13fa20 4e 42 67 6b 71 68 6b 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 NBgkqhkiG9w0BAQUFADCBgjELMAkGA1U
13fa40 45 0a 42 68 4d 43 56 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 E.BhMCVVMxHjAcBgNVBAsTFXd3dy54cm
13fa60 46 74 63 48 4e 6c 59 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 FtcHNlY3VyaXR5LmNvbTEkMCIGA1UECh
13fa80 4d 62 57 46 4a 68 62 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 MbWFJhbXAgU2Vj.dXJpdHkgU2VydmljZ
13faa0 58 4d 67 53 57 35 6a 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 XMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHb
13fac0 47 39 69 59 57 77 67 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 G9iYWwgQ2VydGlmaWNhdGlvbiBB.dXRo
13fae0 62 33 4a 70 64 48 6b 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 b3JpdHkwHhcNMDQxMTAxMTcxNDA0WhcN
13fb00 4d 7a 55 77 4d 54 41 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 MzUwMTAxMDUzNzE5WjCBgjELMAkGA1UE
13fb20 42 68 4d 43 56 56 4d 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 BhMCVVMx.HjAcBgNVBAsTFXd3dy54cmF
13fb40 74 63 48 4e 6c 59 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 tcHNlY3VyaXR5LmNvbTEkMCIGA1UEChM
13fb60 62 57 46 4a 68 62 58 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 bWFJhbXAgU2VjdXJpdHkg.U2VydmljZX
13fb80 4d 67 53 57 35 6a 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 MgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG
13fba0 39 69 59 57 77 67 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 9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3
13fbc0 4a 70 0a 64 48 6b 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 Jp.dHkwggEiMA0GCSqGSIb3DQEBAQUAA
13fbe0 34 49 42 44 77 41 77 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 4IBDwAwggEKAoIBAQCYJB69FbS638eMp
13fc00 53 65 32 4f 41 74 70 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 Se2OAtp87ZOqCwu.IR1cRN8hXX4jdP5e
13fc20 66 72 52 4b 74 36 61 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 frRKt6atH67gBhbim1vZZ3RrXYCPKZ2G
13fc40 47 39 6d 63 44 5a 68 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 G9mcDZhtdhAoWORlsH9KmHmf4MMx.foA
13fc60 72 74 59 7a 41 51 44 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 rtYzAQDsRhtDLooY2YKTVMIJt2W7QDxI
13fc80 45 4d 35 64 66 54 32 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 EM5dfT2Fa8OT5kavnHTu86M/0ay00fOJ
13fca0 49 59 52 79 4f 38 32 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 IYRyO82FE.zG+gSqmUsE3a56k0enI4qE
13fcc0 48 4d 50 4a 51 52 66 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 HMPJQRfevIpoy3hsvKMzvZPTeL+3o+hi
13fce0 7a 6e 63 39 63 4b 56 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 znc9cKV6xkmxnr9A8ECIqs.AxcZZPRaJ
13fd00 53 4b 4e 4e 43 79 79 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 SKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6D
13fd20 62 31 71 34 4f 6e 73 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 b1q4Ons7Be7QhtnqiXtRYMh/MHJfNViP
13fd40 76 72 79 0a 78 53 33 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 vry.xS3T/dRlAgMBAAGjgZ8wgZwwEwYJ
13fd60 4b 77 59 42 42 41 47 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 KwYBBAGCNxQCBAYeBABDAEEwCwYDVR0P
13fd80 42 41 51 44 41 67 47 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 BAQDAgGGMA8GA1Ud.EwEB/wQFMAMBAf8
13fda0 77 48 51 59 44 56 52 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 wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5AS
13fdc0 73 6a 56 79 31 36 62 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 sjVy16bYbMDYGA1UdHwQvMC0wK6Ap.oC
13fde0 65 47 4a 57 68 30 64 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 eGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cm
13fe00 6c 30 65 53 35 6a 62 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 l0eS5jb20vWEdDQS5jcmwwEAYJKwYBBA
13fe20 47 43 4e 78 55 42 42 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 GCNxUBBAMC.AQEwDQYJKoZIhvcNAQEFB
13fe40 51 41 44 67 67 45 42 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 QADggEBAJEVOQMBG2f7Shz5CmBbodpNl
13fe60 32 4c 35 4a 46 4d 6e 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 2L5JFMn14JkTpAuw0kbK5rc./Kh4ZzXx
13fe80 48 66 41 52 76 62 64 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 HfARvbdI4xD2Dd8/0sm2qlWkSLoC295Z
13fea0 4c 68 56 62 4f 35 30 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 LhVbO50WfUfXN+pfTXYSNrsf16GBBEYg
13fec0 6f 79 78 74 0a 71 5a 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 oyxt.qZ4Bfj8pzgCT3/3JknOJiWSe5yv
13fee0 6b 48 4a 45 73 30 72 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 kHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCO
13ff00 72 54 64 4c 61 49 52 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 rTdLaIR9NmXmd4c8n.nxCbHIgNsIpkQT
13ff20 47 34 44 6d 79 51 4a 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 G4DmyQJKSbXHGPurt+HBvbaoAPIbzp26
13ff40 61 33 51 50 53 79 69 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 a3QPSyi6mx5O+aGtA9aZnuqCij4Tyz.8
13ff60 4c 49 52 6e 4d 39 38 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 LIRnM98QObd50N9otg6tamN8jSZxNQQ4
13ff80 51 62 39 43 59 51 51 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 Qb9CYQQO+7ETPTsJ3xCwnR8gooJybQDJ
13ffa0 62 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 2d 2d 0a 0a 47 bw=.-----END.CERTIFICATE-----..G
13ffc0 6f 20 44 61 64 64 79 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 o.Daddy.Class.2.CA.=============
13ffe0 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---
140000 2d 2d 0a 4d 49 49 45 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 --.MIIEADCCAuigAwIBAgIBADANBgkqh
140020 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 56 55 kiG9w0BAQUFADBjMQswCQYDVQQGEwJVU
140040 7a 45 68 4d 42 38 47 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 zEhMB8GA1UEChMY.VGhlIEdvIERhZGR5
140060 49 45 64 79 62 33 56 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 IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhH
140080 62 79 42 45 59 57 52 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 byBEYWRkeSBDbGFzcyAyIENlcnRp.Zml
1400a0 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 44 54 41 30 4d 44 59 jYXRpb24gQXV0aG9yaXR5MB4XDTA0MDY
1400c0 79 4f 54 45 33 4d 44 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 yOTE3MDYyMFoXDTM0MDYyOTE3MDYyMFo
1400e0 77 59 7a 45 4c 4d 41 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 wYzELMAkG.A1UEBhMCVVMxITAfBgNVBA
140100 6f 54 47 46 52 6f 5a 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 oTGFRoZSBHbyBEYWRkeSBHcm91cCwgSW
140120 35 6a 4c 6a 45 78 4d 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 5jLjExMC8GA1UECxMoR28g.RGFkZHkgQ
140140 32 78 68 63 33 4d 67 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 2xhc3MgMiBDZXJ0aWZpY2F0aW9uIEF1d
140160 47 68 76 63 6d 6c 30 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 Ghvcml0eTCCASAwDQYJKoZIhvcNAQEBB
140180 51 41 44 0a 67 67 45 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 QAD.ggENADCCAQgCggEBAN6d1+pXGEmh
1401a0 57 2b 76 58 58 30 69 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 W+vXX0iG6r7d/+TvZxz0ZWizV3GgXne7
1401c0 37 5a 74 4a 36 58 43 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 7ZtJ6XCAPVYYYwhv.2vLM0D9/AlQiVBD
1401e0 59 73 6f 48 55 77 48 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 YsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7H
140200 46 69 48 37 45 75 78 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 FiH7Eux6wwdhFJ2+qN1j3hybX2C32.qR
140220 65 33 48 33 49 32 54 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 e3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y
140240 30 56 34 65 76 4c 4f 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 0V4evLOtXiEqITLdiOr18SPaAIBQi2XK
140260 56 6c 4f 41 52 46 6d 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 VlOARFmR6j.YGB0xUGlcmIbYsUfb18aQ
140280 72 34 43 55 57 57 6f 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 r4CUWWoriMYavx4A6lNf4DD+qta/KFAp
1402a0 4d 6f 5a 46 76 36 79 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 MoZFv6yyO9ecw3ud72a9nmY.vLEHZ6IV
1402c0 44 64 32 67 57 4d 5a 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 Dd2gWMZEewo+YihfukEHU1jPEX44dMX4
1402e0 2f 37 56 70 6b 49 2b 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 /7VpkI+EdOqXG68CAQOjgcAwgb0wHQYD
140300 56 52 30 4f 0a 42 42 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 VR0O.BBYEFNLEsNKR1EwRcbNhyz2h/t2
140320 6f 61 74 54 6a 4d 49 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 oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNK
140340 52 31 45 77 52 63 62 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 R1EwRcbNhyz2h/t2o.atTjoWekZTBjMQ
140360 73 77 43 51 59 44 56 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 swCQYDVQQGEwJVUzEhMB8GA1UEChMYVG
140380 68 6c 49 45 64 76 49 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 hlIEdvIERhZGR5IEdyb3VwLCBJbmMu.M
1403a0 54 45 77 4c 77 59 44 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 TEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzc
1403c0 79 41 79 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 yAyIENlcnRpZmljYXRpb24gQXV0aG9ya
1403e0 58 52 35 67 67 45 41 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 XR5ggEAMAwG.A1UdEwQFMAMBAf8wDQYJ
140400 4b 6f 5a 49 68 76 63 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 KoZIhvcNAQEFBQADggEBADJL87LKPpH8
140420 45 73 61 68 42 34 79 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 EsahB4yOd6AzBhRckB4Y9wim.PQoZ+Ye
140440 41 45 57 35 70 35 4a 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 AEW5p5JYXMP80kWNyOO7MHAGjHZQopDH
140460 32 65 73 52 55 31 2f 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 2esRU1/blMVgDoszOYtuURXO1v0XJJLX
140480 56 67 67 4b 74 0a 49 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 VggKt.I3lpjbi2Tc7PTMozI+gciKqdi0
1404a0 46 75 46 73 6b 67 35 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 FuFskg5YmezTvacPd+mSYgFFQlq25zhe
1404c0 61 62 49 5a 30 4b 62 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 abIZ0KbIIOqPjCDPoQ.HmyW74cNxA9hi
1404e0 36 33 75 67 79 75 56 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 63ugyuV+I6ShHI56yDqg+2DzZduCLzrT
140500 69 61 32 63 79 76 6b 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 ia2cyvk0/ZM/iZx4mERdEr/VxqHD3VI.
140520 4c 73 39 52 61 52 65 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 Ls9RaRegAhJhldXRQLIQTO7ErBBDpqWe
140540 43 74 57 56 59 70 6f 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 CtWVYpoNz4iCxTIM5CufReYNnyicsbkq
140560 57 6c 65 74 4e 77 2b 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 WletNw+vHX/b.vZ8=.-----END.CERTI
140580 46 49 43 41 54 45 2d 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 FICATE-----..Starfield.Class.2.C
1405a0 41 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 A.====================.-----BEGI
1405c0 4e 20 43 45 52 54 49 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 N.CERTIFICATE-----.MIIEDzCCAvegA
1405e0 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 42 6f 4d wIBAgIBADANBgkqhkiG9w0BAQUFADBoM
140600 51 73 77 43 51 59 44 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 QswCQYDVQQGEwJVUzElMCMGA1UEChMc.
140620 55 33 52 68 63 6d 5a 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 U3RhcmZpZWxkIFRlY2hub2xvZ2llcywg
140640 53 57 35 6a 4c 6a 45 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 SW5jLjEyMDAGA1UECxMpU3RhcmZpZWxk
140660 49 45 4e 73 59 58 4e 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 IENsYXNzIDIg.Q2VydGlmaWNhdGlvbiB
140680 42 64 58 52 6f 62 33 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 BdXRob3JpdHkwHhcNMDQwNjI5MTczOTE
1406a0 32 57 68 63 4e 4d 7a 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 2WhcNMzQwNjI5MTczOTE2WjBo.MQswCQ
1406c0 59 44 56 51 51 47 45 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 YDVQQGEwJVUzElMCMGA1UEChMcU3Rhcm
1406e0 5a 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 ZpZWxkIFRlY2hub2xvZ2llcywgSW5jLj
140700 45 79 4d 44 41 47 0a 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 EyMDAG.A1UECxMpU3RhcmZpZWxkIENsY
140720 58 4e 7a 49 44 49 67 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 XNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob
140740 33 4a 70 64 48 6b 77 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 3JpdHkwggEgMA0GCSqG.SIb3DQEBAQUA
140760 41 34 49 42 44 51 41 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 A4IBDQAwggEIAoIBAQC3Msj+6XGmBIWt
140780 44 42 46 6b 33 38 35 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 DBFk385N78gDGIc/oav7PKaf8MOh2tTY
1407a0 0a 62 69 74 54 6b 50 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 .bitTkPskpD6E8J7oX+zlJ0T1KKY/e97
1407c0 67 4b 76 44 49 72 31 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 gKvDIr1MvnsoFAZMej2YcOadN+lq2cwQ
1407e0 6c 5a 75 74 33 66 2b 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 lZut3f+dZxkqZ.JRRU6ybH838Z1TBwj6
140800 2b 77 52 69 72 2f 72 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 +wRir/resp7defqgSHo9T5iaU0X9tDkY
140820 49 32 32 57 59 38 73 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 I22WY8sbi5gv2cOj4QyDvvBmVm.epsZG
140840 44 33 2f 63 56 45 38 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 D3/cVE8MC5fvj13c7JdBmzDI1aaK4Umk
140860 68 79 6e 41 72 50 6b 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 hynArPkPw2vCHmCuDY96pzTNbO8acr1z
140880 4a 33 6f 2f 57 53 4e 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 J3o/WSN.F4Azbl5KXZnJHoe0nRrA1W4T
1408a0 4e 53 4e 65 33 35 74 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 NSNe35tfPe/W93bC6j67eA0cQmdrBNj4
1408c0 31 74 70 76 69 2f 4a 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 1tpvi/JEoAGrAgEDo4HF.MIHCMB0GA1U
1408e0 64 44 67 51 57 42 42 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 dDgQWBBS/X7fRzt0fhvRbVazc1xDCDqm
140900 49 35 7a 43 42 6b 67 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 I5zCBkgYDVR0jBIGKMIGHgBS/X7fRzt0
140920 66 0a 68 76 52 62 56 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 f.hvRbVazc1xDCDqmI56FspGowaDELMA
140940 6b 47 41 31 55 45 42 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 kGA1UEBhMCVVMxJTAjBgNVBAoTHFN0YX
140960 4a 6d 61 57 56 73 5a 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 JmaWVsZCBUZWNo.bm9sb2dpZXMsIEluY
140980 79 34 78 4d 6a 41 77 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 y4xMjAwBgNVBAsTKVN0YXJmaWVsZCBDb
1409a0 47 46 7a 63 79 41 79 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 GFzcyAyIENlcnRpZmljYXRpb24g.QXV0
1409c0 61 47 39 79 61 58 52 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 aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8w
1409e0 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 57 64 50 34 69 64 DQYJKoZIhvcNAQEFBQADggEBAAWdP4id
140a00 30 63 6b 61 56 61 47 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 0ckaVaGs.afPzWdqbAYcaT1epoXkJKtv
140a20 33 4c 37 49 65 7a 4d 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 3L7IezMdeatiDh6GX70k1PncGQVhiv45
140a40 59 75 41 70 6e 50 2b 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 YuApnP+yz3SFmH8lU+nLM.PUxA2IGvd5
140a60 36 44 65 72 75 69 78 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 6Deruix/U0F47ZEUD0/CwqTRV/p2JdLi
140a80 58 54 41 41 73 67 47 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 XTAAsgGh1o+Re49L2L7ShZ3U0WixeDyL
140aa0 4a 6c 0a 78 79 31 36 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 Jl.xy16paq8U4Zt3VekyvggQQto8PT7d
140ac0 4c 35 57 58 58 70 35 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 L5WXXp59fkdheMtlb71cZBDzI0fmgAKh
140ae0 79 6e 70 56 53 4a 59 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 ynpVSJYACPq4xJD.KVtHCN2MQWplBqjl
140b00 49 61 70 42 74 4a 55 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 IapBtJUhlbl90TSrE9atvNziPTnNvT51
140b20 63 4b 45 59 57 51 50 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 cKEYWQPJIrSPnNVeKtelttQKbfi3.QBF
140b40 47 6d 68 39 35 44 6d 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 Gmh95DmK/D5fs4C8fF5Q=.-----END.C
140b60 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
140b80 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 3d 3d 3d 3d ication.Authority.==============
140ba0 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
140bc0 52 54 49 46 49 43 41 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 RTIFICATE-----.MIIHyTCCBbGgAwIBA
140be0 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 39 4d 51 73 77 43 gIBATANBgkqhkiG9w0BAQUFADB9MQswC
140c00 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 4e 0a 55 33 52 68 QYDVQQGEwJJTDEWMBQGA1UEChMN.U3Rh
140c20 63 6e 52 44 62 32 30 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 cnRDb20gTHRkLjErMCkGA1UECxMiU2Vj
140c40 64 58 4a 6c 49 45 52 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 dXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUg
140c60 55 32 6c 6e 62 6d 6c 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 U2lnbmlu.ZzEpMCcGA1UEAxMgU3RhcnR
140c80 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 64 58 52 6f 62 33 4a Db20gQ2VydGlmaWNhdGlvbiBBdXRob3J
140ca0 70 64 48 6b 77 48 68 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 pdHkwHhcNMDYwOTE3MTk0.NjM2WhcNMz
140cc0 59 77 4f 54 45 33 4d 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 YwOTE3MTk0NjM2WjB9MQswCQYDVQQGEw
140ce0 4a 4a 54 44 45 57 4d 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 JJTDEWMBQGA1UEChMNU3RhcnRDb20gTH
140d00 52 6b 0a 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 Rk.LjErMCkGA1UECxMiU2VjdXJlIERpZ
140d20 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 75 5a 2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZ
140d40 7a 45 70 4d 43 63 47 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 zEpMCcGA1UEAxMg.U3RhcnRDb20gQ2Vy
140d60 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 67 67 49 69 dGlmaWNhdGlvbiBBdXRob3JpdHkwggIi
140d80 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 0a 67 67 49 MA0GCSqGSIb3DQEBAQUAA4ICDwAw.ggI
140da0 4b 41 6f 49 43 41 51 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 KAoICAQDBiNsJvGxGfHiflXu1M5DycmL
140dc0 57 77 54 59 67 49 69 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 WwTYgIiRezul38kMKogZkpMyONvg45iP
140de0 77 62 6d 32 78 50 4e 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 wbm2xPN1y.o4UcodM9tDMr0y+v/uqwQV
140e00 6c 6e 74 73 51 47 66 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 lntsQGfQqedIXWeUyAN3rfOQVSWff0G0
140e20 5a 44 70 4e 4b 46 68 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 ZDpNKFhdLDcfN1YjS6LIp/.Ho/u7TTQE
140e40 63 65 57 7a 56 49 39 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 ceWzVI9ujPW3U3eCztKS5/CJi/6tRYcc
140e60 6a 56 33 79 6a 78 64 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 jV3yjxd5srhJosaNnZcAdt0FCX+7bWgi
140e80 41 2f 64 0a 65 4d 6f 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 A/d.eMotHweXMAEtcnn6RtYTKqi5pquD
140ea0 53 52 33 6c 38 75 2f 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 SR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVm
140ec0 70 73 4a 72 64 41 66 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 psJrdAfkK+F2PrRt.2PZE4XNiHzvEvqB
140ee0 54 56 69 56 73 55 51 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 TViVsUQn3qqvKv3b9bZvzndu/PWa8DFa
140f00 71 72 35 68 49 6c 54 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 qr5hIlTpL36dYUNk4dalb6kMMAv+Z.6+
140f20 68 73 54 58 42 62 4b 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 hsTXBbKWWc3apdzK8BMewM69KN6Oqce+
140f40 5a 75 39 79 64 6d 44 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 Zu9ydmDBpI125C4z/eIT574Q1w+2OqqG
140f60 77 61 56 4c 52 63 4a 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 waVLRcJXrJ.osmLFqa7LH4XXgVNWG4SH
140f80 51 48 75 45 68 41 4e 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 QHuEhANxjJ/GP/89PrNbpHoNkm+Gkhpi
140fa0 38 4b 57 54 52 6f 53 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 8KWTRoSsmkXwQqQ1vp5Iki/.untp+HDH
140fc0 2b 6e 6f 33 32 4e 67 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 +no32NgN0nZPV/+Qt+OR0t3vwmC3Zzrd
140fe0 2f 71 71 63 38 4e 53 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 /qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjG
141000 74 72 56 63 0a 55 6a 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 trVc.UjyJthkqcwEKDwOzEmDyei+B26N
141020 75 2f 79 59 77 6c 2f 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 u/yYwl/WL3YlXtq09s68rxbd2AvCl1iu
141040 61 68 68 51 71 63 76 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 ahhQqcvbjM4xdCUsT.37uMdBNSSwIDAQ
141060 41 42 6f 34 49 43 55 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 ABo4ICUjCCAk4wDAYDVR0TBAUwAwEB/z
141080 41 4c 42 67 4e 56 48 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 ALBgNVHQ8EBAMCAa4wHQYDVR0OBBYE.F
1410a0 45 34 4c 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 47 51 47 41 E4L7xqkQFulF2mHMMo0aEPQQa7yMGQGA
1410c0 31 55 64 48 77 52 64 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 1UdHwRdMFswLKAqoCiGJmh0dHA6Ly9jZ
1410e0 58 4a 30 4c 6e 4e 30 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 XJ0LnN0YXJ0.Y29tLm9yZy9zZnNjYS1j
141100 63 6d 77 75 59 33 4a 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 cmwuY3JsMCugKaAnhiVodHRwOi8vY3Js
141120 4c 6e 4e 30 59 58 4a 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 LnN0YXJ0Y29tLm9yZy9zZnNj.YS1jcmw
141140 75 59 33 4a 73 4d 49 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 uY3JsMIIBXQYDVR0gBIIBVDCCAVAwggF
141160 4d 42 67 73 72 42 67 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 MBgsrBgEEAYG1NwEBATCCATswLwYIKwY
141180 42 42 51 55 48 0a 41 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 BBQUH.AgEWI2h0dHA6Ly9jZXJ0LnN0YX
1411a0 4a 30 59 32 39 74 4c 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 J0Y29tLm9yZy9wb2xpY3kucGRmMDUGCC
1411c0 73 47 41 51 55 46 42 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 sGAQUFBwIBFilodHRw.Oi8vY2VydC5zd
1411e0 47 46 79 64 47 4e 76 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 GFydGNvbS5vcmcvaW50ZXJtZWRpYXRlL
141200 6e 42 6b 5a 6a 43 42 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 nBkZjCB0AYIKwYBBQUHAgIwgcMwJxYg.
141220 55 33 52 68 63 6e 51 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 U3RhcnQgQ29tbWVyY2lhbCAoU3RhcnRD
141240 62 32 30 70 49 45 78 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 b20pIEx0ZC4wAwIBARqBl0xpbWl0ZWQg
141260 54 47 6c 68 59 6d 6c 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 TGlhYmlsaXR5.LCByZWFkIHRoZSBzZWN
141280 30 61 57 39 75 49 43 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 0aW9uICpMZWdhbCBMaW1pdGF0aW9ucyo
1412a0 67 62 32 59 67 64 47 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 gb2YgdGhlIFN0YXJ0Q29tIENl.cnRpZm
1412c0 6c 6a 59 58 52 70 62 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 ljYXRpb24gQXV0aG9yaXR5IFBvbGljeS
1412e0 42 68 64 6d 46 70 62 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 BhdmFpbGFibGUgYXQgaHR0cDovL2Nlcn
141300 51 75 63 33 52 68 0a 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 Quc3Rh.cnRjb20ub3JnL3BvbGljeS5wZ
141320 47 59 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 44 67 47 43 GYwEQYJYIZIAYb4QgEBBAQDAgAHMDgGC
141340 57 43 47 53 41 47 47 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 WCGSAGG+EIBDQQrFilT.dGFydENvbSBG
141360 63 6d 56 6c 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 cmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1
141380 64 47 68 76 63 6d 6c 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 dGhvcml0eTANBgkqhkiG9w0BAQUFAAOC
1413a0 0a 41 67 45 41 46 6d 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 .AgEAFmyZ9GYMNPXQhV59CuzaEE44HF7
1413c0 66 70 69 55 46 53 35 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 fpiUFS5Eyweg78T3dRAlbB0mKKctmAre
1413e0 78 6d 76 63 6c 6d 41 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 xmvclmAk8jhvh.3TaHK0u7aNM5Zj2gJs
141400 66 79 4f 5a 45 64 55 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 fyOZEdUauCe37Vzlrk4gNXcGmXCPleWK
141420 59 4b 33 34 77 47 6d 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 YK34wGmkUWFjgKXlf2Ysd6AgXm.vB618
141440 70 37 30 71 53 6d 44 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 p70qSmD+LIU424oh0TDkBreOKk8rENNZ
141460 45 58 4f 33 53 69 70 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 EXO3SipXPJzewT4F+irsfMuXGRuczE6E
141480 72 69 38 73 78 48 6b 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 ri8sxHk.fY+BUZo7jYn0TZNmezwD7dOa
1414a0 48 5a 72 7a 5a 56 44 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 HZrzZVD1oNB1ny+v8OqCQ5j4aZyJecRD
1414c0 6a 6b 5a 79 34 32 51 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 jkZy42Q2Eq/3JR44iZB3.fsNrarnDy0R
1414e0 4c 72 48 69 51 69 2b 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 LrHiQi+fHLB5LEUTINFInzQpdn4XBidU
141500 61 65 50 4b 56 45 46 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 aePKVEFMy3YCEZnXZtWgo+2EuvoSoOMC
141520 5a 0a 45 6f 61 6c 48 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 Z.EoalHmdkrQYuL6lwhceWD3yJZfWOQ1
141540 51 4f 71 39 32 6c 67 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 QOq92lgDmUYMA0yZZwLKMS9R9Ie70cfm
141560 75 33 6e 5a 44 30 49 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 u3nZD0Ijuu+Pwq.yvqCUqDvr0tVk+vBt
141580 66 41 69 69 36 77 30 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 fAii6w0TiYiBKGHLHVKt+V9E9e4DGTAN
1415a0 74 4c 4a 4c 34 59 53 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 tLJL4YSjCMJwRuCO3NJo2pXh5Tl.1njF
1415c0 6d 55 4e 6a 34 30 33 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 mUNj403gdy3hZZlyaQQaRwnmDwFWJPsf
1415e0 76 77 35 35 71 56 67 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 vw55qVguucQJAX6Vum0ABj6y6koQOdjQ
141600 4b 2f 57 2f 37 48 57 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 K/W/7HW/.lwLFCRsI3FU34oH7N4RDYiD
141620 4b 35 31 5a 4c 5a 65 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 K51ZLZer+bMEkkyShNOsF/5oirpt9P/F
141640 6c 55 51 71 6d 4d 47 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 lUQqmMGqz9IgcgA38coro.g14=.-----
141660 45 4e 44 20 43 45 52 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 END.CERTIFICATE-----..Taiwan.GRC
141680 41 0a 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 A.===========.-----BEGIN.CERTIFI
1416a0 43 41 54 45 2d 2d 2d 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 CATE-----.MIIFcjCCA1qgAwIBAgIQH5
1416c0 31 5a 57 74 63 76 77 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 1ZWtcvwgZEpYAIaeNe9jANBgkqhkiG9w
1416e0 30 42 41 51 55 46 41 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 0BAQUFADA/MQswCQYDVQQG.EwJUVzEwM
141700 43 34 47 41 31 55 45 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 C4GA1UECgwnR292ZXJubWVudCBSb290I
141720 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 4d ENlcnRpZmljYXRpb24gQXV0aG9yaXR5M
141740 42 34 58 0a 44 54 41 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 B4X.DTAyMTIwNTEzMjMzM1oXDTMyMTIw
141760 4e 54 45 7a 4d 6a 4d 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 NTEzMjMzM1owPzELMAkGA1UEBhMCVFcx
141780 4d 44 41 75 42 67 4e 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 MDAuBgNVBAoMJ0dv.dmVybm1lbnQgUm9
1417a0 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 47 68 76 63 6d 6c vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml
1417c0 30 65 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 0a 67 67 0eTCCAiIwDQYJKoZIhvcNAQEBBQAD.gg
1417e0 49 50 41 44 43 43 41 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 IPADCCAgoCggIBAJoluOzMonWoe/fOW1
141800 6d 4b 79 64 47 47 45 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 mKydGGEghU7Jzy50b2iPN86aXfTEc2pB
141820 73 42 48 48 38 65 56 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 sBHH8eV4qN.w8XRIePaJD9IK/ufLqGU5
141840 79 77 63 6b 39 47 2f 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 ywck9G/GwGHU5nOp/UKIXZ3/6m3xnOUT
141860 30 62 33 45 45 6b 33 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 0b3EEk3+qhZSV1qgQdW8or5.BtD3cCJN
141880 74 4c 64 42 75 54 4b 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 tLdBuTK4sfCxw5w/cP1T3YGq2GN49thT
1418a0 62 71 47 73 61 6f 51 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 bqGsaoQkclSGxtKyyhwOeYHWtXBiCAEu
1418c0 54 6b 38 4f 0a 31 52 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 Tk8O.1RGvqa/lmr/czIdtJuTJV6L7lvn
1418e0 4d 34 54 39 54 6a 47 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 M4T9TjGxMfptTCAtsF/tnyMKtsc2AtJf
141900 63 64 67 45 57 46 65 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 cdgEWFelq16TheEfO.htX7MfP6Mb40qi
141920 6a 37 63 45 77 64 53 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 j7cEwdScevLJ1tZqa2jWR+tSBqnTuBto
141940 39 41 41 47 64 4c 69 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 9AAGdLiYa4zGX+FVPpBMHWXx1E1wov.J
141960 35 70 47 66 61 45 4e 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 5pGfaENda1UhhXcSTvxls4Pm6Dso3pdv
141980 74 55 71 64 55 4c 6c 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 tUqdULle96ltqqvKKyskKw4t9VoNSZ63
1419a0 50 63 37 38 2f 31 46 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 Pc78/1Fm9G7.Q3hub/FCVGqY8A2tl+lS
1419c0 58 75 6e 56 61 6e 4c 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 XunVanLeavcbYBT0peS2cWeqH+riTcFC
1419e0 51 50 35 6e 52 68 63 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 QP5nRhc4L0c/cZyu5SHKYS1t.B6iEfC3
141a00 75 55 53 58 78 59 35 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 uUSXxY5Ce/eFXiGvviiNtsea9P63RPZY
141a20 4c 68 59 33 4e 61 79 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 LhY3Naye7twWb7LuRqQoHEgKXTiCQ8P8
141a40 4e 48 75 4a 42 0a 4f 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 NHuJB.O9NAOueNXdpm5AKwB1KYXA6OM5
141a60 7a 43 70 70 58 37 56 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 zCppX7VRluTI6uSw+9wThNXo+EHWbNxW
141a80 43 57 74 46 4a 61 42 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 CWtFJaBYmOlXqYwZE8.lSOyDvR5tMl8w
141aa0 55 6f 68 41 67 4d 42 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 UohAgMBAAGjajBoMB0GA1UdDgQWBBTMz
141ac0 4f 2f 4d 4b 57 43 6b 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 O/MKWCkO7GStjz6MmKPrCUVOzAMBgNV.
141ae0 48 52 4d 45 42 54 41 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 HRMEBTADAQH/MDkGBGcqBwAEMTAvMC0C
141b00 41 51 41 77 43 51 59 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 AQAwCQYFKw4DAhoFADAHBgVnKgMAAAQU
141b20 41 35 76 77 49 68 50 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 A5vwIhP/lSg2.09yewDL7MTqKUWUwDQY
141b40 4a 4b 6f 5a 49 68 76 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 JKoZIhvcNAQEFBQADggIBAECASvomyc5
141b60 65 4d 4e 31 50 68 6e 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 eMN1PhnR2WPWus4MzeKR6dBcZ.TulStb
141b80 6e 67 43 6e 52 69 71 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 ngCnRiqmjKeKBMmo4sIy7VahIkv9Ro04
141ba0 72 51 32 4a 79 66 74 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 rQ2JyftB8M3jh+Vzj8jeJPXgyfqzvS/3
141bc0 57 58 79 36 54 6a 0a 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 WXy6Tj.Zwj/5cAWtUgBfen5Cv8b5Wppv
141be0 33 67 68 71 4d 4b 6e 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 3ghqMKnI6mGq3ZW6A4M9hPdKmaKZEk9G
141c00 68 69 48 6b 41 53 66 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 hiHkASfQlK3T8v+R0F2.Ne//AHY2RTKb
141c20 78 6b 61 46 58 65 49 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 xkaFXeIksB7jSJaYV0eUVXoPQbFEJPPB
141c40 2f 68 70 72 76 34 6a 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 /hprv4j9wabak2BegUqZIJxIZhm1AHlU
141c60 0a 44 37 67 73 4c 30 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 .D7gsL0u8qV1bYH+Mh6XgUmMqvtg7hUA
141c80 56 2f 68 36 32 5a 54 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 V/h62ZT/FS9p+tXo1KaMuephgIqP0fSd
141ca0 4f 4c 65 71 30 64 44 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 OLeq0dDzpD6Qz.DxARvBMB1uUO07+1Eq
141cc0 4c 68 52 53 50 41 7a 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 LhRSPAzAhuYbeJq4PjJB7mXQfnHyA+z2
141ce0 66 49 35 36 77 77 62 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 fI56wwbSdLaG5LKlwCCDTb+Hbk.Z6Mmn
141d00 44 2b 69 4d 73 4a 4b 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 D+iMsJKxYEYMRBWqoTvLQr/uB930r+lW
141d20 4b 42 69 35 4e 64 4c 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 KBi5NdLkXWNiYCYfm3LU05er/ayl4WXu
141d40 64 70 56 42 72 6b 6b 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 dpVBrkk.7tfGOB5jGxI7leFYrPLfhNVf
141d60 6d 53 38 4e 56 56 76 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 mS8NVVvmONsuP3LpSIXLuykTjx44Vbnz
141d80 73 73 51 77 6d 53 4e 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 ssQwmSNOXfJIoRIM3BKQ.CZBUkQM8R+X
141da0 56 79 57 58 67 74 30 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 VyWXgt0t97EfTsws+rZ7QdAAO671RrcD
141dc0 65 4c 4d 44 44 61 76 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 eLMDDav7v3Aun+kbfYNucpllQdSNpc5O
141de0 79 0a 2b 66 77 43 30 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 y.+fwC00fmcc4QAu4njIT/rEUNE1yDMu
141e00 41 6c 70 59 59 73 66 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 AlpYYsfPQS.-----END.CERTIFICATE-
141e20 2d 2d 2d 2d 0a 0a 53 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 ----..Swisscom.Root.CA.1.=======
141e40 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
141e60 54 45 2d 2d 2d 2d 2d 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 TE-----.MIIF2TCCA8GgAwIBAgIQXAuF
141e80 58 41 76 6e 57 55 48 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 XAvnWUHfV8w/f52oNjANBgkqhkiG9w0B
141ea0 41 51 55 46 41 44 42 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 AQUFADBkMQswCQYDVQQG.EwJjaDERMA8
141ec0 47 41 31 55 45 43 68 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 GA1UEChMIU3dpc3Njb20xJTAjBgNVBAs
141ee0 54 48 45 52 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 56 THERpZ2l0YWwgQ2VydGlmaWNhdGUgU2V
141f00 79 0a 64 6d 6c 6a 5a 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 y.dmljZXMxGzAZBgNVBAMTElN3aXNzY2
141f20 39 74 49 46 4a 76 62 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 9tIFJvb3QgQ0EgMTAeFw0wNTA4MTgxMj
141f40 41 32 4d 6a 42 61 46 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 A2MjBaFw0yNTA4.MTgyMjA2MjBaMGQxC
141f60 7a 41 4a 42 67 4e 56 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 zAJBgNVBAYTAmNoMREwDwYDVQQKEwhTd
141f80 32 6c 7a 63 32 4e 76 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 2lzc2NvbTElMCMGA1UECxMcRGln.aXRh
141fa0 62 43 42 44 5a 58 4a 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 bCBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczEb
141fc0 4d 42 6b 47 41 31 55 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 MBkGA1UEAxMSU3dpc3Njb20gUm9vdCBD
141fe0 51 53 41 78 4d 49 49 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 QSAxMIIC.IjANBgkqhkiG9w0BAQEFAAO
142000 43 41 67 38 41 4d 49 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 CAg8AMIICCgKCAgEA0LmwqAzZuz8h+Bv
142020 56 4d 35 4f 41 46 6d 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 VM5OAFmUgdbI9m2BtRsiM.MW8Xw/qabF
142040 62 74 50 4d 57 52 56 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 btPMWRV8PNq5ZJkCoZSx6jbVfd8StiKH
142060 56 46 58 71 72 57 57 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 VFXqrWW/oLJdihFvkcxC7mlSpnzNApbj
142080 79 46 0a 4e 44 68 68 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 yF.NDhhSbEAn9Y6cV9Nbc5fuankiX9qU
1420a0 76 72 4b 6d 2f 4c 63 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 vrKm/LcqfmdmUc/TilftKaNXXsLmREDA
1420c0 2f 37 6e 32 39 75 6a 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 /7n29uj/x2lzZAe.AR81sH8A25Bvxn57
1420e0 30 65 35 36 65 71 65 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 0e56eqeqDFdvpG3FEzuwpdntMhy0XmeL
142100 56 4e 78 7a 68 2b 58 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 VNxzh+XTF3xmUHJd1BpYwdnP2IkC.b6d
142120 4a 74 44 5a 64 30 4b 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 JtDZd0KTeByy2dbcokdaXvij1mB7qWyb
142140 4a 76 62 43 58 63 39 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 JvbCXc9qukSbraMH5ORXWZ0sKbU/Lz7D
142160 6b 51 6e 47 4d 55 33 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 kQnGMU3nn.7uHbHaBuHYwadzVcFh4rUx
142180 38 30 69 39 46 73 2f 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 80i9Fs/PJnB3r1re3WmquhsUvhzDdf/X
1421a0 2f 4e 54 61 36 34 48 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 /NTa64H5xD+SpYVUNFvJbN.cA78yeNmu
1421c0 6b 36 4e 4f 34 48 4c 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 k6NO4HLFWR7uZToXTNShXEuT46iBhFRy
1421e0 65 50 4c 6f 57 34 78 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 ePLoW4xCGQMwtI89Tbo19AOeCMgkckkK
142200 6d 55 70 0a 57 79 4c 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 mUp.WyL3Ic6DXqTz3kvTaI9GdVyDCW4p
142220 61 38 52 77 6a 50 57 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 a8RwjPWd1yAv/0bSKzjCL3UcPX7ape8e
142240 59 49 56 70 51 74 50 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 YIVpQtPM+GP+HkM5.haa2Y0EQs3MevNP
142260 36 79 6e 30 57 52 2b 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 6yn0WR+Kn1dCjigoIlmJWbjTb2QK5MHX
142280 6a 42 4e 4c 6e 6a 38 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 jBNLnj8KwEUAKrNVxAmKLMb7dxiNY.MU
1422a0 4a 44 4c 58 54 35 78 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 JDLXT5xp6mig/p/r+D5kNXJLrvRjSq1x
1422c0 49 42 4f 4f 30 43 41 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 IBOO0CAwEAAaOBhjCBgzAOBgNVHQ8BAf
1422e0 38 45 42 41 4d 43 41 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 8EBAMCAYYw.HQYDVR0hBBYwFDASBgdgh
142300 58 51 42 55 77 41 42 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 XQBUwABBgdghXQBUwABMBIGA1UdEwEB/
142320 77 51 49 4d 41 59 42 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 wQIMAYBAf8CAQcwHwYDVR0j.BBgwFoAU
142340 41 79 55 76 33 6d 2b 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 AyUv3m+CATpcLNwroWm1Z9SM0/0wHQYD
142360 56 52 30 4f 42 42 59 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 VR0OBBYEFAMlL95vggE6XCzcK6FptWfU
142380 6a 4e 50 39 0a 4d 41 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 jNP9.MA0GCSqGSIb3DQEBBQUAA4ICAQA
1423a0 31 45 4d 76 73 70 67 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 1EMvspgQNDQ/NwNurqPKIlwzfky9NfEB
1423c0 57 4d 58 72 72 70 41 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 WMXrrpA9gzXrzvsMn.jgM+pN0S734edA
1423e0 59 38 50 7a 48 79 48 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 Y8PzHyHHuRMSG08NBsl9Tpl7IkVh5Wwz
142400 57 39 69 41 55 50 57 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 W9iAUPWxAaZOHHgjD5Mq2eUCzneAXQ.M
142420 62 46 61 6d 49 70 31 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 bFamIp1TpBcahQq4FJHgmDmHtqBsfsUC
142440 31 72 78 6e 39 4b 56 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 1rxn9KVuj7QG9YVHaO+htXbD8BJZLsuU
142460 42 6c 4c 30 69 54 34 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 BlL0iT43R4H.VtA4oJVwIHaM190e3p9x
142480 78 43 50 76 67 78 4e 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 xCPvgxNcoyQVTSlAPGrEqdi3pkSlDfTg
1424a0 6e 58 63 65 51 48 41 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 nXceQHAm/NrZNuR55LU/vJtl.vrsRls/
1424c0 62 78 69 67 35 4f 67 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 bxig5OgjOR1tTWsWZ/l2p3e9M1MalrQL
1424e0 6d 6a 41 63 53 48 6d 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 mjAcSHm8D0W+go/MpvRLHUKKwf4ipmXe
142500 61 73 63 43 6c 0a 4f 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 ascCl.OS5cfGniLLDqN2qk4Vrh9VDlg+
142520 2b 6c 75 79 71 49 35 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 +luyqI54zb/W1elxmofmZ1a3Hqv7HHb6
142540 44 30 6a 71 54 73 4e 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 D0jqTsNFFbjCYDcKF3.1QESVwA12yPeD
142560 6f 6f 6f 6d 66 32 78 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 ooomf2xEG9L/zgtYE4snOtnta1J7ksfr
142580 4b 2f 37 44 5a 42 61 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 K/7DZBaZmBwXarNeNQk7shBoJMBkpxq.
1425a0 6e 76 79 35 4a 4d 57 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 nvy5JMWzFYJ+vq6VK+uxwNrjAWALXmms
1425c0 68 46 5a 68 76 6e 45 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 hFZhvnEX/h0TD/7Gh0Xp/jKgGg0TpJRV
1425e0 63 61 55 57 69 37 72 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 caUWi7rKibCy.x/yP2FS1k2Kdzs9Z+z0
142600 59 7a 69 72 4c 4e 52 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 YzirLNRWCXf9UIltxUvu3yf5gmwBBZPC
142620 71 4b 75 79 32 51 6b 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 qKuy2QkPOiWaByIufOVQDJdMW.NY6E0F
142640 2f 36 4d 42 72 31 6d 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 /6MBr1mmz0DlP5OlvRHA==.-----END.
142660 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 41 73 73 75 72 CERTIFICATE-----..DigiCert.Assur
142680 65 64 20 49 44 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 ed.ID.Root.CA.==================
1426a0 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
1426c0 2d 2d 2d 2d 2d 0a 4d 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 -----.MIIDtzCCAp+gAwIBAgIQDOfg5R
1426e0 66 59 52 76 36 50 35 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 fYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQ
142700 55 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 56 4d 42 4d 47 41 UFADBlMQswCQYDVQQG.EwJVUzEVMBMGA
142720 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 77 46 77 59 44 56 1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDV
142740 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 74 4d 53 51 77 0a QQLExB3d3cuZGlnaWNlcnQuY29tMSQw.
142760 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 4e 31 63 6d 56 6b IgYDVQQDExtEaWdpQ2VydCBBc3N1cmVk
142780 49 45 6c 45 49 46 4a 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 IElEIFJvb3QgQ0EwHhcNMDYxMTEwMDAw
1427a0 4d 44 41 77 57 68 63 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 MDAwWhcNMzEx.MTEwMDAwMDAwWjBlMQs
1427c0 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 68 4d 4d 52 47 6c wCQYDVQQGEwJVUzEVMBMGA1UEChMMRGl
1427e0 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 45 78 42 33 64 33 naUNlcnQgSW5jMRkwFwYDVQQL.ExB3d3
142800 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 56 51 51 44 45 78 cuZGlnaWNlcnQuY29tMSQwIgYDVQQDEx
142820 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 76 62 33 tEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3
142840 51 67 51 30 45 77 0a 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 QgQ0Ew.ggEiMA0GCSqGSIb3DQEBAQUAA
142860 34 49 42 44 77 41 77 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 4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH8
142880 37 64 67 2b 58 45 53 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 7dg+XESpa7cJpSIqvTO.9SA5KFhgDPiA
1428a0 32 71 6b 56 6c 54 4a 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 2qkVlTJhPLWxKISKityfCgyDF3qPkKyK
1428c0 35 33 6c 54 58 44 47 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 53lTXDGEKvYPmDI2dsze3Tyoou9q+yHy
1428e0 0a 55 6d 48 66 6e 79 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 .UmHfnyDXH+Kx2f4YZNISW1/5WBg1vEf
142900 4e 6f 54 62 35 61 33 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 NoTb5a3/UsDg+wRvDjDPZ2C8Y/igPs6e
142920 44 31 73 4e 75 52 4d 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 D1sNuRMBhNZYW./lmci3Zt1/GiSw0r/w
142940 74 79 32 70 35 67 30 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 ty2p5g0I6QNcZ4VYcgoc/lbQrISXwxmD
142960 4e 73 49 75 6d 48 30 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 NsIumH0DJaoroTghHtORedmTpy.oeb6p
142980 4e 6e 56 46 7a 46 31 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 NnVFzF1roV9Iq4/AUaG9ih5yLHa5FcXx
1429a0 48 34 63 44 72 43 30 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 H4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/
1429c0 36 47 57 36 77 68 66 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 6GW6whf.GHdPAgMBAAGjYzBhMA4GA1Ud
1429e0 44 77 45 42 2f 77 51 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 DwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD
142a00 41 51 48 2f 4d 42 30 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 AQH/MB0GA1UdDgQWBBRF.66Kv9JLLgjE
142a20 74 55 59 75 6e 70 79 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 tUYunpyGd823IDzAfBgNVHSMEGDAWgBR
142a40 46 36 36 4b 76 39 4a 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 F66Kv9JLLgjEtUYunpyGd823IDzANBgk
142a60 71 0a 68 6b 69 47 39 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 q.hkiG9w0BAQUFAAOCAQEAog683+Lt8O
142a80 4e 79 63 33 70 6b 6c 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 Nyc3pklL/3cmbYMuRCdWKuh+vy1dneVr
142aa0 4f 66 7a 4d 34 55 4b 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 OfzM4UKLkNl2Bc.EkxY5NM9g0lFWJc1a
142ac0 52 71 6f 52 2b 70 57 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 RqoR+pWxnmrEthngYTffwk8lOa4Jiwgv
142ae0 54 32 7a 4b 49 6e 33 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 T2zKIn3X/8i4peEH+ll74fg38Fn.SbNd
142b00 36 37 49 4a 4b 75 73 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 67IJKusm7Xi+fT8r87cmNW1fiQG2SVuf
142b20 41 51 57 62 71 7a 30 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 AQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtC
142b40 74 2f 71 4d 48 74 31 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 t/qMHt1i.8b5QZ7dsvfPxH2sMNgcWfzd
142b60 38 71 56 74 74 65 76 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 8qVttevESRmCD1ycEvkvOl77DZypoEd+
142b80 41 35 77 77 7a 5a 72 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 A5wwzZr8TDRRu838fYxAe.+o0bJW1sj6
142ba0 57 33 59 51 47 78 30 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 W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi
142bc0 37 6d 55 4c 4b 6e 2b 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 7mULKn+gpFL6Lw8g==.-----END.CERT
142be0 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
142c00 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 0a 2d 2d ot.CA.=======================.--
142c20 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 72 7a ---BEGIN.CERTIFICATE-----.MIIDrz
142c40 43 43 41 70 65 67 41 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 CCApegAwIBAgIQCDvgVpBCRrGhdWrJWZ
142c60 48 48 53 6a 41 4e 42 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 HHSjANBgkqhkiG9w0BAQUFADBhMQswCQ
142c80 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 47 6c 6e 61 YDVQQG.EwJVUzEVMBMGA1UEChMMRGlna
142ca0 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 33 63 75 5a UNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZ
142cc0 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 45 78 64 45 GlnaWNlcnQuY29tMSAw.HgYDVQQDExdE
142ce0 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 44 51 54 41 65 aWdpQ2VydCBHbG9iYWwgUm9vdCBDQTAe
142d00 46 77 30 77 4e 6a 45 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 Fw0wNjExMTAwMDAwMDBaFw0zMTExMTAw
142d20 0a 4d 44 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 54 4d 52 55 .MDAwMDBaMGExCzAJBgNVBAYTAlVTMRU
142d40 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 78 47 54 41 wEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTA
142d60 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 35 6a 62 32 XBgNVBAsTEHd3.dy5kaWdpY2VydC5jb2
142d80 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 64 73 62 32 0xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2
142da0 4a 68 62 43 42 53 62 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 JhbCBSb290IENBMIIBIjANBgkq.hkiG9
142dc0 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 34 6a 76 68 45 w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhE
142de0 58 4c 65 71 4b 54 54 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 XLeqKTTo1eqUKKPC3eQyaKl7hLOllsBC
142e00 53 44 4d 41 5a 4f 6e 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 SDMAZOn.TjC3U/dDxGkAV53ijSLdhwZA
142e20 41 49 45 4a 7a 73 34 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 AIEJzs4bg7/fzTtxRuLWZscFs3YnFo97
142e40 6e 68 36 56 66 65 36 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 nh6Vfe63SKMI2tavegw5.BmV/Sl0fvBf
142e60 34 71 37 37 75 4b 4e 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 4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fp
142e80 74 34 33 43 2f 64 78 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 t43C/dxC//AH2hdmoRBBYMql1GNXRor5
142ea0 48 0a 34 69 64 71 39 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 H.4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT
142ec0 37 50 54 31 39 73 64 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 7PT19sdl6gSzeRntwi5m3OFBqOasv+zb
142ee0 4d 55 5a 42 66 48 57 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 MUZBfHWymeMr/y.7vrTC0LUq7dBMtoM1
142f00 4f 2f 34 67 64 57 37 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 O/4gdW7jVg/tRvoSSiicNoxBN33shbyT
142f20 41 70 4f 42 36 6a 74 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 ApOB6jtSj1etX+jkMOvJwIDAQAB.o2Mw
142f40 59 54 41 4f 42 67 4e 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 YTAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0T
142f60 41 51 48 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 41 39 35 51 AQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95Q
142f80 4e 56 62 52 54 4c 74 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 NVbRTLtm.8KPiGxvDl7I90VUwHwYDVR0
142fa0 6a 42 42 67 77 46 6f 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 jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I
142fc0 39 30 56 55 77 44 51 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 90VUwDQYJKoZIhvcNAQEF.BQADggEBAM
142fe0 75 63 4e 36 70 49 45 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 ucN6pIExIK+t1EnE9SsPTfrgT1eXkIoy
143000 51 59 2f 45 73 72 68 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 QY/EsrhMAtudXH/vTBH1jLuG2cenTnmC
143020 6d 72 0a 45 62 58 6a 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 mr.EbXjcKChzUyImZOMkXDiqw8cvpOp/
143040 32 50 56 35 41 64 67 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 2PV5Adg06O/nVsJ8dWO41P0jmP6P6fbt
143060 47 62 66 59 6d 62 57 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 GbfYmbW0W5BjfIt.tep3Sp+dWOIrWcBA
143080 49 2b 30 74 4b 49 4a 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 I+0tKIJFPnlUkiaY4IBIqDfv8NZ5YBbe
1430a0 72 4f 67 4f 7a 57 36 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 rOgOzW6sRBc4L0na4UU+Krk2U886.UAb
1430c0 33 4c 75 6a 45 56 30 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 3LujEV0lsYSEY1QSteDwsOoBrp+uvFRT
1430e0 70 32 49 6e 42 75 54 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 p2InBuThs4pFsiv9kuXclVzDAGySj4dz
143100 70 33 30 64 38 74 62 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 p30d8tbQk.CAUw7C29C79Fv1C5qfPrmA
143120 45 53 72 63 69 49 78 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 ESrciIxpg0X40KPMbp1ZWVbd4=.-----
143140 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 20 48 END.CERTIFICATE-----..DigiCert.H
143160 69 67 68 20 41 73 73 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 igh.Assurance.EV.Root.CA.=======
143180 3d 3d 3d 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 ===========================.----
1431a0 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 78 54 43 43 -BEGIN.CERTIFICATE-----.MIIDxTCC
1431c0 41 71 32 67 41 77 49 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 Aq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYl
1431e0 64 7a 41 4e 42 67 6b 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 dzANBgkqhkiG9w0BAQUFADBsMQswCQYD
143200 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 47 6c 6e 61 55 4e VQQG.EwJVUzEVMBMGA1UEChMMRGlnaUN
143220 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
143240 6e 61 57 4e 6c 63 6e 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 naWNlcnQuY29tMSsw.KQYDVQQDEyJEaW
143260 64 70 51 32 56 79 64 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 dpQ2VydCBIaWdoIEFzc3VyYW5jZSBFVi
143280 42 53 62 32 39 30 49 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 BSb290IENBMB4XDTA2MTExMDAwMDAw.M
1432a0 46 6f 58 44 54 4d 78 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 FoXDTMxMTExMDAwMDAwMFowbDELMAkGA
1432c0 31 55 45 42 68 4d 43 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 1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZ
1432e0 58 4a 30 49 45 6c 75 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 XJ0IEluYzEZ.MBcGA1UECxMQd3d3LmRp
143300 5a 32 6c 6a 5a 58 4a 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 Z2ljZXJ0LmNvbTErMCkGA1UEAxMiRGln
143320 61 55 4e 6c 63 6e 51 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 aUNlcnQgSGlnaCBBc3N1cmFu.Y2UgRVY
143340 67 55 6d 39 76 64 43 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 gUm9vdCBDQTCCASIwDQYJKoZIhvcNAQE
143360 42 42 51 41 44 67 67 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 BBQADggEPADCCAQoCggEBAMbM5XPm+9S
143380 37 35 53 30 74 0a 4d 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 75S0t.Mqbf5YE/yc0lSbZxKsPVlDRnog
1433a0 6f 63 73 46 39 70 70 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 ocsF9ppkCxxLeyj9CYpKlBWTrT3JTWPN
1433c0 74 30 4f 4b 52 4b 7a 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 t0OKRKzE0lgvdKpVMS.OO7zSW1xkX5jt
1433e0 71 75 6d 58 38 4f 6b 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 qumX8OkhPhPYlG++MXs2ziS4wblCJEMx
143400 43 68 42 56 66 76 4c 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 ChBVfvLWokVfnHoNb9Ncgk9vjo4UFt3.
143420 4d 52 75 4e 73 38 63 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 MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFB
143440 49 6b 35 6c 59 59 65 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 Ik5lYYeBQVCmeVyJ3hlKV9Uu5l0cUyx+
143460 6d 4d 30 61 42 68 61 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 mM0aBhakaHPQ.NAQTXKFx01p8VdteZOE
143480 33 68 7a 42 57 42 4f 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 3hzBWBOURtCmAEvF5OYiiAhF8J2a3iLd
1434a0 34 38 73 6f 4b 71 44 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 48soKqDirCmTCv2ZdlYTBoSUe.h10aUA
1434c0 73 67 45 73 78 42 75 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 sgEsxBu24LUTi4S8sCAwEAAaNjMGEwDg
1434e0 59 44 56 52 30 50 41 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 YDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/w
143500 51 46 4d 41 4d 42 0a 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 QFMAMB.Af8wHQYDVR0OBBYEFLE+w2kD+
143520 4c 39 48 41 64 53 59 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 L9HAdSYJhoIAu9jZCvDMB8GA1UdIwQYM
143540 42 61 41 46 4c 45 2b 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 BaAFLE+w2kD+L9HAdSY.JhoIAu9jZCvD
143560 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 41 63 47 67 61 58 MA0GCSqGSIb3DQEBBQUAA4IBAQAcGgaX
143580 33 4e 65 63 6e 7a 79 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 3NecnzyIZgYIVyHbIUf4KmeqvxgydkAQ
1435a0 0a 56 38 47 4b 38 33 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 .V8GK83rZEWWONfqe/EW1ntlMMUu4keh
1435c0 44 4c 49 36 7a 65 4d 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 DLI6zeM7b41N5cdblIZQB2lWHmiRk9op
1435e0 6d 7a 4e 36 63 4e 38 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 mzN6cN82oNLFp.myPInngiK3BD41VHMW
143600 45 5a 37 31 6a 46 68 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 EZ71jFhS9OMPagMRYjyOfiZRYzy78aG6
143620 41 39 2b 4d 70 65 69 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 A9+MpeizGLYAiJLQwGXFK3xPkK.mNEVX
143640 35 38 53 76 6e 77 32 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 58Svnw2Yzi9RKR/5CYrCsSXaQ3pjOLAE
143660 46 65 34 79 48 59 53 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 Fe4yHYSkVXySGnYvCoCWw9E1CAx2/S6c
143680 43 5a 64 6b 47 43 65 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 CZdkGCe.vEsXCS+0yx5DaMkHJ8HSXPfq
1436a0 49 62 6c 6f 45 70 77 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 IbloEpw8nL+e/IBcm2PN7EeqJSdnoDfz
1436c0 41 49 4a 39 56 4e 65 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 AIJ9VNep+OkuE6N36B9K.-----END.CE
1436e0 52 54 49 46 49 43 41 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 RTIFICATE-----..Certplus.Class.2
143700 20 50 72 69 6d 61 72 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 .Primary.CA.====================
143720 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--
143740 2d 2d 2d 0a 4d 49 49 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 ---.MIIDkjCCAnqgAwIBAgIRAIW9S/PY
143760 32 75 4e 70 39 70 54 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 2uNp9pTXX8OlRCMwDQYJKoZIhvcNAQEF
143780 42 51 41 77 50 54 45 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 BQAwPTELMAkGA1UE.BhMCRlIxETAPBgN
1437a0 56 42 41 6f 54 43 45 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 VBAoTCENlcnRwbHVzMRswGQYDVQQDExJ
1437c0 44 62 47 46 7a 63 79 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 DbGFzcyAyIFByaW1hcnkgQ0EwHhcN.OT
1437e0 6b 77 4e 7a 41 33 4d 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 kwNzA3MTcwNTAwWhcNMTkwNzA2MjM1OT
143800 55 35 57 6a 41 39 4d 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 U5WjA9MQswCQYDVQQGEwJGUjERMA8GA1
143820 55 45 43 68 4d 49 51 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 UEChMIQ2Vy.dHBsdXMxGzAZBgNVBAMTE
143840 6b 4e 73 59 58 4e 7a 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 kNsYXNzIDIgUHJpbWFyeSBDQTCCASIwD
143860 51 59 4a 4b 6f 5a 49 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 QYJKoZIhvcNAQEBBQADggEP.ADCCAQoC
143880 67 67 45 42 41 4e 78 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 ggEBANxQltAS+DXSCHh6tlJw/W/uz7kR
1438a0 79 31 31 33 34 65 7a 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 y1134ezpfgSN1sxvc0NXYKwzCkTsA18c
1438c0 67 43 53 52 0a 35 61 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 gCSR.5aiRVhKC9+Ar9NuuYS6JEI1rbLq
1438e0 7a 41 72 33 56 4e 73 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 zAr3VNsVINyPi8Fo3UjMXEuLRYE2+L0E
143900 52 34 2f 59 58 4a 51 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 R4/YXJQyLkcAbmXuZ.Vg2v7tK8R1fjeU
143920 6c 37 4e 49 6b 6e 4a 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 l7NIknJITesezpWE7+Tt9avkGtrAjFGA
143940 37 76 30 6c 50 75 62 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 7v0lPubNCdEgETjdyAYveVqUSISnFO.Y
143960 46 57 65 32 79 4d 5a 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 FWe2yMZeVYHDD9jC1yw4r5+FfyUM1hBO
143980 48 54 45 34 59 2b 4c 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 HTE4Y+L3yasH7WLO7dDWWuwJKZtkIvEc
1439a0 75 70 64 4d 35 69 33 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 updM5i3y95e.e++U8Rs+yskhwcWYAqqi
1439c0 39 6c 74 33 6d 2f 56 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 9lt3m/V+llU0HGdpwPFC40es/CgcZlUC
1439e0 41 77 45 41 41 61 4f 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 AwEAAaOBjDCBiTAPBgNVHRME.CDAGAQH
143a00 2f 41 67 45 4b 4d 41 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 /AgEKMAsGA1UdDwQEAwIBBjAdBgNVHQ4
143a20 45 46 67 51 55 34 33 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 EFgQU43Mt38sOKAze3bOkynm4jrvoMIk
143a40 77 45 51 59 4a 0a 59 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 wEQYJ.YIZIAYb4QgEBBAQDAgEGMDcGA1
143a60 55 64 48 77 51 77 4d 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 UdHwQwMC4wLKAqoCiGJmh0dHA6Ly93d3
143a80 63 75 59 32 56 79 64 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 cuY2VydHBsdXMuY29t.L0NSTC9jbGFzc
143aa0 7a 49 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 zIuY3JsMA0GCSqGSIb3DQEBBQUAA4IBA
143ac0 51 43 6e 56 4d 2b 49 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 QCnVM+IRBnL39R/AN9WM2K191EBkOvD.
143ae0 50 39 47 49 52 4f 6b 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 P9GIROkkXe/nFL0gt5o8AP5tn9uQ3Nf0
143b00 59 74 61 4c 63 46 33 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 YtaLcF3n5QRIqWh8yfFC82x/xXp8HVGI
143b20 75 74 49 4b 50 69 64 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 utIKPidd3i1R.TtMTZGnkLuPT55sJmab
143b40 67 6c 5a 76 4f 47 74 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 glZvOGtd/vjzOUrMRFcEPF80Du5wlFbq
143b60 69 64 6f 6e 38 42 76 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 idon8BvEY0JNLDnyCt6X09l/+.7UCmnY
143b80 52 30 4f 62 6e 63 48 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 R0ObncHoUW2ikbhiMAybuJfm6AiB4vFL
143ba0 51 44 4a 4b 67 79 62 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 QDJKgybwOaRywwvlbGp0ICcBvqQNi6BQ
143bc0 4e 77 42 36 53 57 0a 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 NwB6SW.//1IMwrh3KWBkJtN3X3n57LNX
143be0 4d 68 71 6c 66 69 6c 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 Mhqlfil9o3EXXgIvnsG1knPGTZQIy4I5
143c00 70 34 46 54 55 63 59 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 p4FTUcY1Rbpsda2ENW7.l7+ijrRU.---
143c20 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 20 52 6f 6f 74 --END.CERTIFICATE-----..DST.Root
143c40 20 43 41 20 58 33 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 .CA.X3.==============.-----BEGIN
143c60 20 43 45 52 54 49 46 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 .CERTIFICATE-----.MIIDSjCCAjKgAw
143c80 49 42 41 67 49 51 52 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 IBAgIQRK+wgNajJ7qJMDmGLvhAazANBg
143ca0 6b 71 68 6b 69 47 39 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 kqhkiG9w0BAQUFADA/MSQwIgYDVQQK.E
143cc0 78 74 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 xtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzd
143ce0 43 42 44 62 79 34 78 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 CBDby4xFzAVBgNVBAMTDkRTVCBSb290I
143d00 45 4e 42 49 46 67 7a 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 ENBIFgzMB4X.DTAwMDkzMDIxMTIxOVoX
143d20 44 54 49 78 4d 44 6b 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 DTIxMDkzMDE0MDExNVowPzEkMCIGA1UE
143d40 43 68 4d 62 52 47 6c 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 ChMbRGlnaXRhbCBTaWduYXR1.cmUgVHJ
143d60 31 63 33 51 67 51 32 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 1c3QgQ28uMRcwFQYDVQQDEw5EU1QgUm9
143d80 76 64 43 42 44 51 53 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 vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQE
143da0 42 42 51 41 44 0a 67 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 BBQAD.ggEPADCCAQoCggEBAN+v6ZdQCI
143dc0 4e 58 74 4d 78 69 5a 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 NXtMxiZfaQguzH0yxrMMpb7NnDfcdAwR
143de0 67 55 69 2b 44 6f 4d 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 gUi+DoM3ZJKuM/IUmT.rE4Orz5Iy2Xu/
143e00 4e 4d 68 44 32 58 53 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 NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67
143e20 58 4d 75 65 67 77 47 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 XMuegwGMoOifooUMM0RoOEqOLl5CjH9.
143e40 55 4c 32 41 5a 64 2b 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 UL2AZd+3UWODyOKIYepLYYHsUmu5ouJL
143e60 47 69 69 66 53 4b 4f 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 GiifSKOeDNoJjj4XLh7dIN9bxiqKqy69
143e80 63 4b 33 46 43 78 6f 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 cK3FCxolkHRy.xXtqqzTWMIn/5WgTe1Q
143ea0 4c 79 4e 61 75 37 46 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 LyNau7Fqckh49ZLOMxt+/yUFw7BZy1Sb
143ec0 73 4f 46 55 35 51 39 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 sOFU5Q9D8/RhcQPGX69Wam40d.utoluc
143ee0 62 59 33 38 45 56 41 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 bY38EVAjqr2m7xPi71XAicPNaDaeQQmx
143f00 6b 71 74 69 6c 58 34 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 kqtilX4+U9m5/wAl0CAwEAAaNCMEAwDw
143f20 59 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 YDVR0T.AQH/BAUwAwEB/zAOBgNVHQ8BA
143f40 66 38 45 42 41 4d 43 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 f8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7L
143f60 48 48 36 32 2b 46 4c 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 HH62+FLkHX/xBVghYkQ.MA0GCSqGSIb3
143f80 44 51 45 42 42 51 55 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 DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3
143fa0 4f 72 2b 44 78 7a 39 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 Or+Dxz9LwwmglSBd49lZRNI+DT69ikug
143fc0 0a 64 42 2f 4f 45 49 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 .dB/OEIKcdBodfpga3csTS7MgROSR6cz
143fe0 38 66 61 58 62 61 75 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 8faXbauX+5v3gTt23ADq1cEmv8uXrAvH
144000 52 41 6f 73 5a 79 35 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 RAosZy5Q6XkjE.GB5YGV8eAlrwDPGxra
144020 6e 63 57 59 61 4c 62 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 ncWYaLbumR9YbK+rlmM6pZW87ipxZzR8
144040 73 72 7a 4a 6d 77 4e 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 srzJmwN0jP41ZL9c8PDHIyh8bw.RLtTc
144060 6d 31 44 39 53 5a 49 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 m1D9SZImlJnt1ir/md2cXjbDaJWFBM5J
144080 44 47 46 6f 71 67 43 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 DGFoqgCWjBH4d1QB7wCCZAA62RjYJsWv
1440a0 49 6a 4a 45 75 62 53 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 IjJEubS.fZGL+T0yjWW06XyxV3bqxbYo
1440c0 4f 62 38 56 5a 52 7a 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 Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK
1440e0 37 70 32 43 4e 54 55 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 7p2CNTUQ.-----END.CERTIFICATE---
144100 2d 2d 0a 0a 44 53 54 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 --..DST.ACES.CA.X6.=============
144120 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
144140 49 45 43 54 43 43 41 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 IECTCCAvGgAwIBAgIQDV6ZCtadt3js2A
144160 64 57 4f 34 59 56 32 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 dWO4YV2TANBgkqhkiG9w0BAQUFADBbMQ
144180 73 77 43 51 59 44 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 52 swCQYDVQQG.EwJVUzEgMB4GA1UEChMXR
1441a0 47 6c 6e 61 58 52 68 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 GlnaXRhbCBTaWduYXR1cmUgVHJ1c3QxE
1441c0 54 41 50 42 67 4e 56 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 TAPBgNVBAsTCERTVCBBQ0VT.MRcwFQYD
1441e0 56 51 51 44 45 77 35 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 VQQDEw5EU1QgQUNFUyBDQSBYNjAeFw0w
144200 4d 7a 45 78 4d 6a 41 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 MzExMjAyMTE5NThaFw0xNzExMjAyMTE5
144220 4e 54 68 61 0a 4d 46 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 NTha.MFsxCzAJBgNVBAYTAlVTMSAwHgY
144240 44 56 51 51 4b 45 78 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 DVQQKExdEaWdpdGFsIFNpZ25hdHVyZSB
144260 55 63 6e 56 7a 64 44 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 UcnVzdDERMA8GA1UE.CxMIRFNUIEFDRV
144280 4d 78 46 7a 41 56 42 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 MxFzAVBgNVBAMTDkRTVCBBQ0VTIENBIF
1442a0 67 32 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 0a 41 g2MIIBIjANBgkqhkiG9w0BAQEFAAOC.A
1442c0 51 38 41 4d 49 49 42 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 Q8AMIIBCgKCAQEAuT31LMmU3HWKlV1j6
1442e0 49 52 33 64 6d 61 35 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 IR3dma5WZFcRt2SPp/5DgO0PWGSvSMmt
144300 57 50 75 6b 74 4b 65 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 WPuktKe1jzI.DZBfZIGxqAgNTNj50wUo
144320 55 72 51 42 4a 63 57 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 UrQBJcWVHAx+PhCEdc/BGZFjz+iokYi5
144340 51 31 4b 37 67 4c 46 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 Q1K7gLFViYsx+tC3dr5BPTCa.pCIlF3P
144360 6f 48 75 4c 54 72 43 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 oHuLTrCq9Wzgh1SpL11V94zpVvddtawJ
144380 58 61 2b 5a 48 66 41 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 Xa+ZHfAjIgrrep4c9oW24MFbCswKBXy3
1443a0 31 34 70 6f 77 0a 47 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 14pow.GCi4ZtPLAZZv6opFVdbgnf9nKx
1443c0 63 43 70 6b 34 61 61 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 cCpk4aahELfrd755jWjHZvwTvbUJN+5d
1443e0 43 4f 48 7a 65 34 76 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 COHze4vbrGn2zpfDPy.MjwmR/onJALJf
144400 68 31 62 69 45 49 54 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 h1biEITajV8fTXpLmaRcpPVMibEdPVTo
144420 37 4e 64 6d 76 59 4a 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 7NdmvYJywIDAQABo4HIMIHFMA8GA1Ud.
144440 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 48 2f 42 41 51 44 EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD
144460 41 67 48 47 4d 42 38 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 AgHGMB8GA1UdEQQYMBaBFHBraS1vcHNA
144480 64 48 4a 31 63 33 52 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 dHJ1c3Rkc3Qu.Y29tMGIGA1UdIARbMFk
1444a0 77 56 77 59 4b 59 49 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 wVwYKYIZIAWUDAgEBATBJMEcGCCsGAQU
1444c0 46 42 77 49 42 46 6a 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 FBwIBFjtodHRwOi8vd3d3LnRy.dXN0ZH
1444e0 4e 30 4c 6d 4e 76 62 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 N0LmNvbS9jZXJ0aWZpY2F0ZXMvcG9saW
144500 4e 35 4c 30 46 44 52 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 N5L0FDRVMtaW5kZXguaHRtbDAdBgNVHQ
144520 34 45 46 67 51 55 0a 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 4EFgQU.CXIGThhDD+XWzMNqizF7eI+og
144540 37 67 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 50 59 6a 7gwDQYJKoZIhvcNAQEFBQADggEBAKPYj
144560 74 61 79 32 38 34 46 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 tay284F5zLNAdMEA+V2.5FYrnJmQ6Agw
144580 62 4e 39 39 50 65 37 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 bN99Pe7lv7UkQIRJ4dEorsTCOlMwiPH1
1445a0 64 32 35 52 79 76 72 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 d25Ryvr/ma8kXxug/fKshMrfqfBfBC6t
1445c0 0a 46 72 38 68 6c 78 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 .Fr8hlxCBPeP/h40y3JTlR4peahPJlJU
1445e0 39 30 75 37 49 4e 4a 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 90u7INJXQgNStMgiAVDzgvVJT11J8smk
144600 2f 66 33 72 50 61 6e 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 /f3rPanTK+gQq.nExaBqXpIK1FZg9p8d
144620 32 2f 36 65 4d 79 69 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 2/6eMyi/rgwYZNcjwu2JN4Cir42NInPR
144640 6d 4a 58 31 70 37 69 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 mJX1p7ijvMDNpRrscL9yuwNwXs.vFcj4
144660 6a 6a 53 6d 32 6a 7a 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 jjSm2jzVhKIT0J8uDHEtdvkyCE06UgRN
144680 65 37 36 78 35 4a 58 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 e76x5JXxZ805Mf29w4LTJxoeHtxMcfrH
1446a0 75 42 6e 51 66 4f 33 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 uBnQfO3.oKfN5XozNmr6mis=.-----EN
1446c0 44 20 43 45 52 54 49 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 D.CERTIFICATE-----..TURKTRUST.Ce
1446e0 72 74 69 66 69 63 61 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 rtificate.Services.Provider.Root
144700 20 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 3d .2.=============================
144720 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
144740 54 49 46 49 43 41 54 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 TIFICATE-----.MIIEPDCCAySgAwIBAg
144760 49 42 41 54 41 4e 42 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 IBATANBgkqhkiG9w0BAQUFADCBvjE/MD
144780 30 47 41 31 55 45 41 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 0GA1UEAww2VMOcUktUUlVTVCBF.bGVrd
1447a0 48 4a 76 62 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 HJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU
1447c0 32 48 45 6e 32 78 68 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 2HEn2xhecSxY8Sxc8SxMQswCQYDVQQGE
1447e0 77 4a 55 55 6a 45 50 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 wJUUjEP.MA0GA1UEBwwGQW5rYXJhMV0w
144800 57 77 59 44 56 51 51 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 WwYDVQQKDFRUw5xSS1RSVVNUIEJpbGdp
144820 49 4d 53 77 62 47 56 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 IMSwbGV0acWfaW0gdmUg.QmlsacWfaW0
144840 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 47 56 79 61 53 42 gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSB
144860 42 4c 73 57 65 4c 69 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 BLsWeLiAoYykgS2FzxLFtIDIwMDUwHhc
144880 4e 0a 4d 44 55 78 4d 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 N.MDUxMTA3MTAwNzU3WhcNMTUwOTE2MT
1448a0 41 77 4e 7a 55 33 57 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 AwNzU3WjCBvjE/MD0GA1UEAww2VMOcUk
1448c0 74 55 55 6c 56 54 56 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 tUUlVTVCBFbGVr.dHJvbmlrIFNlcnRpZ
1448e0 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 63 mlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc
144900 38 53 78 4d 51 73 77 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 8SxMQswCQYDVQQGEwJUUjEPMA0G.A1UE
144920 42 77 77 47 51 57 35 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 BwwGQW5rYXJhMV0wWwYDVQQKDFRUw5xS
144940 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 63 57 66 61 57 30 67 S1RSVVNUIEJpbGdpIMSwbGV0acWfaW0g
144960 64 6d 55 67 51 6d 6c 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 dmUgQmls.acWfaW0gR8O8dmVubGnEn2k
144980 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 59 79 6b 67 53 32 46 gSGl6bWV0bGVyaSBBLsWeLiAoYykgS2F
1449a0 7a 78 4c 46 74 49 44 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 zxLFtIDIwMDUwggEiMA0G.CSqGSIb3DQ
1449c0 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 70 4e 6e 37 44 6b 55 EBAQUAA4IBDwAwggEKAoIBAQCpNn7DkU
1449e0 4e 4d 77 78 6d 59 43 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 NMwxmYCMjHWHtPFoylzkkBH3MOrHUTpv
144a00 71 65 0a 4c 43 44 65 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 qe.LCDe2JAOCtFp0if7qnefJ1Il4std2
144a20 4e 69 44 55 42 64 39 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 NiDUBd9irWCPwSOtNXwSadktx4uXyCcU
144a40 48 56 50 72 2b 47 31 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 HVPr+G1QRT0mJKI.x+XlZEdhR3n9wFHx
144a60 77 5a 6e 6e 33 4d 35 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 wZnn3M5q+6+1ATDcRhzviuyV79z/rxAc
144a80 36 35 33 59 73 4b 70 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 653YsKpqhRgNF8k+v/Gb0AmJQv2g.QrS
144aa0 64 69 56 46 56 4b 63 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 diVFVKc8bcLyEVK3BEx+Y9C52YItdP5q
144ac0 74 79 67 79 2f 70 31 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 tygy/p1Zbj3e41Z55SZI/4PGXJHpsmxc
144ae0 50 62 65 39 54 6d 4a 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 Pbe9TmJEr.5A++WXkHeLuXlfSfadRYhw
144b00 71 70 34 38 79 32 57 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 qp48y2WBmfJiGxxFmNskF1wK1pzpwACP
144b20 49 32 2f 7a 37 77 6f 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 I2/z7woQ8arBT9pmAPAgMB.AAGjQzBBM
144b40 42 30 47 41 31 55 64 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 B0GA1UdDgQWBBTZN7NOBf3Zz58SFq62i
144b60 53 2f 72 4a 54 71 49 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 S/rJTqIHDAPBgNVHQ8BAf8EBQMDBwYAM
144b80 41 38 47 0a 41 31 55 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 A8G.A1UdEwEB/wQFMAMBAf8wDQYJKoZI
144ba0 68 76 63 4e 41 51 45 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 hvcNAQEFBQADggEBAHJglrfJ3NgpXiOF
144bc0 58 37 4b 7a 4c 58 62 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 X7KzLXb7iNcX/ntt.Rbj2hWyfIvwqECL
144be0 73 71 72 6b 77 39 71 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 sqrkw9qtY1jkQMZkpAL2JZkH7dN6RwRg
144c00 4c 6e 37 56 68 79 35 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 Ln7Vhy506vvWolKMiVW4XSf/SKfE4.Jl
144c20 33 76 70 61 6f 36 2b 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 3vpao6+XF75tpYHdN0wgH6PmlYX63LaL
144c40 34 55 4c 70 74 73 77 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 4ULptswLbcoCb6dxriJNoaN+BnrdFzgw
144c60 32 6c 47 68 31 75 45 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 2lGh1uEpJ+.hGIAF728JRhX8tepb1mIv
144c80 44 53 33 4c 6f 56 34 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 DS3LoV4nZbcFMMsilKbloxSZj2GFotHu
144ca0 46 45 4a 6a 4f 70 39 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 FEJjOp9zYhys2AzsfAKRO8P.9Qk3iCQO
144cc0 4c 47 73 67 4f 71 4c 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 LGsgOqL6EfJANZxEaGM7rDNvY7wsu/LS
144ce0 79 33 5a 39 66 59 6a 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 y3Z9fYjYHcgFHW68lKlmjHdxx/qR+i9R
144d00 6e 75 6b 35 0a 55 72 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 nuk5.UrbnBEI=.-----END.CERTIFICA
144d20 54 45 2d 2d 2d 2d 2d 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 TE-----..SwissSign.Gold.CA.-.G2.
144d40 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
144d60 4e 20 43 45 52 54 49 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 N.CERTIFICATE-----.MIIFujCCA6KgA
144d80 77 49 42 41 67 49 4a 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 wIBAgIJALtAHEP1Xk+wMA0GCSqGSIb3D
144da0 51 45 42 42 51 55 41 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 QEBBQUAMEUxCzAJBgNVBAYTAkNIMRUw.
144dc0 45 77 59 44 56 51 51 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 EwYDVQQKEwxTd2lzc1NpZ24gQUcxHzAd
144de0 42 67 4e 56 42 41 4d 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 BgNVBAMTFlN3aXNzU2lnbiBHb2xkIENB
144e00 49 43 30 67 52 7a 49 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 IC0gRzIwHhcN.MDYxMDI1MDgzMDM1Whc
144e20 4e 4d 7a 59 78 4d 44 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 NMzYxMDI1MDgzMDM1WjBFMQswCQYDVQQ
144e40 47 45 77 4a 44 53 44 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 GEwJDSDEVMBMGA1UEChMMU3dp.c3NTaW
144e60 64 75 49 45 46 48 4d 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 duIEFHMR8wHQYDVQQDExZTd2lzc1NpZ2
144e80 34 67 52 32 39 73 5a 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 4gR29sZCBDQSAtIEcyMIICIjANBgkqhk
144ea0 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 45 41 72 iG9w0B.AQEFAAOCAg8AMIICCgKCAgEAr
144ec0 2b 54 75 66 6f 73 6b 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 +TufoskDhJuqVAtFkQ7kpJcyrhdhJJCE
144ee0 79 71 38 5a 56 65 43 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 yq8ZVeCQD5XJM1QiyUq.t2/876LQwB8C
144f00 4a 45 6f 54 6c 6f 38 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 JEoTlo8jE+YoWACjR8cGp4QjK7u9lit/
144f20 56 63 79 4c 77 56 63 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 VcyLwVcfDmJlD909Vopz2q5+bbqBHH5C
144f40 0a 6a 43 41 31 32 55 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 .jCA12UNNhPqE21Is8w4ndwtrvxEvcni
144f60 66 4c 74 67 2b 35 68 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 fLtg+5hg3Wipy+dpikJKVyh+c6bM8K8v
144f80 7a 41 52 4f 2f 57 73 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 zARO/Ws/BtQpg.vd21mWRTuKCWs2/iJn
144fa0 65 52 6a 4f 42 69 45 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 eRjOBiEAKfNA+k1ZIzUd6+jbqEemA8at
144fc0 75 66 4b 2b 7a 65 33 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 ufK+ze3gE/bk3lUIbLtK/tREDF.ylqM2
144fe0 74 49 72 66 4b 6a 75 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 tIrfKjuvqblCqoOpd8FUrdVxyJdMmqXl
145000 32 4d 54 32 38 6e 62 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 2MT28nbeTZ7hTpKxVKJ+STnnXepgv9VH
145020 4b 56 78 61 53 76 52 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 KVxaSvR.AiTysybUa9oEVeXBCsdtMDeQ
145040 4b 75 53 65 46 44 4e 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 KuSeFDNeFhdVxVu1yzSJkvGdJo+hB9TG
145060 73 6e 68 51 32 77 77 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 snhQ2wwMC3wLjEHXuend.jIj3o02yMsz
145080 59 46 39 72 4e 74 38 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 YF9rNt85mndT9Xv+9lz4pded+p2JYryU
1450a0 30 70 55 48 48 50 62 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 0pUHHPbwNUMoDAw8IWh+Vc3hiv69yFGk
1450c0 4f 0a 70 65 55 44 44 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 O.peUDDniOJihC8AcLYiAQZzlG+qkDzA
1450e0 51 34 65 6d 62 76 49 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 Q4embvIIO1jEpWjpEA/I5cgt6IoMPiaG
145100 35 39 6a 65 38 38 33 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 59je883WX0XaxR.7ySArqpWl2/5rX3aY
145120 54 2b 59 64 7a 79 6c 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 T+YdzylkbYcjCbaZaIJbcHiVOO5ykxMg
145140 49 39 33 65 32 43 61 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 I93e2CaHt+28kgeDrpOVG2Y4OGi.GqJ3
145160 55 4d 2f 45 59 35 4c 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 UM/EY5LsRxmd6+ZrzsECAwEAAaOBrDCB
145180 71 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 30 54 qTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0T
1451a0 41 51 48 2f 42 41 55 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 AQH/BAUw.AwEB/zAdBgNVHQ4EFgQUWyV
1451c0 37 6c 71 52 6c 55 58 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 7lqRlUX64OfPAeGZe6Drn8O4wHwYDVR0
1451e0 6a 42 42 67 77 46 6f 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 jBBgwFoAUWyV7lqRlUX64.OfPAeGZe6D
145200 72 6e 38 4f 34 77 52 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 rn8O4wRgYDVR0gBD8wPTA7BglghXQBWQ
145220 45 43 41 51 45 77 4c 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 ECAQEwLjAsBggrBgEFBQcCARYgaHR0cD
145240 6f 76 0a 4c 33 4a 6c 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 ov.L3JlcG9zaXRvcnkuc3dpc3NzaWduL
145260 6d 4e 76 62 53 38 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 mNvbS8wDQYJKoZIhvcNAQEFBQADggIBA
145280 43 65 36 34 35 52 38 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 Ce645R88a7A3hfm.5djV9VSwg/S7zV4F
1452a0 65 30 2b 66 64 57 61 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 e0+fdWavPOhWfvxyeDgD2StiGwC5+Olg
1452c0 7a 63 7a 4f 55 59 72 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 zczOUYrHUDFu4Up+GC9pWbY9ZIEr.44O
1452e0 45 35 69 4b 48 6a 6e 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 E5iKHjn3g7gKZYbge9LgriBIWhMIxkzi
145300 57 4d 61 61 35 4f 31 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 WMaa5O1M/wySTVltpkuzFwbs4AOPsF6m
145320 34 33 4d 64 38 41 59 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 43Md8AYOf.Mke6UiI0HTJ6CVanfCU2qT
145340 31 4c 32 73 43 43 62 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 1L2sCCbwq7EsiHSycR+R4tx5M/nttfJm
145360 74 53 32 53 36 4b 38 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 tS2S6K8RTGRI0Vqbe/vd6m.Gu6uLftId
145380 78 66 2b 75 2b 79 76 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 xf+u+yvGPUqUfA5hJeVbG4bwyvEdGB5J
1453a0 62 41 4b 4a 39 2f 66 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 bAKJ9/fXtI5z0V9QkvfsywexcZdylU6o
1453c0 4a 78 70 0a 6d 6f 2f 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 Jxp.mo/a77KwPJ+HbBIrZXAVUjEaJM9v
1453e0 4d 53 4e 51 48 34 78 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 MSNQH4xPjyPDdEFjHFWoFN0+4FFQz/Eb
145400 4d 46 59 4f 6b 72 43 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 MFYOkrCChdiDyyJk.vC24JdVUorgG6q2
145420 53 70 43 53 67 77 59 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 SpCSgwYa1ShNqR88uC1aVVMvOmttqtKa
145440 79 32 30 45 49 68 69 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 y20EIhid392qgQmwLOM7XdVAyksLf.Kz
145460 41 69 53 4e 44 56 51 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 AiSNDVQTglXaTpXZ/GlHXQRf0wl0OPkK
145480 73 4b 78 34 5a 7a 59 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 sKx4ZzYEppLd6leNcG2mqeSz53OiATIg
1454a0 48 51 76 32 69 65 59 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 HQv2ieY2Br.NU0LbbqhPcCT4H8js1Wtc
1454c0 69 56 4f 52 76 6e 53 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 iVORvnSFu+wZMEBnunKoGqYDs/YYPIvS
1454e0 62 6a 6b 51 75 45 34 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 bjkQuE4NRb0yG5P94FW6Lqj.viOvrv1v
145500 41 2b 41 43 4f 7a 42 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 A+ACOzB2+httQc8Bsem4yWb02ybzOqR0
145520 38 6b 6b 6b 57 38 6d 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 8kkkW8mw0FfB+j564ZfJ.-----END.CE
145540 52 54 49 46 49 43 41 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 RTIFICATE-----..SwissSign.Silver
145560 20 43 41 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 .CA.-.G2.=======================
145580 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
1455a0 49 46 76 54 43 43 41 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 IFvTCCA6WgAwIBAgIITxvUL1S7L0swDQ
1455c0 59 4a 4b 6f 5a 49 68 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 YJKoZIhvcNAQEFBQAwRzELMAkGA1UEBh
1455e0 4d 43 51 30 67 78 46 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 MCQ0gxFTAT.BgNVBAoTDFN3aXNzU2lnb
145600 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 4e 54 61 57 64 75 49 iBBRzEhMB8GA1UEAxMYU3dpc3NTaWduI
145620 46 4e 70 62 48 5a 6c 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 FNpbHZlciBDQSAtIEcyMB4X.DTA2MTAy
145640 4e 54 41 34 4d 7a 49 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 NTA4MzI0NloXDTM2MTAyNTA4MzI0Nlow
145660 52 7a 45 4c 4d 41 6b 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 RzELMAkGA1UEBhMCQ0gxFTATBgNVBAoT
145680 44 46 4e 33 0a 61 58 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 DFN3.aXNzU2lnbiBBRzEhMB8GA1UEAxM
1456a0 59 55 33 64 70 63 33 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 YU3dpc3NTaWduIFNpbHZlciBDQSAtIEc
1456c0 79 4d 49 49 43 49 6a 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 yMIICIjANBgkqhkiG.9w0BAQEFAAOCAg
1456e0 38 41 4d 49 49 43 43 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 8AMIICCgKCAgEAxPGHf9N4Mfc4yfjDmU
145700 4f 38 78 2f 65 38 4e 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 O8x/e8N+dOcbpLj6VzHVxumK4DV644.N
145720 30 4d 76 46 7a 30 66 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 0MvFz0fyM5oEMF4rhkDKxD6LHmD9ui5a
145740 4c 6c 56 38 67 52 45 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 LlV8gREpzn5/ASLHvGiTSf5YXu6t+WiE
145760 37 62 72 59 54 37 51 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 7brYT7QbNHm.+/pe7R20nqA1W6GSy/BJ
145780 6b 76 36 46 43 67 55 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 kv6FCgU+5tkL4k+73JU3/JHpMjUi0R86
1457a0 54 69 65 46 6e 62 41 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 TieFnbAVlDLaYQ1HTWBCrpJH.6INaUFj
1457c0 70 69 6f 75 35 58 61 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 piou5XaHc3ZlKHzZnu0jkg7Y360g6rw9
1457e0 6e 6a 78 63 48 36 41 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 njxcH6ATK72oxh9TAtvmUcXtnZLi2kUp
145800 43 65 32 55 75 0a 4d 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 Ce2Uu.MGoM9ZDulebyzYLs2aFK7PayS+
145820 56 46 68 65 5a 74 65 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 VFheZteJMELpyCbTapxDFkH4aDCyr0NQ
145840 70 34 79 56 58 50 51 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 p4yVXPQbBH6TCfmb5h.qAaEuSh6XzjZG
145860 36 6b 34 73 49 4e 2f 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 6k4sIN/c8HDO0gqgg8hm7jMqDXDhBuDs
145880 7a 36 2b 70 4a 56 70 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 z6+pJVpATqJAHgE2cn0mRmrVn5bi4Y5.
1458a0 46 5a 47 6b 45 43 77 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 FZGkECwJMoBgs5PAKrYYC51+jUnyEEp/
1458c0 2b 64 56 47 4c 78 6d 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 +dVGLxmSo5mnJqy7jDzmDrxHB9xzUfFw
1458e0 5a 43 38 49 2b 62 52 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 ZC8I+bRHHTBs.ROopN4WSaGa8gzj+ezk
145900 75 30 31 44 77 48 2f 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 u01DwH/teYLappvonQfGbGHLy9YR0Ssl
145920 6e 78 46 53 75 53 47 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 nxFSuSGTfjNFusB3hB48IHpmc.celM2K
145940 58 33 52 78 49 66 64 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 X3RxIfdNFRnobzwqIjQAtz20um53MGjM
145960 47 67 36 63 46 5a 72 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 Gg6cFZrEb65i/4z3GcRm25xBWNOHkDRU
145980 6a 76 78 46 33 58 0a 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 jvxF3X.CO6HOSKGsg0PWEP3calILv3q1
1459a0 68 38 43 41 77 45 41 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 h8CAwEAAaOBrDCBqTAOBgNVHQ8BAf8EB
1459c0 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 2f 7a 41 64 AMCAQYwDwYDVR0TAQH/.BAUwAwEB/zAd
1459e0 42 67 4e 56 48 51 34 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 BgNVHQ4EFgQUF6DNweRBtjpbO8tFnb0c
145a00 77 70 6a 36 68 6c 67 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 wpj6hlgwHwYDVR0jBBgwFoAUF6DNweRB
145a20 0a 74 6a 70 62 4f 38 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 .tjpbO8tFnb0cwpj6hlgwRgYDVR0gBD8
145a40 77 50 54 41 37 42 67 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 wPTA7BglghXQBWQEDAQEwLjAsBggrBgE
145a60 46 42 51 63 43 41 52 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 FBQcCARYgaHR0.cDovL3JlcG9zaXRvcn
145a80 6b 75 63 33 64 70 63 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 kuc3dpc3NzaWduLmNvbS8wDQYJKoZIhv
145aa0 63 4e 41 51 45 46 42 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 cNAQEFBQADggIBAHPGgeAn0i0P.4JUw4
145ac0 70 70 42 66 31 41 73 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 ppBf1AsX19iYamGamkYDHRJ1l2E6kFSG
145ae0 47 39 59 72 56 42 57 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 G9YrVBWIGrGvShpWJHckRE1qTodvBqlY
145b00 4a 37 59 48 33 39 46 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 J7YH39F.kWnZfrt4csEGDyrOj4VwYayg
145b20 7a 51 75 34 4f 53 6c 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 zQu4OSlWhDJOhrs9xCrZ1x9y7v5RoSJB
145b40 73 58 45 43 59 78 71 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 sXECYxqCsGKrXlcSH9/L.3XWgwF15kIw
145b60 62 34 46 44 6d 33 6a 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 b4FDm3jH+mHtwX6WQ2K34ArZv02DdQEs
145b80 69 78 54 32 74 4f 6e 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 ixT2tOnqfGhpHkXkzuoLcMmkDlm4fS/B
145ba0 78 0a 2f 75 4e 6e 63 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 x./uNncqCxv1yL5PqZIseEuRuNI5c/7S
145bc0 58 67 7a 32 57 37 39 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 Xgz2W79WEE790eslpBIlqhn10s6FvJba
145be0 6b 4d 44 48 69 71 59 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 kMDHiqYMZWjwFa.DGi8aRl5xB9+lwW/x
145c00 65 6b 6b 55 56 37 55 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 ekkUV7U1UtT7dkjWjYDZaPBA61BMPNGG
145c20 34 57 51 72 32 57 31 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 4WQr2W11bHkFlt4dR2Xem1ZqSqP.e97D
145c40 68 34 6b 51 6d 55 6c 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 h4kQmUlzeMg9vVE1dCrV8X5pGyq7O70l
145c60 75 4a 70 61 50 58 4a 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 uJpaPXJhkGaH7gzWTdQRdAtq/gsD/KNV
145c80 56 34 6e 2b 53 73 75 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 V4n+Ssuu.WxcFyPKNIzFTONItaj+CuY0
145ca0 49 61 76 64 65 51 58 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 IavdeQXRuwxF+B6wpYJE/OMpXEA29MC/
145cc0 48 70 65 5a 42 6f 4e 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 HpeZBoNquBYeaoKRlbEwJ.DIm6uNO5wJ
145ce0 4f 4b 4d 50 71 4e 35 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 OKMPqN5ZprFQFOZ6raYlY+hAhm0sQ2fa
145d00 63 2b 45 50 79 49 34 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 c+EPyI4NSA5QC9qvNOBqN6avlicuMJT+
145d20 75 62 0a 44 67 45 6a 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 ub.DgEj8Z+7fNzcbBGXJbLytGMU0gYqZ
145d40 34 79 44 39 63 37 71 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 4yD9c7qB9iaah7s5Aq7KkzrCWA5zspi2
145d60 43 35 75 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 C5u.-----END.CERTIFICATE-----..G
145d80 65 6f 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 eoTrust.Primary.Certification.Au
145da0 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 3d 3d 3d thority.========================
145dc0 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
145de0 49 46 49 43 41 54 45 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 IFICATE-----.MIIDfDCCAmSgAwIBAgI
145e00 51 47 4b 79 31 61 76 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 QGKy1av1pthU6Y2yv2vrEoTANBgkqhki
145e20 47 39 77 30 42 41 51 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 G9w0BAQUFADBYMQswCQYDVQQG.EwJVUz
145e40 45 57 4d 42 51 47 41 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 EWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLj
145e60 45 78 4d 43 38 47 41 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 ExMC8GA1UEAxMoR2VvVHJ1c3QgUHJpbW
145e80 46 79 65 53 42 44 0a 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 FyeSBD.ZXJ0aWZpY2F0aW9uIEF1dGhvc
145ea0 6d 6c 30 65 54 41 65 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 ml0eTAeFw0wNjExMjcwMDAwMDBaFw0zN
145ec0 6a 41 33 4d 54 59 79 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 jA3MTYyMzU5NTlaMFgx.CzAJBgNVBAYT
145ee0 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 4a AlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJ
145f00 62 6d 4d 75 4d 54 45 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 bmMuMTEwLwYDVQQDEyhHZW9UcnVzdCBQ
145f20 0a 63 6d 6c 74 59 58 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 .cmltYXJ5IENlcnRpZmljYXRpb24gQXV
145f40 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 45 0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQE
145f60 46 41 41 4f 43 41 51 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 FAAOCAQ8AMIIB.CgKCAQEAvrgVe//UfH
145f80 31 6e 72 59 4e 6b 65 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 1nrYNke8hCUy3f9oQIIGHWAVlqnEQRr+
145fa0 39 32 2f 5a 56 2b 7a 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 92/ZV+zmEwu3qDXwK9AWbK7hWN.b6Ewn
145fc0 4c 32 68 68 5a 36 55 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 L2hhZ6UOvNWiAAxz9juapYC2e0DjPt1b
145fe0 65 66 71 75 46 55 57 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 efquFUWBRaa9OBesYjAZIVcFU2Ix7e64
146000 48 58 70 72 51 55 39 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 HXprQU9.nceJSOC7KMgD4TCTZF5SwFlw
146020 49 6a 56 58 69 49 72 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 IjVXiIrxlQqD17wxcwE07e9GceBrAqg1
146040 63 6d 75 58 6d 32 62 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 cmuXm2bgyxx5X9gaBGge.RwLmnWDiNpc
146060 42 33 38 34 31 6b 74 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 B3841kt++Z8dtd1k7j53WkBWUvEI0EME
146080 35 2b 62 45 6e 50 6e 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 5+bEnPn7WinXFsq+W06Lem+SYvn3h6YG
1460a0 74 0a 74 6d 2f 38 31 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 t.tm/81w7a4DSwDRp35+MImO9Y+pyEtz
1460c0 61 76 77 74 2b 73 30 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 avwt+s0vQQBnBxNQIDAQABo0IwQDAPBg
1460e0 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 45 42 2f NVHRMBAf8EBTAD.AQH/MA4GA1UdDwEB/
146100 77 51 45 41 77 49 42 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 wQEAwIBBjAdBgNVHQ4EFgQULNVQQZcVi
146120 2f 43 50 4e 6d 46 62 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 /CPNmFbSvtr2ZnJM5IwDQYJKoZI.hvcN
146140 41 51 45 46 42 51 41 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 AQEFBQADggEBAFpwfyzdtzRP9YZRqSa+
146160 53 37 69 71 38 58 45 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 S7iq8XEN3GHHoOo0Hnp3DwQ16CePbJC/
146180 6b 52 59 6b 52 6a 35 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 kRYkRj5K.Ts4rFtULUh38H2eiAkUxT87
1461a0 7a 2b 67 4f 6e 65 5a 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 z+gOneZ1TatnaYzr4gNfTmeGl4b7UVXG
1461c0 59 4e 54 71 2b 6b 2b 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 YNTq+k+qurUKykG/g/CFN.NWMziUnWm0
1461e0 37 4b 78 2b 64 4f 43 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 7Kx+dOCQD32sfvmWKZd7aVIl6KoKv0uH
146200 69 59 79 6a 67 5a 6d 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 iYyjgZmclynnjNS6yvGaBzEi38wkG6gZ
146220 48 61 0a 46 6c 6f 78 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 Ha.Floxt/m0cYASSJlyc1pZU8FjUjPtp
146240 38 6e 53 4f 51 4a 77 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 8nSOQJw+uCxQmYpqptR7TBUIhRf2asdw
146260 65 53 55 38 50 6a 31 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 eSU8Pj1K/fqynhG.1riR/aYNKxoUAT6A
146280 38 45 4b 67 6c 51 64 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 8EKglQdebc3MS6RFjasS6LPeWuWgfOgP
1462a0 49 68 31 61 36 56 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 Ih1a6Vk=.-----END.CERTIFICATE---
1462c0 2d 2d 0a 0a 74 68 61 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 --..thawte.Primary.Root.CA.=====
1462e0 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
146300 54 49 46 49 43 41 54 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 TIFICATE-----.MIIEIDCCAwigAwIBAg
146320 49 51 4e 45 37 56 56 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 IQNE7VVyDV7exJ9C/ON9srbTANBgkqhk
146340 69 47 39 77 30 42 41 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 iG9w0BAQUFADCBqTELMAkGA1UE.BhMCV
146360 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 35 6a 4c VMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jL
146380 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 6c 76 62 jEoMCYGA1UECxMfQ2VydGlmaWNhdGlvb
1463a0 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 44 59 47 iBTZXJ2.aWNlcyBEaXZpc2lvbjE4MDYG
1463c0 41 31 55 45 43 78 4d 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 A1UECxMvKGMpIDIwMDYgdGhhd3RlLCBJ
1463e0 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 64 58 4e bmMuIC0gRm9yIGF1dGhv.cml6ZWQgdXN
146400 6c 49 47 39 75 62 48 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 lIG9ubHkxHzAdBgNVBAMTFnRoYXd0ZSB
146420 51 63 6d 6c 74 59 58 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 QcmltYXJ5IFJvb3QgQ0EwHhcNMDYxMTE
146440 33 0a 4d 44 41 77 4d 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 3.MDAwMDAwWhcNMzYwNzE2MjM1OTU5Wj
146460 43 42 71 54 45 4c 4d 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 CBqTELMAkGA1UEBhMCVVMxFTATBgNVBA
146480 6f 54 44 48 52 6f 59 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 oTDHRoYXd0ZSwg.SW5jLjEoMCYGA1UEC
1464a0 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 61 57 4e 6c 63 xMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlc
1464c0 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 76 0a 4b 47 4d 70 yBEaXZpc2lvbjE4MDYGA1UECxMv.KGMp
1464e0 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 67 52 6d 39 79 IDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9y
146500 49 47 46 31 64 47 68 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 IGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAd
146520 42 67 4e 56 42 41 4d 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 BgNVBAMT.FnRoYXd0ZSBQcmltYXJ5IFJ
146540 76 62 33 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 vb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQU
146560 41 41 34 49 42 44 77 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 AA4IBDwAwggEKAoIBAQCs.oPD7gFnUnM
146580 65 6b 7a 35 32 68 57 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 ekz52hWXMJEEUMDSxuaPFsW0hoSVk3/A
1465a0 73 7a 47 63 4a 33 66 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 szGcJ3f8wQLZU0HObrTQmnHNK4yZc2Ar
1465c0 65 4a 0a 31 43 52 66 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 eJ.1CRfBsDMRJSUjQJib+ta3RGNKJpch
1465e0 4a 41 51 65 67 32 39 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 JAQeg29dGYvajig4tVUROsdB58Hum/u6
146600 66 31 4f 43 79 6e 31 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 f1OCyn1PoSgAfGc.q/gcfomk6KHYcWUN
146620 6f 31 46 37 37 72 7a 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 o1F77rzSImANuVud37r8UVsLr5iy6S7p
146640 42 4f 68 69 68 39 34 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 BOhih94ryNdOwUxkHt3Ph1i6Sk/K.aAc
146660 64 48 4a 31 4b 78 74 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 dHJ1KxtUvkcx8cXIcxcBn6zL9yZJclNq
146680 46 77 4a 75 2f 55 33 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 FwJu/U30rCfSMnZEfl2pSy94JNqR32Hu
1466a0 48 55 45 54 56 50 6d 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 HUETVPm4p.afs5SSYeCaWAe0At6+gnhc
1466c0 6e 2b 59 66 31 2b 35 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 n+Yf1+5nyXHdWdAgMBAAGjQjBAMA8GA1
1466e0 55 64 45 77 45 42 2f 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 UdEwEB/wQFMAMBAf8wDgYD.VR0PAQH/B
146700 41 51 44 41 67 45 47 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 AQDAgEGMB0GA1UdDgQWBBR7W0XPr87Le
146720 76 30 78 6b 68 70 71 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 v0xkhpqtvNG61dIUDANBgkqhkiG9w0BA
146740 51 55 46 0a 41 41 4f 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 QUF.AAOCAQEAeRHAS7ORtvzw6WfUDW5F
146760 76 6c 58 6f 6b 39 4c 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 vlXok9LOAz/t2iWwHVfLHjp2oEzsUHbo
146780 5a 48 49 4d 70 4b 6e 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 ZHIMpKnxuIvW1oeE.uzLlQRHAd9mzYJ3
1467a0 72 47 39 58 52 62 6b 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 rG9XRbkREqaYB7FViHXe4XI5ISXycO1c
1467c0 52 72 4b 31 7a 4e 34 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 RrK1zN44veFyQaEfZYGDm/Ac9IiAX.xP
1467e0 63 57 36 63 54 59 63 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 cW6cTYcvnIc3zfFi8VqT79aie2oetaup
146800 67 66 31 65 4e 4e 5a 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 gf1eNNZAqdE8hhuvU5HIe6uL17In/2/q
146820 78 41 65 65 57 73 45 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 xAeeWsEG89.jxt5dovEN7MhGITlNgDrY
146840 79 43 5a 75 65 6e 2b 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 yCZuen+MwS7QcjBAvlEYyCegc5C09Y/L
146860 48 62 54 59 35 78 5a 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 HbTY5xZ3Y+m4Q6gLkH3LpVH.z7z9M/P2
146880 43 32 46 2b 66 70 45 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 C2F+fpErgUfCJzDupxBdN49cOSvkBPB7
1468a0 6a 56 61 4d 61 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 2d jVaMaA==.-----END.CERTIFICATE---
1468c0 2d 2d 0a 0a 56 65 72 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 --..VeriSign.Class.3.Public.Prim
1468e0 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 35 ary.Certification.Authority.-.G5
146900 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 .===============================
146920 3d 3d 3d 3d 3d 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 =============================.--
146940 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 30 7a ---BEGIN.CERTIFICATE-----.MIIE0z
146960 43 43 41 37 75 67 41 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 CCA7ugAwIBAgIQGNrRniZ96LtKIVjNzG
146980 73 37 53 6a 41 4e 42 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 s7SjANBgkqhkiG9w0BAQUFADCByjELMA
1469a0 6b 47 41 31 55 45 0a 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 kGA1UE.BhMCVVMxFzAVBgNVBAoTDlZlc
1469c0 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 78 5a 57 5a mlTaWduLCBJbmMuMR8wHQYDVQQLExZWZ
1469e0 58 4a 70 55 32 6c 6e 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 XJpU2lnbiBUcnVzdCBO.ZXR3b3JrMTow
146a00 4f 41 59 44 56 51 51 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 OAYDVQQLEzEoYykgMjAwNiBWZXJpU2ln
146a20 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 65 6d 56 6b biwgSW5jLiAtIEZvciBhdXRob3JpemVk
146a40 0a 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 57 5a 58 4a .IHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJ
146a60 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 51 63 6d 6c pU2lnbiBDbGFzcyAzIFB1YmxpYyBQcml
146a80 74 59 58 4a 35 49 45 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 tYXJ5IENlcnRp.ZmljYXRpb24gQXV0aG
146aa0 39 79 61 58 52 35 49 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 9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMD
146ac0 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 0a 79 6a 45 4c 4d AwWhcNMzYwNzE2MjM1OTU5WjCB.yjELM
146ae0 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 6c 5a 6c 63 AkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlc
146b00 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 78 5a 57 5a mlTaWduLCBJbmMuMR8wHQYDVQQLExZWZ
146b20 58 4a 70 55 32 6c 6e 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 XJpU2ln.biBUcnVzdCBOZXR3b3JrMTow
146b40 4f 41 59 44 56 51 51 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 OAYDVQQLEzEoYykgMjAwNiBWZXJpU2ln
146b60 62 69 77 67 53 57 35 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 biwgSW5jLiAtIEZvciBh.dXRob3JpemV
146b80 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 57 5a 58 4a kIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJ
146ba0 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 51 63 6d 6c pU2lnbiBDbGFzcyAzIFB1YmxpYyBQcml
146bc0 74 0a 59 58 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 t.YXJ5IENlcnRpZmljYXRpb24gQXV0aG
146be0 39 79 61 58 52 35 49 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 9yaXR5IC0gRzUwggEiMA0GCSqGSIb3DQ
146c00 45 42 41 51 55 41 41 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 EBAQUAA4IBDwAw.ggEKAoIBAQCvJAgIK
146c20 58 6f 31 6e 6d 41 4d 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 Xo1nmAMqudLO07cfLw8RRy7K+D+KQL5V
146c40 77 69 6a 5a 49 55 56 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 wijZIUVJ/XxrcgxiV0i6CqqpkKz.j/i5
146c60 56 62 65 78 74 30 75 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 Vbext0uz/o9+B1fs70PbZmIVYc9gDaTY
146c80 33 76 6a 67 77 32 49 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 3vjgw2IIPVQT60nKWVSFJuUrjxuf6/Wh
146ca0 6b 63 49 7a 53 64 68 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 kcIzSdhD.Y2pSS9KP6HBRTdGJaXvHcPa
146cc0 7a 33 42 4a 30 32 33 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 z3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmc
146ce0 59 35 66 51 47 42 4f 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 Y5fQGBO+QueQA5N06tRn/.Arr0PO7gi+
146d00 73 33 69 2b 7a 30 31 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 s3i+z016zy9vA9r911kTMZHRxAy3QkGS
146d20 47 54 32 52 54 2b 72 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 GT2RT+rCpSx4/VBEnkjWNHiDxpg8v+R7
146d40 30 72 0a 66 6b 2f 46 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 0r.fk/Fla4OndTRQ8Bnc+MUCH7lP59zu
146d60 44 4d 4b 7a 31 30 2f 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 DMKz10/NIeWiu5T6CUVAgMBAAGjgbIwg
146d80 61 38 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 4f 42 67 4e 56 a8wDwYDVR0TAQH/.BAUwAwEB/zAOBgNV
146da0 48 51 38 42 41 66 38 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 HQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwE
146dc0 59 54 42 66 6f 56 32 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 YTBfoV2gWzBZMFcwVRYJaW1hZ2Uv.Z2l
146de0 6d 4d 43 45 77 48 7a 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 mMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5
146e00 72 77 38 2b 41 61 74 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 rw8+AatRIGCx7GS4wJRYjaHR0cDovL2x
146e20 76 5a 32 38 75 64 6d 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 vZ28udmVy.aXNpZ24uY29tL3ZzbG9nby
146e40 35 6e 61 57 59 77 48 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 5naWYwHQYDVR0OBBYEFH/TZafC3ey78D
146e60 41 4a 38 30 4d 35 2b 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 AJ80M5+gKvMzEzMA0GCSqG.SIb3DQEBB
146e80 51 55 41 41 34 49 42 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 QUAA4IBAQCTJEowX2LP2BqYLz3q3Jktv
146ea0 58 66 32 70 58 6b 69 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 Xf2pXkiOOzEp6B4Eq1iDkVwZMXnl2Ytm
146ec0 41 6c 2b 0a 58 36 2f 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 Al+.X6/WzChl8gGqCBpH3vn5fJJaCGkg
146ee0 44 64 6b 2b 62 57 34 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 Ddk+bW48DW7Y5gaRQBi5+MHt39tBquCW
146f00 49 4d 6e 4e 5a 42 55 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 IMnNZBU4gcmU7qKE.KQsTb47bDN0lAtu
146f20 6b 69 78 6c 45 30 6b 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 kixlE0kF6BWlKWE9gyn6CagsCqiUXObX
146f40 62 66 2b 65 45 5a 53 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 bf+eEZSqVir2G3l6BFoMtEMze/aiC.Km
146f60 30 6f 48 77 30 4c 78 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 0oHw0LxOXnGiYZ4fQRbxC1lfznQgUy28
146f80 36 64 55 56 34 6f 74 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 6dUV4otp6F01vvpX1FQHKOtw5rDgb7Mz
146fa0 56 49 63 62 69 64 4a 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 VIcbidJ4vE.ZV8NhnacRHr2lVz2XTIIM
146fc0 36 52 55 74 68 67 2f 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 6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7
146fe0 57 4e 71 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 WNq.-----END.CERTIFICATE-----..S
147000 65 63 75 72 65 54 72 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 ecureTrust.CA.==============.---
147020 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 75 44 43 --BEGIN.CERTIFICATE-----.MIIDuDC
147040 43 41 71 43 67 41 77 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 CAqCgAwIBAgIQDPCOXAgWpa1Cf/DrJxh
147060 5a 30 44 41 4e 42 67 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 Z0DANBgkqhkiG9w0BAQUFADBIMQswCQY
147080 44 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 DVQQG.EwJVUzEgMB4GA1UEChMXU2VjdX
1470a0 4a 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 46 7a 41 56 42 67 JlVHJ1c3QgQ29ycG9yYXRpb24xFzAVBg
1470c0 4e 56 42 41 4d 54 44 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 NVBAMTDlNlY3VyZVRy.dXN0IENBMB4XD
1470e0 54 41 32 4d 54 45 77 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 TA2MTEwNzE5MzExOFoXDTI5MTIzMTE5N
147100 44 41 31 4e 56 6f 77 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 DA1NVowSDELMAkGA1UEBhMCVVMxIDAe.
147120 42 67 4e 56 42 41 6f 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 BgNVBAoTF1NlY3VyZVRydXN0IENvcnBv
147140 63 6d 46 30 61 57 39 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 cmF0aW9uMRcwFQYDVQQDEw5TZWN1cmVU
147160 63 6e 56 7a 64 43 42 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 cnVzdCBDQTCC.ASIwDQYJKoZIhvcNAQE
147180 42 42 51 41 44 67 67 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 BBQADggEPADCCAQoCggEBAKukgeWVzfX
1471a0 32 46 49 37 43 54 38 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 2FI7CT8rU4niVWJxB4Q2ZQCQX.OZEzZu
1471c0 6d 2b 34 59 4f 76 59 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 m+4YOvYlyJ0fwkW2Gz4BERQRwdbvC4u/
1471e0 6a 65 70 34 47 36 70 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 jep4G6pkjGnx29vo6pQT64lO0pGtSO0g
147200 4d 64 41 2b 39 74 0a 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 MdA+9t.DWccV9cGrcrI9f4Or2YlSASWC
147220 31 32 6a 75 68 62 44 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 12juhbDCE/RRvgUXPLIXgGZbf2IzIaow
147240 57 38 78 51 6d 78 53 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 W8xQmxSPmjL8xk037uH.GFaAJsTQ3MBv
147260 33 39 36 67 77 70 45 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 396gwpEWoGQRS0S8Hvbn+mPeZqx2pHGj
147280 37 44 61 55 61 48 70 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 7DaUaHp3pLHnDi+BeuK1cobvomuL8A/b
1472a0 0a 30 31 6b 2f 75 6e 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 .01k/unK8RCSc43Oz969XL0Imnal0ugB
1472c0 53 38 6b 76 4e 55 33 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 S8kvNU3xHCzaFDmapCJcWNFfBZveA4+1
1472e0 77 56 4d 65 54 34 43 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 wVMeT4C4oFVmH.ursCAwEAAaOBnTCBmj
147300 41 54 42 67 6b 72 42 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 ATBgkrBgEEAYI3FAIEBh4EAEMAQTALBg
147320 4e 56 48 51 38 45 42 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 NVHQ8EBAMCAYYwDwYDVR0TAQH/.BAUwA
147340 77 45 42 2f 7a 41 64 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 wEB/zAdBgNVHQ4EFgQUQjK2FvoE/f5dS
147360 33 72 44 2f 66 64 4d 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 3rD/fdMQB1aQ68wNAYDVR0fBC0wKzApo
147380 43 65 67 4a 59 59 6a 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 CegJYYj.aHR0cDovL2NybC5zZWN1cmV0
1473a0 63 6e 56 7a 64 43 35 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 cnVzdC5jb20vU1RDQS5jcmwwEAYJKwYB
1473c0 42 41 47 43 4e 78 55 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 BAGCNxUBBAMCAQAwDQYJ.KoZIhvcNAQE
1473e0 46 42 51 41 44 67 67 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 FBQADggEBADDtT0rhWDpSclu1pqNlGKa
147400 37 55 54 74 33 36 5a 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 7UTt36Z3q059c4EVlew3KW+JwULKUBRS
147420 75 0a 53 63 65 4e 51 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 u.SceNQQcSc5R+DCMh/bwQf2AQWnL1mA
147440 36 73 37 4c 6c 2f 33 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 6s7Ll/3XpvXdMc9P+IBWlCqQVxyLesJu
147460 67 75 74 49 78 71 2f 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 gutIxq/3HcuLHf.mbx8IVQr5Fiiu1cpr
147480 70 36 70 6f 78 6b 6d 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 p6poxkmD5kuCLDv/WnPmRoJjeOnnyvJN
1474a0 6a 52 37 4a 4c 4e 34 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 jR7JLN4TJUXpAYmHrZkUjZfYGfZ.nMUF
1474c0 64 41 76 6e 5a 79 50 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 dAvnZyPSCPyI6a6Lf+Ew9Dd+/cYy2i2e
1474e0 52 44 41 77 62 4f 34 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 RDAwbO4H3tI0/NL/QPZL9GZGBlSm8jIK
147500 59 79 59 77 61 35 76 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 YyYwa5vR.3ItHuuG51WLQoqD0ZwV4KWM
147520 61 62 77 54 57 2b 4d 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 abwTW+MZMo5qxN7SN5ShLHZ4swrhovO0
147540 43 37 6a 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 C7jE=.-----END.CERTIFICATE-----.
147560 0a 53 65 63 75 72 65 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 .Secure.Global.CA.==============
147580 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
1475a0 49 49 44 76 44 43 43 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 IIDvDCCAqSgAwIBAgIQB1YipOjUiolN9
1475c0 42 50 49 38 50 6a 71 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 BPI8PjqpTANBgkqhkiG9w0BAQUFADBKM
1475e0 51 73 77 43 51 59 44 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 QswCQYDVQQG.EwJVUzEgMB4GA1UEChMX
147600 55 32 56 6a 64 58 4a 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 U2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x
147620 47 54 41 58 42 67 4e 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 GTAXBgNVBAMTEFNlY3VyZSBH.bG9iYWw
147640 67 51 30 45 77 48 68 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 gQ0EwHhcNMDYxMTA3MTk0MjI4WhcNMjk
147660 78 4d 6a 4d 78 4d 54 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 xMjMxMTk1MjA2WjBKMQswCQYDVQQGEwJ
147680 56 55 7a 45 67 0a 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 33 VUzEg.MB4GA1UEChMXU2VjdXJlVHJ1c3
1476a0 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 56 42 41 4d 54 45 46 QgQ29ycG9yYXRpb24xGTAXBgNVBAMTEF
1476c0 4e 6c 59 33 56 79 5a 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 NlY3VyZSBHbG9iYWwg.Q0EwggEiMA0GC
1476e0 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 42 41 SqGSIb3DQEBAQUAA4IBDwAwggEKAoIBA
147700 51 43 76 4e 53 37 59 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 QCvNS7YrGxVaQZx5RNoJLNP2MwhR/jx.
147720 59 44 69 4a 69 51 50 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 YDiJiQPpvepeRlMJ3Fz1Wuj3RSoC6zFh
147740 31 79 6b 7a 54 4d 37 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 1ykzTM7HfAo3fg+6MpjhHZevj8fcyTiW
147760 38 39 73 61 2f 46 48 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 89sa/FHtaMbQ.bqR8JNGuQsiWUGMu4P5
147780 31 2f 70 69 6e 58 30 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 1/pinX0kuleM5M2SOHqRfkNJnPLLZ/kG
1477a0 35 56 61 63 4a 6a 6e 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 5VacJjnIFHovdRIWCQtBJwB1g.8NEXLJ
1477c0 58 72 39 71 58 42 6b 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 Xr9qXBkqPFwqcIYA1gBBCWeZ4WNOaptv
1477e0 6f 6c 52 54 6e 49 48 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 olRTnIHmX5k/Wq8VLcmZg9pYYaDDUz+k
147800 75 6c 42 41 59 56 0a 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 ulBAYV.HDGA76oYa8J719rO+TMg1fW9a
147820 6a 4d 74 67 51 54 37 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 jMtgQT7sFzUnKPiXB3jqUJ1XnvUd+85V
147840 4c 72 4a 43 68 67 62 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 LrJChgbEplJL4hL/VBi.0XPnj3pDAgMB
147860 41 41 47 6a 67 5a 30 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 AAGjgZ0wgZowEwYJKwYBBAGCNxQCBAYe
147880 42 41 42 44 41 45 45 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 BABDAEEwCwYDVR0PBAQDAgGGMA8GA1Ud
1478a0 0a 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 42 59 45 46 4b 39 .EwEB/wQFMAMBAf8wHQYDVR0OBBYEFK9
1478c0 45 42 4d 4a 42 66 6b 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 EBMJBfkiD2045AuzshHrmzsmkMDQGA1U
1478e0 64 48 77 51 74 4d 43 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 dHwQtMCswKaAn.oCWGI2h0dHA6Ly9jcm
147900 77 75 63 32 56 6a 64 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 wuc2VjdXJldHJ1c3QuY29tL1NHQ0EuY3
147920 4a 73 4d 42 41 47 43 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 JsMBAGCSsGAQQBgjcVAQQDAgEA.MA0GC
147940 53 71 47 53 49 62 33 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 SqGSIb3DQEBBQUAA4IBAQBjGghAfaReU
147960 77 31 33 32 48 71 75 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 w132HquHw0LURYD7xh8yOOvaliTFGCRs
147980 6f 54 63 69 45 36 2b 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 oTciE6+.OYo68+aCiV0BN7OrJKQVDpI1
1479a0 57 6b 70 45 58 6b 35 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 WkpEXk5X+nXOH0jOZvQ8QCaSmGwb7iRG
1479c0 44 42 65 7a 55 71 58 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 DBezUqXbpZGRzzfTb+cn.CDpOGR86p1h
1479e0 63 46 38 39 35 50 34 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 cF895P4vkp9MmI50mD1hp/Ed+stCNi5O
147a00 2f 4b 55 39 44 61 58 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 /KU9DaXR2Z0vPB4zmAve14bRDtUstFJ/
147a20 35 0a 33 43 59 4e 76 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 5.3CYNv6ZHdAbYiNE6KTCEztI5gGIbqM
147a40 64 58 53 62 78 71 56 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 dXSbxqVVFnFUq+NQfk1XWYN3kwFNspnW
147a60 7a 46 61 63 78 48 56 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 zFacxHVaIw98xc.f8LDmBxrThaA63p4Z
147a80 55 57 69 41 42 71 76 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 UWiABqvDA1VZDRIuJK58bRQKfJPIx/ab
147aa0 4b 77 66 52 4f 48 64 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 KwfROHdI3hRW8cW.-----END.CERTIFI
147ac0 43 41 54 45 2d 2d 2d 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 CATE-----..COMODO.Certification.
147ae0 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 3d Authority.======================
147b00 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-
147b20 2d 2d 2d 2d 0a 4d 49 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 ----.MIIEHTCCAwWgAwIBAgIQToEtioJ
147b40 6c 34 41 73 43 37 6a 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 l4AsC7j41AkblPTANBgkqhkiG9w0BAQU
147b60 46 41 44 43 42 67 54 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 FADCBgTELMAkGA1UE.BhMCR0IxGzAZBg
147b80 4e 56 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 NVBAgTEkdyZWF0ZXIgTWFuY2hlc3Rlcj
147ba0 45 51 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 0a 41 EQMA4GA1UEBxMHU2FsZm9yZDEaMBgG.A
147bc0 31 55 45 43 68 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 4a 1UEChMRQ09NT0RPIENBIExpbWl0ZWQxJ
147be0 7a 41 6c 42 67 4e 56 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 zAlBgNVBAMTHkNPTU9ETyBDZXJ0aWZpY
147c00 32 46 30 61 57 39 75 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 2F0aW9uIEF1.dGhvcml0eTAeFw0wNjEy
147c20 4d 44 45 77 4d 44 41 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 MDEwMDAwMDBaFw0yOTEyMzEyMzU5NTla
147c40 4d 49 47 42 4d 51 73 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 MIGBMQswCQYDVQQGEwJHQjEb.MBkGA1U
147c60 45 43 42 4d 53 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 ECBMSR3JlYXRlciBNYW5jaGVzdGVyMRA
147c80 77 44 67 59 44 56 51 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 wDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQ
147ca0 4b 45 78 46 44 0a 54 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 KExFD.T01PRE8gQ0EgTGltaXRlZDEnMC
147cc0 55 47 41 31 55 45 41 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 UGA1UEAxMeQ09NT0RPIENlcnRpZmljYX
147ce0 52 70 62 32 34 67 51 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 Rpb24gQXV0aG9yaXR5.MIIBIjANBgkqh
147d00 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 30 kiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0
147d20 45 43 4c 69 33 4c 6a 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 ECLi3LjkRv3UcEbVASY06m/weaKXTuH.
147d40 2b 37 75 49 7a 67 33 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 +7uIzg3jLz8GlvCiKVCZrts7oVewdFFx
147d60 7a 65 31 43 6b 55 31 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 ze1CkU1B/qnI2GqGd0S7WWaXUF601Cxw
147d80 52 4d 2f 61 4e 35 56 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 RM/aN5VCaTww.xHGzUvAhTaHYujl8HJ6
147da0 6a 4a 4a 33 79 67 78 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 jJJ3ygxaYqhZ8Q5sVW7euNJH+1GImGEa
147dc0 61 50 2b 76 42 2b 66 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 aP+vB+fGQV+useg2L23IwambV.4EajcN
147de0 78 6f 32 66 38 45 53 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 xo2f8ESIl33rXp+2dtQem8Ob0y2WIC8b
147e00 47 6f 50 57 34 33 6e 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 GoPW43nOIv4tOiJovGuFVDiOEjPqXSJD
147e20 6c 71 52 36 73 41 0a 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 lqR6sA.1KGzqSX+DT+nHbrTUcELpNqsO
147e40 4f 39 56 55 43 51 46 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 O9VUCQFZUaTNE8tja3G1CEZ0o7KBWFxB
147e60 33 4e 48 35 59 6f 5a 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 3NH5YoZEr0ETc5OnKVI.rLsm9wIDAQAB
147e80 6f 34 47 4f 4d 49 47 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 o4GOMIGLMB0GA1UdDgQWBBQLWOWLxkwV
147ea0 4e 36 52 41 71 54 43 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 N6RAqTCpIb5HNlpW/zAOBgNVHQ8BAf8E
147ec0 0a 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 42 .BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zB
147ee0 4a 42 67 4e 56 48 52 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 JBgNVHR8EQjBAMD6gPKA6hjhodHRwOi8
147f00 76 59 33 4a 73 4c 6d 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 vY3JsLmNvbW9k.b2NhLmNvbS9DT01PRE
147f20 39 44 5a 58 4a 30 61 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 9DZXJ0aWZpY2F0aW9uQXV0aG9yaXR5Lm
147f40 4e 79 62 44 41 4e 42 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 NybDANBgkqhkiG9w0BAQUFAAOC.AQEAP
147f60 70 69 65 6d 2f 59 62 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 piem/Yb6dc5t3iuHXIYSdOH5EOC6z/Jq
147f80 76 57 6f 74 65 39 56 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 vWote9VfCFSZfnVDeFs9D6Mk3ORLgLET
147fa0 67 64 78 62 38 43 50 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 gdxb8CP.OGEIqB6BCsAvIC9Bi5HcSEW8
147fc0 38 63 62 65 75 6e 5a 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 8cbeunZrM8gALTFGTO3nnc+IlP8zwFbo
147fe0 4a 49 59 6d 75 4e 67 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 JIYmuNg4ON8qa90SzMc/.RxdMosIGlgn
148000 57 32 2f 34 2f 50 45 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 W2/4/PEZB31jiVg88O8EckzXZOFKs7sj
148020 73 4c 6a 42 4f 6c 44 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 sLjBOlDW0JB9LeGna8gI4zJVSk/BwJVm
148040 63 0a 49 47 66 45 37 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 c.IGfE7vmLV2H0knZ9P4SNVbfo5azV8f
148060 55 5a 56 71 5a 61 2b 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 UZVqZa+5Acr5Pr5RzUZ5ddBA6+C4OmF4
148080 4f 35 4d 42 4b 67 78 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 O5MBKgxTMVBbkN.+8cFduPYSo38NBejx
1480a0 69 45 6f 76 6a 42 46 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 iEovjBFMR7HeL5YYTisO+IBZQ==.----
1480c0 2d 45 4e 44 20 43 45 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 -END.CERTIFICATE-----..Network.S
1480e0 6f 6c 75 74 69 6f 6e 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 olutions.Certificate.Authority.=
148100 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
148120 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---
148140 2d 2d 0a 4d 49 49 44 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 --.MIID5jCCAs6gAwIBAgIQV8szb8JcF
148160 75 5a 48 46 68 66 6a 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 uZHFhfjkDFo4DANBgkqhkiG9w0BAQUFA
148180 44 42 69 4d 51 73 77 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 DBiMQswCQYDVQQG.EwJVUzEhMB8GA1UE
1481a0 43 68 4d 59 54 6d 56 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 ChMYTmV0d29yayBTb2x1dGlvbnMgTC5M
1481c0 4c 6b 4d 75 4d 54 41 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 LkMuMTAwLgYDVQQDEydOZXR3b3Jr.IFN
1481e0 76 62 48 56 30 61 57 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 vbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXR
148200 6f 62 33 4a 70 64 48 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 ob3JpdHkwHhcNMDYxMjAxMDAwMDAwWhc
148220 4e 4d 6a 6b 78 4d 6a 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 NMjkxMjMx.MjM1OTU5WjBiMQswCQYDVQ
148240 51 47 45 77 4a 56 55 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 QGEwJVUzEhMB8GA1UEChMYTmV0d29yay
148260 42 54 62 32 78 31 64 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 BTb2x1dGlvbnMgTC5MLkMu.MTAwLgYDV
148280 51 51 44 45 79 64 4f 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 QQDEydOZXR3b3JrIFNvbHV0aW9ucyBDZ
1482a0 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 45 69 4d XJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiM
1482c0 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 67 45 4b A0G.CSqGSIb3DQEBAQUAA4IBDwAwggEK
1482e0 41 6f 49 42 41 51 44 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 AoIBAQDkvH6SMG3G2I4rC7xGzuAnlt7e
148300 2b 66 6f 53 30 7a 77 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 +foS0zwzc7MEL7xx.jOWftiJgPl9dzgn
148320 2f 67 67 77 62 6d 6c 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 /ggwbmlFQGiaJ3dVhXRncEg8tCqJDXRf
148340 51 4e 4a 49 67 36 6e 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 QNJIg6nPPOCwGJgl6cvf6UDL4wpPT.aa
148360 49 6a 7a 6b 47 78 7a 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 IjzkGxzOTVHzbRijr4jGPiFFlp7Q3Tf2
148380 76 6f 75 41 50 6c 54 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 vouAPlT2rlmGNpSAW+Lv8ztumXWWn4Zx
1483a0 6d 75 6b 32 47 57 52 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 muk2GWRBXT.crA/vGp97Eh/jcOrqnErU
1483c0 32 6c 42 55 7a 53 31 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 2lBUzS1sLnFBgrEsEX1QV1uiUV7PTsmj
1483e0 48 54 43 35 64 4c 52 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 HTC5dLRfbIR1PtYMiKagMnc./Qzpf14D
148400 6c 38 34 37 41 42 53 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 l847ABSHJ3A4qY5usyd2mFHgBeMhqxrV
148420 68 53 49 38 4b 62 57 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 hSI8KbWaFsWAqPS7azCPL0YCorEMIuDT
148440 41 67 4d 42 0a 41 41 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 AgMB.AAGjgZcwgZQwHQYDVR0OBBYEFCE
148460 77 79 66 73 41 31 30 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 wyfsA106Y2oeqKtCnLrFAMadMMA4GA1U
148480 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 38 45 42 54 dDwEB/wQEAwIBBjAP.BgNVHRMBAf8EBT
1484a0 41 44 41 51 48 2f 4d 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 ADAQH/MFIGA1UdHwRLMEkwR6BFoEOGQW
1484c0 68 30 64 48 41 36 4c 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 h0dHA6Ly9jcmwubmV0c29sc3NsLmNv.b
1484e0 53 39 4f 5a 58 52 33 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 S9OZXR3b3JrU29sdXRpb25zQ2VydGlma
148500 57 4e 68 64 47 56 42 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 WNhdGVBdXRob3JpdHkuY3JsMA0GCSqGS
148520 49 62 33 44 51 45 42 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 Ib3DQEBBQUA.A4IBAQC7rkvnt1frf6ot
148540 74 33 4e 48 68 57 72 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 t3NHhWrB5KUd5Oc86fRZZXe1eltajSU2
148560 34 48 71 58 4c 6a 6a 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 4HqXLjjAV2CDmAaDn7l2em5Q.4LqILPx
148580 46 7a 42 69 77 6d 5a 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 FzBiwmZVRDuwduIj/h1AcgsLj4DKAv6A
1485a0 4c 52 38 6a 44 4d 65 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 LR8jDMe+ZZzKATxcheQxpXN5eNK4CtSb
1485c0 71 55 4e 39 2f 0a 47 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 qUN9/.GGUsyfJj4akH/nxxH2szJGoeBf
1485e0 63 46 61 4d 42 71 45 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 cFaMBqEssuXmHLrijTfsK0ZpEmXzwuJF
148600 2f 4c 57 41 2f 72 4b 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 /LWA/rKOyvEZbz3Htv.wKeI8lN3s2Ber
148620 71 34 6f 32 6a 55 73 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 q4o2jUsbzRF0ybh3uxbTydrFny9RAQYg
148640 72 4f 4a 65 52 63 51 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 rOJeRcQcT16ohZO9QHNpGxlaKFJdlxD.
148660 79 64 69 38 4e 6d 64 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 ydi8NmdspZS11My5vWo1ViHe2MPr+8uk
148680 59 45 79 77 56 61 43 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 YEywVaCge1ey.-----END.CERTIFICAT
1486a0 45 2d 2d 2d 2d 2d 0a 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 E-----..WellsSecure.Public.Root.
1486c0 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 3d 3d Certificate.Authority.==========
1486e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
148700 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-----.
148720 4d 49 49 45 76 54 43 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 MIIEvTCCA6WgAwIBAgIBATANBgkqhkiG
148740 39 77 30 42 41 51 55 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 9w0BAQUFADCBhTELMAkGA1UEBhMCVVMx
148760 49 44 41 65 42 67 4e 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 IDAeBgNVBAoM.F1dlbGxzIEZhcmdvIFd
148780 6c 62 47 78 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 lbGxzU2VjdXJlMRwwGgYDVQQLDBNXZWx
1487a0 73 63 79 42 47 59 58 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 scyBGYXJnbyBCYW5rIE5BMTYw.NAYDVQ
1487c0 51 44 44 43 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 QDDC1XZWxsc1NlY3VyZSBQdWJsaWMgUm
1487e0 39 76 64 43 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 9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdH
148800 6b 77 48 68 63 4e 0a 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 kwHhcN.MDcxMjEzMTcwNzU0WhcNMjIxM
148820 6a 45 30 4d 44 41 77 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 jE0MDAwNzU0WjCBhTELMAkGA1UEBhMCV
148840 56 4d 78 49 44 41 65 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 VMxIDAeBgNVBAoMF1dl.bGxzIEZhcmdv
148860 49 46 64 6c 62 47 78 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 IFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNX
148880 5a 57 78 73 63 79 42 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 ZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYD
1488a0 0a 56 51 51 44 44 43 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 .VQQDDC1XZWxsc1NlY3VyZSBQdWJsaWM
1488c0 67 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 52 6f 62 33 4a gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3J
1488e0 70 64 48 6b 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 34 pdHkwggEiMA0G.CSqGSIb3DQEBAQUAA4
148900 49 42 44 77 41 77 67 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 IBDwAwggEKAoIBAQDub7S9eeKPCCGeOA
148920 52 42 4a 65 2b 72 57 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 RBJe+rWxxTkqxtnt3CxC5FlAM1.iGd0V
148940 2b 50 66 6a 4c 69 6e 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 +PfjLindo8796jE2yljDpFoNoqXjopxa
148960 41 6b 48 35 4f 6a 55 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 AkH5OjUDk/41itMpBb570OYj7OeUt9tk
148980 54 6d 50 4f 4c 31 33 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 TmPOL13.i0Nj67eT/DBMHAGTthP796Ef
1489a0 76 79 58 68 64 44 63 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 vyXhdDcsHqRePGj4S78NuR4uNuip5Kf4
1489c0 44 38 75 43 64 58 77 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 D8uCdXw1LSLWwr8L87T8.bJVhHlfXBIE
1489e0 79 67 31 4a 35 35 6f 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 yg1J55oNjz7fLY4sR4r1e6/aN7ZVyKLS
148a00 73 45 6d 4c 70 53 6a 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 sEmLpSjPmgzKuBXWVvYSV2ypcm44uDLi
148a20 42 0a 4b 30 48 6d 4f 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 B.K0HmOFafSZtsdvqKXfcBeYF8wYNABf
148a40 35 78 2f 51 77 2f 7a 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 5x/Qw/zE5gCQ5lRxAvAcAFP4/4s0HvWk
148a60 4a 2b 57 65 2f 53 6c 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 J+We/SlwxlAgMB.AAGjggE0MIIBMDAPB
148a80 67 4e 56 48 52 4d 42 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 gNVHRMBAf8EBTADAQH/MDkGA1UdHwQyM
148aa0 44 41 77 4c 71 41 73 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 DAwLqAsoCqGKGh0dHA6Ly9jcmwu.cGtp
148ac0 4c 6e 64 6c 62 47 78 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 LndlbGxzZmFyZ28uY29tL3dzcHJjYS5j
148ae0 63 6d 77 77 44 67 59 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 cmwwDgYDVR0PAQH/BAQDAgHGMB0GA1Ud
148b00 44 67 51 57 42 42 51 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 DgQWBBQm.lRkQ2eihl5H/3BnZtQQ+0nM
148b20 4b 61 6a 43 42 73 67 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 KajCBsgYDVR0jBIGqMIGngBQmlRkQ2ei
148b40 68 6c 35 48 2f 33 42 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 hl5H/3BnZtQQ+0nMKaqGB.i6SBiDCBhT
148b60 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 56 42 41 6f 4d 46 31 ELMAkGA1UEBhMCVVMxIDAeBgNVBAoMF1
148b80 64 6c 62 47 78 7a 49 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 dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMR
148ba0 77 77 0a 47 67 59 44 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 ww.GgYDVQQLDBNXZWxscyBGYXJnbyBCY
148bc0 57 35 72 49 45 35 42 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 W5rIE5BMTYwNAYDVQQDDC1XZWxsc1NlY
148be0 33 56 79 5a 53 42 51 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 3VyZSBQdWJsaWMg.Um9vdCBDZXJ0aWZp
148c00 59 32 46 30 5a 53 42 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 Y2F0ZSBBdXRob3JpdHmCAQEwDQYJKoZI
148c20 68 76 63 4e 41 51 45 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 hvcNAQEFBQADggEBALkVsUSRzCPI.K01
148c40 33 34 2f 69 61 65 79 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 34/iaeycNzXK7mQDKfGYZUMbVmO2rvwN
148c60 61 35 55 33 6c 48 73 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 a5U3lHshPcZeG1eMd/ZDJPHV3V3p9+N7
148c80 30 31 4e 58 33 6c 65 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 01NX3leZ0.bh08rnyd2wIDBSxxSyU+B+
148ca0 4e 65 6d 76 56 6d 46 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 NemvVmFymIGjifz6pBA4SXa5M4esowRB
148cc0 73 6b 52 44 50 51 35 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 skRDPQ5NHcKDj0E0M1NSlj.qHyita04p
148ce0 4f 32 74 2f 63 61 61 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 O2t/caaH/+Xc/77szWnk4bGdpEA5qxRF
148d00 73 51 6e 4d 6c 7a 62 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 sQnMlzbc9qlk1eOPm01JghZ1edE13YgY
148d20 2b 65 73 0a 45 32 66 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 +es.E2fDbbFwRnzVlhE9iW9dqKHrjQra
148d40 77 78 30 7a 62 4b 50 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 wx0zbKPqZxmamX9LPYNRKh3KL4YMon4Q
148d60 4c 53 76 55 46 70 55 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 LSvUFpULB6ouFJJJ.tylv2G0xffX8oRA
148d80 48 68 38 34 76 57 64 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 Hh84vWdw+WNs=.-----END.CERTIFICA
148da0 54 45 2d 2d 2d 2d 2d 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 TE-----..COMODO.ECC.Certificatio
148dc0 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 3d 3d 3d n.Authority.====================
148de0 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
148e00 49 43 41 54 45 2d 2d 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 ICATE-----.MIICiTCCAg+gAwIBAgIQH
148e20 30 65 76 71 6d 49 41 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 0evqmIAcFBUTAGem2OZKjAKBggqhkjOP
148e40 51 51 44 41 7a 43 42 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 QQDAzCBhTELMAkGA1UEBhMC.R0IxGzAZ
148e60 42 67 4e 56 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 BgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3Rl
148e80 63 6a 45 51 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 cjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgG
148ea0 41 31 55 45 0a 43 68 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 A1UE.ChMRQ09NT0RPIENBIExpbWl0ZWQ
148ec0 78 4b 7a 41 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 xKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2V
148ee0 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 77 48 68 ydGlmaWNhdGlvbiBB.dXRob3JpdHkwHh
148f00 63 4e 4d 44 67 77 4d 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 cNMDgwMzA2MDAwMDAwWhcNMzgwMTE4Mj
148f20 4d 31 4f 54 55 35 57 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 M1OTU5WjCBhTELMAkGA1UEBhMCR0Ix.G
148f40 7a 41 5a 42 67 4e 56 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 zAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc
148f60 33 52 6c 63 6a 45 51 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 3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaM
148f80 42 67 47 41 31 55 45 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 BgGA1UEChMR.Q09NT0RPIENBIExpbWl0
148fa0 5a 57 51 78 4b 7a 41 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 ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0Mg
148fc0 51 32 56 79 64 47 6c 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 Q2VydGlmaWNhdGlvbiBBdXRo.b3JpdHk
148fe0 77 64 6a 41 51 42 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 wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQ
149000 44 52 33 73 76 64 63 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 DR3svdcmCFYX7deSRFtSrYpn1PlILBs5
149020 42 41 48 2b 58 0a 34 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 BAH+X.4QokPB0BBO490o0JlwzgdeT6+3
149040 65 4b 4b 76 55 44 59 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 eKKvUDYEs2ixYjFq0JcfRK9ChQtP6IHG
149060 34 2f 62 43 38 76 43 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 4/bC8vCVlbpVsLM5ni.wz2J+Wos77LTB
149080 75 6d 6a 51 6a 42 41 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 umjQjBAMB0GA1UdDgQWBBR1cacZSBm8n
1490a0 5a 33 71 51 55 66 66 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 Z3qQUfflMRId5nTeTAOBgNVHQ8BAf8E.
1490c0 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 41 4b BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAK
1490e0 42 67 67 71 68 6b 6a 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 BggqhkjOPQQDAwNoADBlAjEA7wNbeqy3
149100 65 41 70 79 74 34 6a 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 eApyt4jf/7VG.FAkK+qDmfQjGGoe9GKh
149120 7a 76 53 62 4b 59 41 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 zvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM
149140 38 53 61 63 7a 65 70 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 8SaczepBGR7NjfRObTrdvGDeA.U/7dIO
149160 41 31 6d 6a 62 52 78 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 A1mjbRxwG55tzd8/8dLDoWV9mSOdY=.-
149180 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 47 43 2f 41 0a ----END.CERTIFICATE-----..IGC/A.
1491a0 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----
1491c0 2d 0a 4d 49 49 45 41 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 -.MIIEAjCCAuqgAwIBAgIFORFFEJQwDQ
1491e0 59 4a 4b 6f 5a 49 68 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 YJKoZIhvcNAQEFBQAwgYUxCzAJBgNVBA
149200 59 54 41 6b 5a 53 4d 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 YTAkZSMQ8wDQYD.VQQIEwZGcmFuY2UxD
149220 6a 41 4d 42 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 jAMBgNVBAcTBVBhcmlzMRAwDgYDVQQKE
149240 77 64 51 54 53 39 54 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 wdQTS9TR0ROMQ4wDAYDVQQLEwVE.Q1NT
149260 53 54 45 4f 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 STEOMAwGA1UEAxMFSUdDL0ExIzAhBgkq
149280 68 6b 69 47 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 hkiG9w0BCQEWFGlnY2FAc2dkbi5wbS5n
1492a0 62 33 56 32 4c 6d 5a 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 b3V2LmZy.MB4XDTAyMTIxMzE0MjkyM1o
1492c0 58 44 54 49 77 4d 54 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 XDTIwMTAxNzE0MjkyMlowgYUxCzAJBgN
1492e0 56 42 41 59 54 41 6b 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 VBAYTAkZSMQ8wDQYDVQQI.EwZGcmFuY2
149300 55 78 44 6a 41 4d 42 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 UxDjAMBgNVBAcTBVBhcmlzMRAwDgYDVQ
149320 51 4b 45 77 64 51 54 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 QKEwdQTS9TR0ROMQ4wDAYDVQQLEwVEQ1
149340 4e 54 0a 53 54 45 4f 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 NT.STEOMAwGA1UEAxMFSUdDL0ExIzAhB
149360 67 6b 71 68 6b 69 47 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 gkqhkiG9w0BCQEWFGlnY2FAc2dkbi5wb
149380 53 35 6e 62 33 56 32 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 S5nb3V2LmZyMIIB.IjANBgkqhkiG9w0B
1493a0 41 51 45 46 41 41 4f 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 AQEFAAOCAQ8AMIIBCgKCAQEAsh/R0GLF
1493c0 4d 7a 76 41 42 49 61 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 MzvABIaIs9z4iPf930Pfeo2aSVz2.Tqr
1493e0 4d 48 4c 6d 68 36 79 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 MHLmh6yeJ8kbpO0px1R2OLc/mratjUMd
149400 55 43 32 34 53 79 5a 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 UC24SyZA2xtgv2pGqaMVy/hcKshd+ebU
149420 79 69 48 44 4b 63 4d 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 yiHDKcMCW.So7kVc0dJ5S/znIq7Fz5cy
149440 44 2b 76 66 63 75 69 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 D+vfcuiWe4u0dzEvfRNWk68gq5rv9GQk
149460 61 69 76 36 47 46 47 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 aiv6GFGvm/5P9JhfejcIYy.HF2fYPepr
149480 61 58 2f 7a 39 45 30 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 aX/z9E0+X1bF8bc1g4oa8Ld8fUzaJ1O/
1494a0 49 64 38 4e 68 4c 57 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 Id8NhLWo4DoQw1VYZTqZDdH6nfK0LJYB
1494c0 63 4e 64 0a 66 72 47 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 cNd.frGoRpAxVs5wKpayMLh35nnAvSk7
1494e0 2f 5a 52 33 54 4c 30 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 /ZR3TL0gzUEl4C7HG7vupARB0l2tEmqK
149500 6d 30 66 37 79 64 31 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 m0f7yd1GQOGdPDPQ.tQIDAQABo3cwdTA
149520 50 42 67 4e 56 48 52 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 PBgNVHRMBAf8EBTADAQH/MAsGA1UdDwQ
149540 45 41 77 49 42 52 6a 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 EAwIBRjAVBgNVHSAEDjAMMAoGCCqB.eg
149560 46 35 41 51 45 42 4d 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 F5AQEBMB0GA1UdDgQWBBSjBS8YYFDCiQ
149580 72 64 4b 79 46 50 2f 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 rdKyFP/45OqDAxNjAfBgNVHSMEGDAWgB
1495a0 53 6a 42 53 38 59 59 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 SjBS8YYFDC.iQrdKyFP/45OqDAxNjANB
1495c0 67 6b 71 68 6b 69 47 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 gkqhkiG9w0BAQUFAAOCAQEABdwm2Pp3F
1495e0 55 52 6f 2f 43 39 6d 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 URo/C9mOnTgXeQp/wYHE4RK.q89toB9R
149600 6c 50 68 4a 79 33 51 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 lPhJy3Q2FLwV3duJL92PoF189RLrn544
149620 70 45 66 4d 73 35 62 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 pEfMs5bZvpwlqwN+Mw+VgQ39FuCIvjfw
149640 62 46 33 51 0a 4d 5a 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 bF3Q.MZsyK10XZZOYYLxuj7GoPB7ZHPO
149660 70 4a 6b 4c 35 5a 42 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 pJkL5ZB3C55L29B5aqhlSXa/oovdgoPa
149680 4e 38 49 6e 31 62 75 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 N8In1buAKBQGVyYsg.Crpa/JosPL3Dt8
1496a0 6c 64 65 43 55 46 50 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 ldeCUFP1YUmwza+zpI/pdpXsoQhvdOlg
1496c0 51 49 54 65 79 77 76 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 QITeywvl3cO45Pwf2aNjSaTFR+FwNI.l
1496e0 51 67 52 48 41 64 76 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 QgRHAdvhQh+XU3Endv7rs6y0bO4g2wds
149700 72 4e 35 38 64 68 77 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 rN58dhwmX7wEwLOXt1R0982gaEbeC9xs
149720 2f 46 5a 54 45 59 59 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 /FZTEYYKKuF.0mBWWg==.-----END.CE
149740 52 54 49 46 49 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 RTIFICATE-----..Security.Communi
149760 63 61 74 69 6f 6e 20 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 cation.EV.RootCA1.==============
149780 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
1497a0 45 52 54 49 46 49 43 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 ERTIFICATE-----.MIIDfTCCAmWgAwIB
1497c0 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 42 67 4d 51 73 77 AgIBADANBgkqhkiG9w0BAQUFADBgMQsw
1497e0 43 51 59 44 56 51 51 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 CQYDVQQGEwJKUDElMCMGA1UEChMc.U0V
149800 44 54 30 30 67 56 48 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 DT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFR
149820 45 4c 6a 45 71 4d 43 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 ELjEqMCgGA1UECxMhU2VjdXJpdHkgQ29
149840 74 62 58 56 75 61 57 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 tbXVuaWNh.dGlvbiBFViBSb290Q0ExMB
149860 34 58 44 54 41 33 4d 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 4XDTA3MDYwNjAyMTIzMloXDTM3MDYwNj
149880 41 79 4d 54 49 7a 4d 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 AyMTIzMlowYDELMAkGA1UE.BhMCSlAxJ
1498a0 54 41 6a 42 67 4e 56 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 TAjBgNVBAoTHFNFQ09NIFRydXN0IFN5c
1498c0 33 52 6c 62 58 4d 67 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 3RlbXMgQ08uLExURC4xKjAoBgNVBAsTI
1498e0 56 4e 6c 0a 59 33 56 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 VNl.Y3VyaXR5IENvbW11bmljYXRpb24g
149900 52 56 59 67 55 6d 39 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 RVYgUm9vdENBMTCCASIwDQYJKoZIhvcN
149920 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 4c 78 2f 37 46 65 AQEBBQADggEPADCC.AQoCggEBALx/7Fe
149940 62 4a 4f 44 2b 6e 4c 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 bJOD+nLpCeamIivqA4PUHKUPqjgo0No0
149960 63 2b 71 65 31 4f 58 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 c+qe1OXj/l3X3L+SqawSERMqm4miO./V
149980 56 51 59 67 2b 6b 63 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 VQYg+kcQ7OBzgtQoVQrTyWb4vVog7P3k
1499a0 6d 4a 50 64 5a 6b 4c 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 mJPdZkLjjlHmy1V4qe70gOzXppFodEtZ
1499c0 44 6b 42 70 32 75 6f 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 DkBp2uoQSX.WHnvIEqCa4wiv+wfD+mEc
1499e0 65 33 78 44 75 53 34 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 e3xDuS4GBPMVjZd0ZoeUWs5bmB2iDQL8
149a00 37 50 52 73 4a 33 4b 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 7PRsJ3KYeJkHcFGB7hj3R4z.ZbOOCVVS
149a20 50 62 57 39 2f 77 66 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 PbW9/wfrrWFVGCypaZhKqkDFMxRldAD5
149a40 6b 64 36 76 41 30 6a 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 kd6vA0jFQFTcD4SQaCDFkpbcLuUCRarA
149a60 58 31 54 34 0a 62 65 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 X1T4.bepJz11sS6/vmsJWXMY1VkJqMF/
149a80 43 71 2f 62 69 50 54 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 Cq/biPT+zyRGPMUzXn0kCAwEAAaNCMEA
149aa0 77 48 51 59 44 56 52 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 wHQYDVR0OBBYEFDVK.9U2vP9eCOKyrcW
149ac0 55 58 64 59 79 64 56 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 UXdYydVZPmMA4GA1UdDwEB/wQEAwIBBj
149ae0 41 50 42 67 4e 56 48 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 APBgNVHRMBAf8EBTADAQH/MA0GCSqG.S
149b00 49 62 33 44 51 45 42 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 Ib3DQEBBQUAA4IBAQCoh+ns+EBnXcPBZ
149b20 73 64 41 53 35 66 38 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 sdAS5f8hxOQWsTvoMpfi7ent/HWtWS3i
149b40 72 4f 34 47 38 7a 61 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 rO4G8za+6xm.iEHO6Pzk2x6Ipu0nUBsC
149b60 4d 43 52 47 65 66 34 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 MCRGef4Eh3CXQHPRwMFXGZpppSeZq51i
149b80 68 50 5a 52 77 53 7a 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 hPZRwSzJIxXYKLerJRO1RuGG.Av8mjMS
149ba0 49 6b 68 31 57 2f 68 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 Ikh1W/hln8lXkgKNrnKt34VFxDSDbEJr
149bc0 62 76 58 5a 35 42 33 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 bvXZ5B3eZKK2aXtqxT0QsNY6llsf9g/B
149be0 59 78 6e 6e 57 0a 6d 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 YxnnW.mHyojf6GPgcWkuF75x3sM3Z+Qi
149c00 35 4b 68 66 6d 52 69 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 5KhfmRiWiEA4Glm5q+4zfFVKtWOxgtQa
149c20 51 4d 2b 45 4c 62 6d 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 QM+ELbmaDgcm+7XeEW.T1MKZPlO9L9OV
149c40 4c 31 34 62 49 6a 71 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 L14bIjqv5wTJMJwaaJ/D8g8rQjJsJhAo
149c60 79 72 6e 69 49 50 74 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 yrniIPtd490.-----END.CERTIFICATE
149c80 2d 2d 2d 2d 2d 0a 0a 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 -----..OISTE.WISeKey.Global.Root
149ca0 20 47 41 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 .GA.CA.=========================
149cc0 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---
149ce0 2d 2d 0a 4d 49 49 44 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 --.MIID8TCCAtmgAwIBAgIQQT1yx/RrH
149d00 34 46 44 66 66 48 53 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 4FDffHSKFTfmjANBgkqhkiG9w0BAQUFA
149d20 44 43 42 69 6a 45 4c 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 DCBijELMAkGA1UE.BhMCQ0gxEDAOBgNV
149d40 42 41 6f 54 42 31 64 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 BAoTB1dJU2VLZXkxGzAZBgNVBAsTEkNv
149d60 63 48 6c 79 61 57 64 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 cHlyaWdodCAoYykgMjAwNTEiMCAG.A1U
149d80 45 43 78 4d 5a 54 30 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 ECxMZT0lTVEUgRm91bmRhdGlvbiBFbmR
149da0 76 63 6e 4e 6c 5a 44 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 vcnNlZDEoMCYGA1UEAxMfT0lTVEUgV0l
149dc0 54 5a 55 74 6c 65 53 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 TZUtleSBH.bG9iYWwgUm9vdCBHQSBDQT
149de0 41 65 46 77 30 77 4e 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 AeFw0wNTEyMTExNjAzNDRaFw0zNzEyMT
149e00 45 78 4e 6a 41 35 4e 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 ExNjA5NTFaMIGKMQswCQYD.VQQGEwJDS
149e20 44 45 51 4d 41 34 47 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 DEQMA4GA1UEChMHV0lTZUtleTEbMBkGA
149e40 31 55 45 43 78 4d 53 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 1UECxMSQ29weXJpZ2h0IChjKSAyMDA1M
149e60 53 49 77 0a 49 41 59 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 SIw.IAYDVQQLExlPSVNURSBGb3VuZGF0
149e80 61 57 39 75 49 45 56 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 aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9P
149ea0 53 56 4e 55 52 53 42 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 SVNURSBXSVNlS2V5.IEdsb2JhbCBSb29
149ec0 30 49 45 64 42 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 0IEdBIENBMIIBIjANBgkqhkiG9w0BAQE
149ee0 46 41 41 4f 43 41 51 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 FAAOCAQ8AMIIBCgKCAQEAy0+zAJs9.Nt
149f00 33 35 30 55 6c 71 61 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 350UlqaxBJH+zYK7LG+DKBKUOVTJoZIy
149f20 45 56 52 64 37 6a 79 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 EVRd7jyBxRVVuuk+g3/ytr6dTqvirdqF
149f40 45 72 31 32 62 44 59 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 Er12bDYVxg.Asj1znJ7O7jyTmUIms2ka
149f60 68 6e 42 41 62 74 7a 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 hnBAbtzptf2w93NvKSLtZlhuAGio9RN1
149f80 41 55 39 6b 61 33 34 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 AU9ka34tAhxZK9w8RxrfvbD.d50kc3vk
149fa0 44 49 7a 68 32 54 62 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 DIzh2TbhmYsFmQvtRTEJysIA2/dyoJaq
149fc0 6c 59 66 51 6a 73 65 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 lYfQjse2YXMNdmaM3Bu0Y6Kff5MTMPGh
149fe0 4a 39 76 5a 0a 2f 79 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 J9vZ./yxViJGg4E8HsChWjBgbl0SOid3
14a000 67 46 32 37 6e 4b 75 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 gF27nKu+POQoxhILYQBRJLnpB5Kf+42T
14a020 4d 77 56 6c 78 53 79 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 MwVlxSywhp1t94B3R.LoGbw9ho972WG6
14a040 78 77 73 52 59 55 43 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 xwsRYUC9tguSYBBQIDAQABo1EwTzALBg
14a060 4e 56 48 51 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 77 0a 41 NVHQ8EBAMCAYYwDwYDVR0TAQH/BAUw.A
14a080 77 45 42 2f 7a 41 64 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 wEB/zAdBgNVHQ4EFgQUswN+rja8sHnR3
14a0a0 4a 51 6d 74 68 47 2b 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 JQmthG+IbJphpQwEAYJKwYBBAGCNxUBB
14a0c0 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 45 42 AMCAQAwDQYJ.KoZIhvcNAQEFBQADggEB
14a0e0 41 45 75 68 2f 77 75 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 AEuh/wuHbrP5wUOxSPMowB0uyQlB+pQA
14a100 48 4b 53 6b 71 30 6c 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 HKSkq0lPjz0e701vvbyk9vIm.MMkQyh2
14a120 49 2b 33 51 5a 48 34 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 I+3QZH4VFvbBsUfk2ftv1TDI6QU9bR8/
14a140 6f 43 79 32 32 78 42 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 oCy22xBmddMVHxjtqD6wU2zz0c5ypBd8
14a160 41 33 48 52 34 0a 2b 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 A3HR4.+vg1YFkCExh8vPtNsCBtQ7tgMH
14a180 70 6e 4d 31 7a 46 6d 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 pnM1zFmdH4LTlSc/uMqpclXHLZCB6rTj
14a1a0 7a 6a 67 54 47 66 41 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 zjgTGfA6b7wP4piFXa.hNVQA7bihKOmN
14a1c0 71 6f 52 4f 67 48 68 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 qoROgHhGEvWRGizPflTdISzRpFGlgC3g
14a1e0 43 79 32 34 65 4d 51 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 Cy24eMQ4tui5yiPAZZiFj4A4xylNoEY.
14a200 6f 6b 78 53 64 73 41 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 okxSdsARo27mHbrjWr42U8U+dY+GaSlY
14a220 55 37 57 63 75 32 2b 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 U7Wcu2+fXMUY7N0v4ZjJ/L7fCg0=.---
14a240 2d 2d 45 4e 44 20 43 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 --END.CERTIFICATE-----..Microsec
14a260 20 65 2d 53 7a 69 67 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 .e-Szigno.Root.CA.==============
14a280 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
14a2a0 54 45 2d 2d 2d 2d 2d 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 TE-----.MIIHqDCCBpCgAwIBAgIRAMy4
14a2c0 35 37 39 4f 4b 52 72 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 579OKRr9otxmpRwsDxEwDQYJKoZIhvcN
14a2e0 41 51 45 46 42 51 41 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 AQEFBQAwcjELMAkGA1UE.BhMCSFUxETA
14a300 50 42 67 4e 56 42 41 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 PBgNVBAcTCEJ1ZGFwZXN0MRYwFAYDVQQ
14a320 4b 45 77 31 4e 61 57 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 KEw1NaWNyb3NlYyBMdGQuMRQwEgYDVQQ
14a340 4c 0a 45 77 74 6c 4c 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 L.EwtlLVN6aWdubyBDQTEiMCAGA1UEAx
14a360 4d 5a 54 57 6c 6a 63 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 MZTWljcm9zZWMgZS1Temlnbm8gUm9vdC
14a380 42 44 51 54 41 65 46 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 BDQTAeFw0wNTA0.MDYxMjI4NDRaFw0xN
14a3a0 7a 41 30 4d 44 59 78 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 zA0MDYxMjI4NDRaMHIxCzAJBgNVBAYTA
14a3c0 6b 68 56 4d 52 45 77 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 khVMREwDwYDVQQHEwhCdWRhcGVz.dDEW
14a3e0 4d 42 51 47 41 31 55 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 MBQGA1UEChMNTWljcm9zZWMgTHRkLjEU
14a400 4d 42 49 47 41 31 55 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 MBIGA1UECxMLZS1Temlnbm8gQ0ExIjAg
14a420 42 67 4e 56 42 41 4d 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 BgNVBAMT.GU1pY3Jvc2VjIGUtU3ppZ25
14a440 76 49 46 4a 76 62 33 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 vIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQE
14a460 42 41 51 55 41 41 34 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 BAQUAA4IBDwAwggEKAoIB.AQDtyADVgX
14a480 76 4e 4f 41 42 48 7a 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 vNOABHzNuEwSFpLHSQDCHZU4ftPkNEU6
14a4a0 2b 72 2b 49 43 62 50 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 +r+ICbPHiN1I2uuO/TEdyB5s87lozWbx
14a4c0 58 47 0a 64 33 36 68 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 XG.d36hL+BfkrYn13aaHUM86tnsL+458
14a4e0 32 70 6e 53 34 75 43 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 2pnS4uCzyL4ZVX+LMsvfUh6PXX5qqAnu
14a500 33 6a 43 42 73 70 52 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 3jCBspRwn5mS6/N.oqdNAoI/gqyFxuEP
14a520 6b 45 65 5a 6c 41 70 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 kEeZlApxcpMqyabAvjxWTHOSJ/FrtfX9
14a540 2f 44 41 46 59 4a 4c 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 /DAFYJLG65Z+AZHCabEeHXtTRbjc.QR/
14a560 4a 69 33 48 57 56 42 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 Ji3HWVBTji1R4P770Yjtb9aPs1ZJ04nQ
14a580 77 37 77 48 62 34 64 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 w7wHb4dSrmZsqa/i9phyGI0Jf7Enemot
14a5a0 62 39 48 49 36 51 4d 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 b9HI6QMVJ.PqW+jqpx62z69Rrkav17fV
14a5c0 56 41 37 31 68 75 35 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 VA71hu5tnVvCSrwe+3AgMBAAGjggQ3MI
14a5e0 49 45 4d 7a 42 6e 42 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 IEMzBnBggrBgEFBQcBAQRb.MFkwKAYIK
14a600 77 59 42 42 51 55 48 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 wYBBQUHMAGGHGh0dHBzOi8vcmNhLmUtc
14a620 33 70 70 5a 32 35 76 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 3ppZ25vLmh1L29jc3AwLQYIKwYBBQUHM
14a640 41 4b 47 0a 49 57 68 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 AKG.IWh0dHA6Ly93d3cuZS1zemlnbm8u
14a660 61 48 55 76 55 6d 39 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 aHUvUm9vdENBLmNydDAPBgNVHRMBAf8E
14a680 42 54 41 44 41 51 48 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 BTADAQH/MIIBcwYD.VR0gBIIBajCCAWY
14a6a0 77 67 67 46 69 42 67 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 wggFiBgwrBgEEAYGoGAIBAQEwggFQMCg
14a6c0 47 43 43 73 47 41 51 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 GCCsGAQUFBwIBFhxodHRwOi8vd3d3.Lm
14a6e0 55 74 63 33 70 70 5a 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 Utc3ppZ25vLmh1L1NaU1ovMIIBIgYIKw
14a700 59 42 42 51 55 48 41 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 YBBQUHAgIwggEUHoIBEABBACAAdABhAG
14a720 34 41 2b 67 42 7a 41 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 4A+gBzAO0A.dAB2AOEAbgB5ACAA6QByA
14a740 48 51 41 5a 51 42 73 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 HQAZQBsAG0AZQB6AOkAcwDpAGgAZQB6A
14a760 43 41 41 36 51 42 7a 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 CAA6QBzACAAZQBsAGYAbwBn.AGEAZADh
14a780 41 48 4d 41 34 51 42 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 AHMA4QBoAG8AegAgAGEAIABTAHoAbwBs
14a7a0 41 47 63 41 34 51 42 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 AGcA4QBsAHQAYQB0APMAIABTAHoAbwBs
14a7c0 41 47 63 41 0a 34 51 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 AGcA.4QBsAHQAYQB0AOEAcwBpACAAUwB
14a7e0 36 41 47 45 41 59 67 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 6AGEAYgDhAGwAeQB6AGEAdABhACAAcwB
14a800 36 41 47 55 41 63 67 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 6AGUAcgBpAG4AdAAg.AGsAZQBsAGwAIA
14a820 42 6c 41 47 77 41 61 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 BlAGwAagDhAHIAbgBpADoAIABoAHQAdA
14a840 42 77 41 44 6f 41 4c 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 BwADoALwAvAHcAdwB3AC4AZQAtAHMA.e
14a860 67 42 70 41 47 63 41 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 gBpAGcAbgBvAC4AaAB1AC8AUwBaAFMAW
14a880 67 41 76 4d 49 48 49 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 gAvMIHIBgNVHR8EgcAwgb0wgbqggbegg
14a8a0 62 53 47 49 57 68 30 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 bSGIWh0dHA6.Ly93d3cuZS1zemlnbm8u
14a8c0 61 48 55 76 55 6d 39 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 aHUvUm9vdENBLmNybIaBjmxkYXA6Ly9s
14a8e0 5a 47 46 77 4c 6d 55 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 ZGFwLmUtc3ppZ25vLmh1L0NO.PU1pY3J
14a900 76 63 32 56 6a 4a 54 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 vc2VjJTIwZS1Temlnbm8lMjBSb290JTI
14a920 77 51 30 45 73 54 31 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 wQ0EsT1U9ZS1Temlnbm8lMjBDQSxPPU1
14a940 70 59 33 4a 76 0a 63 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 pY3Jv.c2VjJTIwTHRkLixMPUJ1ZGFwZX
14a960 4e 30 4c 45 4d 39 53 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 N0LEM9SFU/Y2VydGlmaWNhdGVSZXZvY2
14a980 46 30 61 57 39 75 54 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 F0aW9uTGlzdDtiaW5h.cnkwDgYDVR0PA
14a9a0 51 48 2f 42 41 51 44 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 QH/BAQDAgEGMIGWBgNVHREEgY4wgYuBE
14a9c0 47 6c 75 5a 6d 39 41 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 GluZm9AZS1zemlnbm8uaHWkdzB1MSMw.
14a9e0 49 51 59 44 56 51 51 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 IQYDVQQDDBpNaWNyb3NlYyBlLVN6aWdu
14aa00 77 37 4d 67 55 6d 39 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 w7MgUm9vdCBDQTEWMBQGA1UECwwNZS1T
14aa20 65 6d 6c 6e 62 73 4f 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 emlnbsOzIEhT.WjEWMBQGA1UEChMNTWl
14aa40 6a 63 6d 39 7a 5a 57 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 jcm9zZWMgS2Z0LjERMA8GA1UEBxMIQnV
14aa60 6b 59 58 42 6c 63 33 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 kYXBlc3QxCzAJBgNVBAYTAkhV.MIGsBg
14aa80 4e 56 48 53 4d 45 67 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 NVHSMEgaQwgaGAFMegSXUWYYTbMUuE0v
14aaa0 45 33 51 4a 44 76 54 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 E3QJDvTtz3oXakdDByMQswCQYDVQQGEw
14aac0 4a 49 56 54 45 52 0a 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 JIVTER.MA8GA1UEBxMIQnVkYXBlc3QxF
14aae0 6a 41 55 42 67 4e 56 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 jAUBgNVBAoTDU1pY3Jvc2VjIEx0ZC4xF
14ab00 44 41 53 42 67 4e 56 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 DASBgNVBAsTC2UtU3pp.Z25vIENBMSIw
14ab20 49 41 59 44 56 51 51 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 IAYDVQQDExlNaWNyb3NlYyBlLVN6aWdu
14ab40 62 79 42 53 62 32 39 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 byBSb290IENBghEAzLjnv04pGv2i3Gal
14ab60 0a 48 43 77 50 45 54 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 .HCwPETAdBgNVHQ4EFgQUx6BJdRZhhNs
14ab80 78 53 34 54 53 38 54 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 xS4TS8TdAkO9O3PcwDQYJKoZIhvcNAQE
14aba0 46 42 51 41 44 67 67 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 FBQADggEBANMT.nGZjWS7KXHAM/IO8Vb
14abc0 48 30 6a 67 64 73 5a 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 H0jgdsZifOwTsgqRy7RlRw7lrMoHfqaE
14abe0 51 6e 36 2f 49 70 33 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 Qn6/Ip3Xep1fvj1KcExJW4C+FE.aGAHQ
14ac00 7a 41 78 51 6d 48 6c 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 zAxQmHl7tnlJNUb3+FKG6qfx1/4ehHqE
14ac20 35 4d 41 79 6f 70 59 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 5MAyopYse7tDk2016g2JnzgOsHVV4Lxd
14ac40 62 62 39 69 56 2f 61 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 bb9iV/a.86g4nzUGCM4ilb7N1fy+W955
14ac60 61 39 78 36 71 57 56 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 a9x6qWVmvrElWl/tftOsRm1M9DKHtCAE
14ac80 34 47 78 34 73 48 66 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 4Gx4sHfRhUZLphK3dehK.yVZs15KrnfV
14aca0 4a 4f 4e 4a 50 55 2b 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 JONJPU+NVkBHbmJbGSfI+9J8b4PeI3CV
14acc0 69 6d 55 54 59 63 37 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 imUTYc78/MPMMNz7UwiiAc7EBt51alhQ
14ace0 42 0a 53 36 6b 52 6e 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 B.S6kRnSlqLtBdgcDPsiBDxwPgN05dCt
14ad00 78 5a 49 43 55 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 xZICU=.-----END.CERTIFICATE-----
14ad20 0a 0a 43 65 72 74 69 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 ..Certigna.========.-----BEGIN.C
14ad40 45 52 54 49 46 49 43 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 ERTIFICATE-----.MIIDqDCCApCgAwIB
14ad60 41 67 49 4a 41 50 37 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 AgIJAP7c4wEPyUj/MA0GCSqGSIb3DQEB
14ad80 42 51 55 41 4d 44 51 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 BQUAMDQxCzAJBgNVBAYTAkZSMRIw.EAY
14ada0 44 56 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 DVQQKDAlEaGlteW90aXMxETAPBgNVBAM
14adc0 4d 43 45 4e 6c 63 6e 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 MCENlcnRpZ25hMB4XDTA3MDYyOTE1MTM
14ade0 77 4e 56 6f 58 44 54 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 wNVoXDTI3.MDYyOTE1MTMwNVowNDELMA
14ae00 6b 47 41 31 55 45 42 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 kGA1UEBhMCRlIxEjAQBgNVBAoMCURoaW
14ae20 31 35 62 33 52 70 63 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 15b3RpczERMA8GA1UEAwwI.Q2VydGlnb
14ae40 6d 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 mEwggEiMA0GCSqGSIb3DQEBAQUAA4IBD
14ae60 77 41 77 67 67 45 4b 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 wAwggEKAoIBAQDIaPHJ1tazNHUmgh7st
14ae80 4c 37 71 0a 58 4f 45 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 L7q.XOEm7RFHYeGifBZ4QCHkYJ5ayGPh
14aea0 78 4c 47 57 6b 76 38 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 xLGWkv8YbWkj4Sti993iNi+RB7lIzw7s
14aec0 65 62 59 73 35 7a 52 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 ebYs5zRLcAglozyH.GxnygQcPOJAZ0xH
14aee0 2b 68 72 54 79 30 56 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 +hrTy0V4eHpbNgGzOOzGTtvKg0KmVEn2
14af00 6c 6d 73 78 72 79 49 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 lmsxryIRWijOp5yIVUxbwzBfsV1/p.og
14af20 71 59 43 64 37 6a 58 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 qYCd7jX5xv3EjjhQsVWqa6n6xI4wmy9/
14af40 51 79 33 6c 34 30 76 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 Qy3l40vhx4XUJbzg4ij02Q130yGLMLLG
14af60 71 2f 6a 6a 38 55 45 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 q/jj8UEYkg.DncUtT2UCIf3JR7VsmAA7
14af80 47 38 71 4b 43 56 75 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 G8qKCVuKj4YYxclPz5EIBb2JsglrgVKt
14afa0 4f 64 6a 4c 50 4f 4d 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 OdjLPOMFlN+XPsRGgjBRmKf.Irjxwo1p
14afc0 33 50 6f 36 57 41 62 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 3Po6WAbfAgMBAAGjgbwwgbkwDwYDVR0T
14afe0 41 51 48 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 47 75 33 2b AQH/BAUwAwEB/zAdBgNVHQ4EFgQUGu3+
14b000 51 54 6d 51 0a 74 43 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 QTmQ.tCRZvgHyUtVF9lo53BEwZAYDVR0
14b020 6a 42 46 30 77 57 34 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 jBF0wW4AUGu3+QTmQtCRZvgHyUtVF9lo
14b040 35 33 42 47 68 4f 4b 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 53BGhOKQ2MDQxCzAJ.BgNVBAYTAkZSMR
14b060 49 77 45 41 59 44 56 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 IwEAYDVQQKDAlEaGlteW90aXMxETAPBg
14b080 4e 56 42 41 4d 4d 43 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 NVBAMMCENlcnRpZ25hggkA/tzjAQ/J.S
14b0a0 50 38 77 44 67 59 44 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 P8wDgYDVR0PAQH/BAQDAgEGMBEGCWCGS
14b0c0 41 47 47 2b 45 49 42 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 AGG+EIBAQQEAwIABzANBgkqhkiG9w0BA
14b0e0 51 55 46 41 41 4f 43 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 QUFAAOCAQEA.hQMeknH2Qq/ho2Ge6/PA
14b100 44 2f 4b 6c 31 4e 71 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 D/Kl1NqV5ta+aDY9fm4fTIrv0Q8hbV6l
14b120 55 6d 50 4f 45 76 6a 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 UmPOEvjvKtpv6zf+EwLHyzs+.ImvaYS5
14b140 2f 31 48 49 39 33 54 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 /1HI93TDhHkxAGYwP15zRgzB7mFncfca
14b160 35 44 43 6c 4d 6f 54 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 5DClMoTOi62c6ZYTTluLtdkVwj7Ur3vk
14b180 6a 31 6b 6c 75 0a 50 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 j1klu.PBS1xp81HlDQwY9qcEQCYsuuHW
14b1a0 68 42 70 36 70 58 36 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 hBp6pX6FOqB9IG9tUUBguRA3UsbHK1YZ
14b1c0 57 61 44 59 75 35 44 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 WaDYu5Def131TN3ubY.1gkIl2PlwS6wt
14b1e0 30 51 6d 77 43 62 41 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 0QmwCbAr1UwnjvVNioZBPRcHv/PLLf/0
14b200 50 32 48 51 42 48 56 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 P2HQBHVESO7SMAhqaQoLf0V+LBOK/Qw.
14b220 57 79 48 38 45 5a 45 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 WyH8EZE0vkHve52Xdf+XlcCWWC/qu0bX
14b240 75 2b 54 5a 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 u+TZLg==.-----END.CERTIFICATE---
14b260 2d 2d 0a 0a 44 65 75 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 --..Deutsche.Telekom.Root.CA.2.=
14b280 3d 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
14b2a0 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 6e 7a 43 43 41 6f EGIN.CERTIFICATE-----.MIIDnzCCAo
14b2c0 65 67 41 77 49 42 41 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 egAwIBAgIBJjANBgkqhkiG9w0BAQUFAD
14b2e0 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
14b300 4d 54 0a 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 MT.RGV1dHNjaGUgVGVsZWtvbSBBRzEfM
14b320 42 30 47 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 B0GA1UECxMWVC1UZWxlU2VjIFRydXN0I
14b340 45 4e 6c 62 6e 52 6c 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 ENlbnRlcjEjMCEG.A1UEAxMaRGV1dHNj
14b360 61 47 55 67 56 47 56 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 aGUgVGVsZWtvbSBSb290IENBIDIwHhcN
14b380 4f 54 6b 77 4e 7a 41 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 OTkwNzA5MTIxMTAwWhcNMTkwNzA5.MjM
14b3a0 31 4f 54 41 77 57 6a 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 1OTAwWjBxMQswCQYDVQQGEwJERTEcMBo
14b3c0 47 41 31 55 45 43 68 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 GA1UEChMTRGV1dHNjaGUgVGVsZWtvbSB
14b3e0 42 52 7a 45 66 4d 42 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 BRzEfMB0G.A1UECxMWVC1UZWxlU2VjIF
14b400 52 79 64 58 4e 30 49 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 RydXN0IENlbnRlcjEjMCEGA1UEAxMaRG
14b420 56 31 64 48 4e 6a 61 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 V1dHNjaGUgVGVsZWtvbSBS.b290IENBI
14b440 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 44 DIwggEiMA0GCSqGSIb3DQEBAQUAA4IBD
14b460 77 41 77 67 67 45 4b 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 wAwggEKAoIBAQCrC6M14IspFLEUha88E
14b480 4f 51 35 0a 62 7a 56 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 OQ5.bzVdSq7d6mGNlUn0b2SjGmBmpKlA
14b4a0 49 6f 54 5a 31 4b 58 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 IoTZ1KXleJMOaAGtuU1cOs7TuKhCQN/P
14b4c0 6f 37 71 43 57 57 71 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 o7qCWWqSG6wcmtoI.KyUn+WkjR/Hg6yx
14b4e0 36 6d 2f 55 54 41 74 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 6m/UTAtB+NHzCnjwAWav12gz1MjwrrFD
14b500 61 31 73 50 65 67 35 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 a1sPeg5TKqAyZMg4ISFZbavva4VhY.AU
14b520 6c 66 63 6b 45 38 46 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 lfckE8FQYBjl2tqriTtM2e66foai1SNN
14b540 73 36 37 31 78 31 55 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 s671x1Udrb8zH57nGYMsRUFUQM+ZtV7a
14b560 33 66 47 41 69 67 6f 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 3fGAigo4aK.Se5TBY8ZTNXeWHmb0mocQ
14b580 71 76 46 31 61 66 50 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 qvF1afPaA+W5OFhmHZhyJF81j4A4pFQh
14b5a0 2b 47 64 43 75 61 74 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 +GdCuatl9Idxjp9y7zaAzTV.jlsB9WoH
14b5c0 74 78 61 32 62 6b 70 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 txa2bkp/AgMBAAGjQjBAMB0GA1UdDgQW
14b5e0 42 42 51 78 77 33 6b 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 BBQxw3kbuvVT1xfgiXotF2wKsyudMzAP
14b600 42 67 4e 56 0a 48 52 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 BgNV.HRMECDAGAQH/AgEFMA4GA1UdDwE
14b620 42 2f 77 51 45 41 77 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 B/wQEAwIBBjANBgkqhkiG9w0BAQUFAAO
14b640 43 41 51 45 41 6c 47 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 CAQEAlGRZrTlk5ynr.E/5aw4sTV8gEJP
14b660 42 30 64 38 42 67 34 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 B0d8Bg42f76Ymmg7+Wgnxu1MM9756Abr
14b680 73 70 74 4a 68 36 73 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 sptJh6sTtU6zkXR34ajgv8HzFZMQSy.z
14b6a0 68 66 7a 4c 4d 64 69 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 hfzLMdiNlXiItiJVbSYSKpk+tYcNthEe
14b6c0 46 70 61 49 7a 70 58 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 FpaIzpXl/V6ME+un2pMSyuOoAPjPuCp1
14b6e0 4e 4a 37 30 72 4f 6f 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 NJ70rOo4nI8.rZ7/gFnkm0W09juwzTkZ
14b700 6d 44 4c 6c 36 69 46 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 mDLl6iFhkOQxIY40sfcvNUqFENrnijch
14b720 76 6c 6c 6a 34 50 4b 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 vllj4PKFiDFT1FQUhXB59C4G.dyd1Lx+
14b740 34 69 76 6e 2b 78 62 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 4ivn+xbrYNuSD7Odlt79jWvNGr4GUN9R
14b760 42 6a 4e 59 6a 31 68 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 BjNYj1h7P9WgbRGOiWrqnNVmh5XAFmw4
14b780 6a 56 35 6d 55 0a 43 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 jV5mU.Cm26OWMohpLzGITY+9HPBVZkVw
14b7a0 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 43 79 ==.-----END.CERTIFICATE-----..Cy
14b7c0 62 65 72 74 72 75 73 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 bertrust.Global.Root.===========
14b7e0 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
14b800 54 45 2d 2d 2d 2d 2d 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 TE-----.MIIDoTCCAomgAwIBAgILBAAA
14b820 41 41 41 42 44 34 57 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 AAABD4WqLUgwDQYJKoZIhvcNAQEFBQAw
14b840 4f 7a 45 59 4d 42 59 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 OzEYMBYGA1UEChMPQ3li.ZXJ0cnVzdCw
14b860 67 53 57 35 6a 4d 52 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 gSW5jMR8wHQYDVQQDExZDeWJlcnRydXN
14b880 30 49 45 64 73 62 32 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 0IEdsb2JhbCBSb290MB4XDTA2MTIxNTA
14b8a0 34 0a 4d 44 41 77 4d 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 4.MDAwMFoXDTIxMTIxNTA4MDAwMFowOz
14b8c0 45 59 4d 42 59 47 41 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 EYMBYGA1UEChMPQ3liZXJ0cnVzdCwgSW
14b8e0 35 6a 4d 52 38 77 48 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 5jMR8wHQYDVQQD.ExZDeWJlcnRydXN0I
14b900 45 64 73 62 32 4a 68 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 Edsb2JhbCBSb290MIIBIjANBgkqhkiG9
14b920 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 0a 2b 4d 69 38 w0BAQEFAAOCAQ8AMIIBCgKCAQEA.+Mi8
14b940 76 52 52 51 5a 68 50 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 vRRQZhP/8NN57CPytxrHjoXxEnOmGaoQ
14b960 32 35 79 69 5a 58 52 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 25yiZXRadz5RfVb23CO21O1fWLE3TdVJ
14b980 44 6d 37 31 61 6f 66 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 Dm71aofW.0ozSJ8bi/zafmGWgE07GKmS
14b9a0 62 31 5a 41 53 7a 78 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 b1ZASzxQG9Dvj1Ci+6A74q05IlG2OlTE
14b9c0 51 58 4f 32 69 4c 62 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 QXO2iLb3VOm2yHLtgwEZL.AfVJrn5Git
14b9e0 42 30 6a 61 45 4d 41 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 B0jaEMAs7u/OePuGtm839EAL9mJRQr3R
14ba00 41 77 48 51 65 57 50 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 AwHQeWP032a7iPt3sMpTjr3kfb1V05/I
14ba20 69 6e 0a 38 39 63 71 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 in.89cqdPHoWqI7n1C6poxFNcJQZZXcY
14ba40 34 4c 76 33 62 39 33 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 4Lv3b93TZxiyWNzFtApD0mpSPCzqrdsx
14ba60 61 63 77 4f 55 42 64 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 acwOUBdrsTiXSZT.8M4cIwhhqJQZugRi
14ba80 51 4f 77 66 4f 48 42 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 QOwfOHB3EgZxpzAYXSUnpQIDAQABo4Gl
14baa0 4d 49 47 69 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 MIGiMA4GA1UdDwEB/wQEAwIBBjAP.BgN
14bac0 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 44 67 51 57 42 42 53 VHRMBAf8EBTADAQH/MB0GA1UdDgQWBBS
14bae0 32 43 48 73 4e 65 73 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 2CHsNesysIEyGVjJez6tuhS1wVzA/BgN
14bb00 56 48 52 38 45 4f 44 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 VHR8EODA2.MDSgMqAwhi5odHRwOi8vd3
14bb20 64 33 4d 69 35 77 64 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 d3Mi5wdWJsaWMtdHJ1c3QuY29tL2NybC
14bb40 39 6a 64 43 39 6a 64 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 9jdC9jdHJvb3QuY3JsMB8G.A1UdIwQYM
14bb60 42 61 41 46 4c 59 49 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 BaAFLYIew16zKwgTIZWMl7Pq26FLXBXM
14bb80 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 42 57 37 77 6f 6a 6f A0GCSqGSIb3DQEBBQUAA4IBAQBW7wojo
14bba0 46 52 4f 0a 6c 5a 66 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 FRO.lZfJ+InaRcHUowAl9B8Tq7ejhVhp
14bbc0 77 6a 43 74 32 42 57 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 wjCt2BWKLePJzYFa+HMjWqd8BfP9IjsO
14bbe0 30 51 62 45 32 7a 5a 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 0QbE2zZMcwSO5bAi.5MXzLqXZI+O4Tko
14bc00 67 70 32 34 43 4a 4a 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 gp24CJJ8iYGd7ix1yCcUxXOl5n4BHPa2
14bc20 68 43 77 63 55 50 55 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 hCwcUPUf/A2kaDAtE52Mlp3+yybh2.hO
14bc40 30 6a 39 6e 30 48 71 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 0j9n0Hq0V+09+zv+mKts2oomcrUtW3Zf
14bc60 41 35 54 47 4f 67 6b 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 A5TGOgkXmTUg9U3YO7n9GPp1Nzw8v/MO
14bc80 78 38 42 4c 6a 59 52 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 x8BLjYRB+T.X3EJIrduPuocA06dGiBh+
14bca0 34 45 33 37 46 37 38 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 4E37F78CkWr1+cXVdCg6mCbpvbjjFspw
14bcc0 67 5a 67 46 4a 30 74 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 gZgFJ0tl0ypkxWdYcQBX0jW.WL1WMRJO
14bce0 45 63 67 68 34 4c 4d 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 Ecgh4LMRkWXbtKaIOM5V.-----END.CE
14bd00 52 54 49 46 49 43 41 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 RTIFICATE-----..ePKI.Root.Certif
14bd20 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 3d 3d 3d 3d ication.Authority.==============
14bd40 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
14bd60 45 52 54 49 46 49 43 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 ERTIFICATE-----.MIIFsDCCA5igAwIB
14bd80 41 67 49 51 46 63 69 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 AgIQFci9ZUdcr7iXAF7kBtK8nTANBgkq
14bda0 68 6b 69 47 39 77 30 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 hkiG9w0BAQUFADBeMQswCQYDVQQG.EwJ
14bdc0 55 56 7a 45 6a 4d 43 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 UVzEjMCEGA1UECgwaQ2h1bmdod2EgVGV
14bde0 73 5a 57 4e 76 62 53 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 sZWNvbSBDby4sIEx0ZC4xKjAoBgNVBAs
14be00 4d 49 57 56 51 53 30 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 MIWVQS0kg.Um9vdCBDZXJ0aWZpY2F0aW
14be20 39 75 49 45 46 31 64 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 9uIEF1dGhvcml0eTAeFw0wNDEyMjAwMj
14be40 4d 78 4d 6a 64 61 46 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 MxMjdaFw0zNDEyMjAwMjMx.MjdaMF4xC
14be60 7a 41 4a 42 67 4e 56 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 zAJBgNVBAYTAlRXMSMwIQYDVQQKDBpDa
14be80 48 56 75 5a 32 68 33 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 HVuZ2h3YSBUZWxlY29tIENvLiwgTHRkL
14bea0 6a 45 71 0a 4d 43 67 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 jEq.MCgGA1UECwwhZVBLSSBSb290IENl
14bec0 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 4d 49 49 43 cnRpZmljYXRpb24gQXV0aG9yaXR5MIIC
14bee0 49 6a 41 4e 42 67 6b 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 IjANBgkqhkiG9w0B.AQEFAAOCAg8AMII
14bf00 43 43 67 4b 43 41 67 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 CCgKCAgEA4SUP7o3biDN1Z82tH306Tm2
14bf20 64 30 79 38 55 38 32 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 d0y8U82N0ywEhajfqhFAHSyZbCUNs.IZ
14bf40 35 71 79 4e 55 44 39 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 5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P
14bf60 34 41 61 6b 50 2f 68 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 4AakP/h2XGtRrBp0xtInAhijHyl3SJCR
14bf80 49 6d 48 4a 37 4b 32 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 ImHJ7K2RKi.lTza6We/CKBk49ZCt0Xvl
14bfa0 2f 54 32 39 64 65 31 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 /T29de1ShUCWH2YWEtgvM3XDZoTM1PRY
14bfc0 66 6c 36 31 64 64 34 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 fl61dd4s5oz9wCGzh1NlDiv.qOx4UXCK
14bfe0 58 42 43 44 55 53 48 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 XBCDUSH3ET00hl7lSM2XgYI1TBnsZfZr
14c000 78 51 57 68 37 6b 63 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 xQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+X
14c020 50 4e 6a 58 0a 31 32 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 PNjX.12ruOzjjK9SXDrkb5wdJfzcq+Xd
14c040 34 7a 31 54 74 57 30 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 4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0B
14c060 5a 76 33 49 34 73 6a 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 Zv3I4sjZsN/+Z0V0O.WQqraffAsgRFel
14c080 51 41 72 72 35 54 39 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 QArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQ
14c0a0 63 47 6c 42 53 42 56 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 cGlBSBVcYn5AGPF8Fqcde+S/uUWH1+.E
14c0c0 54 4f 78 51 76 64 69 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 TOxQvdibBjWzwloPn9s9h6PYq2lY9sJp
14c0e0 78 38 69 51 6b 45 65 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 x8iQkEeb5mKPtf5P0B6ebClAZLSnT0IF
14c100 61 55 51 41 53 32 7a 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 aUQAS2zMnao.lQ2zepr7BxB4EW/hj8e6
14c120 44 79 55 61 64 43 72 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 DyUadCrlHJhBmd8hh+iVBmoKs2pHdmX2
14c140 4f 73 2b 50 59 68 63 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 Os+PYhcZewoozRrSgx4hxyy/.vv9haLd
14c160 6e 47 37 74 34 54 59 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 nG7t4TY3OZ+XkwY63I2binZB1NJipNiu
14c180 4b 6d 70 53 35 6e 65 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 KmpS5nezMirH4JYlcWrYvjB9teSSnUmj
14c1a0 44 68 44 58 69 0a 5a 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 DhDXi.Zo1jDiVN1Rmy5nk3pyKdVDECAw
14c1c0 45 41 41 61 4e 71 4d 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 EAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8u
14c1e0 47 53 4a 67 6c 46 77 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 GSJglFwFU5Lnc/Qkqi.MAwGA1UdEwQFM
14c200 41 4d 42 41 66 38 77 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 AMBAf8wOQYEZyoHAAQxMC8wLQIBADAJB
14c220 67 55 72 44 67 4d 43 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 gUrDgMCGgUAMAcGBWcqAwAABBRFsMLH.
14c240 43 6c 5a 38 37 6c 74 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 ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG
14c260 39 77 30 42 41 51 55 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 9w0BAQUFAAOCAgEACbODU1kBPpVJufGB
14c280 75 76 6c 32 49 43 4f 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 uvl2ICO1J2B0.1GqZNF5sAFPZn/KmsSQ
14c2a0 48 52 47 6f 71 78 71 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 HRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6Y
14c2c0 6c 50 77 5a 70 56 6e 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 lPwZpVnPDimZI+ymBV3QGypzq.KOg4Zy
14c2e0 59 72 38 64 57 31 50 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 Yr8dW1P2WT+DZdjo2NQCCHGervJ8A9tD
14c300 6b 50 4a 58 74 6f 55 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 kPJXtoUHRVnAxZfVo9QZQlUgjgRywVMR
14c320 6e 56 76 77 64 56 0a 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 nVvwdV.xrsStZf0X4OFunHB2WyBEXYKC
14c340 72 43 2f 67 70 66 33 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 rC/gpf36j36+uwtqSiUO1bd0lEursC9C
14c360 42 57 4d 64 31 49 30 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 BWMd1I0ltabrNMdjmEP.NXubrjlpC2Jg
14c380 51 43 41 32 6a 36 2f 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 QCA2j6/7Nu4tCEoduL+bXPjqpRugc6bY
14c3a0 2b 47 37 67 4d 77 52 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 +G7gMwRfaKonh+3ZwZCc7b3jajWvY9+r
14c3c0 0a 47 4e 6d 36 35 75 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 .GNm65ulK6lCKD2GTHuItGeIwlDWSXQ6
14c3e0 32 42 36 38 5a 67 49 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 2B68ZgI9HkFFLLk3dheLSClIKF5r8GrB
14c400 51 41 75 55 42 6f 32 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 QAuUBo2M3IUxE.xJtRmREOc5wGj1Qupy
14c420 68 65 52 44 6d 48 56 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 heRDmHVi03vYVElOEMSyycw5KFNGHLD7
14c440 69 62 53 6b 4e 53 2f 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 ibSkNS/jQ6fbjpKdx2qcgw+BRx.gMYeN
14c460 6b 68 30 49 6b 46 63 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 kh0IkFch4LoGHGLQYlE535YW6i4jRPpp
14c480 32 7a 44 52 2b 32 7a 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 2zDR+2zGp1iro2C6pSe3VkQw63d4k3jM
14c4a0 64 58 48 37 4f 6a 79 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 dXH7Ojy.sP6SHhYKGvzZ8/gntsm+HbRs
14c4c0 5a 4a 42 2f 39 4f 54 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 ZJB/9OTEW9c3rkIO3aQab3yIVMUWbuF6
14c4e0 61 43 37 34 4f 72 38 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 aC74Or8NpDyJO3inTmOD.BCEIZ43ygkn
14c500 51 57 2f 32 78 7a 51 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 QW/2xzQ+DhNQ+IIX3Sj0rnP0qCglN6oH
14c520 34 45 5a 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 2d 2d 0a 4EZw=.-----END.CERTIFICATE-----.
14c540 0a 54 5c 78 63 33 5c 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 .T\xc3\x9c\x42\xC4\xB0TAK.UEKAE.
14c560 4b 5c 78 43 33 5c 78 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 K\xC3\xB6k.Sertifika.Hizmet.Sa\x
14c580 43 34 5c 78 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 C4\x9Flay\xc4\xb1\x63\xc4\xb1s\x
14c5a0 63 34 5c 78 62 31 20 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 c4\xb1.-.S\xC3\xBCr\xC3\xBCm.3.=
14c5c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
14c5e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
14c600 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
14c620 3d 3d 3d 3d 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 ============================.---
14c640 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 46 7a 43 --BEGIN.CERTIFICATE-----.MIIFFzC
14c660 43 41 2f 2b 67 41 77 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 CA/+gAwIBAgIBETANBgkqhkiG9w0BAQU
14c680 46 41 44 43 43 41 53 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 FADCCASsxCzAJBgNVBAYTAlRSMRgwFgY
14c6a0 44 56 51 51 48 0a 44 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 DVQQH.DA9HZWJ6ZSAtIEtvY2FlbGkxRz
14c6c0 42 46 42 67 4e 56 42 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 BFBgNVBAoMPlTDvHJraXllIEJpbGltc2
14c6e0 56 73 49 48 5a 6c 49 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 VsIHZlIFRla25vbG9q.aWsgQXJhxZ90x
14c700 4c 46 79 62 57 45 67 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 LFybWEgS3VydW11IC0gVMOcQsSwVEFLM
14c720 55 67 77 52 67 59 44 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 UgwRgYDVQQLDD9VbHVzYWwgRWxla3Ry.
14c740 62 32 35 70 61 79 42 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 b25payB2ZSBLcmlwdG9sb2ppIEFyYcWf
14c760 64 4d 53 78 63 6d 31 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 dMSxcm1hIEVuc3RpdMO8c8O8IC0gVUVL
14c780 51 55 55 78 49 7a 41 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 QUUxIzAhBgNV.BAsMGkthbXUgU2VydGl
14c7a0 6d 61 57 74 68 63 33 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 maWthc3lvbiBNZXJrZXppMUowSAYDVQQ
14c7c0 44 44 45 46 55 77 35 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 DDEFUw5xCxLBUQUsgVUVLQUUg.S8O2ay
14c7e0 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
14c800 6e 45 73 57 50 45 73 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 nEsWPEsXPEsSAtIFPDvHLDvG0gMzAeFw
14c820 30 77 4e 7a 41 34 0a 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 0wNzA4.MjQxMTM3MDdaFw0xNzA4MjExM
14c840 54 4d 33 4d 44 64 61 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 TM3MDdaMIIBKzELMAkGA1UEBhMCVFIxG
14c860 44 41 57 42 67 4e 56 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 DAWBgNVBAcMD0dlYnpl.IC0gS29jYWVs
14c880 61 54 46 48 4d 45 55 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 aTFHMEUGA1UECgw+VMO8cmtpeWUgQmls
14c8a0 61 57 31 7a 5a 57 77 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 aW1zZWwgdmUgVGVrbm9sb2ppayBBcmHF
14c8c0 0a 6e 33 54 45 73 58 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 .n3TEsXJtYSBLdXJ1bXUgLSBUw5xCxLB
14c8e0 55 51 55 73 78 53 44 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 UQUsxSDBGBgNVBAsMP1VsdXNhbCBFbGV
14c900 72 64 48 4a 76 62 6d 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 rdHJvbmlrIHZl.IEtyaXB0b2xvamkgQX
14c920 4a 68 78 5a 39 30 78 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 JhxZ90xLFybWEgRW5zdGl0w7xzw7wgLS
14c940 42 56 52 55 74 42 52 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 BVRUtBRTEjMCEGA1UECwwaS2Ft.dSBTZ
14c960 58 4a 30 61 57 5a 70 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 XJ0aWZpa2FzeW9uIE1lcmtlemkxSjBIB
14c980 67 4e 56 42 41 4d 4d 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 gNVBAMMQVTDnELEsFRBSyBVRUtBRSBLw
14c9a0 37 5a 72 49 46 4e 6c 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 7ZrIFNl.cnRpZmlrYSBIaXptZXQgU2HE
14c9c0 6e 32 78 68 65 63 53 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 n2xhecSxY8Sxc8SxIC0gU8O8csO8bSAz
14c9e0 4d 49 49 42 49 6a 41 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 MIIBIjANBgkqhkiG9w0B.AQEFAAOCAQ8
14ca00 41 4d 49 49 42 43 67 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 AMIIBCgKCAQEAim1L/xCIOsP2fpTo6iB
14ca20 6b 63 4b 34 68 67 62 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 kcK4hgb46ezzb8R1Sf1n68yJMlaCQvEh
14ca40 4f 0a 45 61 76 37 74 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 O.Eav7t7WNeoMojCZG2E6VQIdhn8WebY
14ca60 47 48 56 32 79 4b 4f 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 GHV2yKO7Rm6sxA/OOqbLLLAdsyv9Lrhc
14ca80 2b 68 44 56 58 44 57 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 +hDVXDWzhXcLh1.xnnRFDDtG1hba+818
14caa0 71 45 68 54 73 58 4f 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 qEhTsXOfJlfbLm4IpNQp81McGq+agV/E
14cac0 35 77 72 48 75 72 2b 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 5wrHur+R84EpW+sky58K5+eeROR.6Oqe
14cae0 79 6a 68 31 6a 6d 4b 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 yjh1jmKwlZMq5d/pXpduIF9fhHpEORlA
14cb00 48 4c 70 56 4b 2f 73 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 HLpVK/swsoHvhOPc7Jg4OQOFCKlUAwUp
14cb20 38 4d 6d 50 69 2b 6f 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 8MmPi+oL.hmUZEdPpCSPeaJMDyTYcIW7
14cb40 4f 6a 47 62 78 6d 54 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 OjGbxmTDY17PDHfiBLqi9ggtm/oLL4eA
14cb60 61 67 73 4e 41 67 51 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 agsNAgQIDAQABo0IwQDAd.BgNVHQ4EFg
14cb80 51 55 76 59 69 48 79 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 QUvYiHyY/2pAoLquvF/pEjnatKijIwDg
14cba0 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 77 YDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/w
14cbc0 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 46 42 51 41 44 67 QF.MAMBAf8wDQYJKoZIhvcNAQEFBQADg
14cbe0 67 45 42 41 42 31 38 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 gEBAB18+kmPNOm3JpIWmgV050vQbTlsw
14cc00 79 62 32 7a 72 67 78 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 yb2zrgxvMTfvCr4.N5EY3ATIZJkrGG2A
14cc20 41 31 6e 4a 72 76 68 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 A1nJrvhY0D7twyOfaTyGOBye79oneNGE
14cc40 4e 33 47 4b 50 45 73 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 N3GKPEs5z35FBtYt2IpNeBLWrcLT.y9L
14cc60 51 51 66 4d 6d 4e 6b 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 QQfMmNkqblWwM7uXRQydmwYj3erMgbOq
14cc80 77 61 53 76 48 49 4f 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 waSvHIOgMA8RBBZniP+Rr+KCGgceExh/
14cca0 56 53 34 45 53 73 68 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 VS4ESshYh.LBOhgLJeDEoTniDYYkCrkO
14ccc0 70 6b 53 69 2b 73 44 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 pkSi+sDQESeUWoL4cZaMjihccwsnX5OD
14cce0 2b 79 77 4a 4f 30 61 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 +ywJO0a+IDRM5noN+J1q2M.dqMTw5RhK
14cd00 32 76 5a 62 4d 45 48 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 2vZbMEHCiIHhWyFJEapvj+LeISCfiQMn
14cd20 66 32 42 4e 2b 4d 6c 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 f2BN+MlqO02TpUsyZyQ2uypQjyttgI=.
14cd40 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 70 61 -----END.CERTIFICATE-----..Buypa
14cd60 73 73 20 43 6c 61 73 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 ss.Class.2.CA.1.================
14cd80 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-----
14cda0 0a 4d 49 49 44 55 7a 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 .MIIDUzCCAjugAwIBAgIBATANBgkqhki
14cdc0 47 39 77 30 42 41 51 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 G9w0BAQUFADBLMQswCQYDVQQGEwJOTzE
14cde0 64 4d 42 73 47 41 31 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 dMBsGA1UECgwU.QnV5cGFzcyBBUy05OD
14ce00 4d 78 4e 6a 4d 7a 4d 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 MxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3
14ce20 4d 67 51 32 78 68 63 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 MgQ2xhc3MgMiBDQSAxMB4XDTA2.MTAxM
14ce40 7a 45 77 4d 6a 55 77 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 zEwMjUwOVoXDTE2MTAxMzEwMjUwOVowS
14ce60 7a 45 4c 4d 41 6b 47 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 zELMAkGA1UEBhMCTk8xHTAbBgNVBAoMF
14ce80 45 4a 31 65 58 42 68 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 EJ1eXBh.c3MgQVMtOTgzMTYzMzI3MR0w
14cea0 47 77 59 44 56 51 51 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 GwYDVQQDDBRCdXlwYXNzIENsYXNzIDIg
14cec0 51 30 45 67 4d 54 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 Q0EgMTCCASIwDQYJKoZI.hvcNAQEBBQA
14cee0 44 67 67 45 50 41 44 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 DggEPADCCAQoCggEBAIs8B0XY9t/mx8q
14cf00 36 6a 55 50 46 52 34 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 6jUPFR42wWsE425KEHK8T1A9vNkYgxC7
14cf20 4d 0a 63 58 41 30 6f 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 M.cXA0ojTTNy7Y3Tp3L8DrKehc0rWpkT
14cf40 53 48 49 6c 6e 2b 7a 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 SHIln+zNvnma+WwajHQN2lFYxuyHyXA8
14cf60 76 6d 49 50 4c 58 6c 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 vmIPLXl18xoS83.0r7uvqmtqEyeIWZDO
14cf80 36 69 38 38 77 6d 6a 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 6i88wmjONVZJMHCR3axiFyCO7srpgTXj
14cfa0 41 65 50 7a 64 56 42 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 AePzdVBHfCuuCkslFJgNJQ72uA4.0Z0z
14cfc0 50 68 58 30 6b 7a 4c 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 PhX0kzLFANq1KWYOOngPIVJfAuWSeyXT
14cfe0 6b 68 34 76 46 5a 32 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 kh4vFZ2B5J2O6O+JzhRMVB0cgRJNcKi+
14d000 45 41 55 58 66 68 2f 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 EAUXfh/R.uFdV7c27UsKwHnjCTTZoy1Y
14d020 6d 77 56 4c 42 76 58 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 mwVLBvXb3WNVyfh9EdrsAiR0WnVE1703
14d040 43 56 75 39 72 34 49 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 CVu9r4Iw7DekCAwEAAaNC.MEAwDwYDVR
14d060 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 46 67 51 55 50 34 0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUP4
14d080 32 61 57 59 76 38 65 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 2aWYv8e3uco684sDntkHGA1sgwDgYDVR
14d0a0 30 50 0a 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 42 0P.AQH/BAQDAgEGMA0GCSqGSIb3DQEBB
14d0c0 51 55 41 41 34 49 42 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 QUAA4IBAQAVGn4TirnoB6NLJzKyQJHyI
14d0e0 64 46 6b 68 62 35 6a 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 dFkhb5jatLPgcIV.1Xp+DCmsNx4cfHZS
14d100 6c 64 71 31 66 79 4f 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 ldq1fyOhKXdlyTKdqC5Wq2B2zha0jX94
14d120 77 4e 57 5a 55 59 4e 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 wNWZUYN/Xtm+DKhQ7SLHrQVMdvvt.7h5
14d140 48 5a 50 62 33 4a 33 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 HZPb3J31cKA9FxVxiXqaakZG3Uxcu3K1
14d160 67 6e 5a 5a 6b 4f 62 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 gnZZkOb1naLKuBctN518fV4bVIJwo+28
14d180 54 4f 50 58 32 45 5a 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 TOPX2EZL2.fZleHwzoq0QkKXJAPTZSr4
14d1a0 78 59 6b 48 50 42 37 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 xYkHPB7GEseaHsh7U/2k3ZIQAw3pDaDt
14d1c0 4d 61 53 4b 6b 2b 68 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 MaSKk+hQsUi4y8QZ5q9w5w.wDX3OaJdZ
14d1e0 74 42 37 57 5a 2b 6f 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 tB7WZ+oRxKaJyOkLY4ng5IgodcVf/EuG
14d200 4f 37 30 53 48 38 76 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 O70SH8vf/GhGLWhC5SgYiAynB321O+/T
14d220 49 68 6f 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 45 Iho.-----END.CERTIFICATE-----..E
14d240 42 47 20 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 BG.Elektronik.Sertifika.Hizmet.S
14d260 61 5c 78 43 34 5c 78 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 a\xC4\x9Flay\xc4\xb1\x63\xc4\xb1
14d280 73 5c 78 63 34 5c 78 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 s\xc4\xb1.======================
14d2a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
14d2c0 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.
14d2e0 43 45 52 54 49 46 49 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 CERTIFICATE-----.MIIF5zCCA8+gAwI
14d300 42 41 67 49 49 54 4b 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 BAgIITK9zQhyOdAIwDQYJKoZIhvcNAQE
14d320 46 42 51 41 77 67 59 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 FBQAwgYAxODA2BgNVBAMML0VCRyBF.bG
14d340 56 72 64 48 4a 76 62 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 VrdHJvbmlrIFNlcnRpZmlrYSBIaXptZX
14d360 51 67 55 32 48 45 6e 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 QgU2HEn2xhecSxY8Sxc8SxMTcwNQYDVQ
14d380 51 4b 44 43 35 46 51 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 QKDC5FQkcg.QmlsacWfaW0gVGVrbm9sb
14d3a0 32 70 70 62 47 56 79 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 2ppbGVyaSB2ZSBIaXptZXRsZXJpIEEux
14d3c0 5a 34 75 4d 51 73 77 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 Z4uMQswCQYDVQQGEwJUUjAe.Fw0wNjA4
14d3e0 4d 54 63 77 4d 44 49 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 MTcwMDIxMDlaFw0xNjA4MTQwMDMxMDla
14d400 4d 49 47 41 4d 54 67 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 MIGAMTgwNgYDVQQDDC9FQkcgRWxla3Ry
14d420 62 32 35 70 0a 61 79 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 b25p.ayBTZXJ0aWZpa2EgSGl6bWV0IFN
14d440 68 78 4a 39 73 59 58 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 hxJ9sYXnEsWPEsXPEsTE3MDUGA1UECgw
14d460 75 52 55 4a 48 49 45 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 uRUJHIEJpbGnFn2lt.IFRla25vbG9qaW
14d480 78 6c 63 6d 6b 67 64 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 xlcmkgdmUgSGl6bWV0bGVyaSBBLsWeLj
14d4a0 45 4c 4d 41 6b 47 41 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 ELMAkGA1UEBhMCVFIwggIiMA0GCSqG.S
14d4c0 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 75 6f Ib3DQEBAQUAA4ICDwAwggIKAoICAQDuo
14d4e0 49 52 68 30 44 70 71 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 IRh0DpqZhAy2DE4f6en5f2h4fuXd7hxl
14d500 75 67 54 6c 6b 61 44 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 ugTlkaDT7by.X3JWbhNgpQGR4lvFzVcf
14d520 64 32 4e 52 2f 79 38 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 d2NR/y8927k/qqk153nQ9dAktiHq6yOU
14d540 2f 69 6d 2f 2b 34 6d 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 /im/+4mRDGSaBUorzAzu8T2b.gmmkTPi
14d560 61 62 2b 63 69 32 68 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 ab+ci2hC6X5L8GCcKqKpE+i4stPtGmgg
14d580 44 67 33 4b 72 69 4f 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 Dg3KriORqcsnlZR9uKg+ds+g75Axuetp
14d5a0 58 2f 64 66 72 0a 65 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 X/dfr.eYteIAbTdgtsApWjluTLdlHRKJ
14d5c0 32 68 47 76 78 45 6f 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 2hGvxEok3MenaoDT2/F08iiFD9rrbskF
14d5e0 42 4b 57 35 2b 56 51 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 BKW5+VQarKD7JK/oCZ.TqNGFav4c0Jqw
14d600 6d 5a 32 73 51 6f 6d 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 mZ2sQomFd2TkuzbqV9UIlKRcF0T6kjsb
14d620 67 4e 73 32 64 31 73 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 gNs2d1s/OsNA/+mgxKb8amTD8UmTDGy.
14d640 59 35 6c 68 63 75 63 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 Y5lhcucqZJnSuOl14nypqZoaqsNW2xCa
14d660 50 49 4e 53 74 6e 75 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 PINStnuWt6yHd6i58mcLlEOzrz5z+kI2
14d680 73 53 58 46 43 6a 45 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 sSXFCjEmN1Zn.uqMLfdb3ic1nobc6HmZ
14d6a0 50 39 71 42 56 46 43 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 P9qBVFCVMLDMNpkGMvQQxahByCp0OLna
14d6c0 39 58 76 4e 52 69 59 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 9XvNRiYuoP1Vzv9s6xiQFlpJI.qkuNKg
14d6e0 50 6c 56 35 45 51 39 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 PlV5EQ9GooFW5Hd4RcUXSfGenmHmMWOe
14d700 4d 52 46 65 4e 59 47 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 MRFeNYGkS9y8RsZteEBt8w9DeiQyJ50h
14d720 42 73 33 37 76 6d 0a 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 Bs37vm.ExH8nYQKE3vwO9D8owrXieqWf
14d740 6f 31 49 68 52 35 6b 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 o1IhR5kX9tUoqzVegJ5a9KK8GfaZXINF
14d760 48 44 6b 36 59 35 34 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 HDk6Y54jzJ0fFfy1tb0.Nokb+Clsi7n2
14d780 6c 39 47 6b 4c 71 71 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 l9GkLqq+CxnCRelwXQIDAJ3Zo2MwYTAP
14d7a0 42 67 4e 56 48 52 4d 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 BgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB
14d7c0 0a 2f 77 51 45 41 77 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 ./wQEAwIBBjAdBgNVHQ4EFgQU587GT/w
14d7e0 57 5a 35 62 36 53 71 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 WZ5b6SqMHwQSny2re2kcwHwYDVR0jBBg
14d800 77 46 6f 41 55 35 38 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 wFoAU587GT/wW.Z5b6SqMHwQSny2re2k
14d820 63 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 4a 75 59 6d 6c cwDQYJKoZIhvcNAQEFBQADggIBAJuYml
14d840 32 2b 38 79 67 6a 64 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 2+8ygjdsZs93/mQJ7ANtyVDR2t.FcU22
14d860 4e 55 35 37 2f 49 65 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 NU57/IeIl6zgrRdu0waypIN30ckHrMk2
14d880 70 47 49 36 59 4e 77 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 pGI6YNw3ZPX6bqz3xZaPt7gyPvT/Wwp+
14d8a0 42 56 47 6f 47 67 6d 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 BVGoGgm.zJNSroIBk5DKd8pNSe/iWtkq
14d8c0 76 54 44 4f 54 4c 4b 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 vTDOTLKBtjDOWU/aWR1qeqRFsIImgYZ2
14d8e0 39 66 55 51 41 4c 6a 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 9fUQALjuswnoT4cCB64k.XPBfrAowzIp
14d900 41 6f 48 4d 45 77 66 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 AoHMEwfuJJPaaHFy3PApnNgUIMbOv2AF
14d920 6f 4b 75 42 34 6a 33 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 oKuB4j3TeuFGkjGwgPaL7s9QJ/XvCgKq
14d940 54 0a 62 43 6d 59 49 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 T.bCmYIai7FvOpEl90tYeY8pUm3zTvil
14d960 4f 52 69 46 30 61 6c 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 ORiF0alKM/fCL414i6poyWqD1SNGKfAB
14d980 35 55 56 55 4a 6e 78 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 5UVUJnxk1Gj7sU.RT0KlhaOEKGXmdXTM
14d9a0 49 58 4d 33 72 52 79 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 IXM3rRyt7yKPBgpaP3ccQfuJDlq+u2lr
14d9c0 44 67 76 2b 52 34 51 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 Dgv+R4QDgZxGhBM/nV+/x5XOULK.1+EV
14d9e0 6f 56 5a 56 57 52 76 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 oVZVWRvRo68R2E7DpSvvkL/A7IITW43W
14da00 63 69 79 54 54 6f 39 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 ciyTTo9qKd+FPNMN4KIYEsxVL0e3p5sC
14da20 2f 6b 48 32 69 45 78 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 /kH2iExt.2qkBR4NkJ2IQgtYSe14DHzS
14da40 70 79 5a 48 2b 72 31 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 pyZH+r11thie3I6p1GMog57AP14kOpmc
14da60 69 59 2f 53 44 51 53 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 iY/SDQSsGS7tY1dHXt7kQ.Y9iJSrSq3R
14da80 5a 6a 39 57 36 2b 59 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 Zj9W6+YKH47ejWkE8axsWgKdOnIaj1Wj
14daa0 7a 33 78 30 6d 69 49 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 z3x0miIZpKlVIglnKaZsv30oZDfCK+lv
14dac0 6d 39 0a 41 61 68 48 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 m9.AahH3eU7QPl1K5srRmSGjR70j/sHd
14dae0 39 44 71 53 61 49 63 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 9DqSaIcjVIUpgqT.-----END.CERTIFI
14db00 43 41 54 45 2d 2d 2d 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 CATE-----..certSIGN.ROOT.CA.====
14db20 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
14db40 41 54 45 2d 2d 2d 2d 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 ATE-----.MIIDODCCAiCgAwIBAgIGIAY
14db60 46 46 6e 41 43 4d 41 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 FFnACMA0GCSqGSIb3DQEBBQUAMDsxCzA
14db80 4a 42 67 4e 56 42 41 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 JBgNVBAYTAlJPMREwDwYD.VQQKEwhjZX
14dba0 4a 30 55 30 6c 48 54 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 J0U0lHTjEZMBcGA1UECxMQY2VydFNJR0
14dbc0 34 67 55 6b 39 50 56 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 4gUk9PVCBDQTAeFw0wNjA3MDQxNzIwMD
14dbe0 52 61 0a 46 77 30 7a 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 Ra.Fw0zMTA3MDQxNzIwMDRaMDsxCzAJB
14dc00 67 4e 56 42 41 59 54 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 gNVBAYTAlJPMREwDwYDVQQKEwhjZXJ0U
14dc20 30 6c 48 54 6a 45 5a 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 0lHTjEZMBcGA1UE.CxMQY2VydFNJR04g
14dc40 55 6b 39 50 56 43 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 Uk9PVCBDQTCCASIwDQYJKoZIhvcNAQEB
14dc60 42 51 41 44 67 67 45 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 BQADggEPADCCAQoCggEBALczuX7I.JUq
14dc80 4f 74 64 75 30 4b 42 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 Otdu0KBuqV5Do0SLTZLrTk+jUrIZhQGp
14dca0 67 56 32 68 55 68 45 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 gV2hUhE28alQCBf/fm5oqrl0Hj0rDKH/
14dcc0 76 2b 79 76 36 65 66 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 v+yv6efHH.rfAQUySQi2bJqIirr1qjAO
14dce0 6d 2b 75 6b 62 75 57 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 m+ukbuW3N7LBeCgV5iLKECZbO9xSsAfs
14dd00 54 38 41 7a 4e 58 44 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 T8AzNXDe3i+s5dRdY4zTW2.ssHQnIFKq
14dd20 75 53 79 41 56 77 64 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 uSyAVwdj1+ZxLGt24gh65AIgoDzMKND5
14dd40 70 43 43 72 6c 55 6f 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 pCCrlUoSe1b16kQOA7+j0xbm0bqQfWwC
14dd60 48 54 44 0a 30 49 67 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 HTD.0IgztnzXdN/chNFDDnU5oSVAKOp4
14dd80 79 77 34 73 4c 6a 6d 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 yw4sLjmdjItuFhwvJoIQ4uNllAoEwF73
14dda0 58 56 76 34 45 4f 4c 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 XVv4EOLQunpL+943.AAAaWyjj0pxzPjK
14ddc0 48 6d 4b 48 4a 55 53 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 HmKHJUS/X3qwzs08CAwEAAaNCMEAwDwY
14dde0 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 0a 41 66 DVR0TAQH/BAUwAwEB/zAOBgNVHQ8B.Af
14de00 38 45 42 41 4d 43 41 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 8EBAMCAcYwHQYDVR0OBBYEFOCMm9slSb
14de20 50 78 66 49 62 57 73 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 PxfIbWskKHC9BroNnkMA0GCSqGSIb3DQ
14de40 45 42 42 51 55 41 41 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 EBBQUAA4IB.AQA+0hyJLjX8+HXd5n9li
14de60 50 52 79 54 4d 6b 73 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 PRyTMks1zJO890ZeUe9jjtbkw9QSSQTa
14de80 78 51 47 63 75 38 4a 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 xQGcu8J06Gh40CEyecYMnQ8.SG4Pn0vU
14dea0 39 78 37 54 6b 34 5a 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 9x7Tk4ZkVJdjclDVVc/6IJMCopvDI5NO
14dec0 46 6c 56 32 6f 48 42 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 FlV2oHB5bc0hH88vLbwZ44gx+FkagQnI
14dee0 6c 36 5a 30 0a 78 32 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 l6Z0.x2DEW8xXjrJ1/RsCCdtZb3KTafc
14df00 78 51 64 61 49 4f 4c 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 xQdaIOL+Hsr0Wefmq5L6IJd1hJyMctTE
14df20 48 42 44 61 30 47 70 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 HBDa0GpC9oHRxUIlt.vBTjD4au8as+x6
14df40 41 4a 7a 4b 4e 49 30 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 AJzKNI0eDbZOeStc+vckNwi/nDhDwTqn
14df60 36 53 6d 31 64 54 6b 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 6Sm1dTk/pwwpEOMfmbZ13pljheX7Nz.T
14df80 6f 67 56 5a 39 36 65 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 ogVZ96edhBiIL5VaZVDADlN9u6wWk5JR
14dfa0 46 52 59 58 30 4b 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 FRYX0KD.-----END.CERTIFICATE----
14dfc0 2d 0a 0a 43 4e 4e 49 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 -..CNNIC.ROOT.==========.-----BE
14dfe0 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 56 54 43 43 41 6a 32 GIN.CERTIFICATE-----.MIIDVTCCAj2
14e000 67 41 77 49 42 41 67 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 gAwIBAgIESTMAATANBgkqhkiG9w0BAQU
14e020 46 41 44 41 79 4d 51 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 FADAyMQswCQYDVQQGEwJDTjEOMAwGA1U
14e040 45 0a 43 68 4d 46 51 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 E.ChMFQ05OSUMxEzARBgNVBAMTCkNOTk
14e060 6c 44 49 46 4a 50 54 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 lDIFJPT1QwHhcNMDcwNDE2MDcwOTE0Wh
14e080 63 4e 4d 6a 63 77 4e 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 cNMjcwNDE2MDcw.OTE0WjAyMQswCQYDV
14e0a0 51 51 47 45 77 4a 44 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 QQGEwJDTjEOMAwGA1UEChMFQ05OSUMxE
14e0c0 7a 41 52 42 67 4e 56 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 zARBgNVBAMTCkNOTklDIFJPT1Qw.ggEi
14e0e0 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
14e100 41 6f 49 42 41 51 44 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 AoIBAQDTNfc/c3et6FtzF8LRb+1VvG7q
14e120 36 4b 52 35 73 6d 7a 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 6KR5smzD.o+/hn7E7SIX1mlwhIhAsxYL
14e140 4f 32 75 4f 61 62 6a 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 O2uOabjfhhyzcuQxauohV3/2q2x8x6gH
14e160 78 33 7a 6b 42 77 52 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 x3zkBwRP9SFIhxFXf2tiz.VHa6dLG3fd
14e180 66 41 36 50 5a 5a 78 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 fA6PZZxU3Iva0fFNrfWEQlMhkqx35+jq
14e1a0 34 34 73 44 42 37 52 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 44sDB7R3IJMfAw28Mbdim7aXZOV/kbZK
14e1c0 4b 54 0a 56 72 64 76 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 KT.VrdvmW7bCgScEeOAH8tjlBAKqeFkg
14e1e0 6a 48 35 6a 43 66 74 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 jH5jCftppkA9nCTGPihNIaj3XrCGHn2e
14e200 6d 55 31 7a 35 44 72 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 mU1z5DrvTOTn1Or.czvmmzQgLx3vqR1j
14e220 47 71 43 41 32 77 4d 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 GqCA2wMv+SYahtKNu6m+UjqHZ0gNv7Sg
14e240 32 43 61 2b 49 31 39 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 2Ca+I19zN38m5pIEo3/PIKe38zrK.y5n
14e260 4c 41 67 4d 42 41 41 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 LAgMBAAGjczBxMBEGCWCGSAGG+EIBAQQ
14e280 45 41 77 49 41 42 7a 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 EAwIABzAfBgNVHSMEGDAWgBRl8jGtKvf
14e2a0 33 33 56 4b 57 43 73 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 33VKWCscC.wQ7vptU7ETAPBgNVHRMBAf
14e2c0 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 2f 6a 41 64 42 67 8EBTADAQH/MAsGA1UdDwQEAwIB/jAdBg
14e2e0 4e 56 48 51 34 45 46 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 NVHQ4EFgQUZfIxrSr3991S.lgrHAsEO7
14e300 36 62 56 4f 78 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 41 6bVOxEwDQYJKoZIhvcNAQEFBQADggEBA
14e320 45 73 31 37 73 7a 6b 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 Es17szkrr/Dbq2flTtLP1se31cpolnKO
14e340 4f 4b 35 0a 47 76 2b 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 OK5.Gv+e5m4y3R6u6jW39ZORTtpC4cMX
14e360 59 46 44 79 30 56 77 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 YFDy0VwmuYK36m3knITnA3kXr5g9lNvH
14e380 75 67 44 6e 75 4c 38 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 ugDnuL8BV8F3RTIM.O/G0HAiw/VGgod2
14e3a0 61 48 52 4d 32 6d 6d 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 aHRM2mm23xzy54cXZF/qD1T0VoDy7Hgv
14e3c0 69 79 4a 41 2f 71 49 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 iyJA/qIYM/PmLXoXLT1tLYhFHxUV8.BS
14e3e0 39 42 73 5a 34 51 61 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 9BsZ4QaRuZluBVeftOhpm4lNqGOGqTo+
14e400 66 4c 62 75 58 66 36 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 fLbuXf6iFViZx9fX+Y9QCJ7uOEwFyWtc
14e420 56 47 36 6b 62 67 68 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 VG6kbghVW2.G8kS1sHNzYDzAgE8yGnLR
14e440 55 68 6a 32 4a 54 51 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 Uhj2JTQ7IUOO04RZfSCjKY9ri4ilAnIX
14e460 4f 6f 38 67 56 30 57 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 Oo8gV0WKgOXFlUJ24pBgp5m.mxE=.---
14e480 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 70 70 6c 69 63 61 74 --END.CERTIFICATE-----..Applicat
14e4a0 69 6f 6e 43 41 20 2d 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 ionCA.-.Japanese.Government.====
14e4c0 3d 3d 3d 3d 3d 3d 3d 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 ===============================.
14e4e0 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
14e500 6f 44 43 43 41 6f 69 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 oDCCAoigAwIBAgIBMTANBgkqhkiG9w0B
14e520 41 51 55 46 41 44 42 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 AQUFADBDMQswCQYDVQQGEwJKUDEcMBoG
14e540 41 31 55 45 43 68 4d 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 A1UEChMT.SmFwYW5lc2UgR292ZXJubWV
14e560 75 64 44 45 57 4d 42 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 udDEWMBQGA1UECxMNQXBwbGljYXRpb25
14e580 44 51 54 41 65 46 77 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 DQTAeFw0wNzEyMTIxNTAw.MDBaFw0xNz
14e5a0 45 79 4d 54 49 78 4e 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 EyMTIxNTAwMDBaMEMxCzAJBgNVBAYTAk
14e5c0 70 51 4d 52 77 77 47 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 pQMRwwGgYDVQQKExNKYXBhbmVzZSBHb3
14e5e0 5a 6c 0a 63 6d 35 74 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 Zl.cm5tZW50MRYwFAYDVQQLEw1BcHBsa
14e600 57 4e 68 64 47 6c 76 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 WNhdGlvbkNBMIIBIjANBgkqhkiG9w0BA
14e620 51 45 46 41 41 4f 43 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 QEFAAOCAQ8AMIIB.CgKCAQEAp23gdE6H
14e640 6a 36 55 47 33 6d 69 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 j6UG3mii24aZS2QNcfAKBZuOquHMLtJq
14e660 4f 38 46 36 74 4a 64 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 O8F6tJdhjYq+xpqcBrSGUeQ3DnR4.fl+
14e680 4b 66 35 53 6b 31 30 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 Kf5Sk10cI/VBaVuRorChzoHvpfxiSQE8
14e6a0 74 6e 66 57 75 52 45 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 tnfWuREhzNgaeZCw7NCPbXCbkcXmP1G5
14e6c0 35 49 72 6d 54 77 63 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 5IrmTwcrN.wVbtiGrXoDkhBFcsovW8R0
14e6e0 46 50 58 6a 51 69 6c 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 FPXjQilbUfKW1eSvNNcr5BViCH/OlQR9
14e700 63 77 46 4f 35 63 6a 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 cwFO5cjFW6WY2H/CPek9AE.jP3vbb3Qe
14e720 73 6d 6c 4f 6d 70 79 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 smlOmpyM8ZKDQUXKi17safY1vC+9D/qD
14e740 69 68 74 51 57 45 6a 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 ihtQWEjdnjDuGWk81quzMKq2edY3rZ+n
14e760 59 56 75 0a 6e 79 6f 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 YVu.nyoKb58DKTCXKB28t89UKU5RMfkn
14e780 74 69 67 6d 2f 71 4a 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 tigm/qJj5kEW8DOYRwIDAQABo4GeMIGb
14e7a0 4d 42 30 47 41 31 55 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 MB0GA1UdDgQWBBRU.WssmP3HMlEYNllP
14e7c0 71 61 30 6a 51 6b 2f 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 qa0jQk/5CdTAOBgNVHQ8BAf8EBAMCAQY
14e7e0 77 57 51 59 44 56 52 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 wWQYDVR0RBFIwUKROMEwxCzAJBgNV.BA
14e800 59 54 41 6b 70 51 4d 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 YTAkpQMRgwFgYDVQQKDA/ml6XmnKzlm7
14e820 33 6d 6c 4c 2f 6c 75 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 3mlL/lupwxIzAhBgNVBAsMGuOCouODl+
14e840 4f 44 71 75 4f 43 73 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 ODquOCseOD.vOOCt+ODp+ODs0NBMA8GA
14e860 31 55 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 1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNA
14e880 51 45 46 42 51 41 44 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 QEFBQADggEBADlqRHZ3ODrs.o2dGD/mL
14e8a0 42 71 6a 37 61 70 41 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 Bqj7apAxzn7s2tGJfHrrLgy9mTLnsCTW
14e8c0 77 2f 2f 31 73 6f 67 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 w//1sogJhyzjVOGjprIIC8CFqMjSnHH2
14e8e0 48 5a 39 67 0a 2f 44 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 HZ9g./DgzE+Ge3Atf2hZQKXsvcJEPmbo
14e900 30 4e 49 32 56 64 4d 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 0NI2VdMV+eKlmXb3KIXdCEKxmJj3ekav
14e920 39 46 66 42 76 37 57 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 9FfBv7WxfEPjzFvYD.io+nEhEMy/0/ec
14e940 47 63 2f 57 4c 75 6f 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 Gc/WLuo89UDNErXxc+4z6/wCs+CZv+iK
14e960 5a 2b 74 4a 49 58 2f 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 Z+tJIX/COUgb1up8WMwusRRdv4QcmW.d
14e980 75 70 77 58 33 6b 53 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 upwX3kSa+SjB1oF7ydJzyGfikwJcGapJ
14e9a0 73 45 72 45 55 34 7a 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 sErEU4z0g781mzSDjJkaP+tBXhfAx2o4
14e9c0 35 43 73 4a 4f 41 50 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 5CsJOAPQKdL.rosot4LKGAfmt1t06SAZ
14e9e0 66 37 49 62 69 56 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 2d f7IbiVQ=.-----END.CERTIFICATE---
14ea00 2d 2d 0a 0a 47 65 6f 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 --..GeoTrust.Primary.Certificati
14ea20 6f 6e 20 41 75 74 68 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 on.Authority.-.G3.==============
14ea40 3d 3d 3d 3d 3d 3d 3d 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 ===============================.
14ea60 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
14ea80 2f 6a 43 43 41 75 61 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 /jCCAuagAwIBAgIQFaxulBmyeUtB9iep
14eaa0 77 78 67 50 48 7a 41 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 wxgPHzANBgkqhkiG9w0BAQsFADCBmDEL
14eac0 4d 41 6b 47 41 31 55 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 MAkGA1UE.BhMCVVMxFjAUBgNVBAoTDUd
14eae0 6c 62 31 52 79 64 58 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 lb1RydXN0IEluYy4xOTA3BgNVBAsTMCh
14eb00 6a 4b 53 41 79 4d 44 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 jKSAyMDA4IEdlb1RydXN0.IEluYy4gLS
14eb20 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 32 35 73 65 54 BGb3IgYXV0aG9yaXplZCB1c2Ugb25seT
14eb40 45 32 4d 44 51 47 41 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 E2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbW
14eb60 46 79 0a 65 53 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 Fy.eSBDZXJ0aWZpY2F0aW9uIEF1dGhvc
14eb80 6d 6c 30 65 53 41 74 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 ml0eSAtIEczMB4XDTA4MDQwMjAwMDAwM
14eba0 46 6f 58 44 54 4d 33 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 FoXDTM3MTIwMTIz.NTk1OVowgZgxCzAJ
14ebc0 42 67 4e 56 42 41 59 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 BgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9U
14ebe0 63 6e 56 7a 64 43 42 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 cnVzdCBJbmMuMTkwNwYDVQQLEzAo.Yyk
14ec00 67 4d 6a 41 77 4f 43 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 gMjAwOCBHZW9UcnVzdCBJbmMuIC0gRm9
14ec20 79 49 47 46 31 64 47 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 yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA
14ec40 30 42 67 4e 56 42 41 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 0BgNVBAMT.LUdlb1RydXN0IFByaW1hcn
14ec60 6b 67 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 kgQ2VydGlmaWNhdGlvbiBBdXRob3JpdH
14ec80 6b 67 4c 53 42 48 4d 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 kgLSBHMzCCASIwDQYJKoZI.hvcNAQEBB
14eca0 51 41 44 67 67 45 50 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 QADggEPADCCAQoCggEBANziXmJYHTNXO
14ecc0 54 49 7a 2b 75 76 4c 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 TIz+uvLh4yn1ErdBojqZI4xmKU4kB6Yz
14ece0 79 35 6a 0a 4b 2f 42 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 y5j.K/BGvESyiaHAKAxJcCGVn2TAppMS
14ed00 41 6d 55 6d 68 73 61 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 AmUmhsalifD614SgcK9PGpc/BkTVyety
14ed20 45 48 33 6b 4d 53 6a 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 EH3kMSj7HGHmKAdE.c5IiaacDiGydY8h
14ed40 53 32 70 67 6e 35 77 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 S2pgn5whMcD60yRLBxWeDXTPzAxHsatB
14ed60 54 34 74 47 36 4e 6d 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 T4tG6NmCUgLthY2xbF37fQJQeqw3C.IS
14ed80 68 77 69 50 2f 57 4a 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 hwiP/WJmxsYAQlTlV+fe+/lEjetx3dcI
14eda0 30 46 58 34 69 6c 6d 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 0FX4ilm/LC7urRQEFtYjgdVgbFA0dRIB
14edc0 6e 38 65 78 41 4c 44 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 n8exALDmKu.dlW/X3e+PkkBUz2YJQN2J
14ede0 46 6f 64 74 4e 75 4a 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 FodtNuJ6nnltrM7P7pMKEF/BqxqjsHQ9
14ee00 67 55 64 66 65 5a 43 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 gUdfeZChuOl1UcCAwEAAaNC.MEAwDwYD
14ee20 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
14ee40 42 41 4d 43 41 51 59 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 BAMCAQYwHQYDVR0OBBYEFMR5yo6hTgMd
14ee60 48 4e 78 72 0a 32 7a 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 HNxr.2zFblD4/MH8tMA0GCSqGSIb3DQE
14ee80 42 43 77 55 41 41 34 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 BCwUAA4IBAQAtxRPPVoB7eni9n64smef
14eea0 76 32 74 2b 55 58 67 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 v2t+UXglpp+duaIy9.cr5HqQ6XErhK8W
14eec0 54 54 4f 64 38 6c 4e 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 TTOd8lNNTBzU6B8A8ExCSzNJbGpqow32
14eee0 68 68 63 39 66 35 6a 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 hhc9f5joWJ7w5elShKKiePEI4ufIbE.A
14ef00 70 37 61 44 48 64 6c 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 p7aDHdlDkQNkv39sxY2+hENHYwOB4lqK
14ef20 56 62 33 63 76 54 64 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 Vb3cvTdFZx3NWZXqxNT2I7BQMXXExZac
14ef40 73 65 33 61 51 48 45 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 se3aQHEerGD.AWh9jUGhlBjBJVz88P6D
14ef60 41 6f 64 38 44 51 33 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 Aod8DQ3PLghcSkANPuyBYeYk28rgDi0H
14ef80 73 6a 35 57 33 49 33 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 sj5W3I31QYUHSJsMC8tJP33s.t/3LjWe
14efa0 4a 47 71 76 74 75 78 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 JGqvtux6jAAgIFyqCXDFdRootD4abdNl
14efc0 46 2b 39 52 41 73 58 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 F+9RAsXqqaC2Gspki4cErx5z481+oghL
14efe0 72 47 52 45 74 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 rGREt.-----END.CERTIFICATE-----.
14f000 0a 74 68 61 77 74 65 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 .thawte.Primary.Root.CA.-.G2.===
14f020 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
14f040 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 69 44 43 43 41 67 32 GIN.CERTIFICATE-----.MIICiDCCAg2
14f060 67 41 77 49 42 41 67 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 gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjA
14f080 4b 42 67 67 71 68 6b 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 KBggqhkjOPQQDAzCBhDELMAkGA1UEBhM
14f0a0 43 0a 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 C.VVMxFTATBgNVBAoTDHRoYXd0ZSwgSW
14f0c0 35 6a 4c 6a 45 34 4d 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 5jLjE4MDYGA1UECxMvKGMpIDIwMDcgdG
14f0e0 68 68 64 33 52 6c 4c 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 hhd3RlLCBJbmMu.IC0gRm9yIGF1dGhvc
14f100 6d 6c 36 5a 57 51 67 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 ml6ZWQgdXNlIG9ubHkxJDAiBgNVBAMTG
14f120 33 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 0a 51 30 45 67 3RoYXd0ZSBQcmltYXJ5IFJvb3Qg.Q0Eg
14f140 4c 53 42 48 4d 6a 41 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 LSBHMjAeFw0wNzExMDUwMDAwMDBaFw0z
14f160 4f 44 41 78 4d 54 67 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 ODAxMTgyMzU5NTlaMIGEMQswCQYDVQQG
14f180 45 77 4a 56 55 7a 45 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 EwJVUzEV.MBMGA1UEChMMdGhhd3RlLCB
14f1a0 4a 62 6d 4d 75 4d 54 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 JbmMuMTgwNgYDVQQLEy8oYykgMjAwNyB
14f1c0 30 61 47 46 33 64 47 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 0aGF3dGUsIEluYy4gLSBG.b3IgYXV0aG
14f1e0 39 79 61 58 70 6c 5a 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 9yaXplZCB1c2Ugb25seTEkMCIGA1UEAx
14f200 4d 62 64 47 68 68 64 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 MbdGhhd3RlIFByaW1hcnkgUm9vdCBDQS
14f220 41 74 0a 49 45 63 79 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 At.IEcyMHYwEAYHKoZIzj0CAQYFK4EEA
14f240 43 49 44 59 67 41 45 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 CIDYgAEotWcgnuVnfFSeIf+iha/Bebfo
14f260 77 4a 50 44 51 66 47 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 wJPDQfGAFG6DAJS.LSKkQjnE/o/qycG+
14f280 31 45 33 2f 6e 33 71 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 1E3/n3qe4rF8mq2nhglzh9HnmuN6papu
14f2a0 2b 37 71 7a 63 4d 42 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 +7qzcMBniKI11KOasf2twu8x+qi5.8/s
14f2c0 49 78 70 48 52 2b 79 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 IxpHR+ymVo0IwQDAPBgNVHRMBAf8EBTA
14f2e0 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 41 64 42 67 4e DAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgN
14f300 56 48 51 34 45 46 67 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 VHQ4EFgQU.mtgAMADna3+FGO6Lts6KDP
14f320 67 52 34 62 73 77 43 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 gR4bswCgYIKoZIzj0EAwMDaQAwZgIxAN
14f340 33 34 34 46 64 48 57 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 344FdHW6fmCsO99YCKlzUN.G4k8VIZ3K
14f360 4d 71 68 39 48 6e 65 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 Mqh9HneteY4sPBlcIx/AlTCv//YoT7Zz
14f380 77 49 78 41 4d 53 4e 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 wIxAMSNlPzcU9LcnXgWHxUzI1NS41oxX
14f3a0 5a 33 4b 0a 72 72 30 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 Z3K.rr0TKUQNJ1uo52icEvdYPy5yAlej
14f3c0 6a 36 45 55 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 j6EULg==.-----END.CERTIFICATE---
14f3e0 2d 2d 0a 0a 74 68 61 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 --..thawte.Primary.Root.CA.-.G3.
14f400 3d 3d 3d 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 ===========================.----
14f420 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 4b 6a 43 43 -BEGIN.CERTIFICATE-----.MIIEKjCC
14f440 41 78 4b 67 41 77 49 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 AxKgAwIBAgIQYAGXt0an6rS0mtZLL/eQ
14f460 2b 7a 41 4e 42 67 6b 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 +zANBgkqhkiG9w0BAQsFADCBrjELMAkG
14f480 41 31 55 45 0a 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 58 64 A1UE.BhMCVVMxFTATBgNVBAoTDHRoYXd
14f4a0 30 5a 53 77 67 53 57 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 0ZSwgSW5jLjEoMCYGA1UECxMfQ2VydGl
14f4c0 6d 61 57 4e 68 64 47 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 maWNhdGlvbiBTZXJ2.aWNlcyBEaXZpc2
14f4e0 6c 76 62 6a 45 34 4d 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 lvbjE4MDYGA1UECxMvKGMpIDIwMDggdG
14f500 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 76 0a 63 hhd3RlLCBJbmMuIC0gRm9yIGF1dGhv.c
14f520 6d 6c 36 5a 57 51 67 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 ml6ZWQgdXNlIG9ubHkxJDAiBgNVBAMTG
14f540 33 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 45 67 4c 3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgL
14f560 53 42 48 4d 7a 41 65 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 SBHMzAeFw0w.ODA0MDIwMDAwMDBaFw0z
14f580 4e 7a 45 79 4d 44 45 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 NzEyMDEyMzU5NTlaMIGuMQswCQYDVQQG
14f5a0 45 77 4a 56 55 7a 45 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 EwJVUzEVMBMGA1UEChMMdGhh.d3RlLCB
14f5c0 4a 62 6d 4d 75 4d 53 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 JbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F
14f5e0 30 61 57 39 75 49 46 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 0aW9uIFNlcnZpY2VzIERpdmlzaW9uMTg
14f600 77 4e 67 59 44 0a 56 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 wNgYD.VQQLEy8oYykgMjAwOCB0aGF3dG
14f620 55 73 49 45 6c 75 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 UsIEluYy4gLSBGb3IgYXV0aG9yaXplZC
14f640 42 31 63 32 55 67 62 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 B1c2Ugb25seTEkMCIG.A1UEAxMbdGhhd
14f660 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 49 45 63 7a 4d 3RlIFByaW1hcnkgUm9vdCBDQSAtIEczM
14f680 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 0a IIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A.
14f6a0 4d 49 49 42 43 67 4b 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 MIIBCgKCAQEAsr8nLPvb2FvdeHsbnndm
14f6c0 67 63 73 2b 76 48 79 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 gcs+vHyu86YnmjSjaDFxODNi5PNxZnmx
14f6e0 71 57 57 6a 70 59 76 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 qWWjpYvVj2At.P0LMqmsywCPLLEHd5N/
14f700 38 59 5a 7a 69 63 37 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 8YZzic7IilRFDGF/Eth9XbAoFWCLINkw
14f720 36 66 4b 58 52 7a 34 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 6fKXRz4aviKdEAhN0cXMKQlkC.+BsUa0
14f740 4c 66 62 31 2b 36 61 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 Lfb1+6a4KinVvnSr0eAXLbS3ToO39/fR
14f760 38 45 74 43 61 62 34 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 8EtCab4LRarEc9VbjXsCZSKAExQGbY2S
14f780 53 39 39 69 72 59 0a 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 S99irY.7CFJXJv2eul/VTV+lmuNk5Mny
14f7a0 35 4b 37 36 71 78 41 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 5K76qxAwJ/C+IDPXfRa3M50hqY+bAtTy
14f7c0 72 32 53 7a 68 6b 47 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 r2SzhkGcuYMXDhpxwTW.vGzOW/b3aJzc
14f7e0 4a 52 56 49 69 4b 48 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 JRVIiKHpqfiYnODz1TEoYRFsZ5aNOZnL
14f800 77 6b 55 6b 4f 51 49 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 wkUkOQIDAQABo0IwQDAPBgNVHRMBAf8E
14f820 0a 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 41 .BTADAQH/MA4GA1UdDwEB/wQEAwIBBjA
14f840 64 42 67 4e 56 48 51 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 dBgNVHQ4EFgQUrWyqlGCc7eT/+j4KdCt
14f860 6a 41 2f 65 32 57 62 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 jA/e2Wb8wDQYJ.KoZIhvcNAQELBQADgg
14f880 45 42 41 42 70 41 32 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 EBABpA2JVlrAmSicY59BDlqQ5mU1143v
14f8a0 6f 6b 6b 62 76 6e 52 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 okkbvnRFHfxhY0Cu9qRFHqKweK.A3rD6
14f8c0 7a 38 4b 4c 46 49 57 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 z8KLFIWoCtDuSWQP3CpMyVtRRooOyfPq
14f8e0 73 4d 70 51 68 76 66 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 sMpQhvfO0zAMzRbQYi/aytlryjvsvXDq
14f900 6d 62 4f 65 31 62 75 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 mbOe1bu.t8jLZ8HJnBoYuMTDSQPxYA5Q
14f920 7a 55 62 46 38 33 64 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 zUbF83d597YV4Djbxy8ooAw/dyZ02SUS
14f940 32 6a 48 61 47 68 37 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 2jHaGh7cKUGRIjxpp7sC.8rZcJwOJ9Ab
14f960 71 6d 2b 52 79 67 75 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 qm+RyguOhCcHpABnTPtRwa7pxpqpYrvS
14f980 37 36 57 79 32 37 34 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 76Wy274fMm7v/OeZWYdMKp8RcTGB7BXc
14f9a0 6d 0a 65 72 2f 59 42 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 m.er/YB1IsYvdwY9k5vG8cwnncdimvzs
14f9c0 55 73 5a 41 52 65 69 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 UsZAReiDZuMdRAGmI0Nj81Aa6sY6A=.-
14f9e0 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 54 72 75 ----END.CERTIFICATE-----..GeoTru
14fa00 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 6f 72 69 st.Primary.Certification.Authori
14fa20 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 3d ty.-.G2.========================
14fa40 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
14fa60 20 43 45 52 54 49 46 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 .CERTIFICATE-----.MIICrjCCAjWgAw
14fa80 49 42 41 67 49 51 50 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 IBAgIQPLL0SAoA4v7rJDteYD7DazAKBg
14faa0 67 71 68 6b 6a 4f 50 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 gqhkjOPQQDAzCBmDELMAkGA1UEBhMC.V
14fac0 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 4e 30 49 45 6c 75 59 VMxFjAUBgNVBAoTDUdlb1RydXN0IEluY
14fae0 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 41 33 49 45 64 6c 62 y4xOTA3BgNVBAsTMChjKSAyMDA3IEdlb
14fb00 31 52 79 64 58 4e 30 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 1RydXN0IElu.Yy4gLSBGb3IgYXV0aG9y
14fb20 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 31 55 45 41 78 4d 74 aXplZCB1c2Ugb25seTE2MDQGA1UEAxMt
14fb40 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 5a 58 4a 30 61 57 5a R2VvVHJ1c3QgUHJpbWFyeSBD.ZXJ0aWZ
14fb60 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 49 45 63 79 4d 42 34 pY2F0aW9uIEF1dGhvcml0eSAtIEcyMB4
14fb80 58 44 54 41 33 4d 54 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 XDTA3MTEwNTAwMDAwMFoXDTM4MDExODI
14fba0 7a 4e 54 6b 31 0a 4f 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 zNTk1.OVowgZgxCzAJBgNVBAYTAlVTMR
14fbc0 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 4a 62 6d 4d 75 4d 54 YwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMT
14fbe0 6b 77 4e 77 59 44 56 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 kwNwYDVQQLEzAoYykg.MjAwNyBHZW9Uc
14fc00 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 68 76 63 6d 6c 36 5a nVzdCBJbmMuIC0gRm9yIGF1dGhvcml6Z
14fc20 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 4d 54 4c 55 64 6c 0a WQgdXNlIG9ubHkxNjA0BgNVBAMTLUdl.
14fc40 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 47 6c 6d 61 57 4e 68 b1RydXN0IFByaW1hcnkgQ2VydGlmaWNh
14fc60 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 6a 42 32 4d 42 41 47 dGlvbiBBdXRob3JpdHkgLSBHMjB2MBAG
14fc80 42 79 71 47 53 4d 34 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 ByqGSM49AgEG.BSuBBAAiA2IABBWx6P0
14fca0 44 46 55 50 6c 72 4f 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 DFUPlrOuHNxFi79KDNlJ9RVcLSo17VDs
14fcc0 36 62 6c 38 56 41 73 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 6bl8VAsBQps8lL33KSLjHUGMc.KiEIfJ
14fce0 6f 32 32 41 76 2b 30 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 o22Av+0SbFWDEwKCXzXV2juLaltJLtbC
14fd00 79 66 36 39 31 44 69 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 yf691DiaI8S0iRHVDsJt/WYC69IaNCME
14fd20 41 77 44 77 59 44 0a 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 AwDwYD.VR0TAQH/BAUwAwEB/zAOBgNVH
14fd40 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 42 56 66 4e Q8BAf8EBAMCAQYwHQYDVR0OBBYEFBVfN
14fd60 56 64 52 56 66 73 6c 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 VdRVfslsq0DafwBo/q+.EVXVMAoGCCqG
14fd80 53 4d 34 39 42 41 4d 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 SM49BAMDA2cAMGQCMGSWWaboCd6Luvpa
14fda0 69 49 6a 77 48 35 48 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 iIjwH5HTRqjySkwCY/tsXzjbLkGTqQ7m
14fdc0 0a 6e 64 77 78 48 4c 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 .ndwxHLKgpxgceeHHNgIwOlavmnRs9vu
14fde0 44 34 44 50 54 43 46 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 D4DPTCF+hnMJbn0bWtsuRBmOiBuczrD6
14fe00 6f 67 52 4c 51 79 37 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 ogRLQy7rQkgu2.npaqBA+K.-----END.
14fe20 43 45 52 54 49 46 49 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 CERTIFICATE-----..VeriSign.Unive
14fe40 72 73 61 6c 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 rsal.Root.Certification.Authorit
14fe60 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 3d y.==============================
14fe80 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
14fea0 54 49 46 49 43 41 54 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 TIFICATE-----.MIIEuTCCA6GgAwIBAg
14fec0 49 51 51 42 72 45 5a 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 IQQBrEZCGzEyEDDrvkEhrFHTANBgkqhk
14fee0 69 47 39 77 30 42 41 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 iG9w0BAQsFADCBvTELMAkGA1UE.BhMCV
14ff00 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 4c 43 42 4a 62 VMxFzAVBgNVBAoTDlZlcmlTaWduLCBJb
14ff20 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 62 69 42 55 63 mMuMR8wHQYDVQQLExZWZXJpU2lnbiBUc
14ff40 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 4c 45 7a 45 6f nVzdCBO.ZXR3b3JrMTowOAYDVQQLEzEo
14ff60 59 79 6b 67 4d 6a 41 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 YykgMjAwOCBWZXJpU2lnbiwgSW5jLiAt
14ff80 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 42 76 62 6d 78 IEZvciBhdXRob3JpemVk.IHVzZSBvbmx
14ffa0 35 4d 54 67 77 4e 67 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 5MTgwNgYDVQQDEy9WZXJpU2lnbiBVbml
14ffc0 32 5a 58 4a 7a 59 57 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 2ZXJzYWwgUm9vdCBDZXJ0aWZpY2F0aW9
14ffe0 75 0a 49 45 46 31 64 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 u.IEF1dGhvcml0eTAeFw0wODA0MDIwMD
150000 41 77 4d 44 42 61 46 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 AwMDBaFw0zNzEyMDEyMzU5NTlaMIG9MQ
150020 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
150040 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
150060 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
150080 4f 6a 41 34 42 67 4e 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 OjA4BgNVBAsTMShjKSAyMDA4IFZlcmlT
1500a0 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
1500c0 5a 57 51 67 64 58 4e 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 ZWQgdXNl.IG9ubHkxODA2BgNVBAMTL1Z
1500e0 6c 63 6d 6c 54 61 57 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 lcmlTaWduIFVuaXZlcnNhbCBSb290IEN
150100 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 35 4d 49 lcnRpZmljYXRpb24gQXV0.aG9yaXR5MI
150120 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
150140 49 42 43 67 4b 43 41 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 IBCgKCAQEAx2E3XrEBNNti1xWb/1hajC
150160 4d 6a 0a 31 6d 43 4f 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 Mj.1mCOkdeQmIN65lgZOIzF9uVkhbSic
150180 66 76 74 76 62 6e 61 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 fvtvbnazU0AtMgtc6XHaXGVHzk8skQHn
1501a0 4f 67 4f 2b 6b 31 4b 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 OgO+k1KxCHfKWGP.MiJhgsWHH26MfF8W
1501c0 49 46 46 45 30 58 42 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 IFFE0XBPV+rjHOPMee5Y2A7Cs0WTwCzn
1501e0 6d 68 63 72 65 77 41 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 mhcrewA3ekEzeOEz4vMQGn+HLL72.9fd
150200 43 34 75 57 2f 68 32 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 C4uW/h2KJXwBL38Xd5HVEMkE6HnFuacs
150220 4c 64 55 59 49 30 63 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 LdUYI0crSK5XQz/u5QGtkjFdN/BMReYT
150240 74 58 6c 54 32 4e 4a 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 tXlT2NJ8I.AfMQJQYXStrxHXpma5hgZq
150260 54 5a 37 39 49 75 67 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 TZ79IugvHw7wnqRMkVauIDbjPTrJ9VAM
150280 66 32 43 47 71 55 75 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 f2CGqUuV/c4DPxhGD5WycR.tPwW8rtWa
1502a0 6f 41 6c 6a 51 49 44 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 oAljQIDAQABo4GyMIGvMA8GA1UdEwEB/
1502c0 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 4d wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGM
1502e0 47 30 47 0a 43 43 73 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 G0G.CCsGAQUFBwEMBGEwX6FdoFswWTBX
150300 4d 46 55 57 43 57 6c 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 MFUWCWltYWdlL2dpZjAhMB8wBwYFKw4D
150320 41 68 6f 45 46 49 2f 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 AhoEFI/l0xqGrI2O.a8PPgGrUSBgsexk
150340 75 4d 43 55 57 49 32 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 uMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWd
150360 75 4c 6d 4e 76 62 53 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 uLmNvbS92c2xvZ28uZ2lmMB0GA1Ud.Dg
150380 51 57 42 42 53 32 64 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 QWBBS2d/ppSEefUxLVwuoHMnYH0ZcHGT
1503a0 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 41 53 76 6a 34 73 41 ANBgkqhkiG9w0BAQsFAAOCAQEASvj4sA
1503c0 50 6d 4c 47 64 37 35 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 PmLGd75JR3.Y8xuTPl9Dg3cyLk1uXBPY
1503e0 2f 6f 6b 2b 6d 79 44 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 /ok+myDjEedO2Pzmvl2MpWRsXe8rJq+s
150400 65 51 78 49 63 61 42 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 eQxIcaBlVZaDrHC1LGmWazx.Y8u4TB1Z
150420 6b 45 72 76 6b 42 59 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 kErvkBYoH1quEPuBUDgMbMzxPcP1Y+Oz
150440 34 79 48 4a 4a 44 6e 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 4yHJJDnp/RVmRvQbEdBNc6N9Rvk97ahf
150460 59 74 54 78 0a 50 2f 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 YtTx.P/jgdFcrGJ2BtMQo2pSXpXDrrB2
150480 2b 42 78 48 77 31 64 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 +BxHw1dvd5Yzw1TKwg+ZX4o+/vqGqvz0
1504a0 64 74 64 51 34 36 74 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 dtdQ46tewXDpPaj+P.wGZsY6rp2aQW9I
1504c0 48 52 6c 52 51 4f 66 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 HRlRQOfc2VNNnSj3BzgXucfr2YYdhFh5
1504e0 69 51 78 65 75 47 4d 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 iQxeuGMMY1v/D/w1WIg0vvBZIGcfK4.m
150500 4a 4f 33 37 4d 32 43 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 JO37M2CYfE45k+XmCpajQ==.-----END
150520 20 43 45 52 54 49 46 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 .CERTIFICATE-----..VeriSign.Clas
150540 73 20 33 20 50 75 62 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 s.3.Public.Primary.Certification
150560 20 41 75 74 68 6f 72 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 .Authority.-.G4.================
150580 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
1505a0 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
1505c0 41 54 45 2d 2d 2d 2d 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 ATE-----.MIIDhDCCAwqgAwIBAgIQL4D
1505e0 2b 49 34 77 4f 49 67 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 +I4wOIg9IZxIokYesszAKBggqhkjOPQQ
150600 44 41 7a 43 42 79 6a 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 DAzCByjELMAkGA1UEBhMC.VVMxFzAVBg
150620 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 48 51 NVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQ
150640 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 5a 58 YDVQQLExZWZXJpU2lnbiBUcnVzdCBOZX
150660 52 33 0a 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 77 4e R3.b3JrMTowOAYDVQQLEzEoYykgMjAwN
150680 79 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 68 64 yBWZXJpU2lnbiwgSW5jLiAtIEZvciBhd
1506a0 58 52 6f 62 33 4a 70 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 XRob3JpemVkIHVz.ZSBvbmx5MUUwQwYD
1506c0 56 51 51 44 45 7a 78 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 VQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1
1506e0 59 6d 78 70 59 79 42 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 YmxpYyBQcmltYXJ5IENlcnRpZmlj.YXR
150700 70 62 32 34 67 51 58 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 pb24gQXV0aG9yaXR5IC0gRzQwHhcNMDc
150720 78 4d 54 41 31 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 xMTA1MDAwMDAwWhcNMzgwMTE4MjM1OTU
150740 35 57 6a 43 42 79 6a 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 5WjCByjEL.MAkGA1UEBhMCVVMxFzAVBg
150760 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 48 51 NVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQ
150780 59 44 56 51 51 4c 45 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 YDVQQLExZWZXJpU2lnbiBU.cnVzdCBOZ
1507a0 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 77 4e XR3b3JrMTowOAYDVQQLEzEoYykgMjAwN
1507c0 79 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 68 64 yBWZXJpU2lnbiwgSW5jLiAtIEZvciBhd
1507e0 58 52 6f 0a 62 33 4a 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 XRo.b3JpemVkIHVzZSBvbmx5MUUwQwYD
150800 56 51 51 44 45 7a 78 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 VQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1
150820 59 6d 78 70 59 79 42 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 YmxpYyBQcmltYXJ5.IENlcnRpZmljYXR
150840 70 62 32 34 67 51 58 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 pb24gQXV0aG9yaXR5IC0gRzQwdjAQBgc
150860 71 68 6b 6a 4f 50 51 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 qhkjOPQIBBgUrgQQAIgNiAASnVnp8.Ut
150880 70 6b 6d 77 34 74 58 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 pkmw4tXNherJI9/gHmGUo9FANL+mAnIN
1508a0 6d 44 69 57 6e 36 56 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 mDiWn6VMaaGF5VKmTeBvaNSjutEDxlPZ
1508c0 43 49 42 49 6e 67 4d 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 CIBIngMGGz.rl0Bp3vefLK+ymVhAIau2
1508e0 6f 39 37 30 49 6d 74 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 o970ImtTR1ZmkGxvEeA3J5iw/mjgbIwg
150900 61 38 77 44 77 59 44 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 a8wDwYDVR0TAQH/BAUwAwEB./zAOBgNV
150920 48 51 38 42 41 66 38 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 HQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwE
150940 59 54 42 66 6f 56 32 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 YTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lm
150960 4d 43 45 77 0a 48 7a 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 MCEw.HzAHBgUrDgMCGgQUj+XTGoasjY5
150980 72 77 38 2b 41 61 74 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 rw8+AatRIGCx7GS4wJRYjaHR0cDovL2x
1509a0 76 5a 32 38 75 64 6d 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 vZ28udmVyaXNpZ24u.Y29tL3ZzbG9nby
1509c0 35 6e 61 57 59 77 48 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 5naWYwHQYDVR0OBBYEFLMWkf3upm7ktS
1509e0 35 4a 6a 34 64 34 67 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 5Jj4d4gYDs5bG1MAoGCCqGSM49BAMD.A
150a00 32 67 41 4d 47 55 43 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 2gAMGUCMGYhDBgmYFo4e1ZC4Kf8NoRRk
150a20 53 41 73 64 6b 31 44 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 SAsdk1DPcQdhCPQrNZ8NQbOzWm9kA3bb
150a40 45 68 43 48 51 36 71 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 EhCHQ6qQgIx.AJw9SDkjOVgaFRJZap7v
150a60 31 56 6d 79 48 56 49 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 1VmyHVIsmXHNxynfGyphe3HR3vPA5Q06
150a80 53 71 6f 74 70 39 69 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 Sqotp9iGKt0uEA==.-----END.CERTIF
150aa0 49 43 41 54 45 2d 2d 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 ICATE-----..NetLock.Arany.(Class
150ac0 20 47 6f 6c 64 29 20 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 .Gold).F..tan..s..tv..ny.=======
150ae0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
150b00 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----
150b20 2d 0a 4d 49 49 45 46 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 -.MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA
150b40 30 47 43 53 71 47 53 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 0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQ
150b60 51 47 45 77 4a 49 56 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 QGEwJIVTERMA8G.A1UEBwwIQnVkYXBlc
150b80 33 51 78 46 54 41 54 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 3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0L
150ba0 6a 45 33 4d 44 55 47 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 jE3MDUGA1UECwwuVGFuw7pzw610.dsOh
150bc0 62 6e 6c 72 61 57 46 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 bnlraWFkw7NrIChDZXJ0aWZpY2F0aW9u
150be0 49 46 4e 6c 63 6e 5a 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 IFNlcnZpY2VzKTE1MDMGA1UEAwwsTmV0
150c00 54 47 39 6a 61 79 42 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 TG9jayBB.cmFueSAoQ2xhc3MgR29sZCk
150c20 67 52 73 57 52 64 47 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 gRsWRdGFuw7pzw610dsOhbnkwHhcNMDg
150c40 78 4d 6a 45 78 4d 54 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 xMjExMTUwODIxWhcNMjgx.MjA2MTUwOD
150c60 49 78 57 6a 43 42 70 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 IxWjCBpzELMAkGA1UEBhMCSFUxETAPBg
150c80 4e 56 42 41 63 4d 43 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 NVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDA
150ca0 78 4f 0a 5a 58 52 4d 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 xO.ZXRMb2NrIEtmdC4xNzA1BgNVBAsML
150cc0 6c 52 68 62 73 4f 36 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 lRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ
150ce0 32 56 79 64 47 6c 6d 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 2VydGlmaWNhdGlv.biBTZXJ2aWNlcykx
150d00 4e 54 41 7a 42 67 4e 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 NTAzBgNVBAMMLE5ldExvY2sgQXJhbnkg
150d20 4b 45 4e 73 59 58 4e 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 KENsYXNzIEdvbGQpIEbFkXRhbsO6.c8O
150d40 74 64 48 62 44 6f 57 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 tdHbDoW55MIIBIjANBgkqhkiG9w0BAQE
150d60 46 41 41 4f 43 41 51 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 FAAOCAQ8AMIIBCgKCAQEAxCRec75LbRT
150d80 44 6f 66 54 6a 6c 35 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 DofTjl5Bu.0jBFHjzuZ9lk4BqKf8owyo
150da0 50 6a 49 4d 48 6a 39 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 PjIMHj9DrTlF8afFttvzBPhCf2nx9JvM
150dc0 61 5a 43 70 44 79 44 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 aZCpDyD/V/Q4Q3Y1GLeqVw./HpYzY6b7
150de0 63 4e 47 62 49 52 77 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 cNGbIRwXdrzAZAj/E4wqX7hJ2Pn7WQ8o
150e00 4c 6a 4a 4d 32 50 2b 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 LjJM2P+FpD/sLj916jAwJRDC7bVWaaeV
150e20 74 41 6b 0a 48 33 42 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 tAk.H3B5r9s5VA1lddkVQZQBr17s9o3x
150e40 2f 36 31 6b 2f 69 43 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 /61k/iCa11zr/qYfCGSji3ZVrR47KGAu
150e60 68 79 58 6f 71 71 38 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 hyXoqq8fxmRGILdw.fzzeSNuWU7c5d+Q
150e80 61 34 73 63 57 68 48 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 a4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m
150ea0 32 70 67 50 38 62 34 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 2pgP8b4Y9VHx2BJtr+UBdADTHLpl1.ne
150ec0 57 49 41 36 70 4e 2b 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 WIA6pN+APSQnbAGwIDAKiLo0UwQzASBg
150ee0 4e 56 48 52 4d 42 41 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 NVHRMBAf8ECDAGAQH/AgEEMA4GA1UdDw
150f00 45 42 2f 77 51 45 41 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 EB/wQEAwIB.BjAdBgNVHQ4EFgQUzPpnk
150f20 2f 43 32 75 4e 43 6c 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 /C2uNClwB7zU/2MU9+D15YwDQYJKoZIh
150f40 76 63 4e 41 51 45 4c 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 vcNAQELBQADggEBAKt/7hwW.qZw8UQCg
150f60 77 42 45 49 42 61 65 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 wBEIBaeZ5m8BiFRhbvG5GK1Krf6BQCOU
150f80 4c 2f 74 31 66 43 38 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 L/t1fC8oS2IkgYIL9WHxHG64YTjrgfpi
150fa0 6f 54 74 61 0a 59 74 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 oTta.YtOUZcTh5m2C+C8lcLIhJsFyUR+
150fc0 4d 4c 4d 4f 45 6b 4d 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 MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSN
150fe0 71 62 34 56 6a 4d 49 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 qb4VjMIDw1Z4fKRzC.bLBQWV2QWzuoDT
151000 44 50 76 33 31 2f 7a 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 DPv31/zvGdg73JRm4gpvlhUbohL3u+pR
151020 56 6a 6f 64 53 56 68 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 VjodSVh/GeufOJ8z2FuLjbvrW5Kfna.N
151040 77 55 41 53 5a 51 44 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 wUASZQDhETnv0Mxz3WLJdH0pmT1kvarB
151060 65 73 39 36 61 55 4c 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 es96aULNmLazAZfNou2XjG4Kvte9nHfR
151080 43 61 65 78 4f 59 4e 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 CaexOYNkbQu.dZWAUWpLMKawYqGT8ZvY
1510a0 7a 73 52 6a 64 54 39 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 zsRjdT9ZR7E=.-----END.CERTIFICAT
1510c0 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 52 6f E-----..Staat.der.Nederlanden.Ro
1510e0 6f 74 20 43 41 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 ot.CA.-.G2.=====================
151100 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
151120 43 41 54 45 2d 2d 2d 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 CATE-----.MIIFyjCCA7KgAwIBAgIEAJ
151140 69 57 6a 44 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 iWjDANBgkqhkiG9w0BAQsFADBaMQswCQ
151160 59 44 56 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 YDVQQGEwJOTDEeMBwGA1UE.CgwVU3RhY
151180 58 51 67 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 XQgZGVyIE5lZGVybGFuZGVuMSswKQYDV
1511a0 51 51 44 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 QQDDCJTdGFhdCBkZXIgTmVkZXJsYW5kZ
1511c0 57 34 67 0a 55 6d 39 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 W4g.Um9vdCBDQSAtIEcyMB4XDTA4MDMy
1511e0 4e 6a 45 78 4d 54 67 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 NjExMTgxN1oXDTIwMDMyNTExMDMxMFow
151200 57 6a 45 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 WjELMAkGA1UEBhMC.TkwxHjAcBgNVBAo
151220 4d 46 56 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 MFVN0YWF0IGRlciBOZWRlcmxhbmRlbjE
151240 72 4d 43 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 rMCkGA1UEAwwiU3RhYXQgZGVyIE5l.ZG
151260 56 79 62 47 46 75 5a 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 VybGFuZGVuIFJvb3QgQ0EgLSBHMjCCAi
151280 49 77 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 43 41 67 IwDQYJKoZIhvcNAQEBBQADggIPADCCAg
1512a0 6f 43 67 67 49 42 41 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 oCggIBAMVZ.5291qj5LnLW4rJ4L5PnZy
1512c0 71 74 64 6a 37 55 35 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 qtdj7U5EILXr1HgO+EASGrP2uEGQxGZq
1512e0 68 51 6c 45 71 30 69 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 hQlEq0i6ABtQ8SpuOUfiUtn.vWFI7/3S
151300 34 47 43 49 35 62 6b 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 4GCI5bkYYCjDdyutsDeqN95kWSpGV+RL
151320 75 66 67 33 66 4e 55 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 ufg3fNU254DBtvPUZ5uW6M7XxgpT0GtJ
151340 6c 76 4f 6a 0a 43 77 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 lvOj.CwV3SPcl5XCsMBQgJeN/dVrlSPh
151360 4f 65 77 4d 48 42 50 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 OewMHBPqCYYdu8DvEpMfQ9XQ+pV0aCPK
151380 62 4a 64 4c 32 72 41 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 bJdL2rAQmPlU6Yiil.e7Iwr/g3wtG61j
1513a0 6a 39 39 4f 39 4a 4d 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 j99O9JMDeZJiFIhQGp5Rbn3JBV3w/oOM
1513c0 32 5a 4e 79 46 50 58 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 2ZNyFPXfUib2rFEhZgF1XyZWampzCR.O
1513e0 4d 45 34 48 59 59 45 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 ME4HYYEhLoaJXhena/MUGDWE4dS7WMfb
151400 57 56 39 77 68 55 59 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 WV9whUYdMrhfmQpjHLYFhN9C0lK8SgbI
151420 48 52 72 78 54 33 64 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 HRrxT3dsKpI.CT0ugpTNGmXZK4iambwY
151440 66 70 2f 75 66 57 5a 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 fp/ufWZ8Pr2UuIHOzZgweMFvZ9C+X+Bo
151460 37 64 37 69 73 63 6b 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 7d7iscksWXiSqt8rYGPy5V65.48r6f1C
151480 47 50 71 49 30 47 41 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 GPqI0GAwJaCgRHOThuVw+R7oyPxjMW4T
1514a0 31 38 32 74 30 78 48 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 182t0xHJ04eOLoEq9jWYv6q012iDTiIJ
1514c0 68 38 42 49 69 0a 74 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 h8BIi.trzQ1aTsr1SIJSQ8p22xcik/Pl
1514e0 65 6d 66 31 57 76 62 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 emf1WvbibG/ufMQFxRRIEKeN5KzlW/Hd
151500 58 5a 74 31 62 76 38 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 XZt1bv8Hb/C3m1r737.qWmRRpdogBQ2H
151520 62 4e 2f 75 79 6d 59 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 bN/uymYNqUg+oJgYjOk7Na6B6duxc8Up
151540 75 66 57 6b 6a 54 59 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 ufWkjTYgfX8HV2qXB72o007uPc5AgMB.
151560 41 41 47 6a 67 5a 63 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 AAGjgZcwgZQwDwYDVR0TAQH/BAUwAwEB
151580 2f 7a 42 53 42 67 4e 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 /zBSBgNVHSAESzBJMEcGBFUdIAAwPzA9
1515a0 42 67 67 72 42 67 45 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 BggrBgEFBQcC.ARYxaHR0cDovL3d3dy5
1515c0 77 61 32 6c 76 64 6d 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 wa2lvdmVyaGVpZC5ubC9wb2xpY2llcy9
1515e0 79 62 32 39 30 4c 58 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 yb290LXBvbGljeS1HMjAOBgNV.HQ8BAf
151600 38 45 42 41 4d 43 41 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 8EBAMCAQYwHQYDVR0OBBYEFJFoMocVHY
151620 6e 69 74 66 47 73 4e 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 nitfGsNig0jQt8YojrMA0GCSqGSIb3DQ
151640 45 42 43 77 55 41 0a 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 EBCwUA.A4ICAQCoQUpnKpKBglBu4dfYs
151660 7a 6b 37 38 77 49 56 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 zk78wIVCVBR7y29JHuIhjv5tLySCZa59
151680 73 43 72 49 32 41 47 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 sCrI2AGeYwRTlHSeYAz.+51IvuxBQ4Ef
1516a0 66 6b 64 41 48 4f 56 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 fkdAHOV6CMqqi3WtFMTC6GY8ggen5ieC
1516c0 57 78 6a 6d 44 32 37 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 WxjmD27ZUD6KQhgpxrRW/FYQoAUXvQwj
1516e0 0a 66 2f 53 54 37 5a 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 .f/ST7ZwaUb7dRUG/kSS0H4zpX897IZm
151700 66 6c 5a 38 35 4f 6b 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 flZ85OkYcbPnNe5yQzSipx6lVu6xiNGI
151720 31 45 30 73 55 4f 6c 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 1E0sUOlWDuYaN.kqbG9AclVMwWVxJKgn
151740 6a 49 46 4e 6b 58 67 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 jIFNkXgiYtXSAfea7+1HAWFpWD2DU5/1
151760 4a 64 64 52 77 57 78 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 JddRwWxRNVz0fMdWVSSt7wsKfk.CpYL+
151780 36 33 43 34 69 57 45 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 63C4iWEst3kvX5ZbJvw8NjnyvLplzh+i
1517a0 62 37 4d 2b 7a 6b 58 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 b7M+zkXYT9y2zqR2GUBGR2tUKRXCnxLv
1517c0 4a 78 78 63 79 70 46 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 JxxcypF.URmFzI79R6d0lR2o0a9OF7Fp
1517e0 4a 73 4b 71 65 46 64 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 JsKqeFdbxU2n5Z4FF5TKsl+gSRiNNOkm
151800 62 45 67 65 71 6d 69 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 bEgeqmiSBeGCc1qb3Adb.CG19ndeNIdn
151820 38 46 43 43 71 77 6b 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 8FCCqwkXfP+cAslHkwvgFuXkajDTznlv
151840 6b 4e 31 74 72 53 74 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 kN1trSt8sV4pAWja63XVECDdCcAz+3F4
151860 68 0a 6f 4b 4f 4b 77 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 h.oKOKwJCcaNpQ5kUQR3i2TtJlycM33+
151880 46 43 59 37 42 58 4e 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 FCY7BXN0Ute4qcvwXqZVUz9zkQxSgqIX
1518a0 6f 62 69 73 51 6b 2b 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 obisQk+T8VyJoV.IPVVYpbtbZNQvOSqe
1518c0 4b 33 5a 79 77 70 6c 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 K3Zywplh6ZmwcSBo3c6WB4L7oOLnR7SU
1518e0 71 54 4d 48 57 2b 77 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 qTMHW+wmG2UMbX4cQrcufx9MmDm.66+K
151900 41 51 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 AQ==.-----END.CERTIFICATE-----..
151920 43 41 20 44 69 73 69 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 CA.Disig.========.-----BEGIN.CER
151940 54 49 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 TIFICATE-----.MIIEDzCCAvegAwIBAg
151960 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 4b 4d 51 73 77 43 51 IBATANBgkqhkiG9w0BAQUFADBKMQswCQ
151980 59 44 56 51 51 47 45 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 YDVQQGEwJTSzETMBEGA1UEBxMK.QnJhd
1519a0 47 6c 7a 62 47 46 32 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 GlzbGF2YTETMBEGA1UEChMKRGlzaWcgY
1519c0 53 35 7a 4c 6a 45 52 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 S5zLjERMA8GA1UEAxMIQ0EgRGlzaWcwH
1519e0 68 63 4e 4d 44 59 77 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 hcNMDYw.MzIyMDEzOTM0WhcNMTYwMzIy
151a00 4d 44 45 7a 4f 54 4d 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 MDEzOTM0WjBKMQswCQYDVQQGEwJTSzET
151a20 4d 42 45 47 41 31 55 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 MBEGA1UEBxMKQnJhdGlz.bGF2YTETMBE
151a40 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 4d 41 38 47 41 31 55 GA1UEChMKRGlzaWcgYS5zLjERMA8GA1U
151a60 45 41 78 4d 49 51 30 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 EAxMIQ0EgRGlzaWcwggEiMA0GCSqGSIb
151a80 33 0a 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 53 39 6a 3.DQEBAQUAA4IBDwAwggEKAoIBAQCS9j
151aa0 48 42 66 59 6a 39 6d 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 HBfYj9mQGp2HvycXXxMcbzdWb6UShGhJ
151ac0 64 34 4e 4c 78 73 2f 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 d4NLxs/LxFWYgm.GErENx+hSkS943EE9
151ae0 55 51 58 34 6a 2f 38 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 UQX4j/8SFhvXJ56CbpRNyIjZkMhsDxko
151b00 76 68 71 46 51 34 2f 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 vhqFQ4/61HhVKndBpnXmjxUizkD.Pw/F
151b20 7a 73 62 72 67 33 49 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 zsbrg3ICqB9x8y34dQjbYkzo+s7552of
151b40 74 6d 73 31 67 72 72 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 tms1grrijxaSfQUMbEYDXcDtab86wYqg
151b60 36 49 37 5a 75 55 55 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 6I7ZuUUo.hwjstMoVvoLdtUSLLa2GDGh
151b80 69 62 59 56 57 38 71 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 ibYVW8qwUYzrG0ZmsNHhWS8+2rT+Mitc
151ba0 45 35 65 4e 34 54 50 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 E5eN4TPWGqvWP+j1scaMt.ymfraHtuM6
151bc0 6b 4d 67 69 69 6f 54 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 kMgiioTGohQBUgDCZbg8KpFhXAJIJdKx
151be0 61 74 79 6d 50 32 64 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 atymP2dACw30PEEGBWZ2NFAgMBAAGjgf
151c00 38 77 0a 67 66 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 64 42 8w.gfwwDwYDVR0TAQH/BAUwAwEB/zAdB
151c20 67 4e 56 48 51 34 45 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 gNVHQ4EFgQUjbJJaJ1yCCW5wCf1UJNWS
151c40 45 5a 78 2b 59 38 77 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 EZx+Y8wDgYDVR0P.AQH/BAQDAgEGMDYG
151c60 41 31 55 64 45 51 51 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 A1UdEQQvMC2BE2Nhb3BlcmF0b3JAZGlz
151c80 61 57 63 75 63 32 75 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 aWcuc2uGFmh0dHA6Ly93d3cuZGlz.aWc
151ca0 75 63 32 73 76 59 32 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 uc2svY2EwZgYDVR0fBF8wXTAtoCugKYY
151cc0 6e 61 48 52 30 63 44 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 naHR0cDovL3d3dy5kaXNpZy5zay9jYS9
151ce0 6a 63 6d 77 76 59 32 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 jcmwvY2Ff.ZGlzaWcuY3JsMCygKqAohi
151d00 5a 6f 64 48 52 77 4f 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 ZodHRwOi8vY2EuZGlzaWcuc2svY2EvY3
151d20 4a 73 4c 32 4e 68 58 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 JsL2NhX2Rpc2lnLmNybDAa.BgNVHSAEE
151d40 7a 41 52 4d 41 38 47 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 zARMA8GDSuBHpGT5goAAAABAQEwDQYJK
151d60 6f 5a 49 68 76 63 4e 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 oZIhvcNAQEFBQADggEBAF00dGFMrzvY/
151d80 35 39 74 0a 57 44 59 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 59t.WDYcPQuBDRIrRhCA/ec8J9B6yKm2
151da0 66 6e 51 77 4d 36 4d 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 fnQwM6M6int0wHl5QpNt/7EpFIKrIYwv
151dc0 46 2f 6b 2f 4a 69 2f 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 F/k/Ji/1WcbvgAa3.mkkp7M5+cTxqEEH
151de0 41 39 74 4f 61 73 6e 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 A9tOasnxakZzArFvITV734VP/Q3f8nkt
151e00 6e 62 4e 66 7a 67 39 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 nbNfzg9Gg4H8l37iYC5oyOGwwoPP/.CB
151e20 55 7a 39 31 42 4b 65 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 Uz91BKez6jPiCp3C9WgArtQVCwyfTssu
151e40 4d 6d 52 41 41 4f 62 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 MmRAAOb54GvCKWU3BlxFAKRmukLyeBEi
151e60 63 54 58 78 43 68 64 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 cTXxChds6K.ezfqwzlhA5WYOudsiCUI/
151e80 48 6c 6f 44 59 64 39 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 HloDYd9Yvi0X/vF2Ey9WLw/Q1vUHgFNP
151ea0 47 4f 2b 49 2b 2b 4d 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 GO+I++MzVpQuGhU+QqZMxEA.4Z7CRneC
151ec0 39 56 6b 47 6a 43 46 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 9VkGjCFMhwnN5ag=.-----END.CERTIF
151ee0 49 43 41 54 45 2d 2d 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 ICATE-----..Juur-SK.=======.----
151f00 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 35 6a 43 43 -BEGIN.CERTIFICATE-----.MIIE5jCC
151f20 41 38 36 67 41 77 49 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 A86gAwIBAgIEO45L/DANBgkqhkiG9w0B
151f40 41 51 55 46 41 44 42 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 AQUFADBdMRgwFgYJKoZIhvcNAQkBFglw
151f60 61 32 6c 41 0a 63 32 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 a2lA.c2suZWUxCzAJBgNVBAYTAkVFMSI
151f80 77 49 41 59 44 56 51 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 wIAYDVQQKExlBUyBTZXJ0aWZpdHNlZXJ
151fa0 70 62 57 6c 7a 61 32 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 pbWlza2Vza3VzMRAw.DgYDVQQDEwdKdX
151fc0 56 79 4c 56 4e 4c 4d 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 VyLVNLMB4XDTAxMDgzMDE0MjMwMVoXDT
151fe0 45 32 4d 44 67 79 4e 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 E2MDgyNjE0MjMwMVowXTEYMBYGCSqG.S
152000 49 62 33 44 51 45 4a 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 Ib3DQEJARYJcGtpQHNrLmVlMQswCQYDV
152020 51 51 47 45 77 4a 46 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 QQGEwJFRTEiMCAGA1UEChMZQVMgU2Vyd
152040 47 6c 6d 61 58 52 7a 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 GlmaXRzZWVy.aW1pc2tlc2t1czEQMA4G
152060 41 31 55 45 41 78 4d 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 A1UEAxMHSnV1ci1TSzCCASIwDQYJKoZI
152080 68 76 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 49 46 hvcNAQEBBQADggEPADCCAQoC.ggEBAIF
1520a0 78 4e 6a 34 7a 42 39 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 xNj4zB9bjMI0TfncyRsvPGbJgMUaXhvS
1520c0 59 52 71 54 43 5a 55 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 YRqTCZUXP00B841oiqBB4M8yIsdOBSvZ
1520e0 69 46 33 74 66 0a 54 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 iF3tf.TQou0M+LI+5PAk676w7KvRhj6I
152100 41 63 6a 65 45 63 6a 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 AcjeEcjT3g/1tf6mTll+g/mX8MCgkzAB
152120 70 54 70 79 48 68 4f 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 pTpyHhOEvWgxutr2TC.+Rx6jGZITWYfG
152140 41 72 69 50 72 73 66 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 AriPrsfB2WThbkasLnE+w0R9vXW+RvHL
152160 43 75 33 47 46 48 2b 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 Cu3GFH+4Hv2qEivbDtPL+/40UceJlfw.
152180 55 52 30 7a 6c 76 2f 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 UR0zlv/vWT3aTdEVNMfqPxZIe5EcgEMP
1521a0 50 62 67 46 50 74 47 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 PbgFPtGzlc3Yyg/CQ2fbt5PgIoIuvvVo
1521c0 4b 49 4f 35 77 54 74 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 KIO5wTtpeyDa.Tpxt4brNj3pssAki14s
1521e0 4c 32 78 7a 56 57 69 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 L2xzVWiZbDcDq5WDQn/413z8CAwEAAaO
152200 43 41 61 77 77 67 67 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 CAawwggGoMA8GA1UdEwEB/wQF.MAMBAf
152220 38 77 67 67 45 57 42 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 8wggEWBgNVHSAEggENMIIBCTCCAQUGCi
152240 73 47 41 51 51 42 7a 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 sGAQQBzh8BAQEwgfYwgdAGCCsGAQUFBw
152260 49 43 4d 49 48 44 0a 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 ICMIHD.HoHAAFMAZQBlACAAcwBlAHIAd
152280 41 42 70 41 47 59 41 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 ABpAGYAaQBrAGEAYQB0ACAAbwBuACAAd
1522a0 67 44 6b 41 47 77 41 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 gDkAGwAagBhAHMAdABh.AHQAdQBkACAA
1522c0 51 51 42 54 41 43 30 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 QQBTAC0AaQBzACAAUwBlAHIAdABpAGYA
1522e0 61 51 42 30 41 48 4d 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 aQB0AHMAZQBlAHIAaQBtAGkAcwBrAGUA
152300 0a 63 77 42 72 41 48 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 .cwBrAHUAcwAgAGEAbABhAG0ALQBTAEs
152320 41 49 41 42 7a 41 47 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 AIABzAGUAcgB0AGkAZgBpAGsAYQBhAHQ
152340 41 61 51 42 6b 41 47 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 AaQBkAGUAIABr.AGkAbgBuAGkAdABhAG
152360 30 41 61 51 42 7a 41 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 0AaQBzAGUAawBzMCEGCCsGAQUFBwIBFh
152380 56 6f 64 48 52 77 4f 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 VodHRwOi8vd3d3LnNrLmVlL2Nw.cy8wK
1523a0 77 59 44 56 52 30 66 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 wYDVR0fBCQwIjAgoB6gHIYaaHR0cDovL
1523c0 33 64 33 64 79 35 7a 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 3d3dy5zay5lZS9qdXVyL2NybC8wHQYDV
1523e0 52 30 4f 42 42 59 45 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 R0OBBYE.FASqekej5ImvGs8KQKcYP2/v
152400 36 58 32 2b 4d 42 38 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 6X2+MB8GA1UdIwQYMBaAFASqekej5Imv
152420 47 73 38 4b 51 4b 63 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 Gs8KQKcYP2/v6X2+MA4G.A1UdDwEB/wQ
152440 45 41 77 49 42 35 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 EAwIB5jANBgkqhkiG9w0BAQUFAAOCAQE
152460 41 65 38 45 59 6c 46 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 Ae8EYlFOiCfP+JmeaUOTDBS8rNXiRTHy
152480 6f 0a 45 52 46 35 54 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 o.ERF5TElZrMj3hWVcRrs7EKACr81Ptc
1524a0 77 32 4b 75 78 64 2f 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 w2Kuxd/u+gkcm2k298gFTsxwhwDY77gu
1524c0 77 71 59 48 68 70 4e 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 wqYHhpNjbRxZyL.abVAyJRld/JXIWY7z
1524e0 6f 56 41 74 6a 4e 6a 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 oVAtjNjGr95HvxcHdMdkxuLDF2FvZkwM
152500 68 67 4a 6b 56 4c 70 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 hgJkVLpfKG6/2SSmuz+Ne6ML678.IIbs
152520 53 74 34 62 65 44 49 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 St4beDI3poHSna9aEhbKmVv8b20OxaAe
152540 68 73 6d 52 30 46 79 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 hsmR0FyYgl9jDIpaq9iVpszLita/ZEuO
152560 79 6f 71 79 73 4f 6b 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 yoqysOkh.Mp6qqIWYNIE5ITuoOlIyPfZ
152580 72 4e 34 59 47 57 68 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 rN4YGWhWY3PARZv40ILcD9EEQfTmEeZZ
1525a0 79 59 37 61 57 41 75 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 yY7aWAuVrua0ZTbvGRNs2.yyqcjg==.-
1525c0 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 48 6f 6e 67 6b 6f ----END.CERTIFICATE-----..Hongko
1525e0 6e 67 20 50 6f 73 74 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 ng.Post.Root.CA.1.==============
152600 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
152620 2d 2d 2d 2d 2d 0a 4d 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 -----.MIIDMDCCAhigAwIBAgICA+gwDQ
152640 59 4a 4b 6f 5a 49 68 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 YJKoZIhvcNAQEFBQAwRzELMAkGA1UEBh
152660 4d 43 53 45 73 78 46 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 MCSEsxFjAUBgNVBAoT.DUhvbmdrb25nI
152680 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 64 72 62 32 35 6e 49 FBvc3QxIDAeBgNVBAMTF0hvbmdrb25nI
1526a0 46 42 76 63 33 51 67 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 FBvc3QgUm9vdCBDQSAxMB4XDTAzMDUx.
1526c0 4e 54 41 31 4d 54 4d 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 NTA1MTMxNFoXDTIzMDUxNTA0NTIyOVow
1526e0 52 7a 45 4c 4d 41 6b 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 RzELMAkGA1UEBhMCSEsxFjAUBgNVBAoT
152700 44 55 68 76 62 6d 64 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 DUhvbmdrb25n.IFBvc3QxIDAeBgNVBAM
152720 54 46 30 68 76 62 6d 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 TF0hvbmdrb25nIFBvc3QgUm9vdCBDQSA
152740 78 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 4f 43 41 51 xMIIBIjANBgkqhkiG9w0BAQEF.AAOCAQ
152760 38 41 4d 49 49 42 43 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 8AMIIBCgKCAQEArP84tulmAknjorThkP
152780 6c 41 6a 33 6e 35 34 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 lAj3n54r15/gK97iSSHSL22oVyaf7XPw
1527a0 6e 55 33 5a 47 31 0a 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 nU3ZG1.ApzQjVrhVcNQhrkpJsLj2aDxa
1527c0 51 4d 6f 49 49 42 46 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 QMoIIBFIi1WpztUlVYiWR8o3x8gPW2iN
1527e0 72 34 6a 6f 4c 46 75 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 r4joLFutbEnPzlTCeqr.auh0ssJlXI6/
152800 66 4d 4e 34 68 4d 32 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 fMN4hM2eFvz1Lk8gKgifd/PFHsSaUmYe
152820 53 46 37 6a 45 41 61 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 SF7jEAaPIpjhZY4bXSNmO7ilMlHIhqqh
152840 0a 71 5a 35 2f 64 70 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 .qZ5/dpTCpmy3QfDVyAY45tQM4vM7TG1
152860 51 6a 4d 53 44 4a 38 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 QjMSDJ8EThFk9nnV0ttgCXjqQesBCNnL
152880 73 61 6b 33 63 37 38 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 sak3c78QA3xMY.V18meMjWCnl3v/evt3
1528a0 61 35 70 51 75 45 46 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 a5pQuEF10Q6m/hq5URX208o1xNg1vysx
1528c0 6d 4b 67 49 73 4c 68 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 mKgIsLhwIDAQABoyYwJDASBgNV.HRMBA
1528e0 66 38 45 43 44 41 47 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 f8ECDAGAQH/AgEDMA4GA1UdDwEB/wQEA
152900 77 49 42 78 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 44 wIBxjANBgkqhkiG9w0BAQUFAAOCAQEAD
152920 6b 62 56 50 4b 37 69 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 kbVPK7i.h9legYsCmEEIjEy82tvuJxuC
152940 35 32 70 46 37 42 61 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 52pF7BaLT4Wg87JwvVqWuspube5Gi27n
152960 4b 69 36 57 73 78 6b 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 Ki6Wsxkz67SfqLI37pio.l7Yutmcn1KZ
152980 4a 2f 52 79 54 5a 58 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 J/RyTZXaeQi/cImyaT/JaFTmxcdcrUeh
1529a0 74 48 4a 6a 41 32 53 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 tHJjA2Sr0oYJ71clBoiMBdDhViw+5Lme
1529c0 69 0a 49 41 51 33 32 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 i.IAQ32pwL0xch4I+XeTRvhEgCIDMb5j
1529e0 52 45 6e 35 46 77 39 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 REn5Fw9IBehEPCKdJsEhTkYY2sEJCehF
152a00 43 37 38 4a 5a 76 52 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 C78JZvRZ+K88ps.T/oROhUVRsPNH4NbL
152a20 55 45 53 37 56 42 6e 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 UES7VBnQRM9IauUiqpOfMGx+6fWtScvl
152a40 36 74 75 34 42 33 69 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 6tu4B3i0RwsH0Ti/L6RoZz71ilT.c4af
152a60 55 39 68 44 44 6c 33 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 U9hDDl3WY4JxHYB0yvbiAmvZWg==.---
152a80 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 53 69 --END.CERTIFICATE-----..SecureSi
152aa0 67 6e 20 52 6f 6f 74 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 gn.RootCA11.===================.
152ac0 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
152ae0 62 54 43 43 41 6c 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 bTCCAlWgAwIBAgIBATANBgkqhkiG9w0B
152b00 41 51 55 46 41 44 42 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 AQUFADBYMQswCQYDVQQGEwJKUDErMCkG
152b20 41 31 55 45 43 68 4d 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 A1UEChMi.SmFwYW4gQ2VydGlmaWNhdGl
152b40 76 62 69 42 54 5a 58 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 vbiBTZXJ2aWNlcywgSW5jLjEcMBoGA1U
152b60 45 41 78 4d 54 55 32 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 EAxMTU2VjdXJlU2lnbiBS.b290Q0ExMT
152b80 41 65 46 77 30 77 4f 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 AeFw0wOTA0MDgwNDU2NDdaFw0yOTA0MD
152ba0 67 77 4e 44 55 32 4e 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 gwNDU2NDdaMFgxCzAJBgNVBAYTAkpQMS
152bc0 73 77 0a 4b 51 59 44 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 sw.KQYDVQQKEyJKYXBhbiBDZXJ0aWZpY
152be0 32 46 30 61 57 39 75 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 2F0aW9uIFNlcnZpY2VzLCBJbmMuMRwwG
152c00 67 59 44 56 51 51 44 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 gYDVQQDExNTZWN1.cmVTaWduIFJvb3RD
152c20 51 54 45 78 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 QTExMIIBIjANBgkqhkiG9w0BAQEFAAOC
152c40 41 51 38 41 4d 49 49 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 AQ8AMIIBCgKCAQEA/XeqpRyQBTvL.TJs
152c60 7a 69 31 6f 55 52 61 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 zi1oURaTnkBbR31fSIRCkF/3frNYfp+T
152c80 62 66 50 66 73 33 37 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 bfPfs37gD2pRY/V1yfIw/XwFndBWW4wI
152ca0 38 68 39 75 75 79 77 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 8h9uuywGO.wvNmxoVF9ALGOrVisq/6nL
152cc0 2b 6b 35 74 53 41 4d 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 +k5tSAMJjzDbaTj6nU2DbysPyKyiyhFT
152ce0 4f 56 4d 64 72 41 47 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 OVMdrAG/LuYpmGYz+/3ZMq.g6h2uRMft
152d00 38 35 4f 51 6f 57 50 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 85OQoWPIucuGvKVCbIFtUROd6EgvanyT
152d20 67 70 39 55 4b 33 31 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 gp9UK31BQ1FT0Zx/Sg+U/sE2C3XZR1KG
152d40 2f 72 50 0a 4f 37 41 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 /rP.O7AxmjVuyIsG0wCR8pQIZUyxNAYA
152d60 65 6f 6e 69 38 4d 63 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 eoni8McDWc/V1uinMrPmmECGxc0nEovM
152d80 65 38 36 33 45 54 78 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 e863ETxiYAcjPitA.bpSACW22s293bzU
152da0 49 55 50 73 43 68 38 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 IUPsCh8U+iQIDAQABo0IwQDAdBgNVHQ4
152dc0 45 46 67 51 55 57 2f 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 EFgQUW/hNT7KlhtQ60vFjmqC+CfZX.t9
152de0 34 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 4wDgYDVR0PAQH/BAQDAgEGMA8GA1UdEw
152e00 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 46 42 51 EB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQ
152e20 41 44 67 67 45 42 41 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 ADggEBAKCh.OBZmLqdWHyGcBvod7bkix
152e40 54 67 6d 32 45 35 50 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 Tgm2E5P7KN/ed5GIaGHd48HCJqypMWvD
152e60 7a 4b 59 43 33 78 6d 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 zKYC3xmKbabfSVSSUOrTC4r.bnpwrxYO
152e80 34 77 4a 73 2b 30 4c 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 4wJs+0LmGJ1F2FXI6Dvd5+H0LgscNFxs
152ea0 57 45 72 37 6a 49 68 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 WEr7jIhQX5Ucv+2rIrVls4W6ng+4reV6
152ec0 47 34 70 51 0a 4f 68 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 G4pQ.Oh29Dbx7VFALuUKvVaAYga1lme+
152ee0 2b 35 4a 79 2f 78 49 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 +5Jy/xIWrQbJUb9wlze144o4MjQlJ3WN
152f00 37 57 6d 6d 57 41 69 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 7WmmWAiGovVJZ6X01.y8hSyn+B/tlr0/
152f20 63 52 37 53 58 66 2b 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 cR7SXf+Of5pPpyl4RTDaXQMhhRdlkUbA
152f40 2f 72 37 46 2b 41 6a 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 /r7F+AjHVDg8OFmP9Mni0N5HeDk061.l
152f60 67 65 4c 4b 42 4f 62 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 geLKBObjBmNQSdJQO7e5iNEOdyhIta6A
152f80 2f 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 0a 0a 41 /I=.-----END.CERTIFICATE-----..A
152fa0 43 45 44 49 43 4f 4d 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 CEDICOM.Root.=============.-----
152fc0 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 74 54 43 43 41 BEGIN.CERTIFICATE-----.MIIFtTCCA
152fe0 35 32 67 41 77 49 42 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 52gAwIBAgIIYY3HhjsBggUwDQYJKoZIh
153000 76 63 4e 41 51 45 46 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 vcNAQEFBQAwRDEWMBQGA1UEAwwNQUNFR
153020 45 6c 44 0a 54 30 30 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 ElD.T00gUm9vdDEMMAoGA1UECwwDUEtJ
153040 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 67 4e 56 MQ8wDQYDVQQKDAZFRElDT00xCzAJBgNV
153060 42 41 59 54 41 6b 56 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 BAYTAkVTMB4XDTA4.MDQxODE2MjQyMlo
153080 58 44 54 49 34 4d 44 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 XDTI4MDQxMzE2MjQyMlowRDEWMBQGA1U
1530a0 45 41 77 77 4e 51 55 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 EAwwNQUNFRElDT00gUm9vdDEMMAoG.A1
1530c0 55 45 43 77 77 44 55 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 UECwwDUEtJMQ8wDQYDVQQKDAZFRElDT0
1530e0 30 78 43 7a 41 4a 42 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 0xCzAJBgNVBAYTAkVTMIICIjANBgkqhk
153100 69 47 39 77 30 42 41 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 iG9w0BAQEF.AAOCAg8AMIICCgKCAgEA/
153120 35 4b 56 34 57 67 47 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 5KV4WgGdrQsyFhIyv2AVClVYyT/kGWbE
153140 48 56 37 77 32 72 62 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 HV7w2rbYgIB8hiGtXxaOLHk.WLn709gt
153160 6e 37 30 79 4e 37 38 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 n70yN78sFW2+tfQh0hOR2QetAQXW8713
153180 7a 6c 39 43 67 51 72 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 zl9CgQr5auODAKgrLlUTY4HKRxx7XBZX
1531a0 65 68 75 44 0a 59 41 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 ehuD.YAQ6PmXDzQHe3qTWDLqO3tkE7hd
1531c0 57 49 70 75 50 59 2f 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 WIpuPY/1NFgu3e3eM+SW10W2ZEi5PGrj
1531e0 6d 36 67 53 53 72 6a 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 m6gSSrj0RuVFCPYew.MYWveVqc/udOXp
153200 4a 50 51 2f 79 72 4f 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 JPQ/yrOq2lEiZmueIM15jO1FillUAKt0
153220 53 64 45 33 51 72 77 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 SdE3QrwqXrIhWYENiLxQSfHY9g5QYb.m
153240 38 2b 35 65 61 41 39 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 8+5eaA9oiM/Qj9r+hwDezCNzmzAv+YbX
153260 37 39 6e 75 49 51 5a 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 79nuIQZ1RXve8uQNjFiybwCq0Zfm/4aa
153280 4a 51 30 50 5a 43 4f 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 JQ0PZCOrfbk.HQl/Sog4P75n/TSW9R28
1532a0 4d 48 54 4c 4f 4f 37 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 MHTLOO7VbKvU/PQAtwBbhTIWdjPp2KOZ
1532c0 6e 51 55 41 71 68 62 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 nQUAqhbm84F9b32qhm2tFXTT.xKJxqvQ
1532e0 55 66 65 63 79 75 42 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 UfecyuB+81fFOvW8XAjnXDpVCOscAPuk
153300 6d 59 78 48 71 43 39 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 mYxHqC9FK/xidstd7LzrZlvvoHpKuE1X
153320 49 32 53 66 32 0a 33 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 I2Sf2.3EgbsCTBheN3nZqk8wwRHQ3ItB
153340 54 75 74 59 4a 58 43 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 TutYJXCb8gWH8vIiPYcMt5bMlL8qkqyP
153360 79 48 4b 39 63 61 55 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 yHK9caUPgn6C9D4zq9.2Fdx/c6mUlv53
153380 55 33 74 35 66 5a 76 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 U3t5fZvie27k5x2IXXwkkwp9y+cAS7+U
1533a0 45 61 65 5a 41 77 55 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 EaeZAwUswdbxcJzbPEHXEUkFDWug/Fq.
1533c0 54 59 6c 36 2b 72 50 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 TYl6+rPYLWbwNof1K1MCAwEAAaOBqjCB
1533e0 70 7a 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 pzAPBgNVHRMBAf8EBTADAQH/MB8GA1Ud
153400 49 77 51 59 4d 42 61 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 IwQYMBaAFKaz.4SsrSbbXc6GqlPUB53N
153420 6c 54 4b 78 51 4d 41 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 lTKxQMA4GA1UdDwEB/wQEAwIBhjAdBgN
153440 56 48 51 34 45 46 67 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 VHQ4EFgQUprPhKytJttdzoaqU.9QHnc2
153460 56 4d 72 46 41 77 52 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 VMrFAwRAYDVR0gBD0wOzA5BgRVHSAAMD
153480 45 77 4c 77 59 49 4b 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 EwLwYIKwYBBQUHAgEWI2h0dHA6Ly9hY2
1534a0 56 6b 61 57 4e 76 0a 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 VkaWNv.bS5lZGljb21ncm91cC5jb20vZ
1534c0 47 39 6a 4d 41 30 47 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 G9jMA0GCSqGSIb3DQEBBQUAA4ICAQDOL
1534e0 41 74 53 55 57 49 6d 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 AtSUWImfQwng4/F9tqg.aHtPkl7qpHMy
153500 45 56 4e 45 73 6b 54 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 EVNEskTLnewPeUKzEKbHDZ3Ltvo/Onzq
153520 76 34 68 54 47 7a 7a 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 v4hTGzz3gvoFNTPhNahXwOf9jU8/kzJP
153540 0a 65 47 59 44 64 77 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 .eGYDdwdY6ZXIfj7QeQCM8htRM5u8lOk
153560 36 65 32 35 53 4c 54 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 6e25SLTKeI6RF+7YuE7CLGLHdztUdp0J
153580 2f 56 62 37 37 57 37 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 /Vb77W7tH1Pwk.zQSulgUV1qzOMPPKC8
1535a0 57 36 34 69 4c 67 70 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 W64iLgpq0i5ALudBF/TP94HTXa5gI06x
1535c0 67 53 59 58 63 47 43 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 gSYXcGCRZj6hitoocf8seACQl1.ThCoj
1535e0 7a 32 47 75 48 55 52 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 z2GuHURwCRiipZ7SkXp7FnFvmuD5uHor
153600 4c 55 77 48 76 34 46 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 LUwHv4FB4D54SMNUI8FmP8sX+g7tq3Pg
153620 62 55 68 68 38 6f 49 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 bUhh8oI.KiMnMCArz+2UW6yyetLHKKGK
153640 43 35 74 4e 53 69 78 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 C5tNSixthT8Jcjxn4tncB7rrZXtaAWPW
153660 6b 46 74 50 46 32 59 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 kFtPF2Y9fwsZo5NjEFIq.nxQWWOLcpfS
153680 68 46 6f 73 4f 6b 59 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 hFosOkYuByptZ+thrkQdlVV9SH686+5D
1536a0 64 61 61 56 62 6e 47 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 daaVbnG0OLLb6zqylfDJKZ0DcMDQj3dc
1536c0 45 0a 49 32 62 77 2f 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 E.I2bw/FWAp/tmGYI1Z2JwOV5vx+qQQE
1536e0 51 49 48 72 69 79 31 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 QIHriy1tvuWacNGHk0vFQYXlPKNFHtRQ
153700 72 6d 6a 73 65 43 4e 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 rmjseCNj6nOGOp.MCwXEGCSn1WHElkQw
153720 67 39 6e 61 52 48 4d 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 g9naRHMTh5+Spqtr0CodaxWkHS4oJyle
153740 57 2f 63 36 52 72 49 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 W/c6RrIaQXpuvoDs3zk4E7Czp3o.tkYN
153760 62 6e 35 58 4f 6d 65 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 bn5XOmeUwssfnHdKZ05phkOTOPu220+D
153780 6b 64 52 67 66 6b 73 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 kdRgfks+KzgHVZhepA==.-----END.CE
1537a0 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 6e RTIFICATE-----..Microsec.e-Szign
1537c0 6f 20 52 6f 6f 74 20 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 o.Root.CA.2009.=================
1537e0 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
153800 43 41 54 45 2d 2d 2d 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 CATE-----.MIIECjCCAvKgAwIBAgIJAM
153820 4a 2b 51 77 52 4f 52 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 J+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMI
153840 47 43 4d 51 73 77 43 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 GCMQswCQYDVQQGEwJIVTER.MA8GA1UEB
153860 77 77 49 51 6e 56 6b 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 wwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY
153880 33 4a 76 63 32 56 6a 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 3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY
1538a0 33 4a 76 0a 63 32 56 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 3Jv.c2VjIGUtU3ppZ25vIFJvb3QgQ0Eg
1538c0 4d 6a 41 77 4f 54 45 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 MjAwOTEfMB0GCSqGSIb3DQEJARYQaW5m
1538e0 62 30 42 6c 4c 58 4e 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 b0BlLXN6aWduby5o.dTAeFw0wOTA2MTY
153900 78 4d 54 4d 77 4d 54 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 xMTMwMThaFw0yOTEyMzAxMTMwMThaMIG
153920 43 4d 51 73 77 43 51 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 CMQswCQYDVQQGEwJIVTERMA8GA1UE.Bw
153940 77 49 51 6e 56 6b 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 wIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3
153960 4a 76 63 32 56 6a 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 Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3
153980 4a 76 63 32 56 6a 49 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 Jvc2VjIGUt.U3ppZ25vIFJvb3QgQ0EgM
1539a0 6a 41 77 4f 54 45 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 jAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb
1539c0 30 42 6c 4c 58 4e 36 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 0BlLXN6aWduby5odTCCASIw.DQYJKoZI
1539e0 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 4f 6e 34 hvcNAQEBBQADggEPADCCAQoCggEBAOn4
153a00 6a 2f 4e 6a 72 64 71 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 j/NjrdqG2KfgQvvPkd6mJviZpWNwrZuu
153a20 79 6a 4e 41 0a 66 57 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 yjNA.fW2WbqEORO7hE52UQlKavXWFdCy
153a40 6f 44 68 32 54 74 68 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 oDh2Tthi3jCyoz/tccbna7P7ofo/kLx2
153a60 79 71 48 57 48 32 4c 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 yqHWH2Leh5TvPmUpG.0IMZfcChEhyVbU
153a80 72 30 32 4d 65 6c 54 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 r02MelTTMuhTlAdX4UfIASmFDHQWe4oI
153aa0 42 68 56 4b 5a 73 54 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 BhVKZsTh/gnQ4H6cm6M+f+wFUoLAKA.p
153ac0 78 6e 31 6e 74 78 56 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 xn1ntxVUwOXewdI/5n7N4okxFnMUBBjj
153ae0 71 71 70 47 72 43 45 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 qqpGrCEGob5X7uxUG6k0QrM1XF+H6cbf
153b00 50 56 54 62 69 4a 66 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 PVTbiJfyyvm.1HxdrtbCxkzlBQHZ7Vf8
153b20 77 53 4e 35 2f 50 72 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 wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7
153b40 67 68 75 35 73 4a 66 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 ghu5sJf0dgYzQ0mg/wu1+rUC.AwEAAaO
153b60 42 67 44 42 2b 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 BgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgY
153b80 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 54 DVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBT
153ba0 4c 44 38 62 66 0a 51 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 LD8bf.QkPMPcu1SCOhGnqmKrs0aDAfBg
153bc0 4e 56 48 53 4d 45 47 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 NVHSMEGDAWgBTLD8bfQkPMPcu1SCOhGn
153be0 71 6d 4b 72 73 30 61 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 qmKrs0aDAbBgNVHREE.FDASgRBpbmZvQ
153c00 47 55 74 63 33 70 70 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 GUtc3ppZ25vLmh1MA0GCSqGSIb3DQEBC
153c20 77 55 41 41 34 49 42 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 wUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0o.
153c40 6c 5a 4d 45 79 4c 2f 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 lZMEyL/azXm4Q5DwpL7v8u8hmLzU1F0G
153c60 39 75 35 43 37 44 42 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 9u5C7DBsoKqpyvGvivo/C3NqPuouQH4f
153c80 72 6c 52 68 65 65 73 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 rlRheesuCDfX.I/OMn74dseGkddug4lQ
153ca0 55 73 62 6f 63 4b 61 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 UsbocKaQY9hK6ohQU4zE1yED/t+AFdlf
153cc0 42 48 46 6e 79 2b 4c 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 BHFny+L/k7SViXITwfn4fs775.tyERzA
153ce0 4d 42 56 6e 43 6e 45 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 MBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBv
153d00 4e 66 4f 6f 66 79 4b 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 NfOofyK/FFh+U9rNHHV4S9a67c2Pm2G2
153d20 4a 77 43 7a 30 32 0a 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 JwCz02.yULyMtd6YebS2z3PyKnJm9zbW
153d40 45 54 58 62 7a 69 76 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 ETXbzivf3jTo60adbocwTZ8jx5tHMN1R
153d60 71 34 31 42 61 62 32 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 q41Bab2XD0h7lbwyYIi.LXpUq3DDfSJl
153d80 67 6e 43 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 2d 2d 0a 0a gnCW.-----END.CERTIFICATE-----..
153da0 47 6c 6f 62 61 6c 53 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 GlobalSign.Root.CA.-.R3.========
153dc0 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
153de0 46 49 43 41 54 45 2d 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 FICATE-----.MIIDXzCCAkegAwIBAgIL
153e00 42 41 41 41 41 41 41 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 BAAAAAABIVhTCKIwDQYJKoZIhvcNAQEL
153e20 42 51 41 77 54 44 45 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 BQAwTDEgMB4GA1UECxMXR2xv.YmFsU2l
153e40 6e 62 69 42 53 62 32 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 nbiBSb290IENBIC0gUjMxEzARBgNVBAo
153e60 54 43 6b 64 73 62 32 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 TCkdsb2JhbFNpZ24xEzARBgNVBAMTCkd
153e80 73 62 32 4a 68 0a 62 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 sb2Jh.bFNpZ24wHhcNMDkwMzE4MTAwMD
153ea0 41 77 57 68 63 4e 4d 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 AwWhcNMjkwMzE4MTAwMDAwWjBMMSAwHg
153ec0 59 44 56 51 51 4c 45 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 YDVQQLExdHbG9iYWxT.aWduIFJvb3QgQ
153ee0 30 45 67 4c 53 42 53 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 0EgLSBSMzETMBEGA1UEChMKR2xvYmFsU
153f00 32 6c 6e 62 6a 45 54 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 2lnbjETMBEGA1UEAxMKR2xvYmFsU2ln.
153f20 62 6a 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 50 bjCCASIwDQYJKoZIhvcNAQEBBQADggEP
153f40 41 44 43 43 41 51 6f 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 ADCCAQoCggEBAMwldpB5BngiFvXAg7aE
153f60 79 69 69 65 2f 51 56 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 yiie/QV2EcWt.iHL8RgJDx7KKnQRfJMs
153f80 75 53 2b 46 67 67 6b 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 uS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0
153fa0 4d 4b 36 36 58 31 37 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 MK66X17YUhhB5uzsTgHeMCOFJ.0mpiLx
153fc0 39 65 2b 70 5a 6f 33 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 9e+pZo34knlTifBtc+ycsmWQ1z3rDI6S
153fe0 59 4f 67 78 58 47 37 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 YOgxXG71uL0gRgykmmKPZpO/bLyCiR5Z
154000 32 4b 59 56 63 33 0a 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 2KYVc3.rHQU3HTgOu5yLy6c+9C7v/U9A
154020 4f 45 47 4d 2b 69 43 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 OEGM+iCK65TpjoWc4zdQQ4gOsC0p6Hps
154040 6b 2b 51 4c 6a 4a 67 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 k+QLjJg6VfLuQSSaGjl.OCZgdbKfd/+R
154060 46 4f 2b 75 49 45 6e 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 FO+uIEn8rUAVSNECMWEZXriX7613t2Sa
154080 65 72 39 66 77 52 50 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 er9fwRPvm2L7DWzgVGkWqQPabumDk3F2
1540a0 0a 78 6d 6d 46 67 68 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 .xmmFghcCAwEAAaNCMEAwDgYDVR0PAQH
1540c0 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 41 66 38 /BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8
1540e0 77 48 51 59 44 56 52 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 wHQYDVR0OBBYE.FI/wS3+oLkUkrk1Q+m
154100 4f 61 69 39 37 69 33 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 Oai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4
154120 49 42 41 51 42 4c 51 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 IBAQBLQNvAUKr+yAzv95ZURUm7.lgAJQ
154140 61 79 7a 45 34 61 47 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 ayzE4aGKAczymvmdLm6AC2upArT9fHxD
154160 34 71 2f 63 32 64 4b 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 4q/c2dKg8dEe3jgr25sbwMpjjM5RcOO5
154180 4c 6c 58 62 4b 72 38 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 LlXbKr8.EpbsU8Yt5CRsuZRj+9xTaGdW
1541a0 50 6f 4f 34 7a 7a 55 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 PoO4zzUhw8lo/s7awlOqzJCK6fBdRoyV
1541c0 33 58 70 59 4b 42 6f 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 3XpYKBovHd7NADdBj+1E.bddTKJd+82c
1541e0 45 48 68 58 58 69 70 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 EHhXXipa0095MJ6RMG3NzdvQXmcIfeg7
154200 6a 4c 51 69 74 43 68 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 jLQitChws/zyrVQ4PkX4268NXSb7hLi1
154220 38 0a 59 49 76 44 51 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 8.YIvDQVETI53O9zJrlAGomecsMx86Oy
154240 58 53 68 6b 44 4f 4f 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 XShkDOOyyGeMlhLxS67ttVb9+E7gUJTb
154260 30 6f 32 48 4c 4f 30 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 0o2HLO02JQZR7r.kpeDMdmztcpHWD9f.
154280 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 75 74 6f 72 -----END.CERTIFICATE-----..Autor
1542a0 69 64 61 64 20 64 65 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 idad.de.Certificacion.Firmaprofe
1542c0 73 69 6f 6e 61 6c 20 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 sional.CIF.A62634068.===========
1542e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
154300 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
154320 49 43 41 54 45 2d 2d 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 ICATE-----.MIIGFDCCA/ygAwIBAgIIU
154340 2b 77 37 37 76 75 79 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 +w77vuySF8wDQYJKoZIhvcNAQEFBQAwU
154360 54 45 4c 4d 41 6b 47 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 TELMAkGA1UEBhMCRVMxQjBA.BgNVBAMM
154380 4f 55 46 31 64 47 39 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 OUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2Fj
1543a0 61 57 39 75 49 45 5a 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 aW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lG
1543c0 49 45 45 32 0a 4d 6a 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 IEE2.MjYzNDA2ODAeFw0wOTA1MjAwODM
1543e0 34 4d 54 56 61 46 77 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 4MTVaFw0zMDEyMzEwODM4MTVaMFExCzA
154400 4a 42 67 4e 56 42 41 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 JBgNVBAYTAkVTMUIw.QAYDVQQDDDlBdX
154420 52 76 63 6d 6c 6b 59 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 RvcmlkYWQgZGUgQ2VydGlmaWNhY2lvbi
154440 42 47 61 58 4a 74 59 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 BGaXJtYXByb2Zlc2lvbmFsIENJRiBB.N
154460 6a 49 32 4d 7a 51 77 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 jI2MzQwNjgwggIiMA0GCSqGSIb3DQEBA
154480 51 55 41 41 34 49 43 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 QUAA4ICDwAwggIKAoICAQDKlmuO6vj78
1544a0 61 49 31 34 48 39 4d 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 aI14H9M2uDD.Utd9thDIAl6zQyrET2qy
1544c0 79 68 78 64 4b 4a 70 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 yhxdKJp4ERppWVevtSBC5IsP5t9bpgOS
1544e0 4c 2f 55 52 35 47 4c 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 L/UR5GLXMnE42QQMcas9UX4P.B99jBVz
154500 70 76 35 52 76 77 53 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 pv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4
154520 6b 71 37 2f 44 68 48 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 kq7/DhHf9qFD0sefGL9ItWY16Ck6WaVI
154540 43 71 6a 61 59 0a 37 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 CqjaY.7Pz6FIMMNx/Jkjd/14Et5cS54D
154560 34 30 2f 6d 66 30 50 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 40/mf0PmbR0/RAz15iNA9wBj4gGFrO93
154580 49 62 4a 57 79 54 64 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 IbJWyTdBSTo3OxDqqH.ECNZXyAFGUfta
1545a0 49 36 53 45 73 70 64 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 I6SEspd/NYrspI8IM/hX68gvqB2f3bl7
1545c0 42 71 47 59 54 4d 2b 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 BqGYTM+53u0P6APjqK5am+5hyZvQWyI.
1545e0 70 6c 44 39 61 6d 4d 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 plD9amML9ZMWGxmPsu2bm8mQ9QEM3xk9
154600 44 7a 34 34 49 38 6b 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 Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6v
154620 4b 74 4d 46 6e 58 6b 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 KtMFnXkIoctX.MbScyJCyZ/QYFpM6/Ef
154640 59 30 58 69 57 4d 52 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 Y0XiWMR+6KwxfXZmtY4laJCB22N/9q06
154660 6d 49 71 71 64 58 75 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 mIqqdXuYnin1oKaPnirjaEbsX.LZmdEy
154680 52 47 39 38 58 69 32 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 RG98Xi2J+Of8ePdG1asuhy9azuJBCtLx
1546a0 54 61 2f 79 32 61 52 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 Ta/y2aRnFHvkLfuwHb9H/TKI8xWVvTyQ
1546c0 4b 6d 74 46 4c 4b 0a 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 KmtFLK.bpf7Q8UIJm+K9Lv9nyiqDdVF8
1546e0 78 4d 36 48 64 6a 41 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 xM6HdjAeI9BZzwelGSuewvF6NkBiDkal
154700 34 5a 6b 51 64 55 37 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 4ZkQdU7hwxu+g/GvUgU.vzlN1J5Bto+W
154720 48 57 4f 57 6b 39 6d 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 HWOWk9mVBngxaJ43BjuAiUVhOSPHG0Sj
154740 46 65 55 63 2b 4a 49 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 FeUc+JIwuwIDAQABo4HvMIHsMBIGA1Ud
154760 0a 45 77 45 42 2f 77 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 .EwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH
154780 2f 42 41 51 44 41 67 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 /BAQDAgEGMB0GA1UdDgQWBBRlzeurNR4
1547a0 41 50 6e 37 56 64 4d 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 APn7VdMActHNH.DhpkLzCBpgYDVR0gBI
1547c0 47 65 4d 49 47 62 4d 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 GeMIGbMIGYBgRVHSAAMIGPMC8GCCsGAQ
1547e0 55 46 42 77 49 42 46 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 UFBwIBFiNodHRwOi8vd3d3LmZp.cm1hc
154800 48 4a 76 5a 6d 56 7a 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 HJvZmVzaW9uYWwuY29tL2NwczBcBggrB
154820 67 45 46 42 51 63 43 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 gEFBQcCAjBQHk4AUABhAHMAZQBvACAAZ
154840 41 42 6c 41 43 41 41 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 ABlACAA.bABhACAAQgBvAG4AYQBuAG8A
154860 64 67 42 68 41 43 41 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 dgBhACAANAA3ACAAQgBhAHIAYwBlAGwA
154880 62 77 42 75 41 47 45 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 bwBuAGEAIAAwADgAMAAx.ADcwDQYJKoZ
1548a0 49 68 76 63 4e 41 51 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 IhvcNAQEFBQADggIBABd9oPm03cXF661
1548c0 4c 4a 4c 57 68 41 71 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 LJLWhAqvdpYhKsg9VSytXjDvlMd3+xDL
1548e0 78 0a 35 31 74 6b 6c 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 x.51tkljYyGOylMnfX40S2wBEqgLk9am
154900 35 38 6d 39 4f 74 2f 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 58m9Ot/MPWo+ZkKXzR4Tgegiv/J2Wv+x
154920 59 56 78 43 35 78 68 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 YVxC5xhOW1//qk.R71kMrv2JYSiJ0L1I
154940 4c 44 43 45 78 41 52 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 LDCExARzRAVukKQKtJE4ZYm6zFIEv0q2
154960 73 6b 47 7a 33 51 65 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 skGz3QeqUvVhyj5eTSSPi5E6PaP.T481
154980 50 79 57 7a 4f 64 78 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 PyWzOdxjKpBrIF/EUhJOlywqrJ2X3kjy
1549a0 6f 32 62 62 77 74 4b 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 o2bbwtKDlaZmp54lD+kLM5FlClrD2VQS
1549c0 33 61 2f 44 54 67 34 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 3a/DTg4f.Jl4N3LON7NWBcN7STyQF82x
1549e0 4f 39 55 78 4a 5a 6f 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 O9UxJZo3R/9ILJUFI/lGExkKvgATP0H5
154a00 6b 53 65 54 79 33 36 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 kSeTy36LssUzAKh3ntLFl.osS88Zj0qn
154a20 41 48 59 37 53 34 32 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 AHY7S42jtM+kAiMFsRpvAFDsYCA0irhp
154a40 75 46 33 64 76 64 36 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 uF3dvd6qJ2gHN99ZwExEWN57kci57q13
154a60 58 52 0a 63 72 48 65 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 XR.crHedUTnQn3iV2t93Jm8PYMo6oCTj
154a80 63 56 4d 5a 63 46 77 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 cVMZcFwgbg4/EMxsvYDNEeyrPsiBsse3
154aa0 52 64 48 48 46 39 6d 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 RdHHF9mudMaotoR.saS8I8nkvof/uZS2
154ac0 2b 46 30 67 53 74 52 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 +F0gStRf571oe2XyFR7SOqkt6dhrJKyX
154ae0 57 45 52 48 72 56 6b 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 WERHrVkY8SFlcN7ONGCoQPHzPKTD.KCO
154b00 4d 2f 69 63 7a 51 30 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 M/iczQ0CgFzzr6juwcqajuUpLXhZI9LK
154b20 38 79 49 79 53 78 5a 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 8yIySxZ2frHI2vDSANGupi5LAuBft7HZ
154b40 54 39 53 51 42 6a 4c 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 T9SQBjLMi.6Et8Vcad+qMUu2WFbm5PEn
154b60 34 4b 50 4a 32 56 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 4KPJ2V.-----END.CERTIFICATE-----
154b80 0a 0a 49 7a 65 6e 70 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 ..Izenpe.com.==========.-----BEG
154ba0 49 4e 20 43 45 52 54 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 IN.CERTIFICATE-----.MIIF8TCCA9mg
154bc0 41 77 49 42 41 67 49 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 AwIBAgIQALC3WhZIX7/hy/WL1xnmfTAN
154be0 42 67 6b 71 68 6b 69 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 BgkqhkiG9w0BAQsFADA4MQswCQYDVQQG
154c00 0a 45 77 4a 46 55 7a 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 .EwJFUzEUMBIGA1UECgwLSVpFTlBFIFM
154c20 75 51 53 34 78 45 7a 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 uQS4xEzARBgNVBAMMCkl6ZW5wZS5jb20
154c40 77 48 68 63 4e 4d 44 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 wHhcNMDcxMjEz.MTMwODI4WhcNMzcxMj
154c60 45 7a 4d 44 67 79 4e 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 EzMDgyNzI1WjA4MQswCQYDVQQGEwJFUz
154c80 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 0a 51 53 34 78 45 EUMBIGA1UECgwLSVpFTlBFIFMu.QS4xE
154ca0 7a 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 67 67 49 69 4d zARBgNVBAMMCkl6ZW5wZS5jb20wggIiM
154cc0 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 67 49 4b 41 A0GCSqGSIb3DQEBAQUAA4ICDwAwggIKA
154ce0 6f 49 43 41 51 44 4a 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 oICAQDJ.03rKDx6sp4boFmVqscIbRTJx
154d00 6c 64 6e 2b 45 46 76 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 ldn+EFvMr+eleQGPicPK8lVx93e+d5Tz
154d20 63 71 51 73 52 4e 69 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 cqQsRNiekpsUOqHnJJAK.ClaOxdgmlOH
154d40 5a 53 4f 45 74 50 74 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 ZSOEtPtoKct2jmRXagaKH9HtuJneJWK3
154d60 57 36 77 79 79 51 58 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 W6wyyQXpzbm3benhB6QiIEn6HLmYRY2x
154d80 55 0a 2b 7a 79 64 63 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 U.+zydcsC8Lv/Ct90NduM61/e0aL6i9e
154da0 4f 42 62 73 46 47 62 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 OBbsFGb12N4E3GVFWJGjMxCrFXuaOKmM
154dc0 50 73 4f 7a 54 46 6c 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 PsOzTFlUFpfnXC.PCDFYbpRR6AgkJOhk
154de0 45 76 7a 54 6e 79 46 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 EvzTnyFRVSa0QUmQbC1TR0zvsQDyCV8w
154e00 58 44 62 4f 2f 51 4a 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 XDbO/QJLVQnSKwv4cSsPsjLkkxT.OTcj
154e20 37 4e 4d 42 2b 65 41 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 7NMB+eAJRE1NZMDhDVqHIrytG6P+JrUV
154e40 38 36 66 38 68 42 6e 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 86f8hBnp7KGItERphIPzidF0BqnMC9bC
154e60 33 69 65 46 55 43 62 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 3ieFUCbK.F7jJeodWLBoBHmy+E60QrLU
154e80 6b 39 54 69 52 6f 64 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 k9TiRodZL2vG70t5HtfG8gfZZa88ZU+m
154ea0 4e 46 63 74 4b 79 36 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 NFctKy6lvROUbQc/hhqfK.0GqfvEyNBj
154ec0 4e 61 6f 6f 58 6c 6b 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 NaooXlkDWgYlwWTvDjovoDGrQscbNYLN
154ee0 35 37 43 39 73 61 44 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 57C9saD+veIR8GdwYDsMnvmfzAuU8Lhi
154f00 6a 2b 0a 30 72 6e 71 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 j+.0rnq49qlw0dpEuDb8PYZi+17cNcC1
154f20 75 32 48 47 43 67 73 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 u2HGCgsBCRMd+RIihrGO5rUD8r6ddIBQ
154f40 46 71 4e 65 62 2b 4c 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 FqNeb+Lz0vPqhbB.leStTIo+F5HUsWLl
154f60 67 75 57 41 42 4b 51 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 guWABKQDfo2/2n+iD5dPDNMN+9fR5XJ+
154f80 48 4d 68 33 2f 31 75 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 HMh3/1uaD7euBUbl8agW7EekFwID.AQA
154fa0 42 6f 34 48 32 4d 49 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 Bo4H2MIHzMIGwBgNVHREEgagwgaWBD2l
154fc0 75 5a 6d 39 41 61 58 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 uZm9AaXplbnBlLmNvbaSBkTCBjjFHMEU
154fe0 47 41 31 55 45 43 67 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 GA1UECgw+.SVpFTlBFIFMuQS4gLSBDSU
155000 59 67 51 54 41 78 4d 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 YgQTAxMzM3MjYwLVJNZXJjLlZpdG9yaW
155020 45 74 52 32 46 7a 64 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 EtR2FzdGVpeiBUMTA1NSBG.NjIgUzgxQ
155040 7a 42 42 42 67 4e 56 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 zBBBgNVBAkMOkF2ZGEgZGVsIE1lZGl0Z
155060 58 4a 79 59 57 35 6c 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 XJyYW5lbyBFdG9yYmlkZWEgMTQgLSAwM
155080 54 41 78 0a 4d 43 42 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 TAx.MCBWaXRvcmlhLUdhc3RlaXowDwYD
1550a0 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
1550c0 42 41 4d 43 41 51 59 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 BAMCAQYwHQYDVR0O.BBYEFB0cZQ6o8iV
1550e0 37 74 4a 48 50 35 4c 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 7tJHP5LGx5r1VdGwFMA0GCSqGSIb3DQE
155100 42 43 77 55 41 41 34 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 BCwUAA4ICAQB4pgwWSp9MiDrAyw6l.Fn
155120 32 66 75 55 68 66 47 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 2fuUhfGI8NYjb2zRlrrKvV9pF9rnHzP7
155140 4d 4f 65 49 57 62 6c 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 MOeIWblaQnIUdCSnxIOvVFfLMMjlF4rJ
155160 55 54 33 73 62 39 66 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 UT3sb9fbga.kEyrkgPH7UIBzg/Ysfqik
155180 75 46 67 62 61 35 36 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 uFgba56awmqxinuaElnMIAkejEWOVt+8
1551a0 52 77 75 33 57 77 4a 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 Rwu3WwJrfIxwYJOubv5vr8q.hT/AQKM6
1551c0 57 66 78 5a 53 7a 77 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 WfxZSzwoJNu0FXWuDYi6LnPAvViH5ULy
1551e0 36 31 37 75 48 6a 41 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 617uHjAimcs30cQhbIHsvm0m5hzkQiCe
155200 52 37 43 73 0a 67 31 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 R7Cs.g1lwLDXWrzY0tM07+DKo7+N4ifu
155220 4e 52 53 7a 61 6e 4c 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 NRSzanLh+QBxh5z6ikixL8s36mLYp//P
155240 79 65 36 6b 66 4c 71 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 ye6kfLqCTVyvehQP5.aTfLnnhqBbTFMX
155260 69 4a 37 48 71 6e 68 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 iJ7HqnheG5ezzevh55hM6fcA5ZwjUukC
155280 6f 78 32 65 52 46 65 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 ox2eRFekGkLhObNA5me0mrZJfQRsN5.n
1552a0 58 4a 51 59 36 61 59 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 XJQY6aYWwa9SG3YOYNw6DXwBdGqvOPby
1552c0 41 4c 71 66 50 32 43 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 ALqfP2C2sJbUjWumDqtujWTI6cfSN01R
1552e0 70 69 79 45 47 6a 6b 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 piyEGjkpTHC.ClguGYEQyVB1/OpaFs4R
155300 31 2b 37 76 55 49 67 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 1+7vUIgtYf8/QnMFlEPVjjxOAToZpR9G
155320 54 6e 66 51 58 65 57 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 TnfQXeWBIiGH/pR9hNiTrdZo.Q0iy2+t
155340 7a 4a 4f 65 52 66 31 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 zJOeRf1SktoA+naM8THLCV8Sg1Mw4J87
155360 56 42 70 36 69 53 4e 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 VBp6iSNnpn86CcDaTmjvfliHjWbcM2pE
155380 33 38 50 31 5a 0a 57 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 38P1Z.WrOZyGlsQyYBNWNgVYkDOnXYuk
1553a0 72 5a 56 50 2f 75 33 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 rZVP/u3oDYLdE41V4tC5h9Pmzb/CaIxw
1553c0 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 43 68 ==.-----END.CERTIFICATE-----..Ch
1553e0 61 6d 62 65 72 73 20 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 ambers.of.Commerce.Root.-.2008.=
155400 3d 3d 3d 3d 3d 3d 3d 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 ===============================.
155420 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 48 -----BEGIN.CERTIFICATE-----.MIIH
155440 54 7a 43 43 42 54 65 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 TzCCBTegAwIBAgIJAKPaQn6ksa7aMA0G
155460 43 53 71 47 53 49 62 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 CSqGSIb3DQEBBQUAMIGuMQswCQYDVQQG
155480 45 77 4a 46 56 54 46 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 EwJFVTFD.MEEGA1UEBxM6TWFkcmlkICh
1554a0 7a 5a 57 55 67 59 33 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 zZWUgY3VycmVudCBhZGRyZXNzIGF0IHd
1554c0 33 64 79 35 6a 59 57 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 3dy5jYW1lcmZpcm1hLmNv.bS9hZGRyZX
1554e0 4e 7a 4b 54 45 53 4d 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 NzKTESMBAGA1UEBRMJQTgyNzQzMjg3MR
155500 73 77 47 51 59 44 56 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 swGQYDVQQKExJBQyBDYW1lcmZpcm1hIF
155520 4d 75 0a 51 53 34 78 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 Mu.QS4xKTAnBgNVBAMTIENoYW1iZXJzI
155540 47 39 6d 49 45 4e 76 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 G9mIENvbW1lcmNlIFJvb3QgLSAyMDA4M
155560 42 34 58 44 54 41 34 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 B4XDTA4MDgwMTEy.Mjk1MFoXDTM4MDcz
155580 4d 54 45 79 4d 6a 6b 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 MTEyMjk1MFowga4xCzAJBgNVBAYTAkVV
1555a0 4d 55 4d 77 51 51 59 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 MUMwQQYDVQQHEzpNYWRyaWQgKHNl.ZSB
1555c0 6a 64 58 4a 79 5a 57 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 jdXJyZW50IGFkZHJlc3MgYXQgd3d3LmN
1555e0 68 62 57 56 79 5a 6d 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 hbWVyZmlybWEuY29tL2FkZHJlc3MpMRI
155600 77 45 41 59 44 56 51 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 wEAYDVQQF.EwlBODI3NDMyODcxGzAZBg
155620 4e 56 42 41 6f 54 45 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 NVBAoTEkFDIENhbWVyZmlybWEgUy5BLj
155640 45 70 4d 43 63 47 41 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 EpMCcGA1UEAxMgQ2hhbWJl.cnMgb2YgQ
155660 32 39 74 62 57 56 79 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 29tbWVyY2UgUm9vdCAtIDIwMDgwggIiM
155680 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 67 49 4b 41 A0GCSqGSIb3DQEBAQUAA4ICDwAwggIKA
1556a0 6f 49 43 0a 41 51 43 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 oIC.AQCvAMtwNyuAWko6bHiUfaN/Gh/2
1556c0 4e 64 57 39 32 38 73 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 NdW928sNRHI+JrKQUrpjOyhYb6WzbZSm
1556e0 38 39 31 6b 44 46 58 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 891kDFX29ufyIiKA.XuFixrYp4YFs8r/
155700 6c 66 54 4a 71 56 4b 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 lfTJqVKAyGVn+H4vXPWCGhSRv4xGzdz4
155720 67 6c 6a 55 68 61 37 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 gljUha7MI2XAuZPeEklPWDrCQiorj.h4
155740 30 47 30 37 32 51 44 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 0G072QDuKZoRuGDtqaCrsLYVAGUvGef3
155760 62 73 79 77 2f 51 48 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 bsyw/QHg3PmTA9HMRFEFis1tPo1+XqxQ
155780 45 48 64 39 5a 52 35 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 EHd9ZR5gN/.ikilTWh1uem8nk4ZcfUyS
1557a0 35 78 74 59 42 6b 4c 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 5xtYBkL+8ydddy/Js2Pk3g5eXNeJQ7KX
1557c0 4f 74 33 45 67 66 4c 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 Ot3EgfLZEFHcpOrUMPrCXZk.NNI5t3YR
1557e0 43 51 31 32 52 63 53 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 CQ12RcSprj1qr7V9ZS+UWBDsXHyvfuK2
155800 47 4e 6e 51 6d 30 35 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 GNnQm05aSd+pZgvMPMZ4fKecHePOjlO+
155820 42 64 35 67 0a 44 32 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 Bd5g.D2vlGts/4+EhySnB8esHnFIbAUR
155840 52 50 48 73 6c 31 38 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 RPHsl18TlUlRdJQfKFiC4reRB7noI/pl
155860 76 67 36 61 52 41 72 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 vg6aRArBsNlVq5331.lubKgdaX8ZSD6e
155880 32 77 73 57 73 53 61 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 2wsWsSaR6s+12pxZjptFtYer49okQ6Y1
1558a0 6e 55 43 79 58 65 47 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 nUCyXeG0+95QGezdIp1Z8XGQpvvwyQ.0
1558c0 77 6c 66 32 65 4f 4b 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 wlf2eOKNcx5Wk0ZN5K3xMGtr/R5JJqyA
1558e0 51 75 78 72 31 79 57 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 Quxr1yW84Ay+1w9mPGgP0revq+ULtlVm
155900 68 64 75 59 4a 31 6a 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 hduYJ1jbLhj.ya6BXBg14JC7vjxPNyK5
155920 66 75 76 50 6e 6e 63 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 fuvPnnchpj04gftI2jE9K+OJ9dC1vX7g
155940 55 4d 51 53 69 62 4d 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 UMQSibMjmhAxhduub+84Mxh2.EQIDAQA
155960 42 6f 34 49 42 62 44 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 Bo4IBbDCCAWgwEgYDVR0TAQH/BAgwBgE
155980 42 2f 77 49 42 44 44 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 B/wIBDDAdBgNVHQ4EFgQU+SSsD7K1+Hn
1559a0 41 2b 6d 43 49 0a 47 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 A+mCI.G8TZTQKeFxkwgeMGA1UdIwSB2z
1559c0 43 42 32 49 41 55 2b 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 CB2IAU+SSsD7K1+HnA+mCIG8TZTQKeFx
1559e0 6d 68 67 62 53 6b 67 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 mhgbSkgbEwga4xCzAJ.BgNVBAYTAkVVM
155a00 55 4d 77 51 51 59 44 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 UMwQQYDVQQHEzpNYWRyaWQgKHNlZSBjd
155a20 58 4a 79 5a 57 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 0a XJyZW50IGFkZHJlc3MgYXQgd3d3LmNh.
155a40 62 57 56 79 5a 6d 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 bWVyZmlybWEuY29tL2FkZHJlc3MpMRIw
155a60 45 41 59 44 56 51 51 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 EAYDVQQFEwlBODI3NDMyODcxGzAZBgNV
155a80 42 41 6f 54 45 6b 46 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 BAoTEkFDIENh.bWVyZmlybWEgUy5BLjE
155aa0 70 4d 43 63 47 41 31 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 pMCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29
155ac0 74 62 57 56 79 59 32 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 tbWVyY2UgUm9vdCAtIDIwMDiC.CQCj2k
155ae0 4a 2b 70 4c 47 75 32 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 J+pLGu2jAOBgNVHQ8BAf8EBAMCAQYwPQ
155b00 59 44 56 52 30 67 42 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 YDVR0gBDYwNDAyBgRVHSAAMCowKAYIKw
155b20 59 42 42 51 55 48 0a 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 YBBQUH.AgEWHGh0dHA6Ly9wb2xpY3kuY
155b40 32 46 74 5a 58 4a 6d 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 2FtZXJmaXJtYS5jb20wDQYJKoZIhvcNA
155b60 51 45 46 42 51 41 44 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 QEFBQADggIBAJASryI1.wqM58C7e6bXp
155b80 65 48 78 49 76 6a 39 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 eHxIvj99RZJe6dqxGfwWPJ+0W2aeaufD
155ba0 75 56 32 49 36 41 2b 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 uV2I6A+tzyMP3iU6XsxPpcG1Lawk0lgH
155bc0 0a 33 71 4c 50 61 59 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 .3qLPaYRgM+gQDROpI9CF5Y57pp49chN
155be0 79 4d 2f 57 71 66 63 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 yM/WqfcZjHwj0/gF/JM8rLFQJ3uIrbZL
155c00 47 4f 55 38 57 36 6a 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 GOU8W6jx+ekbU.RWpGqOt1glanq6B8aB
155c20 4d 7a 39 70 30 77 38 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 Mz9p0w8G8nOSQjKpD9kCk18pPfNKXG9/
155c40 6a 76 6a 41 39 69 53 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 jvjA9iSnyu0/VU+I22mlaHFoI6.M6taI
155c60 67 6a 33 67 72 72 71 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 gj3grrqLuBHmrS1RaMFO9ncLkVAO+rcf
155c80 2b 67 37 36 39 48 73 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 +g769HsJtg1pDDFOqxXnrN2pSB7+R5KB
155ca0 57 49 42 70 69 68 31 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 WIBpih1.YJeSDW4+TTdDDZIVnBgizVGZ
155cc0 6f 43 6b 61 50 46 2b 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 oCkaPF+KMjNbMMeJL0eYD6MDxvbxrN8y
155ce0 38 4e 6d 42 47 75 53 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 8NmBGuScvfaAFPDRLLmF.9dijscilIeU
155d00 63 45 35 66 75 44 72 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 cE5fuDr3fKanvNFNb0+RqE4QGtjICxFK
155d20 75 49 74 4c 63 73 69 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 uItLcsiFCGtpA8CnJ7AoMXOLQusxI0zc
155d40 4b 0a 7a 42 49 4b 69 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 K.zBIKinmwPQN/aUv0NCB9szTqjktk9T
155d60 37 39 73 79 4e 6e 46 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 79syNnFQ0EuPAtwQlRPLJsFfClI9eDdO
155d80 54 6c 4c 73 6e 2b 6d 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 TlLsn+mCdCxqvG.nrDQWzilm1DefhiYt
155da0 55 55 37 39 6e 6d 30 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 UU79nm06PcaewaD+9CL2rvHvRirCG88g
155dc0 47 74 41 50 78 6b 5a 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 GtAPxkZumWK5r7VXNM21+9AUiRg.OGcE
155de0 4d 65 79 50 38 34 4c 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 MeyP84LG3rlV8zsxkVrctQgVrXYlCg17
155e00 4c 6f 66 69 44 4b 59 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 LofiDKYGvCYQbTed7N14jHyAxfDZd0jQ
155e20 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 6c 6f 62 .-----END.CERTIFICATE-----..Glob
155e40 61 6c 20 43 68 61 6d 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 al.Chambersign.Root.-.2008.=====
155e60 3d 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
155e80 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 48 53 54 43 43 42 54 EGIN.CERTIFICATE-----.MIIHSTCCBT
155ea0 47 67 41 77 49 42 41 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 GgAwIBAgIJAMnN0+nVfSPOMA0GCSqGSI
155ec0 62 33 44 51 45 42 42 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 b3DQEBBQUAMIGsMQswCQYDVQQGEwJFVT
155ee0 46 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 FD.MEEGA1UEBxM6TWFkcmlkIChzZWUgY
155f00 33 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 3VycmVudCBhZGRyZXNzIGF0IHd3dy5jY
155f20 57 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 W1lcmZpcm1hLmNv.bS9hZGRyZXNzKTES
155f40 4d 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 MBAGA1UEBRMJQTgyNzQzMjg3MRswGQYD
155f60 56 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 VQQKExJBQyBDYW1lcmZpcm1hIFMu.QS4
155f80 78 4a 7a 41 6c 42 67 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 xJzAlBgNVBAMTHkdsb2JhbCBDaGFtYmV
155fa0 79 63 32 6c 6e 62 69 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 yc2lnbiBSb290IC0gMjAwODAeFw0wODA
155fc0 34 4d 44 45 78 4d 6a 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 4MDExMjMx.NDBaFw0zODA3MzExMjMxND
155fe0 42 61 4d 49 47 73 4d 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 BaMIGsMQswCQYDVQQGEwJFVTFDMEEGA1
156000 55 45 42 78 4d 36 54 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 UEBxM6TWFkcmlkIChzZWUg.Y3VycmVud
156020 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 63 CBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpc
156040 6d 31 68 4c 6d 4e 76 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 m1hLmNvbS9hZGRyZXNzKTESMBAGA1UEB
156060 52 4d 4a 0a 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 42 RMJ.QTgyNzQzMjg3MRswGQYDVQQKExJB
156080 51 79 42 44 59 57 31 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 QyBDYW1lcmZpcm1hIFMuQS4xJzAlBgNV
1560a0 42 41 4d 54 48 6b 64 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 BAMTHkdsb2JhbCBD.aGFtYmVyc2lnbiB
1560c0 53 62 32 39 30 49 43 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 Sb290IC0gMjAwODCCAiIwDQYJKoZIhvc
1560e0 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 4d 44 66 0a 56 74 NAQEBBQADggIPADCCAgoCggIBAMDf.Vt
156100 50 6b 4f 70 74 32 52 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 PkOpt2RbQT2//BthmLN0EYlVJH6xedKY
156120 69 4f 4e 57 77 47 4d 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 iONWwGMi5HYvNJBL99RDaxccy9Wglz1d
156140 6d 46 52 50 2b 52 56 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 mFRP+RVyXf.XjaOcNFccUMd2drvXNL7G
156160 37 30 36 74 63 75 74 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 706tcuto8xEpw2uIRU/uXpbknXYpBI4i
156180 52 6d 4b 74 34 44 53 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 RmKt4DS4jJvVpyR1ogQC7N0.ZJJ0YPP2
1561a0 7a 78 68 50 59 4c 49 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 zxhPYLIj0Mc7zmFLmY/CDNBAspjcDahO
1561c0 6f 37 6b 4b 72 6d 43 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 o7kKrmCgrUVSY7pmvWjg+b4aqIG7HkF4
1561e0 64 64 50 42 0a 2f 67 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 ddPB./gBVsIdU6CeQNR1MM62X/JcumIS
156200 2f 4c 4d 6d 6a 76 39 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 /LMmjv9GYERTtY/jKmIhYF5ntRQOXfjy
156220 47 48 6f 69 4d 76 76 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 GHoiMvvKRhI9lNNgA.TH23MRdaKXoKGC
156240 51 77 6f 7a 65 31 65 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 Qwoze1eqkBfSbW+Q6OWfH9GzO1KTsXO0
156260 47 32 49 64 33 55 77 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 G2Id3UwD2ln58fQ1DJu7xsepeY7s2M.H
156280 2f 75 63 55 61 36 4c 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 /ucUa6LcL0nn3HAa6x9kGbo1106DbDVw
1562a0 6f 33 56 79 4a 32 64 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 o3VyJ2dwW3Q0L9R5OP4wzg2rtandeavh
1562c0 45 4e 64 6b 35 49 4d 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 ENdk5IMagfe.Ox2YItaswTXbo6Al/3K1
1562e0 64 68 33 65 62 65 6b 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 dh3ebeksZixShNBFks4c5eUzHdwHU1Sj
156300 71 6f 49 37 6d 6a 63 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 qoI7mjcv3N2gZOnm3b2u/GSF.HTynyQb
156320 65 68 50 39 72 36 47 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 ehP9r6GsaPMWis0L7iwk+XwhSx2LE1AV
156340 78 76 38 52 6b 35 50 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 xv8Rk5Pihg+g+EpuoHtQ2TS9x9o0o9oO
156360 70 45 39 4a 68 0a 77 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 pE9Jh.wZG7SMA0j0GMS0zbaRL/UJScII
156380 4e 5a 63 2b 31 38 6f 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 NZc+18ofLx/d33SdNDWKBWY8o9PeU1Vl
1563a0 6e 70 44 73 6f 67 7a 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 npDsogzCtLkykPAgMB.AAGjggFqMIIBZ
1563c0 6a 41 53 42 67 4e 56 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 jASBgNVHRMBAf8ECDAGAQH/AgEMMB0GA
1563e0 31 55 64 44 67 51 57 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 1UdDgQWBBS5CcqcHtvTbDprru1U8VuT.
156400 42 6a 55 75 58 6a 43 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 BjUuXjCB4QYDVR0jBIHZMIHWgBS5Ccqc
156420 48 74 76 54 62 44 70 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 HtvTbDprru1U8VuTBjUuXqGBsqSBrzCB
156440 72 44 45 4c 4d 41 6b 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 rDELMAkGA1UE.BhMCRVUxQzBBBgNVBAc
156460 54 4f 6b 31 68 5a 48 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 TOk1hZHJpZCAoc2VlIGN1cnJlbnQgYWR
156480 6b 63 6d 56 7a 63 79 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 kcmVzcyBhdCB3d3cuY2FtZXJm.aXJtYS
1564a0 35 6a 62 32 30 76 59 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 5jb20vYWRkcmVzcykxEjAQBgNVBAUTCU
1564c0 45 34 4d 6a 63 30 4d 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 E4Mjc0MzI4NzEbMBkGA1UEChMSQUMgQ2
1564e0 46 74 5a 58 4a 6d 0a 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 FtZXJm.aXJtYSBTLkEuMScwJQYDVQQDE
156500 78 35 48 62 47 39 69 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 x5HbG9iYWwgQ2hhbWJlcnNpZ24gUm9vd
156520 43 41 74 49 44 49 77 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 CAtIDIwMDiCCQDJzdPp.1X0jzjAOBgNV
156540 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 44 59 77 4e 44 41 79 HQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAy
156560 42 67 52 56 48 53 41 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 BgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0
156580 0a 64 48 41 36 4c 79 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 .dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5
1565a0 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 67 67 49 42 41 49 43 jb20wDQYJKoZIhvcNAQEFBQADggIBAIC
1565c0 49 66 33 44 65 6b 69 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 If3DekijZBZRG./5BXqfEv3xoNa/p8Dh
1565e0 78 4a 4a 48 6b 6e 32 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 xJJHkn2EaqbylZUohwEurdPfWbU1Rv4W
156600 43 69 71 41 6d 35 37 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 CiqAm57OtZfMY18dwY6fFn5a+6.ReAJ3
156620 73 70 45 44 38 49 58 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 spED8IXDneRRXozX1+WLGiLwUePmJs9w
156640 4f 7a 4c 39 64 57 43 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 OzL9dWCkoQ10b42OFZyMVtHLaoXpGNR6
156660 77 6f 42 72 58 2f 73 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 woBrX/s.dZ7LoR/xfxKxueRkf2fWIyr0
156680 75 44 6c 64 6d 4f 67 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 uDldmOghp+G9PUIadJpwr2hsUF1Jz//7
1566a0 44 6c 33 6d 4c 45 66 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 Dl3mLEfXgTpZALVza2Mg.9jFFCDkO9HB
1566c0 2b 51 48 42 61 50 39 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 +QHBaP9BrQql0PSgvAm11cpUJjUhjxsY
1566e0 6a 56 35 4b 54 58 6a 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 jV5KTXjXBjfkK9yydYhz2rXzdpjEetrH
156700 48 0a 66 6f 55 6d 2b 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 H.foUm+qRqtdpjMNHvkzeyZi99Bffnt0
156720 75 59 6c 44 58 41 32 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 uYlDXA2TopwZ2yUDMdSqlapskD7+3056
156740 68 75 69 72 52 58 68 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 huirRXhOukP9Du.qqqHW2Pok+JrqNS4c
156760 6e 68 72 47 2b 30 35 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 nhrG+055F3Lm6qH1U9OAP7Zap88MQ8oA
156780 67 46 39 6d 4f 69 6e 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 gF9mOinsKJknnn4SPIVqczmyETr.P3iZ
1567a0 38 6e 74 78 50 6a 7a 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 8ntxPjzxmKfFGBI/5rsoM0LpRQp8bfKG
1567c0 65 53 2f 46 67 68 6c 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 eS/Fghl9CYl8slR2iK7ewfPM4W7bMdaT
1567e0 72 70 6d 67 37 79 56 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 rpmg7yVq.c5iJWzouE4gev8CSlDQb4ye
156800 33 69 78 35 76 51 76 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 3ix5vQv/n6TebUB0tovkC7stYWDpxvGj
156820 6a 71 73 47 76 48 43 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 jqsGvHCgfotwjZT+B6q6Z.09gwzxMNTx
156840 58 4a 68 4c 79 6e 53 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 XJhLynSC34MCN32EZLeW32jO06f2AReP
156860 54 70 6d 36 37 56 56 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 Tpm67VVMB0gNELQp/B.-----END.CERT
156880 49 46 49 43 41 54 45 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 IFICATE-----..Go.Daddy.Root.Cert
1568a0 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.=========
1568c0 3d 3d 3d 3d 3d 3d 3d 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 ===============================.
1568e0 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
156900 78 54 43 43 41 71 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 xTCCAq2gAwIBAgIBADANBgkqhkiG9w0B
156920 41 51 73 46 41 44 43 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 AQsFADCBgzELMAkGA1UEBhMCVVMxEDAO
156940 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 63 BgNVBAgT.B0FyaXpvbmExEzARBgNVBAc
156960 54 43 6c 4e 6a 62 33 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 TClNjb3R0c2RhbGUxGjAYBgNVBAoTEUd
156980 76 52 47 46 6b 5a 48 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 vRGFkZHkuY29tLCBJbmMu.MTEwLwYDVQ
1569a0 51 44 45 79 68 48 62 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 QDEyhHbyBEYWRkeSBSb290IENlcnRpZm
1569c0 6c 6a 59 58 52 6c 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 ljYXRlIEF1dGhvcml0eSAtIEcyMB4XDT
1569e0 41 35 0a 4d 44 6b 77 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 A5.MDkwMTAwMDAwMFoXDTM3MTIzMTIzN
156a00 54 6b 31 4f 56 6f 77 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 Tk1OVowgYMxCzAJBgNVBAYTAlVTMRAwD
156a20 67 59 44 56 51 51 49 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 gYDVQQIEwdBcml6.b25hMRMwEQYDVQQH
156a40 45 77 70 54 59 32 39 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 EwpTY290dHNkYWxlMRowGAYDVQQKExFH
156a60 62 30 52 68 5a 47 52 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 b0RhZGR5LmNvbSwgSW5jLjExMC8G.A1U
156a80 45 41 78 4d 6f 52 32 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 EAxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZ
156aa0 70 59 32 46 30 5a 53 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 pY2F0ZSBBdXRob3JpdHkgLSBHMjCCASI
156ac0 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 43 43 41 51 wDQYJKoZI.hvcNAQEBBQADggEPADCCAQ
156ae0 6f 43 67 67 45 42 41 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 oCggEBAL9xYgjx+lk09xvJGKP3gElY6S
156b00 4b 44 45 36 62 46 49 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 KDE6bFIEMBO4Tx5oVJnyfq.9oQbTqC02
156b20 33 43 59 78 7a 49 42 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 3CYxzIBsQU+B07u9PpPL1kwIuerGVZr4
156b40 6f 41 48 2f 50 4d 57 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 oAH/PMWdYA5UXvl+TW2dE6pjYIT5LY/q
156b60 51 4f 44 0a 2b 71 4b 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 QOD.+qK+ihVqf94Lw7YZFAXK6sOoBJQ7
156b80 52 6e 77 79 44 66 4d 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 RnwyDfMAZiLIjWltNowRGLfTshxgtDj6
156ba0 41 6f 7a 4f 30 39 31 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 AozO091GB94KPutd.fMh8+7ArU6SSYml
156bc0 52 4a 51 56 68 47 6b 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 RJQVhGkSBjCypQ5Yj36w6gZoOKcUcqel
156be0 64 48 72 61 65 6e 6a 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 dHraenjAKOc7xiID7S13MMuyFYkMl.NA
156c00 4a 57 4a 77 47 52 74 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 JWJwGRtDtwKj9useiciAF9n9T521NtYJ
156c20 32 2f 4c 4f 64 59 71 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 2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4E
156c40 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 2f 42 41 55 77 41 cCAwEAAaNC.MEAwDwYDVR0TAQH/BAUwA
156c60 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 77 48 51 59 44 56 wEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDV
156c80 52 30 4f 42 42 59 45 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 R0OBBYEFDqahQcQZyi27/a9.BUFuIMGU
156ca0 32 67 2f 65 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 43 5a 2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ
156cc0 32 31 31 35 31 66 6d 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 21151fmXWWcDYfF+OwYxdS2hII5PZYe0
156ce0 39 36 61 63 0a 76 4e 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 96ac.vNjpL9DbWu7PdIxztDhC2gV7+AJ
156d00 31 75 50 32 6c 73 64 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 1uP2lsdeu9tfeE8tTEH6KRtGX+rcuKxG
156d20 72 6b 4c 41 6e 67 50 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 rkLAngPnon1rpN5+r.5N9ss4UXnT3ZJE
156d40 39 35 6b 54 58 57 58 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 95kTXWXwTrgIOrmgIttRD02JDHBHNA7X
156d60 49 6c 6f 4b 6d 66 37 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 IloKmf7J6raBKZV8aPEjoJpL1E/QYV.N
156d80 38 47 62 35 44 4b 6a 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 8Gb5DKj7Tjo2GTzLH4U/ALqn83/B2gX2
156da0 79 4b 51 4f 43 31 36 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 yKQOC16jdFU8WnjXzPKej17CuPKf1855
156dc0 65 4a 31 75 73 56 32 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 eJ1usV2GDPO.LPAvTK33sefOT6jEm0pU
156de0 42 73 56 2f 66 64 55 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 BsV/fdUID+Ic/n4XuKxe9tQWskMJDE32
156e00 70 32 75 30 6d 59 52 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 p2u0mYRlynqI4uJEvlz36hz1.-----EN
156e20 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 52 6f D.CERTIFICATE-----..Starfield.Ro
156e40 6f 74 20 43 65 72 74 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 ot.Certificate.Authority.-.G2.==
156e60 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
156e80 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--
156ea0 2d 2d 2d 0a 4d 49 49 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 ---.MIID3TCCAsWgAwIBAgIBADANBgkq
156ec0 68 6b 69 47 39 77 30 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 hkiG9w0BAQsFADCBjzELMAkGA1UEBhMC
156ee0 56 56 4d 78 45 44 41 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 VVMxEDAOBgNVBAgT.B0FyaXpvbmExEzA
156f00 52 42 67 4e 56 42 41 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 RBgNVBAcTClNjb3R0c2RhbGUxJTAjBgN
156f20 56 42 41 6f 54 48 46 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 VBAoTHFN0YXJmaWVsZCBUZWNobm9s.b2
156f40 64 70 5a 58 4d 73 49 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 dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YX
156f60 4a 6d 61 57 56 73 5a 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 JmaWVsZCBSb290IENlcnRpZmljYXRlIE
156f80 46 31 64 47 68 76 63 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 F1dGhvcml0.eSAtIEcyMB4XDTA5MDkwM
156fa0 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
156fc0 59 38 78 43 7a 41 4a 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 Y8xCzAJBgNVBAYTAlVTMRAw.DgYDVQQI
156fe0 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
157000 64 48 4e 6b 59 57 78 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 dHNkYWxlMSUwIwYDVQQKExxTdGFyZmll
157020 62 47 51 67 0a 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 49 bGQg.VGVjaG5vbG9naWVzLCBJbmMuMTI
157040 77 4d 41 59 44 56 51 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 wMAYDVQQDEylTdGFyZmllbGQgUm9vdCB
157060 44 5a 58 4a 30 61 57 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 DZXJ0aWZpY2F0ZSBB.dXRob3JpdHkgLS
157080 42 48 4d 6a 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 BHMjCCASIwDQYJKoZIhvcNAQEBBQADgg
1570a0 45 50 41 44 43 43 41 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 EPADCCAQoCggEBAL3twQP89o/8ArFv.W
1570c0 35 39 49 32 5a 31 35 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 59I2Z154qK3A2FWGMNHttfKPTUuiUP3o
1570e0 57 6d 62 33 6f 6f 61 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 Wmb3ooa/RMgnLRJdzIpVv257IzdIvpy3
157100 43 64 68 6c 2b 37 32 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 Cdhl+72WoTs.bhm5iSzchFvVdPtrX8WJ
157120 70 52 42 53 69 55 5a 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 pRBSiUZV9Lh1HOZ/5FSuS/hVclcCGfgX
157140 63 56 6e 72 48 69 67 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 cVnrHigHdMWdSL5stPSksPNk.N3mSwOx
157160 47 58 6e 2f 68 62 56 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 GXn/hbVNMYq/NHwtjuzqd+/x5AJhhdM8
157180 6d 67 6b 42 6a 38 37 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 mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ
1571a0 2f 58 37 4e 66 0a 5a 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 /X7Nf.ZTD4p7dNdloedl40wOiWVpmKs/
1571c0 42 2f 70 4d 32 39 33 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 B/pM293DIxfJHP4F8R+GuqSVzRmZTRou
1571e0 4e 6a 57 77 6c 32 74 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 NjWwl2tVZi4Ut0HZbU.JtQIBFnQmA4O5
157200 74 37 38 77 2b 77 66 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 t78w+wfkPECAwEAAaNCMEAwDwYDVR0TA
157220 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 0a QH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC.
157240 41 51 59 77 48 51 59 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 AQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1o
157260 6f 32 4b 6f 6f 63 36 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 o2Kooc6rB1snMA0GCSqGSIb3DQEBCwUA
157280 41 34 49 42 41 51 41 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 A4IBAQARWfol.TwNvlJk7mh+ChTnUdgW
1572a0 55 58 75 45 6f 6b 32 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 UXuEok21iXQnCoKjUsHU48TRqneSfioY
1572c0 6d 55 65 59 73 30 63 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 mUeYs0cYtbpUgSpIB7LiKZ3sx.4mcujJ
1572e0 55 44 4a 69 35 44 6e 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 UDJi5DnUox9g61DLu34jd/IroAow57Uv
157300 74 72 75 7a 76 45 30 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 truzvE03lRTs2Q9GcHGcg8RnoNAX3FWO
157320 64 74 35 6f 55 77 0a 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 dt5oUw.F5okxBDgBPfg8n/Uqgr/Qh037
157340 5a 54 6c 5a 46 6b 53 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 ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fx
157360 65 7a 36 6e 48 37 50 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 ez6nH7PfrHxBy22/L/K.pL/QlwVKvOoY
157380 4b 41 4b 51 76 56 52 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 KAKQvVR4CSFx09F9HdkWsKlhPdAKACL8
1573a0 78 33 76 4c 43 57 52 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 x3vLCWRFCztAgfd9fDL1mMpYjn0q7pBZ
1573c0 0a 63 32 54 35 4e 6e 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 .c2T5NnReJaH1ZgUufzkVqSr7UIuOhWn
1573e0 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 53 74 61 0.-----END.CERTIFICATE-----..Sta
157400 72 66 69 65 6c 64 20 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 rfield.Services.Root.Certificate
157420 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.================
157440 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
157460 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
157480 49 49 44 37 7a 43 43 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 IID7zCCAtegAwIBAgIBADANBgkqhkiG9
1574a0 77 30 42 41 51 73 46 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 w0BAQsFADCBmDELMAkGA1UEBhMCVVMxE
1574c0 44 41 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 DAOBgNVBAgT.B0FyaXpvbmExEzARBgNV
1574e0 42 41 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 BAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT
157500 48 46 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 HFN0YXJmaWVsZCBUZWNobm9s.b2dpZXM
157520 73 49 45 6c 75 59 79 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 sIEluYy4xOzA5BgNVBAMTMlN0YXJmaWV
157540 73 5a 43 42 54 5a 58 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 sZCBTZXJ2aWNlcyBSb290IENlcnRpZml
157560 6a 59 58 52 6c 0a 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 jYXRl.IEF1dGhvcml0eSAtIEcyMB4XDT
157580 41 35 4d 44 6b 77 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 A5MDkwMTAwMDAwMFoXDTM3MTIzMTIzNT
1575a0 6b 31 4f 56 6f 77 67 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 k1OVowgZgxCzAJBgNV.BAYTAlVTMRAwD
1575c0 67 59 44 56 51 51 49 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 gYDVQQIEwdBcml6b25hMRMwEQYDVQQHE
1575e0 77 70 54 59 32 39 30 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 wpTY290dHNkYWxlMSUwIwYDVQQKExxT.
157600 64 47 46 79 5a 6d 6c 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 dGFyZmllbGQgVGVjaG5vbG9naWVzLCBJ
157620 62 6d 4d 75 4d 54 73 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 bmMuMTswOQYDVQQDEzJTdGFyZmllbGQg
157640 55 32 56 79 64 6d 6c 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 U2VydmljZXMg.Um9vdCBDZXJ0aWZpY2F
157660 30 5a 53 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 0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQY
157680 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 0a 41 51 6f 43 67 67 JKoZIhvcNAQEBBQADggEPADCC.AQoCgg
1576a0 45 42 41 4e 55 4d 4f 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 EBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz5
1576c0 38 67 45 32 30 70 4f 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 8gE20pOsgPfTz3a3Y4Y9k2YKibXlwAgL
1576e0 49 76 57 58 2f 32 0a 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 IvWX/2.h/klQ4bnaRtSmpDhcePYLQ1Ob
157700 2f 62 49 53 64 6d 32 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 /bISdm28xpWriu2dBTrz/sm4xq6HZYua
157720 6a 74 59 6c 49 6c 48 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 jtYlIlHVv8loJNwU4Pa.hHQUw2eeBGg6
157740 33 34 35 41 57 68 31 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 345AWh1KTs9DkTvnVtYAcMtS7nt9rjrn
157760 76 44 48 35 52 66 62 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 vDH5RfbCYM8TWQIrgMw0R9+53pBlbQLP
157780 0a 4c 4a 47 6d 70 75 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 .LJGmpufehRhJfGZOozptqbXuNC66DQO
1577a0 34 4d 39 39 48 36 37 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 4M99H67FrjSXZm86B0UVGMpZwh94CDkl
1577c0 44 68 62 5a 73 63 37 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 DhbZsc7tk6mFB.rMnUVN+HL8cisibMn1
1577e0 6c 55 61 4a 2f 38 76 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 lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAw
157800 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 0a 41 77 45 42 2f EAAaNCMEAwDwYDVR0TAQH/BAUw.AwEB/
157820 7a 41 4f 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 zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OB
157840 42 59 45 46 4a 78 66 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 BYEFJxfAN+qAdcwKziIorhtSpzyEZGDM
157860 41 30 47 43 53 71 47 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 A0GCSqG.SIb3DQEBCwUAA4IBAQBLNqaE
157880 64 32 6e 64 4f 78 6d 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 d2ndOxmfZyMIbw5hyf2E3F/YNoHN2BtB
1578a0 4c 5a 39 67 33 63 63 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 LZ9g3ccaaNnRbobhiCPP.E95Dz+I0swS
1578c0 64 48 79 6e 56 76 2f 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 dHynVv/heyNXBve6SbzJ08pGCL72CQnq
1578e0 74 4b 72 63 67 66 55 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 tKrcgfU28elUSwhXqvfdqlS5sdJ/PHLT
157900 79 0a 78 51 47 6a 68 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 y.xQGjhdByPq1zqwubdQxtRbeOlKyWN7
157920 57 67 30 49 38 56 52 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 Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8j
157940 63 49 37 33 48 50 64 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 cI73HPdwbeyBkd.iEDPfUYd/x7H4c7/I
157960 39 76 47 2b 6f 31 56 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 9vG+o1VTqkC50cRRj70/b17KSa7qWFiN
157980 79 69 32 4c 53 72 32 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 yi2LSr2EIZkyXCn0q23KXB56jza.YyWf
1579a0 2f 57 69 33 4d 4f 78 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 /Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotn
1579c0 44 55 30 6d 56 33 48 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 DU0mV3HaIPzBSlCNsSi6.-----END.CE
1579e0 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 43 6f 6d 6d RTIFICATE-----..AffirmTrust.Comm
157a00 65 72 63 69 61 6c 0a 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 ercial.======================.--
157a20 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 54 44 ---BEGIN.CERTIFICATE-----.MIIDTD
157a40 43 43 41 6a 53 67 41 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 CCAjSgAwIBAgIId3cGJyapsXwwDQYJKo
157a60 5a 49 68 76 63 4e 41 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 ZIhvcNAQELBQAwRDELMAkGA1UEBhMCVV
157a80 4d 78 46 44 41 53 0a 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 MxFDAS.BgNVBAoMC0FmZmlybVRydXN0M
157aa0 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 42 44 62 R8wHQYDVQQDDBZBZmZpcm1UcnVzdCBDb
157ac0 32 31 74 5a 58 4a 6a 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 21tZXJjaWFsMB4XDTEw.MDEyOTE0MDYw
157ae0 4e 6c 6f 58 44 54 4d 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 NloXDTMwMTIzMTE0MDYwNlowRDELMAkG
157b00 41 31 55 45 42 68 4d 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 A1UEBhMCVVMxFDASBgNVBAoMC0FmZmly
157b20 0a 62 56 52 79 64 58 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 .bVRydXN0MR8wHQYDVQQDDBZBZmZpcm1
157b40 55 63 6e 56 7a 64 43 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 UcnVzdCBDb21tZXJjaWFsMIIBIjANBgk
157b60 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 67 4b 43 41 51 qhkiG9w0BAQEF.AAOCAQ8AMIIBCgKCAQ
157b80 45 41 39 68 74 50 5a 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 EA9htPZwcroRX1BiLLHwGy43NFBkRJLL
157ba0 74 4a 4a 52 54 57 7a 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 tJJRTWzsO3qyxPxkEylFf6Eqdb.DuKPH
157bc0 78 36 47 47 61 65 71 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 x6GGaeqtS25Xw2Kwq+FNXkyLbscYjfys
157be0 56 74 4b 50 63 72 4e 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 VtKPcrNcV/pQr6U6Mje+SJIZMblq8Yrb
157c00 61 30 46 38 50 72 56 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 a0F8PrV.C8+a5fBQpIs7R6UjW3p6+DM/
157c20 75 4f 2b 5a 6c 2b 4d 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 uO+Zl+MgwdYoic+U+7lF7eNAFxHUdPAL
157c40 4d 65 49 72 4a 6d 71 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 MeIrJmqbTFeurCA+ukV6.BfO9m2kVrn1
157c60 4f 49 47 50 45 4e 58 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 OIGPENXY6BwLJN/3HR+7o8XYdcxXyl6S
157c80 31 79 48 70 35 32 55 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 1yHp52UKqK39c/s4mT6NmgTWvRLpUHhw
157ca0 77 0a 4d 6d 57 64 35 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 w.MmWd5jyTXlBOeuM61G7MGvv50jeuJC
157cc0 71 72 56 77 4d 69 4b 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 qrVwMiKA1JdX+3KNp1v47j3A55MQIDAQ
157ce0 41 42 6f 30 49 77 51 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 ABo0IwQDAdBgNV.HQ4EFgQUnZPGU4tey
157d00 71 38 2f 6e 78 34 50 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 q8/nx4P5ZmVvCT2lI8wDwYDVR0TAQH/B
157d20 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 0a 41 51 59 77 AUwAwEB/zAOBgNVHQ8BAf8EBAMC.AQYw
157d40 44 51 59 4a 4b 6f 5a 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 DQYJKoZIhvcNAQELBQADggEBAFis9AQO
157d60 7a 63 41 4e 2f 77 72 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 zcAN/wr91LoWXym9e2iZWEnStB03TX8n
157d80 66 55 59 47 58 55 50 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 fUYGXUPG.hi4+c7ImfU+TqbbEKpqrIZc
157da0 55 73 64 36 4d 30 36 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 Usd6M06uJFdhrJNTxFq7YpFzUf1GO7Rg
157dc0 42 73 5a 4e 6a 76 62 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 BsZNjvbz4YYCanrHOQnDi.qX0GJX0nof
157de0 35 76 37 4c 4d 65 4a 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 5v7LMeJNrjS1UaADs1tDvZ110w/YETif
157e00 4c 43 42 69 76 74 5a 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 LCBivtZ8SOyUOyXGsViQK8YvxO8rUzqr
157e20 4a 76 0a 30 77 71 69 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 Jv.0wqiUOP2O+guRMLbZjipM1ZI8W0bM
157e40 34 30 4e 6a 44 39 67 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 40NjD9gN53Tym1+NH4Nn3J2ixufcv1SN
157e60 55 46 46 41 70 59 76 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 UFFApYvHLKac0kh.sUlHRUe072o0EclN
157e80 6d 73 78 5a 74 39 59 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 msxZt9YCnlpOZbWUrhvfKbAW8b8Angc6
157ea0 46 32 53 31 42 4c 55 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 F2S1BLUjIZkKlTuXfO8=.-----END.CE
157ec0 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 4e 65 74 77 RTIFICATE-----..AffirmTrust.Netw
157ee0 6f 72 6b 69 6e 67 0a 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 orking.======================.--
157f00 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 54 44 ---BEGIN.CERTIFICATE-----.MIIDTD
157f20 43 43 41 6a 53 67 41 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 CCAjSgAwIBAgIIfE8EORzUmS0wDQYJKo
157f40 5a 49 68 76 63 4e 41 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 ZIhvcNAQEFBQAwRDELMAkGA1UEBhMCVV
157f60 4d 78 46 44 41 53 0a 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 MxFDAS.BgNVBAoMC0FmZmlybVRydXN0M
157f80 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 42 4f 5a R8wHQYDVQQDDBZBZmZpcm1UcnVzdCBOZ
157fa0 58 52 33 62 33 4a 72 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 XR3b3JraW5nMB4XDTEw.MDEyOTE0MDgy
157fc0 4e 46 6f 58 44 54 4d 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 NFoXDTMwMTIzMTE0MDgyNFowRDELMAkG
157fe0 41 31 55 45 42 68 4d 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 A1UEBhMCVVMxFDASBgNVBAoMC0FmZmly
158000 0a 62 56 52 79 64 58 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 .bVRydXN0MR8wHQYDVQQDDBZBZmZpcm1
158020 55 63 6e 56 7a 64 43 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 UcnVzdCBOZXR3b3JraW5nMIIBIjANBgk
158040 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 67 4b 43 41 51 qhkiG9w0BAQEF.AAOCAQ8AMIIBCgKCAQ
158060 45 41 74 49 54 4d 4d 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 EAtITMMxcua5Rsa2FSoOujz3mUTOWUgJ
158080 6e 4c 56 57 52 45 5a 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 nLVWREZY9nZOIG41w3SfYvm4SE.Hi3yY
1580a0 4a 30 77 54 73 79 45 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 J0wTsyEheIszx6e/jarM3c1RNg1lho9N
1580c0 75 68 36 44 74 6a 56 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 uh6DtjVR6FqaYvZ/Ls6rnla1fTWcbuak
1580e0 43 4e 72 6d 72 65 49 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 CNrmreI.dIcMHl+5ni36q1Mr3Lt2PpNM
158100 43 41 69 4d 48 71 49 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 CAiMHqIjHNRqrSK6mQEubWXLviRmVSRL
158120 51 45 53 78 47 39 66 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 QESxG9fhwoXA3hA/Pe24./PHxI1Pcv2W
158140 58 62 39 6e 35 51 48 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 Xb9n5QHGNfb2V1M6+oF4nI979ptAmDgA
158160 70 36 7a 78 47 38 44 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 p6zxG8D1gvz9Q0twmQVGeFDdCBKNwV6g
158180 62 0a 68 2b 30 74 2b 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 b.h+0t+nvujArjqWaJGctB+d1ENmHP4n
1581a0 64 47 79 48 33 32 39 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 dGyH329JKBNv3bNPFyfvMMFr20FQIDAQ
1581c0 41 42 6f 30 49 77 51 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 ABo0IwQDAdBgNV.HQ4EFgQUBx/S55zaw
1581e0 6d 36 69 51 4c 53 77 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 m6iQLSwelAQUHTEyL0wDwYDVR0TAQH/B
158200 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 0a 41 51 59 77 AUwAwEB/zAOBgNVHQ8BAf8EBAMC.AQYw
158220 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 49 6c 58 73 68 5a 36 DQYJKoZIhvcNAQEFBQADggEBAIlXshZ6
158240 71 4d 4c 39 31 74 6d 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 qML91tmbmzTCnLQyFE2npN/svqe++EPb
158260 6b 54 66 4f 74 44 49 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 kTfOtDIu.UFUaNU52Q3Eg75N3ThVwLof
158280 44 77 52 31 74 33 4d 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 DwR1t3Mu1J9QsVtFSUzpE0nPIxBsFZVp
1582a0 69 6b 70 7a 75 51 59 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 ikpzuQY0x2+c06lkh1QF6.12S4ZDnNye
1582c0 32 76 37 55 73 44 53 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 2v7UsDSKegmQGA3GWjNq5lWUhPgkvIZf
1582e0 46 58 48 65 56 5a 4c 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 FXHeVZLgo/bNjR9eUJtGxUAArgFU2HdW
158300 32 33 0a 57 4a 5a 61 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 23.WJZa3W3SAKD0m0i+wzekujbgfIeFl
158320 78 6f 56 6f 74 34 75 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 xoVot4uolu9rxj5kFDNcFn4J2dHy8egB
158340 7a 70 39 30 53 78 64 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 zp90SxdbBk6ZrV9./ZFvgrG+CJPbFEfx
158360 6f 6a 66 48 52 5a 34 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 ojfHRZ48x3evZKiT3/Zpg4Jg8klCNO1a
158380 41 46 53 46 48 42 59 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 AFSFHBY2kgxc+qatv9s=.-----END.CE
1583a0 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
1583c0 69 75 6d 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 47 ium.===================.-----BEG
1583e0 49 4e 20 43 45 52 54 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 IN.CERTIFICATE-----.MIIFRjCCAy6g
158400 41 77 49 42 41 67 49 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 AwIBAgIIbYwURrGmCu4wDQYJKoZIhvcN
158420 41 51 45 4d 42 51 41 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 AQEMBQAwQTELMAkGA1UEBhMCVVMxFDAS
158440 0a 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 77 77 47 67 59 .BgNVBAoMC0FmZmlybVRydXN0MRwwGgY
158460 44 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 DVQQDDBNBZmZpcm1UcnVzdCBQcmVtaXV
158480 74 4d 42 34 58 44 54 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 tMB4XDTEwMDEy.OTE0MTAzNloXDTQwMT
1584a0 49 7a 4d 54 45 30 4d 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 IzMTE0MTAzNlowQTELMAkGA1UEBhMCVV
1584c0 4d 78 46 44 41 53 42 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 MxFDASBgNVBAoMC0FmZmlybVRy.dXN0M
1584e0 52 77 77 47 67 59 44 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 RwwGgYDVQQDDBNBZmZpcm1UcnVzdCBQc
158500 6d 56 74 61 58 56 74 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 mVtaXVtMIICIjANBgkqhkiG9w0BAQEFA
158520 41 4f 43 41 67 38 41 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 AOCAg8A.MIICCgKCAgEAxBLfqV/+Qd3d
158540 39 5a 2b 4b 34 2f 61 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 9Z+K4/as4Tx4mrzY8H96oDMq3I0gW64t
158560 62 2b 65 54 32 54 5a 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 b+eT2TZwamjPjlGjhVtn.BKAQJG9dKIL
158580 42 6c 31 66 59 53 43 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 Bl1fYSCkTtuG+kU3fhQxTGJoeJKJPj/C
1585a0 69 68 51 76 4c 39 43 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 ihQvL9Cl/0qRY7iZNyaqoe5rZ+jjeRFc
1585c0 56 0a 35 66 69 4d 79 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 V.5fiMyNlI4g0WJx0eyIOFJbe6qlVBzA
1585e0 4d 69 53 79 32 52 6a 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 MiSy2RjYvmia9mx+n/K+k8rNrSs8PhaJ
158600 79 4a 2b 48 6f 41 56 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 yJ+HoAVt70VZVs.+7pk3WKL3wt3Mutiz
158620 43 61 61 6d 37 75 71 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 Caam7uqYoNMtAZ6MMgpv+0GTZe5HMQxK
158640 39 56 66 76 46 4d 53 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 9VfvFMSF5yZVylmd2EhMQcuJUmd.GPLu
158660 38 79 74 78 6a 4c 57 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 8ytxjLW6OQdJd/zvLpKQBY0tL3d770O/
158680 4e 62 75 61 32 50 6c 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 Nbua2Plzpyzy0FfuKE4mX4+QaAkvuPjc
1586a0 42 75 6b 75 6d 6a 35 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 Bukumj5R.p9EixAqnOEhss/n/fauGV+O
1586c0 36 31 6f 56 34 64 37 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 61oV4d7pD6kh/9ti+I20ev9E2bFhc8e6
1586e0 6b 47 56 51 61 39 51 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 kGVQa9QPSdubhjL08s9NI.S+LI+H+SqH
158700 5a 47 6e 45 4a 6c 50 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 ZGnEJlPqQewQcDWkYtuJfzt9WyVSHvut
158720 78 4d 41 4a 66 37 46 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 xMAJf7FJUnM7/oQ0dG0giZFmA7mn7S5u
158740 30 34 0a 36 75 77 42 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 04.6uwBHjxIVkkJx0w3AJ6IDsBz4W9m6
158760 58 4a 48 4d 44 34 51 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 XJHMD4Q5QsDyZpCAGzFlH5hxIrff4IaC
158780 31 6e 45 57 54 4a 33 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 1nEWTJ3s7xgaVY5./bQGeyzWZDbZvUjt
1587a0 68 42 39 2b 70 53 4b 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 hB9+pSKPKrhC9IK31FOQeE4tGv2Bb0TX
1587c0 4f 77 46 30 6c 6b 4c 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 OwF0lkLgAOIua+rF7nKsu7/+6qqo.+Nz
1587e0 32 73 6e 6d 4b 74 6d 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 2snmKtmcCAwEAAaNCMEAwHQYDVR0OBBY
158800 45 46 4a 33 41 5a 36 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 EFJ3AZ6YMItkm9UWrpmVSESfYRaxjMA8
158820 47 41 31 55 64 45 77 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 GA1UdEwEB./wQFMAMBAf8wDgYDVR0PAQ
158840 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 44 41 55 41 41 34 H/BAQDAgEGMA0GCSqGSIb3DQEBDAUAA4
158860 49 43 41 51 43 7a 56 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 ICAQCzV00QYk465KzquByv.MiPIs0laU
158880 5a 78 32 4b 49 31 35 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 Zx2KI15qldGF9X1Uva3ROgIRL8YhNILg
1588a0 4d 33 46 45 76 30 41 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 M3FEv0AVQVhh0HctSSePMTYyPtwni94l
1588c0 6f 4d 67 0a 4e 74 35 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 oMg.Nt58D2kTiKV1NpgIpsbfrM7jWNa3
1588e0 50 74 36 36 38 2b 73 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 Pt668+s0QNiigfV4Py/VpfzZotReBA4X
158900 72 66 35 42 38 4f 57 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 rf5B8OWycvpEgjNC.6C1Y91aMYj+6QrC
158920 63 44 46 78 2b 4c 6d 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 cDFx+LmUmXFNPALJ4fqENmS2NuB2OosS
158940 77 2f 57 44 51 4d 4b 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 w/WDQMKSOyARiqcTtNd56l+0OOF6S.L5
158960 4e 77 70 61 6d 63 62 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 Nwpamcb6d9Ex1+xghIsV5n61EIJenmJW
158980 74 53 4b 5a 47 63 30 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 tSKZGc0jlzCFfemQa0W50QBuHCAKi4HE
1589a0 6f 43 43 68 54 51 77 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 oCChTQwUHK.+4w1IX2COPKpVJEZNZOUb
1589c0 57 6f 36 78 62 4c 51 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 Wo6xbLQu4mGk+ibyQ86p3q4ofB4Rvr8N
1589e0 79 2f 6c 69 6f 54 7a 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 y/lioTz3/4E2aFooC8k4gmV.BtWVyuEk
158a00 6c 75 74 38 39 70 4d 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 lut89pMFu+1z6S3RdTnX5yTb2E5fQ4+e
158a20 30 42 51 35 76 31 56 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 0BQ5v1VwSJlXMbSc7kqYA5YwH2AG7hsj
158a40 2f 6f 46 67 0a 49 78 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 /oFg.IxpHYoWlzBk0gG+zrBrjn/B7SK3
158a60 56 41 64 6c 6e 74 71 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 VAdlntqlyk+otZrWyuOQ9PLLvTIzq6we
158a80 2f 71 7a 57 61 56 59 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 /qzWaVYa8GKa1qF60.g2xraUDTn9zxw2
158aa0 6c 72 75 65 46 74 43 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 lrueFtCfTxqlB2Cnp9ehehVZZCmTEJ3W
158ac0 41 52 6a 51 55 77 66 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 ARjQUwfuaORtGdFNrHF+QFlozEJLUb.z
158ae0 78 51 48 73 6b 44 34 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 xQHskD4o55BhrwE0GuWyCqANP2/7waj3
158b00 56 6a 46 68 54 30 2b 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 VjFhT0+j/6eKeC2uAloGRwYQw==.----
158b20 2d 45 4e 44 20 43 45 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 -END.CERTIFICATE-----..AffirmTru
158b40 73 74 20 50 72 65 6d 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 st.Premium.ECC.=================
158b60 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---
158b80 2d 2d 0a 4d 49 49 42 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 --.MIIB/jCCAYWgAwIBAgIIdJclisc/e
158ba0 6c 51 77 43 67 59 49 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 lQwCgYIKoZIzj0EAwMwRTELMAkGA1UEB
158bc0 68 4d 43 56 56 4d 78 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 hMCVVMxFDASBgNV.BAoMC0FmZmlybVRy
158be0 64 58 4e 30 4d 53 41 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 dXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVz
158c00 64 43 42 51 63 6d 56 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 dCBQcmVtaXVtIEVDQzAeFw0xMDAx.Mjk
158c20 78 4e 44 49 77 4d 6a 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 xNDIwMjRaFw00MDEyMzExNDIwMjRaMEU
158c40 78 43 7a 41 4a 42 67 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 xCzAJBgNVBAYTAlVTMRQwEgYDVQQKDAt
158c60 42 5a 6d 5a 70 63 6d 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 BZmZpcm1U.cnVzdDEgMB4GA1UEAwwXQW
158c80 5a 6d 61 58 4a 74 56 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 ZmaXJtVHJ1c3QgUHJlbWl1bSBFQ0Mwdj
158ca0 41 51 42 67 63 71 68 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 AQBgcqhkjOPQIBBgUrgQQA.IgNiAAQNM
158cc0 46 34 62 46 5a 30 44 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 F4bFZ0D0KF5Nbc6PJJ6yhUczWLznCZcB
158ce0 7a 33 6c 56 50 71 6a 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 z3lVPqj1swS6vQUX+iOGasvLkjmrBhDe
158d00 4b 7a 51 0a 4e 38 4f 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 KzQ.N8O9ss0s5kfiGuZjuD0uL3jET9v0
158d20 44 36 52 6f 54 46 56 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 D6RoTFVya5UdThhClXjMNzyR4ptlKymj
158d40 51 6a 42 41 4d 42 30 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 QjBAMB0GA1UdDgQW.BBSaryl6wBE1NSZ
158d60 52 4d 41 44 44 61 76 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 RMADDav5A1a7WPDAPBgNVHRMBAf8EBTA
158d80 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 41 4b 0a 42 67 DAQH/MA4GA1UdDwEB/wQEAwIBBjAK.Bg
158da0 67 71 68 6b 6a 4f 50 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 gqhkjOPQQDAwNnADBkAjAXCfOHiFBar8
158dc0 6a 41 51 72 39 48 58 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 jAQr9HX/VsaobgxCd05DhT1wV/GzTjxi
158de0 2b 7a 79 67 6b 38 4e 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 +zygk8N53X.57hG8f2h4nECMEJZh0PUU
158e00 64 2b 36 30 77 6b 79 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 d+60wkyWs6Iflc9nF9Ca/UHLbXwgpP5W
158e20 57 2b 75 5a 50 70 59 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 W+uZPpY5Yse42O+tYHNbwKM.eQ==.---
158e40 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 75 6d 20 54 --END.CERTIFICATE-----..Certum.T
158e60 72 75 73 74 65 64 20 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 rusted.Network.CA.==============
158e80 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
158ea0 54 45 2d 2d 2d 2d 2d 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 TE-----.MIIDuzCCAqOgAwIBAgIDBETA
158ec0 4d 41 30 47 43 53 71 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 MA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNV
158ee0 42 41 59 54 41 6c 42 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 BAYTAlBMMSIwIAYDVQQK.ExlVbml6ZXR
158f00 76 49 46 52 6c 59 32 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 vIFRlY2hub2xvZ2llcyBTLkEuMScwJQY
158f20 44 56 51 51 4c 45 78 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 DVQQLEx5DZXJ0dW0gQ2VydGlmaWNhdGl
158f40 76 0a 62 69 42 42 64 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 v.biBBdXRob3JpdHkxIjAgBgNVBAMTGU
158f60 4e 6c 63 6e 52 31 62 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 NlcnR1bSBUcnVzdGVkIE5ldHdvcmsgQ0
158f80 45 77 48 68 63 4e 4d 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 EwHhcNMDgxMDIy.MTIwNzM3WhcNMjkxM
158fa0 6a 4d 78 4d 54 49 77 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 jMxMTIwNzM3WjB+MQswCQYDVQQGEwJQT
158fc0 44 45 69 4d 43 41 47 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 DEiMCAGA1UEChMZVW5pemV0byBU.ZWNo
158fe0 62 6d 39 73 62 32 64 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 bm9sb2dpZXMgUy5BLjEnMCUGA1UECxMe
159000 51 32 56 79 64 48 56 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 Q2VydHVtIENlcnRpZmljYXRpb24gQXV0
159020 61 47 39 79 61 58 52 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 aG9yaXR5.MSIwIAYDVQQDExlDZXJ0dW0
159040 67 56 48 4a 31 63 33 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 gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjA
159060 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 67 NBgkqhkiG9w0BAQEFAAOC.AQ8AMIIBCg
159080 4b 43 41 51 45 41 34 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 KCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7
1590a0 70 74 4a 31 31 2f 39 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 ptJ11/91sts1rHUV+rpDKmYYe2bg+G0j
1590c0 41 43 0a 6c 2f 6a 58 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 AC.l/jXaVehGDldamR5xgFZrDwxSjh80
1590e0 67 54 53 53 79 6a 6f 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 gTSSyjoIF87B6LMTXPb865Px1bVWqeWi
159100 66 72 7a 71 32 6a 55 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 frzq2jUI4ZZJ88J.J7ysbnKDHDBy3+Ci
159120 36 64 4c 68 64 48 55 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 6dLhdHUZvSqeexVUBBvXQzmtVSjF4hq7
159140 39 4d 44 6b 72 6a 68 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 9MDkrjhJM8x2hZ85RdKknvISjFH4.fOQ
159160 74 66 2f 57 73 58 2b 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 tf/WsX+sWn7Et0brMkUJ3TCXJkDhv2/D
159180 4d 2b 34 34 65 6c 31 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 M+44el1k+1WBO5gUo7Ul5E0u6SNsv+XL
1591a0 54 4f 63 72 2b 48 39 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 TOcr+H9g0.cvW0QM8xAcPs3hEtF10fuF
1591c0 44 52 58 68 6d 6e 61 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 DRXhmnad4HMyjKUJX5p1TLVIZQRan5SQ
1591e0 49 44 41 51 41 42 6f 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 IDAQABo0IwQDAPBgNVHRMB.Af8EBTADA
159200 51 48 2f 4d 42 30 47 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 QH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7
159220 62 75 51 76 4f 4b 45 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 buQvOKEN0Z19zAOBgNVHQ8BAf8EBAMCA
159240 51 59 77 0a 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 61 6f QYw.DQYJKoZIhvcNAQEFBQADggEBAKao
159260 72 53 4c 4f 41 54 32 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 rSLOAT2mo/9i0Eidi15ysHhE49wcrwn9
159280 49 30 6a 36 76 53 72 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 I0j6vSrEuVUEtRCj.jSfeC4Jj0O7eDDd
1592a0 35 51 56 73 69 73 72 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 5QVsisrCaQVymcODU0HfLI9MA4GxWL+F
1592c0 70 44 51 33 5a 71 72 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 pDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1.mS
1592e0 31 46 68 49 72 6c 51 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 1FhIrlQgnXdAIv94nYmem8J9RHjboNRh
159300 78 33 7a 78 53 6b 48 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 x3zxSkHLmkMcScKHQDNP8zGSal6Q10tz
159320 36 58 78 6e 62 6f 4a 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 6XxnboJ5aj.Zt3hrvJBW8qYVoNzcOSGG
159340 74 49 78 51 62 6f 76 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 tIxQbovvi0TWnZvTuhOgQ4/WwMioBK+Z
159360 6c 67 52 53 73 73 44 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 lgRSssDxLQqKi2WF+A5VLxI.03YnnZot
159380 42 71 62 4a 37 44 6e 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 BqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWI
1593a0 47 55 62 57 74 7a 54 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 GUbWtzT1fs45mtk48VH3Tyw=.-----EN
1593c0 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 6e 6f 6d 69 73 20 2d D.CERTIFICATE-----..Certinomis.-
1593e0 20 41 75 74 6f 72 69 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 .Autorit...Racine.==============
159400 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
159420 46 49 43 41 54 45 2d 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 FICATE-----.MIIFnDCCA4SgAwIBAgIB
159440 41 54 41 4e 42 67 6b 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 ATANBgkqhkiG9w0BAQUFADBjMQswCQYD
159460 56 51 51 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 VQQGEwJGUjETMBEGA1UEChMK.Q2VydGl
159480 75 62 32 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 ub21pczEXMBUGA1UECxMOMDAwMiA0MzM
1594a0 35 4f 54 67 35 4d 44 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 5OTg5MDMxJjAkBgNVBAMMHUNlcnRpbm9
1594c0 74 61 58 4d 67 0a 4c 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 taXMg.LSBBdXRvcml0w6kgUmFjaW5lMB
1594e0 34 58 44 54 41 34 4d 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 4XDTA4MDkxNzA4Mjg1OVoXDTI4MDkxNz
159500 41 34 4d 6a 67 31 4f 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 A4Mjg1OVowYzELMAkG.A1UEBhMCRlIxE
159520 7a 41 52 42 67 4e 56 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 zARBgNVBAoTCkNlcnRpbm9taXMxFzAVB
159540 67 4e 56 42 41 73 54 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 gNVBAsTDjAwMDIgNDMzOTk4OTAzMSYw.
159560 4a 41 59 44 56 51 51 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 JAYDVQQDDB1DZXJ0aW5vbWlzIC0gQXV0
159580 62 33 4a 70 64 4d 4f 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 b3JpdMOpIFJhY2luZTCCAiIwDQYJKoZI
1595a0 68 76 63 4e 41 51 45 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 hvcNAQEBBQAD.ggIPADCCAgoCggIBAJ2
1595c0 46 6e 34 62 54 34 36 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 Fn4bT46/HsmtuM+Cet0I0VZ35gb5j2CN
1595e0 32 44 70 64 55 7a 5a 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 2DpdUzZlMGvE5x4jYF1AMnmHa.wE5V3u
159600 64 61 75 48 70 4f 64 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 dauHpOd4cN5bjr+p5eex7Ezyh0x5P1FM
159620 59 69 4b 41 54 35 6b 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 YiKAT5kcOrJ3NqDi5N8y4oH3DfVS9O7c
159640 64 78 62 77 6c 79 0a 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 dxbwly.Lu3VMpfQ8Vh30WC8Tl7bmoT2R
159660 32 46 46 4b 2f 5a 51 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 2FFK/ZQpn9qcSdIhDWerP5pqZ56XjUl+
159680 72 53 6e 53 54 56 33 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 rSnSTV3lqc2W+HN3yNw.2F1MpQiD8aYk
1596a0 4f 42 4f 6f 37 43 2b 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 OBOo7C+ooWfHpi2GR+6K/OybDnT0K0kC
1596c0 65 35 42 31 6a 50 79 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 e5B1jPyZOQE51kqJ5Z52qz6WKDgmi92N
1596e0 0a 6a 4d 44 32 41 52 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 .jMD2AR5vpTESOH2VwnHu7XSu5DaiQ3X
159700 56 38 51 43 62 34 75 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 V8QCb4uTXzEIDS3h65X27uK4uIJPT5GH
159720 66 63 65 46 32 5a 35 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 fceF2Z5c/tt9q.c1pkIuVC28+BA5PY9O
159740 4d 51 34 48 4c 32 41 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 MQ4HL2AHCs8MF6DwV/zzRpRbWT5BnbUh
159760 59 6a 42 59 6b 4f 6a 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 YjBYkOjUjkJW+zeL9i9Qf6lSTC.lrLoo
159780 79 50 43 58 51 50 38 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 yPCXQP8w9PlfMl1I9f09bze5N/NgL+Ri
1597a0 48 32 6e 45 37 51 35 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 H2nE7Q5uiy6vdFrzPOlKO1Enn1So2+WL
1597c0 68 6c 2b 48 50 4e 62 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 hl+HPNb.xxaOu2B9d2ZHVIIAEWBsMsGo
1597e0 4f 42 76 72 62 70 67 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 OBvrbpgT1u449fCfDu/+MYHB0iSVL1N6
159800 61 61 4c 77 44 34 5a 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 aaLwD4ZFjliCK0wi1F6g.530mJ0jfJUa
159820 4e 53 69 68 38 68 70 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 NSih8hp75mxpZuWW/Bd22Ql095gBIgl4
159840 67 39 78 47 43 33 73 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 g9xGC3srYn+Y3RyYe63j3YcNBZFgCQfn
159860 61 0a 34 4e 48 34 2b 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 a.4NH4+ej9Uji29YnfAgMBAAGjWzBZMA
159880 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
1598a0 48 2f 42 41 51 44 41 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 H/BAQDAgEGMB0G.A1UdDgQWBBQNjLZh2
1598c0 6b 53 34 30 52 52 39 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 kS40RR9w759XkjwzspqsDAXBgNVHSAEE
1598e0 44 41 4f 4d 41 77 47 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 DAOMAwGCiqBegFWAgIAAQEwDQYJ.KoZI
159900 68 76 63 4e 41 51 45 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 hvcNAQEFBQADggIBACQ+YAZ+He86Ptvq
159920 72 78 79 61 4c 41 45 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 rxyaLAEL9MW12Ukx9F1BjYkMTv9sov3/
159940 34 67 62 49 4f 5a 2f 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 4gbIOZ/x.WqndIlgVqIrTseYyCYIDbNc
159960 2f 43 4d 66 34 75 62 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 /CMf4uboAbbnW/FIyXaR/pDGUu7ZMOH8
159980 6f 4d 44 58 2f 6e 79 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 oMDX/nyNTt7buFHAAQCva.R6s0fl6nVj
1599a0 42 68 4b 34 74 44 72 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 BhK4tDrP22iCj1a7Y+YEq6QpA0Z43q61
1599c0 39 46 56 44 73 58 72 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 9FVDsXrIvkxmUP7tCMXWY5zjKn2BCXwH
1599e0 34 30 0a 6e 4a 2b 55 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 40.nJ+U8/aGH88bc62UeYdocMMzpXDn2
159a00 4e 55 34 6c 47 39 6a 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 NU4lG9jeeu/Cg4I58UvD0KgKxRA/yHgB
159a20 63 55 6e 34 59 51 52 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 cUn4YQRE7rWhh1B.CxMjidPJC+iKunqj
159a40 6f 33 4d 33 4e 59 42 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 o3M3NYB9Ergzd0A4wPpeMNLytqOx1qKV
159a60 6c 34 47 62 55 75 31 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 l4GbUu1pTP+A5FPbVFsDbVRfsbjv.JL1
159a80 76 6e 78 48 44 78 32 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 vnxHDx2TCDyhihWZeGnuyt++uNckZM6i
159aa0 34 4a 39 73 7a 56 62 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 4J9szVb9o4XVIRFb7zdNIu0eJOqxp9YD
159ac0 47 35 45 52 51 4c 31 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 G5ERQL1TE.qkPFMTFYvZbF6nVsmnWxTf
159ae0 6a 33 6c 2f 2b 57 46 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 j3l/+WFvKXTej28xH5On2KOG4Ey+HTRR
159b00 57 71 70 64 45 64 6e 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 WqpdEdnV1j6CTmNhTih60b.WfVEm/vXd
159b20 33 77 66 41 58 42 69 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 3wfAXBioSAaosUaKPQhA+4u2cGA6rnZg
159b40 74 5a 62 64 73 4c 4c 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 tZbdsLLO7XSAPCjDuGtbkD326C00EauF
159b60 64 64 45 0a 77 6b 30 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 ddE.wk01+dIL8hf2rGbVJLJP0RyZwG71
159b80 66 65 74 30 42 4c 6a 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 fet0BLj5TXcJ17TPBzAJ8bgAVtkXFhYK
159ba0 4b 34 62 66 6a 77 45 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 K4bfjwEZGuW7gmP/.vgt2Fl43N+bYdJe
159bc0 69 6d 55 56 35 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 imUV5.-----END.CERTIFICATE-----.
159be0 0a 52 6f 6f 74 20 43 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 .Root.CA.Generalitat.Valenciana.
159c00 3d 3d 3d 3d 3d 3d 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 ==============================.-
159c20 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 47 69 ----BEGIN.CERTIFICATE-----.MIIGi
159c40 7a 43 43 42 58 4f 67 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 zCCBXOgAwIBAgIEO0XlaDANBgkqhkiG9
159c60 77 30 42 41 51 55 46 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 w0BAQUFADBoMQswCQYDVQQGEwJFUzEfM
159c80 42 30 47 41 31 55 45 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 B0GA1UE.ChMWR2VuZXJhbGl0YXQgVmFs
159ca0 5a 57 35 6a 61 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 ZW5jaWFuYTEPMA0GA1UECxMGUEtJR1ZB
159cc0 4d 53 63 77 4a 51 59 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 MScwJQYDVQQDEx5Sb290.IENBIEdlbmV
159ce0 79 59 57 78 70 64 47 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 yYWxpdGF0IFZhbGVuY2lhbmEwHhcNMDE
159d00 77 4e 7a 41 32 4d 54 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 wNzA2MTYyMjQ3WhcNMjEwNzAxMTUyMjQ
159d20 33 0a 57 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 41 31 3.WjBoMQswCQYDVQQGEwJFUzEfMB0GA1
159d40 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 57 UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaW
159d60 46 75 59 54 45 50 4d 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 FuYTEPMA0GA1UE.CxMGUEtJR1ZBMScwJ
159d80 51 59 44 56 51 51 44 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 QYDVQQDEx5Sb290IENBIEdlbmVyYWxpd
159da0 47 46 30 49 46 5a 68 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 GF0IFZhbGVuY2lhbmEwggEiMA0G.CSqG
159dc0 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 47 SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDG
159de0 4b 71 74 58 45 54 63 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 KqtXETcvIorKA3Qdyu0togu8M1JAJke+
159e00 57 6d 6d 6d 4f 33 49 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 WmmmO3I2.F0zo37i7L3bhQEZ0ZQKQUgi
159e20 30 2f 36 69 4d 77 65 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 0/6iMweDHiVYQOTPvaLRfX9ptI6GJXiK
159e40 6a 53 67 62 77 4a 2f 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 jSgbwJ/BXufjpTjJ3Cj9B.ZPPrZe52/l
159e60 53 71 66 52 30 67 72 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 SqfR0grvPXdMIKX/UIKFIIzFVd0g/bmo
159e80 47 6c 75 36 47 7a 77 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 Glu6GzwZTNVOAydTGRGmKy3nXiz0+J2Z
159ea0 47 51 0a 44 30 45 62 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 GQ.D0EbtFpKd71ng+CT516nDOeB0/RSr
159ec0 46 4f 79 41 38 64 45 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 FOyA8dEJvt55cs0YFAQexvba9dHq198a
159ee0 4d 70 75 6e 55 45 44 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 MpunUEDEO5rmXte.JajCq+TA81yc477O
159f00 4d 55 78 6b 48 6c 36 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 MUxkHl6AovWDfgzWyoxVjr7gvkkHD6Mk
159f20 51 58 70 59 48 59 54 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 QXpYHYTqWBLI4bft75PelAgxAgMB.AAG
159f40 6a 67 67 4d 37 4d 49 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 jggM7MIIDNzAyBggrBgEFBQcBAQQmMCQ
159f60 77 49 67 59 49 4b 77 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 wIgYIKwYBBQUHMAGGFmh0dHA6Ly9vY3N
159f80 77 4c 6e 42 72 61 53 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 wLnBraS5n.dmEuZXMwEgYDVR0TAQH/BA
159fa0 67 77 42 67 45 42 2f 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 gwBgEB/wIBAjCCAjQGA1UdIASCAiswgg
159fc0 49 6e 4d 49 49 43 49 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 InMIICIwYKKwYBBAG/VQIB.ADCCAhMwg
159fe0 67 48 6f 42 67 67 72 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 gHoBggrBgEFBQcCAjCCAdoeggHWAEEAd
15a000 51 42 30 41 47 38 41 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 QB0AG8AcgBpAGQAYQBkACAAZABlACAAQ
15a020 77 42 6c 0a 41 48 49 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 wBl.AHIAdABpAGYAaQBjAGEAYwBpAPMA
15a040 62 67 41 67 41 46 49 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 bgAgAFIAYQDtAHoAIABkAGUAIABsAGEA
15a060 49 41 42 48 41 47 55 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 IABHAGUAbgBlAHIA.YQBsAGkAdABhAHQ
15a080 41 49 41 42 57 41 47 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 AIABWAGEAbABlAG4AYwBpAGEAbgBhAC4
15a0a0 41 44 51 41 4b 41 45 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 ADQAKAEwAYQAgAEQAZQBjAGwAYQBy.AG
15a0c0 45 41 59 77 42 70 41 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 EAYwBpAPMAbgAgAGQAZQAgAFAAcgDhAG
15a0e0 4d 41 64 41 42 70 41 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 MAdABpAGMAYQBzACAAZABlACAAQwBlAH
15a100 49 41 64 41 42 70 41 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 IAdABpAGYA.aQBjAGEAYwBpAPMAbgAgA
15a120 48 45 41 64 51 42 6c 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 HEAdQBlACAAcgBpAGcAZQAgAGUAbAAgA
15a140 47 59 41 64 51 42 75 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 GYAdQBuAGMAaQBvAG4AYQBt.AGkAZQBu
15a160 41 48 51 41 62 77 41 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 AHQAbwAgAGQAZQAgAGwAYQAgAHAAcgBl
15a180 41 48 4d 41 5a 51 42 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 AHMAZQBuAHQAZQAgAEEAdQB0AG8AcgBp
15a1a0 41 47 51 41 0a 59 51 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 AGQA.YQBkACAAZABlACAAQwBlAHIAdAB
15a1c0 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 48 4d 41 5a 51 41 pAGYAaQBjAGEAYwBpAPMAbgAgAHMAZQA
15a1e0 67 41 47 55 41 62 67 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 gAGUAbgBjAHUAZQBu.AHQAcgBhACAAZQ
15a200 42 75 41 43 41 41 62 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 BuACAAbABhACAAZABpAHIAZQBjAGMAaQ
15a220 44 7a 41 47 34 41 49 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 DzAG4AIAB3AGUAYgAgAGgAdAB0AHAA.O
15a240 67 41 76 41 43 38 41 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 gAvAC8AdwB3AHcALgBwAGsAaQAuAGcAd
15a260 67 42 68 41 43 34 41 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 gBhAC4AZQBzAC8AYwBwAHMwJQYIKwYBB
15a280 51 55 48 41 67 45 57 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 QUHAgEWGWh0.dHA6Ly93d3cucGtpLmd2
15a2a0 59 53 35 6c 63 79 39 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 YS5lcy9jcHMwHQYDVR0OBBYEFHs100DS
15a2c0 48 48 67 5a 5a 75 39 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 HHgZZu90ECjcPk+yeAT8MIGV.BgNVHSM
15a2e0 45 67 59 30 77 67 59 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 EgY0wgYqAFHs100DSHHgZZu90ECjcPk+
15a300 79 65 41 54 38 6f 57 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 yeAT8oWykajBoMQswCQYDVQQGEwJFUzE
15a320 66 4d 42 30 47 0a 41 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 fMB0G.A1UEChMWR2VuZXJhbGl0YXQgVm
15a340 46 73 5a 57 35 6a 61 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 FsZW5jaWFuYTEPMA0GA1UECxMGUEtJR1
15a360 5a 42 4d 53 63 77 4a 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 ZBMScwJQYDVQQDEx5S.b290IENBIEdlb
15a380 6d 56 79 59 57 78 70 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 mVyYWxpdGF0IFZhbGVuY2lhbmGCBDtF5
15a3a0 57 67 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 52 68 0a WgwDQYJKoZIhvcNAQEFBQADggEBACRh.
15a3c0 54 76 57 31 79 45 49 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 TvW1yEICKrNcda3FbcrnlD+laJWIwVTA
15a3e0 45 47 6d 69 45 69 38 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 EGmiEi8YPyVQqHxK6sYJ2fR1xkDar1Cd
15a400 50 61 55 57 75 32 30 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 PaUWu20xxsdz.Ckj+IHLtb8zog2EWRpA
15a420 42 6c 55 74 39 6a 70 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 BlUt9jppSCS/2bxzkoXHPjCpaF3ODR00
15a440 50 4e 76 73 45 54 55 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 PNvsETUlR4hTJZGH71BTg9J63.NI8KJr
15a460 32 58 58 50 52 35 4f 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 2XXPR5OkowGcytT6CYirQxlyric21+eL
15a480 6a 34 69 49 6c 50 73 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 j4iIlPsSKRZEv1UN4D2+XFducTZnV+Zf
15a4a0 73 42 6e 35 4f 48 0a 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 sBn5OH.iJ35Rld8TWCvmHMTI6QgkYH60
15a4c0 47 46 6d 75 48 33 52 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 GFmuH3Rr9ZvHmw96RH9qfmCIoaZM3Fa6
15a4e0 68 6c 58 50 5a 48 4e 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 hlXPZHNqcCjbgcTpsnt.+GijnsNacgmH
15a500 4b 4e 48 45 63 38 52 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 KNHEc8RzGF9QdRYxn7fofMM=.-----EN
15a520 44 20 43 45 52 54 49 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 D.CERTIFICATE-----..A-Trust-nQua
15a540 6c 2d 30 33 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 47 49 4e l-03.================.-----BEGIN
15a560 20 43 45 52 54 49 46 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 .CERTIFICATE-----.MIIDzzCCAregAw
15a580 49 42 41 67 49 44 41 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 IBAgIDAWweMA0GCSqGSIb3DQEBBQUAMI
15a5a0 47 4e 4d 51 73 77 43 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 GNMQswCQYDVQQGEwJBVDFIMEYGA1UE.C
15a5c0 67 77 2f 51 53 31 55 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 gw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlc
15a5e0 6d 68 6c 61 58 52 7a 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 mhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuI
15a600 45 52 68 64 47 56 75 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 ERhdGVudmVy.a2VociBHbWJIMRkwFwYD
15a620 56 51 51 4c 44 42 42 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 VQQLDBBBLVRydXN0LW5RdWFsLTAzMRkw
15a640 46 77 59 44 56 51 51 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 FwYDVQQDDBBBLVRydXN0LW5R.dWFsLTA
15a660 7a 4d 42 34 58 44 54 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 zMB4XDTA1MDgxNzIyMDAwMFoXDTE1MDg
15a680 78 4e 7a 49 79 4d 44 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 xNzIyMDAwMFowgY0xCzAJBgNVBAYTAkF
15a6a0 55 4d 55 67 77 0a 52 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 UMUgw.RgYDVQQKDD9BLVRydXN0IEdlcy
15a6c0 34 67 5a 69 34 67 55 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 4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIG
15a6e0 6c 74 49 47 56 73 5a 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 ltIGVsZWt0ci4gRGF0.ZW52ZXJrZWhyI
15a700 45 64 74 59 6b 67 78 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 EdtYkgxGTAXBgNVBAsMEEEtVHJ1c3Qtb
15a720 6c 46 31 59 57 77 74 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 lF1YWwtMDMxGTAXBgNVBAMMEEEtVHJ1.
15a740 63 33 51 74 62 6c 46 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 c3QtblF1YWwtMDMwggEiMA0GCSqGSIb3
15a760 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 74 50 57 46 75 DQEBAQUAA4IBDwAwggEKAoIBAQCtPWFu
15a780 41 2f 4f 51 4f 38 42 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 A/OQO8BBC4SA.zewqo51ru27CQoT3URT
15a7a0 68 6f 4b 67 74 55 61 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 hoKgtUaNR8t4j8DRE/5TrzAUjlUC5B3i
15a7c0 6c 4a 66 59 4b 76 55 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 lJfYKvUWG6Nm9wASOhURh73+n.yfrBJc
15a7e0 79 46 4c 47 4d 2f 42 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 yFLGM/BWBzSQXgYHiVEEvc+RFZznF/QJ
15a800 75 4b 71 69 54 66 43 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 uKqiTfC0Li21a8StKlDJu3Qz7dg9MmEA
15a820 4c 50 36 69 50 45 0a 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 LP6iPE.SU7l0+m0iKsMrmKS1GWH2WrX9
15a840 49 57 66 35 44 4d 69 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 IWf5DMiJaXlyDO6w8dB3F/GaswADm0yq
15a860 4c 61 48 4e 67 42 69 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 LaHNgBid5seHzTLkDx4.iHQF63n1k3Fl
15a880 79 70 33 48 61 78 67 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 yp3HaxgtPVxO59X4PzF9j4fsCiIvI+n+
15a8a0 75 33 33 4a 34 50 54 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 u33J4PTs63zEsMMtYrWacdaxaujs2e3V
15a8c0 0a 63 75 79 2b 56 77 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 .cuy+VwHOBVWf3tFgiBCzAgMBAAGjNjA
15a8e0 30 4d 41 38 47 41 31 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 0MA8GA1UdEwEB/wQFMAMBAf8wEQYDVR0
15a900 4f 42 41 6f 45 43 45 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 OBAoECERqlWdV.eRFPMA4GA1UdDwEB/w
15a920 51 45 41 77 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 QEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQ
15a940 45 41 56 64 52 55 30 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 EAVdRU0VlIXLOThaq/Yy/kgM40.ozRiP
15a960 76 62 59 37 6d 65 49 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 vbY7meIMQQDbwvUB/tOdQ/TLtPAF8fGK
15a980 4f 77 47 44 52 45 6b 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 OwGDREkDg6lXb+MshOWcdzUzg4NCmgyb
15a9a0 4c 6c 42 4d 52 6d 72 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 LlBMRmr.sQd7TZjTXLDR8KdCoLXEjq/+
15a9c0 38 54 2f 30 37 30 39 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 8T/0709GAHbrAvv5ndJAlseIOrifEXnz
15a9e0 67 47 57 6f 76 52 2f 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 gGWovR/TeIGgUUw3tKZd.JXDRZslo+S4
15aa00 52 46 47 6a 78 56 4a 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 RFGjxVJgIrCaSD96JntT6s3kr0qN51Oy
15aa20 4c 72 49 64 54 61 45 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 LrIdTaEJMUVF0HhsnLuP1Hyl0Te2v9+G
15aa40 53 0a 6d 59 48 6f 76 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 S.mYHovjrHF1D2t8b8m7CKa9aIA5GPBn
15aa60 63 36 68 51 4c 64 6d 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 c6hQLdmNVDeD/GMBWsm2vLV7eJUYs66M
15aa80 6d 45 44 4e 75 78 55 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 mEDNuxUCAKGkq6.ahq97BvIxYSazQ==.
15aaa0 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 54 57 43 41 20 -----END.CERTIFICATE-----..TWCA.
15aac0 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 3d 3d 3d Root.Certification.Authority.===
15aae0 3d 3d 3d 3d 3d 3d 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 ==============================.-
15ab00 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 65 ----BEGIN.CERTIFICATE-----.MIIDe
15ab20 7a 43 43 41 6d 4f 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 zCCAmOgAwIBAgIBATANBgkqhkiG9w0BA
15ab40 51 55 46 41 44 42 66 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 QUFADBfMQswCQYDVQQGEwJUVzESMBAGA
15ab60 31 55 45 43 67 77 4a 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 1UECgwJ.VEFJV0FOLUNBMRAwDgYDVQQL
15ab80 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 43 46 55 56 30 4e 42 DAdSb290IENBMSowKAYDVQQDDCFUV0NB
15aba0 49 46 4a 76 62 33 51 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 IFJvb3QgQ2VydGlmaWNh.dGlvbiBBdXR
15abc0 6f 62 33 4a 70 64 48 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 ob3JpdHkwHhcNMDgwODI4MDcyNDMzWhc
15abe0 4e 4d 7a 41 78 4d 6a 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 NMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQ
15ac00 47 0a 45 77 4a 55 56 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 G.EwJUVzESMBAGA1UECgwJVEFJV0FOLU
15ac20 4e 42 4d 52 41 77 44 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 NBMRAwDgYDVQQLDAdSb290IENBMSowKA
15ac40 59 44 56 51 51 44 44 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 YDVQQDDCFUV0NB.IFJvb3QgQ2VydGlma
15ac60 57 4e 68 64 47 6c 76 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 WNhdGlvbiBBdXRob3JpdHkwggEiMA0GC
15ac80 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 0a 41 6f 49 42 SqGSIb3DQEBAQUAA4IBDwAwggEK.AoIB
15aca0 41 51 43 77 66 6e 4b 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 AQCwfnK4pAOU5qfeCTiRShFAh6d8WWQU
15acc0 65 37 55 52 45 4e 33 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 e7UREN3+v9XAu1bihSX0NXIP+FPQQeFE
15ace0 41 63 4b 30 48 4d 4d 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 AcK0HMMx.QhZHhTMidrIKbw/lJVBPhYa
15ad00 2b 76 35 67 75 45 47 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 +v5guEGcevhEFhgWQxFnQfHgQsIBct+H
15ad20 48 4b 33 58 4c 66 4a 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 HK3XLfJ+utdGdIzdjp9xC.oi2SBBtQwX
15ad40 75 34 50 68 76 4a 56 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 u4PhvJVgSLL1KbralW6cH/ralYhzC2gf
15ad60 65 58 52 66 77 5a 56 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 eXRfwZVzsrb+RH9JlF/h3x+JejiB03HF
15ad80 79 50 0a 34 48 59 6c 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 yP.4HYlmlD4oFT/RJB2I9IyxsOrBr/8+
15ada0 37 2f 7a 72 58 32 53 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 7/zrX2SYgJbKdM1o5OaQ2RgXbL6Mv87B
15adc0 4b 39 4e 51 47 72 35 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 K9NQGr5x+PvI/1r.y+UPizgN7gr8/g+Y
15ade0 6e 7a 41 78 33 57 78 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 nzAx3WxSZfmLgb4i4RxYA7qRG4kHAgMB
15ae00 41 41 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 0a 42 6a 41 AAGjQjBAMA4GA1UdDwEB/wQEAwIB.BjA
15ae20 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 44 67 51 PBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQ
15ae40 57 42 42 52 71 4f 46 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 WBBRqOFsmjd6LWvJPelSDGRjjCDWmujA
15ae60 4e 42 67 6b 71 68 6b 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 NBgkqhkiG.9w0BAQUFAAOCAQEAPNV3Pd
15ae80 72 66 69 62 71 48 44 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 rfibqHDAhUaiBQkr6wQT25JmSDCi/oQM
15aea0 43 58 4b 43 65 43 4d 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 CXKCeCMErJk/9q56YAf4lC.mtYR5VPOL
15aec0 38 7a 79 32 67 58 45 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 8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/
15aee0 75 73 72 42 64 6c 73 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 usrBdlsXebQ79NqZp4VKIV66IIArB6nC
15af00 57 6c 57 0a 51 74 4e 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 WlW.QtNoURi+VJq/REG6Sb4gumlc7rh3
15af20 7a 63 35 73 48 36 32 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 zc5sH62Dlhh9DrUUOYTxKOkto557Hnpy
15af40 57 6f 4f 7a 65 57 2f 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 WoOzeW/vtPzQCqVY.T0bf+215WfKEIlK
15af60 75 44 38 7a 37 66 44 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 uD8z7fDvnaspHYcN6+NOSBB+4IIThNlQ
15af80 57 78 30 44 65 4f 34 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 Wx0DeO4pz3N/GCUzf7Nr/1FNCocny.Yh
15afa0 30 69 67 7a 79 58 78 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 0igzyXxfkZYiesZSLX0zzG5Y6yU8xJzr
15afc0 77 77 2f 6e 73 4f 4d 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 ww/nsOM5D77dIUkR8Hrw==.-----END.
15afe0 43 45 52 54 49 46 49 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 CERTIFICATE-----..Security.Commu
15b000 6e 69 63 61 74 69 6f 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 nication.RootCA2.===============
15b020 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
15b040 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 49 42 41 67 49 42 FICATE-----.MIIDdzCCAl+gAwIBAgIB
15b060 41 44 41 4e 42 67 6b 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 ADANBgkqhkiG9w0BAQsFADBdMQswCQYD
15b080 56 51 51 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 VQQGEwJKUDElMCMGA1UEChMc.U0VDT00
15b0a0 67 56 48 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 gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjE
15b0c0 6e 4d 43 55 47 41 31 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 nMCUGA1UECxMeU2VjdXJpdHkgQ29tbXV
15b0e0 75 61 57 4e 68 0a 64 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 uaWNh.dGlvbiBSb290Q0EyMB4XDTA5MD
15b100 55 79 4f 54 41 31 4d 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 UyOTA1MDAzOVoXDTI5MDUyOTA1MDAzOV
15b120 6f 77 58 54 45 4c 4d 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 owXTELMAkGA1UEBhMC.SlAxJTAjBgNVB
15b140 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 51 AoTHFNFQ09NIFRydXN0IFN5c3RlbXMgQ
15b160 30 38 75 4c 45 78 55 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 08uLExURC4xJzAlBgNVBAsTHlNlY3Vy.
15b180 61 58 52 35 49 45 4e 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 aXR5IENvbW11bmljYXRpb24gUm9vdENB
15b1a0 4d 6a 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 50 MjCCASIwDQYJKoZIhvcNAQEBBQADggEP
15b1c0 41 44 43 43 41 51 6f 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 ADCCAQoCggEB.ANAVOVKxUrO6xVmCxF1
15b1e0 53 72 6a 70 44 5a 59 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 SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz
15b200 33 33 35 63 39 53 36 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 335c9S672XewhtUGrzbl+dp++.+T42NK
15b220 41 37 77 66 59 78 45 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 A7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZ
15b240 41 51 77 64 62 57 51 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 AQwdbWQonCv/Q4EpVMVAX3NuRFg3sUZd
15b260 62 63 44 45 33 52 0a 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 bcDE3R.3n4MqzvEFb46VqZab3ZpUql6u
15b280 63 6a 72 61 70 70 64 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 cjrappdUtAtCms1FgkQhNBqyjoGADdH5
15b2a0 48 35 58 54 7a 2b 4c 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 H5XTz+L62e4iKrFvlNV.spHEfbmwhRkG
15b2c0 65 43 37 62 59 52 72 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 eC7bYRr6hfVKkaHnFtWOojnflLhwHyg/
15b2e0 69 2f 78 41 58 6d 4f 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 i/xAXmODPIMqGplrz95Zajv8bxbXH/1K
15b300 0a 45 4f 74 4f 67 68 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 .EOtOghY6rCcMU/Gt1SSwawNQwS08Ft1
15b320 45 4e 43 63 61 64 66 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 ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBY
15b340 45 46 41 71 46 71 58 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 EFAqFqXdlBZh8.QIH4D5csOPEK7DzPMA
15b360 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 52 4d 42 41 66 4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf
15b380 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 0a 43 77 55 41 41 8EBTADAQH/MA0GCSqGSIb3DQEB.CwUAA
15b3a0 34 49 42 41 51 42 4d 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 4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7
15b3c0 6c 6c 73 43 4c 71 4a 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 llsCLqJX2rKSpWeeo8HxdpFcoJxDjrSz
15b3e0 47 2b 6e 74 4b 45 6a 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 G+ntKEj.u/Ykn8sX/oymzsLS28yN/HH8
15b400 41 79 6e 42 62 46 30 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 AynBbF0zX2S2ZTuJbxh2ePXcokgfGT+O
15b420 6b 2b 76 78 2b 68 66 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 k+vx+hfuzU7jBBJV1uXk.3fs+BXziHV7
15b440 47 70 37 79 58 54 32 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 Gp7yXT2g69ekuCkO2r1dcYmh8t/2jioS
15b460 67 72 47 4b 2b 4b 77 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 grGK+KwmHNPBqAbubKVY8/gA3zyNs8U6
15b480 71 0a 74 6e 52 47 45 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 q.tnRGEmyR7jTV7JqR50S+kDFy1UkC9g
15b4a0 4c 6c 39 42 2f 72 66 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 Ll9B/rfNmWVan/7Ir5mUf/NVoCqgTLil
15b4c0 75 48 63 53 6d 52 76 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 uHcSmRvaS0eg29.mvVXIwAHIRc/SjnRB
15b4e0 55 6b 4c 70 37 59 33 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 UkLp7Y3gaVdjKozXoEofKd9J+sAro03.
15b500 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 43 2d 41 43 -----END.CERTIFICATE-----..EC-AC
15b520 43 0a 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 C.======.-----BEGIN.CERTIFICATE-
15b540 2d 2d 2d 2d 0a 4d 49 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 ----.MIIFVjCCBD6gAwIBAgIQ7is969Q
15b560 68 33 68 53 6f 59 71 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 h3hSoYqwE893EATANBgkqhkiG9w0BAQU
15b580 46 41 44 43 42 38 7a 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 FADCB8zELMAkGA1UE.BhMCRVMxOzA5Bg
15b5a0 4e 56 42 41 6f 54 4d 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 NVBAoTMkFnZW5jaWEgQ2F0YWxhbmEgZG
15b5c0 55 67 51 32 56 79 64 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 UgQ2VydGlmaWNhY2lvIChOSUYgUS0w.O
15b5e0 44 41 78 4d 54 63 32 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 DAxMTc2LUkpMSgwJgYDVQQLEx9TZXJ2Z
15b600 57 6c 7a 49 46 42 31 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 WlzIFB1YmxpY3MgZGUgQ2VydGlmaWNhY
15b620 32 6c 76 4d 54 55 77 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 2lvMTUwMwYD.VQQLEyxWZWdldSBodHRw
15b640 63 7a 6f 76 4c 33 64 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 czovL3d3dy5jYXRjZXJ0Lm5ldC92ZXJh
15b660 63 6e 4a 6c 62 43 41 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 cnJlbCAoYykwMzE1MDMGA1UE.CxMsSmV
15b680 79 59 58 4a 78 64 57 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 yYXJxdWlhIEVudGl0YXRzIGRlIENlcnR
15b6a0 70 5a 6d 6c 6a 59 57 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 pZmljYWNpbyBDYXRhbGFuZXMxDzANBgN
15b6c0 56 42 41 4d 54 0a 42 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 VBAMT.BkVDLUFDQzAeFw0wMzAxMDcyMz
15b6e0 41 77 4d 44 42 61 46 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 AwMDBaFw0zMTAxMDcyMjU5NTlaMIHzMQ
15b700 73 77 43 51 59 44 56 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 swCQYDVQQGEwJFUzE7.MDkGA1UEChMyQ
15b720 57 64 6c 62 6d 4e 70 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 WdlbmNpYSBDYXRhbGFuYSBkZSBDZXJ0a
15b740 57 5a 70 59 32 46 6a 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 WZpY2FjaW8gKE5JRiBRLTA4MDExNzYt.
15b760 53 53 6b 78 4b 44 41 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 SSkxKDAmBgNVBAsTH1NlcnZlaXMgUHVi
15b780 62 47 6c 6a 63 79 42 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 bGljcyBkZSBDZXJ0aWZpY2FjaW8xNTAz
15b7a0 42 67 4e 56 42 41 73 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 BgNVBAsTLFZl.Z2V1IGh0dHBzOi8vd3d
15b7c0 33 4c 6d 4e 68 64 47 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 3LmNhdGNlcnQubmV0L3ZlcmFycmVsICh
15b7e0 6a 4b 54 41 7a 4d 54 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 jKTAzMTUwMwYDVQQLEyxKZXJh.cnF1aW
15b800 45 67 52 57 35 30 61 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 EgRW50aXRhdHMgZGUgQ2VydGlmaWNhY2
15b820 6c 76 49 45 4e 68 64 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 lvIENhdGFsYW5lczEPMA0GA1UEAxMGRU
15b840 4d 74 51 55 4e 44 0a 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 MtQUND.MIIBIjANBgkqhkiG9w0BAQEFA
15b860 41 4f 43 41 51 38 41 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 AOCAQ8AMIIBCgKCAQEAsyLHT+KXQpWIR
15b880 34 4e 41 39 68 30 58 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 4NA9h0X84NzJB5R85iK.w5K4/0CQBXCH
15b8a0 59 4d 6b 41 71 62 57 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 YMkAqbWUZRkiFRfCQ2xmRJoNBD45b6VL
15b8c0 65 71 70 6a 74 34 70 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 eqpjt4pEndljkYRm4CgPukLjbo73FCeT
15b8e0 0a 61 65 36 52 44 71 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 .ae6RDqNfDrHrZqJyTxIThmV6PttPB/S
15b900 6e 43 57 44 61 4f 6b 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 nCWDaOkKZx7J/sxaVHMf5NLWUhdWZXqB
15b920 49 6f 48 37 6e 46 32 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 IoH7nF2W4onW4.HvPlQn2v7fOKSGRdgh
15b940 53 54 32 4d 44 6b 2f 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 ST2MDk/7NQcvJ29rNdQlB50JQ+awwAvt
15b960 68 72 44 6b 34 71 37 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 hrDk4q7D7SzIKiGGUzE3eeml0a.E9jD2
15b980 7a 33 49 6c 33 72 75 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 z3Il3rucO2n5nzbcc8tlGLfbdb1OL4/p
15b9a0 59 55 4b 47 62 69 6f 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 YUKGbio2Al1QnDE6u/LDsg0qBIimAy4E
15b9c0 35 53 32 53 2b 7a 77 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 5S2S+zw.0JDnJwIDAQABo4HjMIHgMB0G
15b9e0 41 31 55 64 45 51 51 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 A1UdEQQWMBSBEmVjX2FjY0BjYXRjZXJ0
15ba00 4c 6d 35 6c 64 44 41 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 Lm5ldDAPBgNVHRMBAf8E.BTADAQH/MA4
15ba20 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 51 GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQ
15ba40 55 6f 4d 4f 4c 52 4b 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 UoMOLRKo3pUW/l4Ba0fF4opvpXY0wfwY
15ba60 44 0a 56 52 30 67 42 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 D.VR0gBHgwdjB0BgsrBgEEAfV4AQMBCj
15ba80 42 6c 4d 43 77 47 43 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 BlMCwGCCsGAQUFBwIBFiBodHRwczovL3
15baa0 64 33 64 79 35 6a 59 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 d3dy5jYXRjZXJ0.Lm5ldC92ZXJhcnJlb
15bac0 44 41 31 42 67 67 72 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 DA1BggrBgEFBQcCAjApGidWZWdldSBod
15bae0 48 52 77 63 7a 6f 76 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 HRwczovL3d3dy5jYXRjZXJ0Lm5l.dC92
15bb00 5a 58 4a 68 63 6e 4a 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 ZXJhcnJlbCAwDQYJKoZIhvcNAQEFBQAD
15bb20 67 67 45 42 41 4b 42 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 ggEBAKBIW4IB9k1IuDlVNZyAelOZ1Vr/
15bb40 73 58 45 37 7a 44 6b 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 sXE7zDkJ.lF7W2u++AVtd0x7Y/X1PzaB
15bb60 42 34 44 53 54 76 38 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 B4DSTv8vihpw3kpBWHNzrKQXlxJ7HNd+
15bb80 4b 44 4d 33 46 49 55 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 KDM3FIUPpqojlNcAZQmNa.Al6kSBg6hW
15bba0 2f 63 6e 62 77 2f 6e 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 /cnbw/nZzBh7h6YQjpdwt/cKt63dmXLG
15bbc0 51 65 68 62 2b 38 64 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 Qehb+8dJahw3oS7AwaboMMPOhyRp/7SN
15bbe0 56 65 0a 6c 2b 61 78 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 Ve.l+axofjk70YllJyJ22k4vuxcDlbHZ
15bc00 56 48 6c 55 49 69 49 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 VHlUIiIv0LVKz3l+bqeLrPK9HOSAgu+T
15bc20 47 62 72 49 50 36 35 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 GbrIP65y7WZf+a2.E/rKS03Z7lNGBjvG
15bc40 54 71 32 54 57 6f 46 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 Tq2TWoF+bCpLagVFjPIhpDGQh2xlnJ2l
15bc60 59 4a 55 36 55 6e 2f 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 YJU6Un/10asIbvPuW/mIPX64b24D.5EI
15bc80 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 48 65 6c =.-----END.CERTIFICATE-----..Hel
15bca0 6c 65 6e 69 63 20 41 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 lenic.Academic.and.Research.Inst
15bcc0 69 74 75 74 69 6f 6e 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 itutions.RootCA.2011.===========
15bce0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
15bd00 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
15bd20 41 54 45 2d 2d 2d 2d 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 ATE-----.MIIEMTCCAxmgAwIBAgIBADA
15bd40 4e 42 67 6b 71 68 6b 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 NBgkqhkiG9w0BAQUFADCBlTELMAkGA1U
15bd60 45 42 68 4d 43 52 31 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 EBhMCR1IxRDBCBgNVBAoT.O0hlbGxlbm
15bd80 6c 6a 49 45 46 6a 59 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 ljIEFjYWRlbWljIGFuZCBSZXNlYXJjaC
15bda0 42 4a 62 6e 4e 30 61 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 BJbnN0aXR1dGlvbnMgQ2VydC4gQXV0aG
15bdc0 39 79 0a 61 58 52 35 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 9y.aXR5MUAwPgYDVQQDEzdIZWxsZW5pY
15bde0 79 42 42 59 32 46 6b 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 yBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggS
15be00 57 35 7a 64 47 6c 30 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 W5zdGl0dXRpb25z.IFJvb3RDQSAyMDEx
15be20 4d 42 34 58 44 54 45 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 MB4XDTExMTIwNjEzNDk1MloXDTMxMTIw
15be40 4d 54 45 7a 4e 44 6b 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 MTEzNDk1MlowgZUxCzAJBgNVBAYT.Akd
15be60 53 4d 55 51 77 51 67 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 SMUQwQgYDVQQKEztIZWxsZW5pYyBBY2F
15be80 6b 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 kZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl
15bea0 30 64 58 52 70 62 32 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 0dXRpb25z.IENlcnQuIEF1dGhvcml0eT
15bec0 46 41 4d 44 34 47 41 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 FAMD4GA1UEAxM3SGVsbGVuaWMgQWNhZG
15bee0 56 74 61 57 4d 67 59 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 VtaWMgYW5kIFJlc2VhcmNo.IEluc3Rpd
15bf00 48 56 30 61 57 39 75 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 HV0aW9ucyBSb290Q0EgMjAxMTCCASIwD
15bf20 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 67 QYJKoZIhvcNAQEBBQADggEPADCCAQoCg
15bf40 67 45 42 0a 41 4b 6c 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 gEB.AKlTAOMupvaO+mDYLZU++CwqVE7N
15bf60 75 59 52 68 6c 46 68 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 uYRhlFhPjz2L5EPzdYmNUeTDN9KKiE15
15bf80 48 72 63 53 33 55 4e 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 HrcS3UN4SoqS5tdI.1Q+kOilENbgH9mg
15bfa0 64 56 63 30 34 55 66 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 dVc04UfCMJDGFr4PJfel3r+0ae50X+bO
15bfc0 64 4f 46 41 50 70 6c 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 dOFAPplp5kYCvN66m0zH7tSYJnTxa.71
15bfe0 48 46 4b 39 2b 57 58 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 HFK9+WXesyHgLacEnsbgzImjeN9/E2YE
15c000 73 6d 4c 49 4b 65 30 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 smLIKe0HjzDQ9jpFEw4fkrJxIH2Oq9GG
15c020 4b 59 73 46 6b 33 66 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 KYsFk3fb7u.8yBRQlqD75O6aRXxYp2fm
15c040 54 6d 43 6f 62 64 30 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 TmCobd0LovUxQt7L/DICto9eQqakxylK
15c060 48 4a 7a 6b 55 4f 61 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 HJzkUOap9FNhYS5qXSPFEDH.3N6sQWRs
15c080 74 42 6d 62 41 6d 4e 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 tBmbAmNtJGSPRLIl6s5ddAxjMlyNh+UC
15c0a0 41 77 45 41 41 61 4f 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 AwEAAaOBiTCBhjAPBgNVHRMBAf8EBTAD
15c0c0 41 51 48 2f 0a 4d 41 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 AQH/.MAsGA1UdDwQEAwIBBjAdBgNVHQ4
15c0e0 45 46 67 51 55 70 70 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 EFgQUppFC/RNhSiOeCKQp5dgTBCPuQSU
15c100 77 52 77 59 44 56 52 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 wRwYDVR0eBEAwPqA8.MAWCAy5ncjAFgg
15c120 4d 75 5a 58 55 77 42 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 MuZXUwBoIELmVkdTAGggQub3JnMAWBAy
15c140 35 6e 63 6a 41 46 67 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 5ncjAFgQMuZXUwBoEELmVkdTAGgQQu.b
15c160 33 4a 6e 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 41 66 37 3JnMA0GCSqGSIb3DQEBBQUAA4IBAQAf7
15c180 33 6c 42 34 58 74 75 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 3lB4XtuP7KMhjdCSk4cNx6NZrokgclPE
15c1a0 67 38 68 77 41 4f 58 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 g8hwAOXhiVt.XdMiKahsog2p6z0GW5k6
15c1c0 78 38 7a 44 6d 6a 52 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 x8zDmjR/qw7IThzh+uTczQ2+vyT+bOdr
15c1e0 77 67 33 49 42 70 35 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 wg3IBp5OjWEopmr95fZi6hg8.TqBTnbI
15c200 36 6e 4f 75 6c 6e 4a 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 6nOulnJEWtk2C4AwFSKls9cz4y51JtPA
15c220 43 70 66 31 77 41 2b 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 Cpf1wA+2KIaWuE4ZJwzNzvoc7dIsXRSZ
15c240 4d 46 70 47 44 0a 2f 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 MFpGD./md9zU1jZ/rzAxKWeAaNsWftjj
15c260 2b 2b 6e 30 38 43 39 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 ++n08C9bMJL/NMh98qy5V8AcysNnq/on
15c280 4e 36 39 34 2f 42 74 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 N694/BtZqhFLKPM58N.7yLcZnuEvUUXB
15c2a0 6a 30 38 79 72 6c 33 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 j08yrl3NI/K6s8/MT7jiOOASSXIl7Wdm
15c2c0 70 6c 4e 73 44 7a 34 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 plNsDz4SgCbZN2fOUvRJ9e4.-----END
15c2e0 20 43 45 52 54 49 46 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 .CERTIFICATE-----..Actalis.Authe
15c300 6e 74 69 63 61 74 69 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 ntication.Root.CA.==============
15c320 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
15c340 49 46 49 43 41 54 45 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 IFICATE-----.MIIFuzCCA6OgAwIBAgI
15c360 49 56 77 6f 52 6c 30 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 IVwoRl0LE48wwDQYJKoZIhvcNAQELBQA
15c380 77 61 7a 45 4c 4d 41 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 wazELMAkGA1UEBhMCSVQxDjAM.BgNVBA
15c3a0 63 4d 42 55 31 70 62 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 cMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbG
15c3c0 6c 7a 49 46 4d 75 63 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 lzIFMucC5BLi8wMzM1ODUyMDk2NzEnMC
15c3e0 55 47 41 31 55 45 0a 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 UGA1UE.AwweQWN0YWxpcyBBdXRoZW50a
15c400 57 4e 68 64 47 6c 76 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 WNhdGlvbiBSb290IENBMB4XDTExMDkyM
15c420 6a 45 78 4d 6a 49 77 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 jExMjIwMloXDTMwMDky.MjExMjIwMlow
15c440 61 7a 45 4c 4d 41 6b 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 azELMAkGA1UEBhMCSVQxDjAMBgNVBAcM
15c460 42 55 31 70 62 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 BU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlz
15c480 0a 49 46 4d 75 63 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 .IFMucC5BLi8wMzM1ODUyMDk2NzEnMCU
15c4a0 47 41 31 55 45 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 GA1UEAwweQWN0YWxpcyBBdXRoZW50aWN
15c4c0 68 64 47 6c 76 62 69 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 hdGlvbiBSb290.IENBMIICIjANBgkqhk
15c4e0 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 70 38 iG9w0BAQEFAAOCAg8AMIICCgKCAgEAp8
15c500 62 45 70 53 6d 6b 4c 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 bEpSmkLO/lGMWwUKNvUTufClrJ.wkg4C
15c520 73 49 63 6f 42 68 2f 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 sIcoBh/kbWHuUA/3R1oHwiD1S0eiKD4j
15c540 31 61 50 62 5a 6b 43 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 1aPbZkCkpAW1V8IbInX4ay8IMKx4INRi
15c560 6d 6c 4e 41 4a 5a 61 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 mlNAJZa.by/ARH6jDuSRzVju3PvHHkVH
15c580 33 53 65 35 43 41 47 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 3Se5CAGfpiEd9UEtL0z9KK3giq0itFZl
15c5a0 6a 6f 5a 55 6a 35 4e 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 joZUj5NDKd45RnijMCO6.zfB9E1fAXdK
15c5c0 44 61 30 68 4d 78 4b 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 Da0hMxKufgFpbOr3JpyI/gCczWw63igx
15c5e0 64 42 7a 63 49 79 32 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 dBzcIy2zSekciRDXFzMwujt0q7bd9Zg1
15c600 66 0a 59 56 45 69 56 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 f.YVEiVRvjRuPjPdA1YprbrxTIW6HMiR
15c620 76 68 4d 43 62 38 6f 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 vhMCb8oJsfgadHHwTrozmSBp+Z07/T6k
15c640 39 51 6e 42 6e 2b 6c 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 9QnBn+locePGX2.oxgkg4YQ51Q+qDp2J
15c660 45 2b 42 49 63 58 6a 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 E+BIcXjDwL4k5RHILv+1A7TaLndxHqEg
15c680 75 4e 54 56 48 6e 64 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 uNTVHnd25zS8gebLra8Pu2Fbe8l.EfKX
15c6a0 47 6b 4a 68 39 30 71 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 GkJh90qX6IuxEAf6ZYGyojnP9zz/GPvG
15c6c0 38 56 71 4c 57 65 49 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 8VqLWeICrHuS0E4UT1lF9gxeKF+w6D9F
15c6e0 7a 38 2b 76 6d 32 2f 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 z8+vm2/7.hNN3WpVvrJSEnu68wEqPSpP
15c700 34 52 43 48 69 4d 55 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 4RCHiMUVhUE4Q2OM1fEwZtN4Fv6MGn8i
15c720 31 7a 65 51 66 31 78 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 1zeQf1xcGDXqVdFUNaBr8.EBtiZJ1t4J
15c740 57 67 77 35 51 48 56 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 Wgw5QHVw0U5r0F+7if5t+L4sbnfpb2U8
15c760 57 41 4e 46 41 6f 57 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 WANFAoWPASUHEXMLrmeGO89LKtmyuy/u
15c780 45 35 0a 6a 46 36 36 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 E5.jF66CyCU3nuDuP/jVo23Eek7jPKxw
15c7a0 56 32 64 70 41 74 4d 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 V2dpAtMK9myGPW1n0sCAwEAAaNjMGEwH
15c7c0 51 59 44 56 52 30 4f 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 QYDVR0OBBYEFFLY.iDrIn3hm7Ynzezhw
15c7e0 6c 4d 6b 43 41 6a 62 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 lMkCAjbQMA8GA1UdEwEB/wQFMAMBAf8w
15c800 48 77 59 44 56 52 30 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 HwYDVR0jBBgwFoAUUtiIOsifeGbt.ifN
15c820 37 4f 48 43 55 79 51 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 7OHCUyQICNtAwDgYDVR0PAQH/BAQDAgE
15c840 47 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 4c 65 33 4b GMA0GCSqGSIb3DQEBCwUAA4ICAQALe3K
15c860 48 77 47 43 6d 53 55 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 HwGCmSUyI.WOYdiPcUZEim2FgKDk8TNd
15c880 38 31 48 64 54 74 42 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 81HdTtBjHIgT5q1d07GjLukD0R0i70js
15c8a0 4e 6a 4c 69 4e 6d 73 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 NjLiNmsGe+b7bAEzlgqqI0.JZN1Ut6nn
15c8c0 61 30 4f 68 34 6c 53 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 a0Oh4lScWoWPBkdg/iaKWW+9D+a2fDzW
15c8e0 6f 63 68 63 59 42 4e 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 ochcYBNy+A4mz+7+uAwTc+G02UQGRjRl
15c900 77 4b 78 0a 4b 33 4a 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 wKx.K3JCaKygvU5a2hi/a5iB0P2avl4V
15c920 53 4d 30 52 46 62 6e 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 SM0RFbnAKVy06Ij3Pjaut2L9HmLecHgQ
15c940 48 45 68 62 32 72 79 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 HEhb2rykOLpn7VU+.Xlff1ANATIGk0k9
15c960 6a 70 77 6c 43 43 52 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 jpwlCCRT8AKnCgHNPLsBA2RF7SOp6AsD
15c980 54 36 79 67 42 4a 6c 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 T6ygBJlh0wcBzIm2Tlf05fbsq4/aC.4y
15c9a0 79 58 58 30 34 66 6b 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 yXX04fkZT6/iyj2HYauE2yOE+b+h1IYH
15c9c0 6b 6d 34 76 50 39 71 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 km4vP9qdCa6HCPSXrW5b0KDtst842/6+
15c9e0 4f 6b 66 63 76 48 6c 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 OkfcvHlXHo.2qN8xcL4dJIEG4aspCJTQ
15ca00 4c 61 73 2f 6b 78 32 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 Las/kx2z/uUMsA1n3Y/buWQbqCmJqK4L
15ca20 4c 37 52 4b 34 58 39 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 L7RK4X9p2jIugErsWx0Hbhz.lefut8cl
15ca40 38 41 42 4d 41 4c 4a 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 8ABMALJ+tguLHPPAUJ4lueAI3jZm/zel
15ca60 30 62 74 55 5a 43 7a 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 0btUZCzJJ7VLkn5l/9Mt4blOvH+kQSGQ
15ca80 51 58 65 6d 0a 4f 52 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 QXem.OR/qnuOf0GZvBeyqdn6/axag67X
15caa0 48 2f 4a 4a 55 4c 79 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 H/JJULysRJyU3eExRarDzzFhdFPFqSBX
15cac0 2f 77 67 65 32 73 59 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 /wge2sY0PjlxQRrM9.vwGYT7JZVEc+NH
15cae0 74 34 62 56 61 54 4c 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 t4bVaTLnPqZih4zR0Uv6CPLy64Lo7yFI
15cb00 72 4d 36 62 56 38 2b 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 rM6bV8+2ydDKXhlg==.-----END.CERT
15cb20 49 46 49 43 41 54 45 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 IFICATE-----..Trustis.FPS.Root.C
15cb40 41 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 47 49 4e A.===================.-----BEGIN
15cb60 20 43 45 52 54 49 46 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 .CERTIFICATE-----.MIIDZzCCAk+gAw
15cb80 49 42 41 67 49 51 47 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 IBAgIQGx+ttiD5JNM2a/fH8YygWTANBg
15cba0 6b 71 68 6b 69 47 39 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 kqhkiG9w0BAQUFADBFMQswCQYDVQQG.E
15cbc0 77 4a 48 51 6a 45 59 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 wJHQjEYMBYGA1UEChMPVHJ1c3RpcyBMa
15cbe0 57 31 70 64 47 56 6b 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 W1pdGVkMRwwGgYDVQQLExNUcnVzdGlzI
15cc00 45 5a 51 55 79 42 53 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 EZQUyBSb290.IENBMB4XDTAzMTIyMzEy
15cc20 4d 54 51 77 4e 6c 6f 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 MTQwNloXDTI0MDEyMTExMzY1NFowRTEL
15cc40 4d 41 6b 47 41 31 55 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 MAkGA1UEBhMCR0IxGDAWBgNV.BAoTD1R
15cc60 79 64 58 4e 30 61 58 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 ydXN0aXMgTGltaXRlZDEcMBoGA1UECxM
15cc80 54 56 48 4a 31 63 33 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 TVHJ1c3RpcyBGUFMgUm9vdCBDQTCCASI
15cca0 77 44 51 59 4a 0a 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 wDQYJ.KoZIhvcNAQEBBQADggEPADCCAQ
15ccc0 6f 43 67 67 45 42 41 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 oCggEBAMVQe547NdDfxIzNjpvto8A2mf
15cce0 52 43 36 71 63 2b 67 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 RC6qc+gIMPpqdZh8mQ.RUN+AOqGeSoDv
15cd00 54 30 33 6d 59 6c 6d 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 T03mYlmt+WKVoaTnGhLaASMk5MCPjDSN
15cd20 7a 6f 69 59 59 6b 63 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 zoiYYkchU59j9WvezX2fihHiTHcDnlk.
15cd40 48 35 6e 53 57 37 72 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 H5nSW7r+f2C/revnPDgpai/lkQtV/+xv
15cd60 57 4e 55 74 79 64 35 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 WNUtyd5MZnGPDNcE2gfmHhjjvSkCqPoc
15cd80 34 56 75 35 67 36 68 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 4Vu5g6hBSLwa.cY3nYuUtsuvffM/bq1r
15cda0 4b 4d 66 46 4d 49 76 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 KMfFMIvMFE/eC+XN5DL7XSxzA0RU8k0F
15cdc0 6b 30 65 61 2b 49 78 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 k0ea+IxciAIleH2ulrG6nS4zt.o3Lmr2
15cde0 4e 4e 4c 34 58 53 46 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 NNL4XSFDWaLk6M6jKYKIahkQlBOrTh4/
15ce00 4c 36 38 4d 6b 4b 6f 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 L68MkKokHdqeMDx4gVOxzUGpTXn2RZEm
15ce20 30 43 41 77 45 41 0a 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 0CAwEA.AaNTMFEwDwYDVR0TAQH/BAUwA
15ce40 77 45 42 2f 7a 41 66 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 wEB/zAfBgNVHSMEGDAWgBS6+nEleYtXQ
15ce60 53 55 68 68 67 74 78 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 SUhhgtx67JkDoshZzAd.BgNVHQ4EFgQU
15ce80 75 76 70 78 4a 58 6d 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 uvpxJXmLV0ElIYYLceuyZA6LIWcwDQYJ
15cea0 4b 6f 5a 49 68 76 63 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 KoZIhvcNAQEFBQADggEBAH5Y//01GX2c
15cec0 0a 47 45 2b 65 73 43 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 .GE+esCu8jowU/yyg2kdbw++BLa8F6nR
15cee0 49 57 2f 4d 2b 54 67 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 IW/M+TgfHbcWzk88iNVy2P3UnXwmWzaD
15cf00 2b 76 6b 41 4d 58 42 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 +vkAMXBJV+JOC.yinpXj9WV4s4NvdFGk
15cf20 77 6f 7a 5a 35 42 75 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 wozZ5BuO1WTISkQMi4sKUraXAEasP41B
15cf40 49 79 2b 51 37 44 73 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 Iy+Q7DsdwyhEQsb8tGD+pmQQ9P.8Vilp
15cf60 67 30 4e 44 32 48 65 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 g0ND2HepZ5dfWWhPBfnqFVO76DH7cZEf
15cf80 31 54 31 6f 2b 43 50 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 1T1o+CP8HxVIo8ptoGj4W1OLBuAZ+ytI
15cfa0 4a 38 4d 59 6d 48 56 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 J8MYmHV.l/9D7S3B2l0pKoU/rGXuhg8F
15cfc0 6a 5a 42 66 33 2b 36 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 jZBf3+6f9L/uHfuY5H+QK4R4EA5sSVPv
15cfe0 46 56 74 6c 52 6b 70 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 FVtlRkpdr7r7OnIdzfYl.iB6XzCGcKQE
15d000 4e 5a 65 74 58 32 66 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 NZetX2fNXlrtIzYE=.-----END.CERTI
15d020 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 69 63 61 74 FICATE-----..StartCom.Certificat
15d040 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 3d ion.Authority.==================
15d060 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
15d080 49 43 41 54 45 2d 2d 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 ICATE-----.MIIHhzCCBW+gAwIBAgIBL
15d0a0 54 41 4e 42 67 6b 71 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 TANBgkqhkiG9w0BAQsFADB9MQswCQYDV
15d0c0 51 51 47 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 QQGEwJJTDEWMBQGA1UEChMN.U3RhcnRD
15d0e0 62 32 30 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 b20gTHRkLjErMCkGA1UECxMiU2VjdXJl
15d100 49 45 52 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 IERpZ2l0YWwgQ2VydGlmaWNhdGUgU2ln
15d120 62 6d 6c 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 bmlu.ZzEpMCcGA1UEAxMgU3RhcnRDb20
15d140 67 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 gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHk
15d160 77 48 68 63 4e 4d 44 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 wHhcNMDYwOTE3MTk0.NjM3WhcNMzYwOT
15d180 45 33 4d 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 E3MTk0NjM2WjB9MQswCQYDVQQGEwJJTD
15d1a0 45 57 4d 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 EWMBQGA1UEChMNU3RhcnRDb20gTHRk.L
15d1c0 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 30 59 jErMCkGA1UECxMiU2VjdXJlIERpZ2l0Y
15d1e0 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 5a 7a 45 70 4d WwgQ2VydGlmaWNhdGUgU2lnbmluZzEpM
15d200 43 63 47 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 CcGA1UEAxMg.U3RhcnRDb20gQ2VydGlm
15d220 61 57 4e 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 aWNhdGlvbiBBdXRob3JpdHkwggIiMA0G
15d240 43 53 71 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 CSqGSIb3DQEBAQUAA4ICDwAw.ggIKAoI
15d260 43 41 51 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 CAQDBiNsJvGxGfHiflXu1M5DycmLWwTY
15d280 67 49 69 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 gIiRezul38kMKogZkpMyONvg45iPwbm2
15d2a0 78 50 4e 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 xPN1y.o4UcodM9tDMr0y+v/uqwQVlnts
15d2c0 51 47 66 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 QGfQqedIXWeUyAN3rfOQVSWff0G0ZDpN
15d2e0 4b 46 68 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 KFhdLDcfN1YjS6LIp/.Ho/u7TTQEceWz
15d300 56 49 39 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 VI9ujPW3U3eCztKS5/CJi/6tRYccjV3y
15d320 6a 78 64 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 jxd5srhJosaNnZcAdt0FCX+7bWgiA/d.
15d340 65 4d 6f 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 eMotHweXMAEtcnn6RtYTKqi5pquDSR3l
15d360 38 75 2f 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 8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJr
15d380 64 41 66 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 dAfkK+F2PrRt.2PZE4XNiHzvEvqBTViV
15d3a0 73 55 51 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 sUQn3qqvKv3b9bZvzndu/PWa8DFaqr5h
15d3c0 49 6c 54 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 IlTpL36dYUNk4dalb6kMMAv+Z.6+hsTX
15d3e0 42 62 4b 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 BbKWWc3apdzK8BMewM69KN6Oqce+Zu9y
15d400 64 6d 44 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 dmDBpI125C4z/eIT574Q1w+2OqqGwaVL
15d420 52 63 4a 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 RcJXrJ.osmLFqa7LH4XXgVNWG4SHQHuE
15d440 68 41 4e 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 hANxjJ/GP/89PrNbpHoNkm+Gkhpi8KWT
15d460 52 6f 53 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 RoSsmkXwQqQ1vp5Iki/.untp+HDH+no3
15d480 32 4e 67 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 2NgN0nZPV/+Qt+OR0t3vwmC3Zzrd/qqc
15d4a0 38 4e 53 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 8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVc
15d4c0 0a 55 6a 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 .UjyJthkqcwEKDwOzEmDyei+B26Nu/yY
15d4e0 77 6c 2f 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 wl/WL3YlXtq09s68rxbd2AvCl1iuahhQ
15d500 71 63 76 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 qcvbjM4xdCUsT.37uMdBNSSwIDAQABo4
15d520 49 43 45 44 43 43 41 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 ICEDCCAgwwDwYDVR0TAQH/BAUwAwEB/z
15d540 41 4f 42 67 4e 56 48 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 AOBgNVHQ8BAf8EBAMCAQYwHQYD.VR0OB
15d560 42 59 45 46 45 34 4c 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 BYEFE4L7xqkQFulF2mHMMo0aEPQQa7yM
15d580 42 38 47 41 31 55 64 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 B8GA1UdIwQYMBaAFE4L7xqkQFulF2mHM
15d5a0 4d 6f 30 61 45 50 51 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 Mo0aEPQ.Qa7yMIIBWgYDVR0gBIIBUTCC
15d5c0 41 55 30 77 67 67 46 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 AU0wggFJBgsrBgEEAYG1NwEBATCCATgw
15d5e0 4c 67 59 49 4b 77 59 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 LgYIKwYBBQUHAgEWImh0.dHA6Ly93d3c
15d600 75 63 33 52 68 63 6e 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 uc3RhcnRzc2wuY29tL3BvbGljeS5wZGY
15d620 77 4e 41 59 49 4b 77 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 wNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3c
15d640 75 0a 63 33 52 68 63 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 u.c3RhcnRzc2wuY29tL2ludGVybWVkaW
15d660 46 30 5a 53 35 77 5a 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 F0ZS5wZGYwgc8GCCsGAQUFBwICMIHCMC
15d680 63 57 49 46 4e 30 59 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 cWIFN0YXJ0IENv.bW1lcmNpYWwgKFN0Y
15d6a0 58 4a 30 51 32 39 74 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 XJ0Q29tKSBMdGQuMAMCAQEagZZMaW1pd
15d6c0 47 56 6b 49 45 78 70 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 GVkIExpYWJpbGl0eSwgcmVhZCB0.aGUg
15d6e0 63 32 56 6a 64 47 6c 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 c2VjdGlvbiAqTGVnYWwgTGltaXRhdGlv
15d700 62 6e 4d 71 49 47 39 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 bnMqIG9mIHRoZSBTdGFydENvbSBDZXJ0
15d720 61 57 5a 70 59 32 46 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 aWZpY2F0.aW9uIEF1dGhvcml0eSBQb2x
15d740 70 59 33 6b 67 59 58 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 pY3kgYXZhaWxhYmxlIGF0IGh0dHA6Ly9
15d760 33 64 33 63 75 63 33 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 3d3cuc3RhcnRzc2wuY29t.L3BvbGljeS
15d780 35 77 5a 47 59 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 44 5wZGYwEQYJYIZIAYb4QgEBBAQDAgAHMD
15d7a0 67 47 43 57 43 47 53 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 gGCWCGSAGG+EIBDQQrFilTdGFydENvbS
15d7c0 42 47 0a 63 6d 56 6c 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 BG.cmVlIFNTTCBDZXJ0aWZpY2F0aW9uI
15d7e0 45 46 31 64 47 68 76 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 EF1dGhvcml0eTANBgkqhkiG9w0BAQsFA
15d800 41 4f 43 41 67 45 41 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 AOCAgEAjo/n3JR5.fPGFf59Jb2vKXfuM
15d820 2f 67 54 46 77 57 4c 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 /gTFwWLRfUKKvFO3lANmMD+x5wqnUCBV
15d840 4a 58 39 32 65 68 51 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 JX92ehQN6wQOQOY+2IirByeDqXWm.N3P
15d860 48 2f 55 76 53 54 61 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 H/UvSTa0XQMhGvjt/UfzDtgUx3M2FIk5
15d880 78 74 2f 4a 78 58 72 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 xt/JxXrAaxrqTi3iSSoX4eA+D/i+tLPf
15d8a0 6b 70 4c 73 74 30 4f 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 kpLst0OcN.Org+zvZ49q5HJMqjNTbOx8
15d8c0 61 48 6d 4e 72 73 2b 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 aHmNrs++myziebiMMEofYLWWivydsQD0
15d8e0 33 32 5a 47 4e 63 70 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 32ZGNcpRJvkrKTlMeIFw6T.tn5ii5B/q
15d900 30 36 66 2f 4f 4e 31 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 06f/ON1FE8qMt9bDeD1e5MNq6HPh+GlB
15d920 45 58 6f 50 42 4b 6c 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 EXoPBKlCcWw0bdT82AUuoVpaiF8H3VhF
15d940 79 41 58 0a 65 32 77 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 yAX.e2w7QSlc4axa0c2Mm+tgHRns9+Ww
15d960 32 76 6c 35 47 4b 56 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 2vl5GKVFP0lDV9LdJNUso/2RjSe15esU
15d980 42 70 70 4d 65 79 47 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 BppMeyG7Oq0wBhjA.2MFrLH9ZXF2RsXA
15d9a0 69 56 2b 75 4b 61 30 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 iV+uKa0hK1Q8p7MZAwC+ITGgBF3f0JBl
15d9c0 50 76 66 72 68 73 69 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 PvfrhsiAhS90a2Cl9qrjeVOwhVYBs.Hv
15d9e0 55 77 79 4b 4d 51 35 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 UwyKMQ5bLmKhQxw4UtjJixhlpPiVktuc
15da00 66 33 48 4d 69 4b 66 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 f3HMiKf8CdBUrmQk9io20ppB+Fq9vlgc
15da20 69 74 4b 6a 31 4d 58 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 itKj1MXVuE.JnHEhV5xJMqlG2zYYdMa4
15da40 46 54 62 7a 72 71 70 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 FTbzrqpMrUi9nNBCV24F10OD5mQ1kfab
15da60 77 6f 36 59 69 67 55 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 wo6YigUZ4LZ8dCAWZvLMdib.D4x3TrVo
15da80 69 76 4a 73 39 69 51 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 ivJs9iQOLWxwxXPR3hTQcY+203sC9uO4
15daa0 31 41 6c 75 61 35 35 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 1Alua551hDnmfyWl8kgAwKQB2j8=.---
15dac0 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 74 61 72 74 43 6f 6d --END.CERTIFICATE-----..StartCom
15dae0 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 47 32 0a 3d 3d 3d 3d .Certification.Authority.G2.====
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 0a ===============================.
15db20 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
15db40 59 7a 43 43 41 30 75 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 YzCCA0ugAwIBAgIBOzANBgkqhkiG9w0B
15db60 41 51 73 46 41 44 42 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 AQsFADBTMQswCQYDVQQGEwJJTDEWMBQG
15db80 41 31 55 45 43 68 4d 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 A1UEChMN.U3RhcnRDb20gTHRkLjEsMCo
15dba0 47 41 31 55 45 41 78 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 GA1UEAxMjU3RhcnRDb20gQ2VydGlmaWN
15dbc0 68 64 47 6c 76 62 69 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 hdGlvbiBBdXRob3JpdHkg.RzIwHhcNMT
15dbe0 41 77 4d 54 41 78 4d 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 AwMTAxMDEwMDAxWhcNMzkxMjMxMjM1OT
15dc00 41 78 57 6a 42 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 AxWjBTMQswCQYDVQQGEwJJTDEWMBQGA1
15dc20 55 45 0a 43 68 4d 4e 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 UE.ChMNU3RhcnRDb20gTHRkLjEsMCoGA
15dc40 31 55 45 41 78 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 1UEAxMjU3RhcnRDb20gQ2VydGlmaWNhd
15dc60 47 6c 76 62 69 42 42 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 GlvbiBBdXRob3Jp.dHkgRzIwggIiMA0G
15dc80 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 49 43 CSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC
15dca0 41 51 43 32 69 54 5a 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 AQC2iTZbB7cgNr2Cu+EWIAOVeq8O.o1X
15dcc0 4a 4a 5a 6c 4b 78 64 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 JJZlKxdBWQYeQTSFgpBSHO839sj60ZwN
15dce0 71 37 65 45 50 53 38 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 q7eEPS8CRhXBF4EKe3ikj1AENoBB5uNs
15dd00 44 76 66 4f 70 4c 39 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 DvfOpL9HG.4A/LnooUCri99lZi8cVytj
15dd20 49 6c 32 62 4c 7a 76 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 Il2bLzvWXFDSxu1ZJvGIsAQRSCb0AgJn
15dd40 6f 6f 44 2f 55 65 66 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 ooD/Uefyf3lLE3PbfHkffi.Aez9lInhz
15dd60 47 37 54 4e 74 59 4b 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 G7TNtYKGXmu1zSCZf98Qru23QumNK9LY
15dd80 50 35 2f 51 30 6b 47 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 P5/Q0kGi4xDuFby2X8hQxfqp0iVAXV16
15dda0 69 75 6c 0a 51 35 58 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 iul.Q5XqFYSdCI0mblWbq9zSOdIxHWDi
15ddc0 72 4d 78 57 52 53 54 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 rMxWRST1HFSr7obdljKF+ExP6JV2tgXd
15dde0 4e 69 4e 6e 76 50 38 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 NiNnvP8V4so75qbs.O+wmETRIjfaAKxo
15de00 6a 41 75 75 4b 48 44 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 jAuuKHDp2KntWFhxyKrOq42ClAJ8Em+J
15de20 76 48 68 52 59 57 36 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 vHhRYW6Vsi1g8w7pOOlz34ZYrPu8H.vK
15de40 54 6c 58 63 78 4e 6e 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 TlXcxNnw3h3Kq74W4a7I/htkxNeXJdFz
15de60 55 4c 48 64 66 42 52 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 ULHdfBR9qWJODQcqhaX2YtENwvKhOuJv
15de80 34 4b 48 42 6e 4d 30 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 4KHBnM0D4L.nMgJLvlblnpHnOl68wVQd
15dea0 4a 56 7a 6e 6a 41 4a 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 JVznjAJ85eCXuaPOQgeWeU1FEIT/wCc9
15dec0 37 36 71 55 4d 2f 69 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 76qUM/iUUjXuG+v+E5+M5iS.FGI6dWPP
15dee0 65 2f 72 65 67 6a 75 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 e/regjupuznixL0sAA7IF6wT700ljtiz
15df00 6b 43 2b 70 32 69 6c 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 kC+p2il9Ha90OrInwMEePnWjFqmveiJd
15df20 6e 78 4d 61 0a 7a 36 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 nxMa.z6eg6+OGCtP95paV1yPIN93EfKo
15df40 32 72 4a 67 61 45 72 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 2rJgaErHgTuixO/XWb/Ew1wIDAQABo0I
15df60 77 51 44 41 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 wQDAPBgNVHRMBAf8E.BTADAQH/MA4GA1
15df80 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 53 38 UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUS8
15dfa0 57 30 51 47 75 74 48 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 W0QGutHLOlHGVuRjaJhwUMDrYwDQYJ.K
15dfc0 6f 5a 49 68 76 63 4e 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 oZIhvcNAQELBQADggIBAHNXPyzVlTJ+N
15dfe0 39 75 57 6b 75 73 5a 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 9uWkusZXn5T50HsEbZH77Xe7XRcxfGOS
15e000 65 44 38 62 70 6b 54 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 eD8bpkTzZ+K.2s06Ctg6Wgk/XzTQLwPS
15e020 5a 68 30 61 76 5a 79 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 Zh0avZyQN8gMjgdalEVGKua+etqhqaRp
15e040 45 70 4b 77 66 54 62 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 EpKwfTbURIfXUfEpY9Z1zRbk.J4kd+MI
15e060 79 53 50 33 62 6d 64 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 ySP3bmdCPX1R0zKxnNBFi2QwKN4fRoxd
15e080 49 6a 74 49 58 48 66 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 IjtIXHfbX/dtl6/2o1PXWT6RbdejF0mC
15e0a0 79 32 77 6c 2b 0a 4a 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 y2wl+.JYt7ulKSnj7oxXehPOBKc2thz4
15e0c0 62 63 51 2f 2f 2f 49 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 bcQ///If4jXSRK9dNtD2IEBVeC2m6kMy
15e0e0 56 35 53 79 35 55 47 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 V5Sy5UGYvMLD0w6dEG./+gyRr61M3Z3q
15e100 41 46 64 6c 73 48 42 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 AFdlsHB1b6uJcDJHgoJIIihDsnzb02CV
15e120 41 41 67 70 39 4b 50 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 AAgp9KP5DlUFy6NHrgbuxu9mk47EDTc.
15e140 6e 49 68 54 37 36 49 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 nIhT76IxW1hPkWLIwpqazRVdOKnWvvgT
15e160 74 5a 38 53 61 66 4a 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 tZ8SafJQYqz7Fzf07rh1Z2AQ+4NQ+US1
15e180 64 5a 78 41 46 37 4c 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 dZxAF7L+/Xld.blhYXzD8AK6vM8EOTmy
15e1a0 36 70 36 61 68 66 7a 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 6p6ahfzLbOOCxchcKK5HsamMm7YnUeMx
15e1c0 30 48 67 58 34 61 2f 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 0HgX4a/6ManY5Ka5lIxKVCCIc.l85bBu
15e1e0 34 4d 34 72 75 38 48 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 4M4ru8H0ST9tg4RQUh7eStqxK2A6RCLi
15e200 33 45 43 54 6f 44 5a 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 3ECToDZ2mEmuFZkIoohdVddLHRDiBYmx
15e220 4f 6c 73 47 4f 6d 0a 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 OlsGOm.7XtH/UVVMKTumtTm4ofvmMkyg
15e240 68 45 70 49 72 77 41 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 hEpIrwACjFeLQ/Ajulrso8uBtjRkcfGE
15e260 76 52 4d 2f 54 41 58 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 vRM/TAXw8HaOFvjqerm.obp573PYtlNX
15e280 4c 66 62 51 34 64 64 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 LfbQ4ddI.-----END.CERTIFICATE---
15e2a0 2d 2d 0a 0a 42 75 79 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 --..Buypass.Class.2.Root.CA.====
15e2c0 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
15e2e0 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 42 ERTIFICATE-----.MIIFWTCCA0GgAwIB
15e300 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 77 AgIBAjANBgkqhkiG9w0BAQsFADBOMQsw
15e320 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 56 CQYDVQQGEwJOTzEdMBsGA1UECgwU.QnV
15e340 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 4e 5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgN
15e360 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 69 42 53 62 32 39 VBAMMF0J1eXBhc3MgQ2xhc3MgMiBSb29
15e380 30 49 45 4e 42 4d 42 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 0IENBMB4X.DTEwMTAyNjA4MzgwM1oXDT
15e3a0 51 77 4d 54 41 79 4e 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 QwMTAyNjA4MzgwM1owTjELMAkGA1UEBh
15e3c0 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 51 MCTk8xHTAbBgNVBAoMFEJ1.eXBhc3MgQ
15e3e0 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 64 VMtOTgzMTYzMzI3MSAwHgYDVQQDDBdCd
15e400 58 6c 77 59 58 4e 7a 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 XlwYXNzIENsYXNzIDIgUm9vdCBDQTCCA
15e420 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 43 iIw.DQYJKoZIhvcNAQEBBQADggIPADCC
15e440 41 67 6f 43 67 67 49 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 AgoCggIBANfHXvfBB9R3+0Mh9PT1aeTu
15e460 4d 67 48 62 6f 34 59 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 MgHbo4Yf5FkNuud1.g1Lr6hxhFUi7HQf
15e480 4b 6a 4b 36 77 33 4a 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 KjK6w3Jad6sNgkoaCKHOcVgb/S2TwDCo
15e4a0 33 53 62 58 6c 7a 77 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 3SbXlzwx87vFKu3MwZfPVL4O2fuPn.9Z
15e4c0 36 72 59 50 6e 54 38 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 6rYPnT8Z2SdIrkHJasW4DptfQxh6NR/M
15e4e0 64 2b 6f 57 2b 4f 55 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 d+oW+OU3fUl8FVM5I+GC911K2GScuVr1
15e500 51 47 62 4e 67 47 45 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 QGbNgGE41b./+EmGVnAJLqBcXmQRFBoJ
15e520 4a 52 66 75 4c 4d 52 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 JRfuLMR8SlBYaNByyM21cHxMlAQTn/0h
15e540 70 50 73 68 4e 4f 4f 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 pPshNOOvEu/XAFOBz3cFIqU.CqTqc/sL
15e560 55 65 67 54 42 78 6a 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 UegTBxj6DvEr0VQVfTzh97QZQmdiXnfg
15e580 6f 6c 58 73 74 74 6c 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 olXsttlpF9U6r0TtSsWe5HonfOV116rL
15e5a0 4a 65 66 66 0a 61 77 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 Jeff.awrbD02TTqigzXsu8lkBarcNuAe
15e5c0 42 66 6f 73 34 47 7a 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 Bfos4GzjmCleZPe4h6KP1DBbdi+w0jpw
15e5e0 71 48 41 41 56 46 34 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 qHAAVF41og9JwnxgI.zRFo1clrUs3ERo
15e600 2f 63 74 66 50 59 56 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 /ctfPYV3Me6ZQ5BL/T3jjetFPsaRyifs
15e620 53 50 35 42 74 77 72 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 SP5BtwrfKi+fv3FmRmaZ9JUaLiFRhn.B
15e640 6b 70 2f 31 57 79 31 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 kp/1Wy1TbMz4GHrXb7pmA8y1x1LPC5aA
15e660 56 4b 52 43 66 4c 66 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 VKRCfLf6o3YBkBjqhHk/sM3nhRSP/Tiz
15e680 50 4a 68 6b 39 48 39 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 PJhk9H9Z2vX.Uq6/aKtAQ6BXNVN48FP4
15e6a0 59 55 49 48 5a 4d 62 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 YUIHZMbXb5tMOA1jrGKvNouicwoN9SG9
15e6c0 64 4b 70 4e 36 6e 49 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 dKpN6nIDSdvHXx1iY8f93ZHs.M+71bbR
15e6e0 75 4d 47 6a 65 79 4e 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 uMGjeyNYmsHVee7QHIJihdjK4TWxPAgM
15e700 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 38 BAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8
15e720 77 48 51 59 44 0a 56 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 wHQYD.VR0OBBYEFMmAd+BikoL1Rpzzuv
15e740 64 4d 77 39 36 34 6f 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 dMw964o605MA4GA1UdDwEB/wQEAwIBBj
15e760 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 55 31 38 68 39 ANBgkqhkiG9w0BAQsF.AAOCAgEAU18h9
15e780 62 71 77 4f 6c 49 35 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 bqwOlI5LJKwbADJ784g7wbylp7ppHR/e
15e7a0 68 62 38 74 2f 57 32 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 hb8t/W2+xUbP6umwHJdELFx7rxP462s.
15e7c0 41 32 30 75 63 53 36 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 A20ucS6vxOOto70MEae0/0qyexAQH6dX
15e7e0 51 62 4c 41 72 76 51 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 QbLArvQsWdZHEIjzIVEpMMpghq9Gqx3t
15e800 4f 6c 75 77 6c 4e 35 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 OluwlN5E40EI.osHsHdb9T7bWR9AUC8r
15e820 6d 79 72 56 37 64 33 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 myrV7d35BH16Dx7aMOZawP5aBQW9gkOL
15e840 6f 2b 66 73 69 63 64 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 o+fsicdl9sz1Gv7SEr5AcD48S.aq/v7h
15e860 35 36 72 67 4a 4b 69 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 56rgJKihcrdv6sVIkkLE8/trKnToyokZ
15e880 66 37 4b 63 5a 37 58 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 f7KcZ7XC25y2a2t6hbElGFtQl+Ynhw/q
15e8a0 6c 71 59 4c 59 64 0a 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 lqYLYd.DnkM/crqJIByw5c/8nerQyIKx
15e8c0 2b 75 32 44 49 53 43 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 +u2DISCLIBrQYoIwOula9+ZEsuK1V6AD
15e8e0 4a 48 67 4a 67 67 32 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 JHgJgg2SMX6OBE1/yWD.LfJ6v9r9jv6l
15e900 79 30 55 73 48 38 53 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 y0UsH8SIU653DtmadsWOLB2jutXsMq7A
15e920 71 71 7a 33 30 58 70 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 qqz30XpN69QH4kj3Io6wpJ9qzo6ysmD0
15e940 0a 6f 79 4c 51 49 2b 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 .oyLQI+uUWnpp3Q+/QFesa1lQ2aOZ4W7
15e960 2b 6a 51 46 35 4a 79 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 +jQF5JyMV3pKdewlNWudLSDBaGOYKbea
15e980 50 34 4e 4b 37 35 74 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 P4NK75t98biGC.wWg5TbSYWGZizEqQXs
15e9a0 50 36 4a 77 53 78 65 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 P6JwSxeRV0mcy+rSDeJmAc61ZRpqPq5K
15e9c0 4d 2f 70 2f 39 68 33 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 M/p/9h3PFaTWwyI0PurKju7koS.CTxdc
15e9e0 63 4b 2b 65 66 72 43 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 cK+efrCh2gdC/1cacwG0Jp9VJkqyTkaG
15ea00 61 39 4c 4b 6b 50 7a 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 a9LKkPzY11aWOIv4x3kqdbQCtCev9eBC
15ea20 66 48 4a 78 79 59 4e 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 fHJxyYN.rJgWVqA=.-----END.CERTIF
15ea40 49 43 41 54 45 2d 2d 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 ICATE-----..Buypass.Class.3.Root
15ea60 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 0a 2d 2d 2d 2d .CA.=======================.----
15ea80 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 54 43 43 -BEGIN.CERTIFICATE-----.MIIFWTCC
15eaa0 41 30 47 67 41 77 49 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 A0GgAwIBAgIBAjANBgkqhkiG9w0BAQsF
15eac0 41 44 42 4f 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 55 45 ADBOMQswCQYDVQQGEwJOTzEdMBsGA1UE
15eae0 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 6a 63 CgwU.QnV5cGFzcyBBUy05ODMxNjMzMjc
15eb00 78 49 44 41 65 42 67 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 xIDAeBgNVBAMMF0J1eXBhc3MgQ2xhc3M
15eb20 67 4d 79 42 53 62 32 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 gMyBSb290IENBMB4X.DTEwMTAyNjA4Mj
15eb40 67 31 4f 46 6f 58 44 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 g1OFoXDTQwMTAyNjA4Mjg1OFowTjELMA
15eb60 6b 47 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 0a 65 kGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1.e
15eb80 58 42 68 63 33 4d 67 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 XBhc3MgQVMtOTgzMTYzMzI3MSAwHgYDV
15eba0 51 51 44 44 42 64 43 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 QQDDBdCdXlwYXNzIENsYXNzIDMgUm9vd
15ebc0 43 42 44 51 54 43 43 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 CBDQTCCAiIw.DQYJKoZIhvcNAQEBBQAD
15ebe0 67 67 49 50 41 44 43 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 ggIPADCCAgoCggIBAKXaCpUWUOOV8l6d
15ec00 64 6a 45 47 4d 6e 71 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 djEGMnqb8RB2uACatVI2zSRH.sJ8YZLy
15ec20 61 39 76 72 56 65 64 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 a9vrVediQYkwiL944PdbgqOkcLNt4Eem
15ec40 4f 61 46 45 56 63 73 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 OaFEVcsfzM4fkoF0LXOBXByow9c3EN3c
15ec60 6f 54 52 69 52 0a 35 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 oTRiR.5r/VUv1xLXA+58bEiuPwKAv0dp
15ec80 69 68 69 34 64 56 73 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 ihi4dVsjoT/Lc+JzeOIuOoTyrvYLs9tz
15eca0 6e 44 44 67 46 48 6d 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 nDDgFHmV0ST9tD+leh.7fmdvhFHJlsTm
15ecc0 4b 74 64 46 6f 71 77 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 KtdFoqwNxxXnUX/iJY2v7vKB3tvh2PX0
15ece0 44 4a 71 31 6c 31 73 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 DJq1l1sDPGzbjniazEuOQAnFN44wOwZ.
15ed00 5a 6f 59 53 36 4a 31 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 ZoYS6J1yFhNkUsepNxz9gjDthBgd9K5c
15ed20 2f 33 41 54 41 4f 75 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 /3ATAOux9TN6S9ZV+AWNS2mw9bMoNlwU
15ed40 78 46 46 7a 54 57 73 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 xFFzTWsL8TQH.2xc519woe2v1n/MuwU8
15ed60 58 4b 68 44 7a 7a 4d 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 XKhDzzMro6/1rqy6any2CbgTUUgGTLT2
15ed80 47 2f 48 37 38 33 2b 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 G/H783+9CHaZr77kgxve9oKeV./afmiS
15eda0 54 59 7a 49 77 30 62 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 TYzIw0bOIjL9kSGiG5VZFvC5F5GQytQI
15edc0 67 4c 63 4f 4a 36 30 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 gLcOJ60g7YaEi7ghM5EFjp2CoHxhLbWN
15ede0 76 53 4f 31 55 51 0a 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 vSO1UQ.RwUVZ2J+GGOmRj8JDlQyXr8NY
15ee00 6e 6f 6e 37 34 44 6f 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 non74Do29lLBlo3WiXQCBJ31G8JUJc9y
15ee20 42 33 44 33 34 78 46 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 B3D34xFMFbG02SrZvPA.Xpacw8Tvw3xr
15ee40 69 7a 70 35 66 37 4e 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 izp5f7NJzz3iiZ+gMEuFuZyUJHmPfWup
15ee60 52 57 67 50 4b 39 44 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 RWgPK9Dx2hzLabjKSWJtyNBjYt1gD1iq
15ee80 0a 6a 36 47 38 42 61 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 .j6G8BaVmos8bdrKEZLFMOVLAMLrwjEs
15eea0 43 73 4c 61 33 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 77 51 CsLa3AgMBAAGjQjBAMA8GA1UdEwEB/wQ
15eec0 46 4d 41 4d 42 41 66 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 FMAMBAf8wHQYD.VR0OBBYEFEe4zf/lb+
15eee0 37 34 73 75 77 76 54 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 74suwvTg75JbCOPGvDMA4GA1UdDwEB/w
15ef00 51 45 41 77 49 42 42 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 QEAwIBBjANBgkqhkiG9w0BAQsF.AAOCA
15ef20 67 45 41 41 43 41 6a 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 gEAACAjQTUEkMJAYmDv4jVM1z+s4jSQu
15ef40 4b 46 76 64 76 6f 57 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 KFvdvoWFqRINyzpkMLyPPgKn9iB5btb2
15ef60 69 55 73 70 4b 64 56 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 iUspKdV.cSQy9sgL8rxq+JOssgfCX5/b
15ef80 7a 4d 69 4b 71 72 35 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 zMiKqr5qb+FJEMwx14C7u8jYog5kV+qi
15efa0 39 63 4b 70 4d 52 58 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 9cKpMRXSIGrs/CIBKM+G.uIAeqcwRpTz
15efc0 79 46 72 4e 48 6e 66 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 yFrNHnfzSgCHEy9BHcEGhyoMZCCxt8l1
15efe0 33 6e 49 6f 55 45 39 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 3nIoUE9Q2HJLw5QY33KbmkJs4j1xrG0a
15f000 47 0a 51 30 4a 66 50 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 G.Q0JfPgEHU1RdZX33inOhmlRaHylDFC
15f020 66 43 68 51 2b 31 69 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 fChQ+1iHsaO5S3HWCntZznKWlXWpuTek
15f040 4d 77 47 77 50 58 59 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 MwGwPXYshApqr8.ZORK15FTAaggiG6cX
15f060 30 53 35 79 32 43 42 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 0S5y2CBNOxv033aSF/rtJC8LakcC6wc1
15f080 61 4a 6f 49 49 41 45 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 aJoIIAE1vyxjy+7SjENSoYc6+I2.KSb1
15f0a0 32 74 6a 45 38 6e 56 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 2tjE8nVhz36udmNKekBlk4f4HoCMhuWG
15f0c0 31 6f 38 4f 2f 46 4d 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 1o8O/FMsYOgWYRqiPkN7zTlgVGr18okm
15f0e0 41 57 69 44 53 4b 49 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 AWiDSKIz.6MkEkbIRNBE+6tBDGR8Dk5A
15f100 4d 2f 31 45 39 56 2f 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 M/1E9V/RBbuHLoL7ryWPNbczk+DaqaJ3
15f120 74 76 56 32 58 63 45 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 tvV2XcEQNtg413OEMXbug.UZTLfhbrES
15f140 2b 6a 6b 6b 58 49 54 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 +jkkXITHHZvMmZUldGL1DPvTVp9D0Vzg
15f160 61 6c 4c 41 38 2b 39 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 alLA8+9oG6lLvDu79leNKGef9JOxqDDP
15f180 44 65 0a 65 4f 7a 49 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 De.eOzI8k1MGt6CKfjBWtrt7uYnXuhF0
15f1a0 4a 30 63 55 61 68 6f 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 J0cUahoq0Tj0Itq4/g7u9xN12TyUb7mq
15f1c0 71 74 61 36 54 48 75 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 qta6THuBrxzvxNi.Cp/HuZc=.-----EN
15f1e0 44 20 43 45 52 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 D.CERTIFICATE-----..T-TeleSec.Gl
15f200 6f 62 61 6c 52 6f 6f 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 obalRoot.Class.3.===============
15f220 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
15f240 43 41 54 45 2d 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 CATE-----.MIIDwzCCAqugAwIBAgIBAT
15f260 41 4e 42 67 6b 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 ANBgkqhkiG9w0BAQsFADCBgjELMAkGA1
15f280 55 45 42 68 4d 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 UEBhMCREUxKzApBgNVBAoM.IlQtU3lzd
15f2a0 47 56 74 63 79 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 GVtcyBFbnRlcnByaXNlIFNlcnZpY2VzI
15f2c0 45 64 74 59 6b 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 EdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtc
15f2e0 79 42 55 0a 63 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 yBU.cnVzdCBDZW50ZXIxJTAjBgNVBAMM
15f300 48 46 51 74 56 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 HFQtVGVsZVNlYyBHbG9iYWxSb290IENs
15f320 59 58 4e 7a 49 44 4d 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 YXNzIDMwHhcNMDgx.MDAxMTAyOTU2Whc
15f340 4e 4d 7a 4d 78 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 NMzMxMDAxMjM1OTU5WjCBgjELMAkGA1U
15f360 45 42 68 4d 43 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 EBhMCREUxKzApBgNVBAoMIlQtU3lz.dG
15f380 56 74 63 79 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 VtcyBFbnRlcnByaXNlIFNlcnZpY2VzIE
15f3a0 64 74 59 6b 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 dtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcy
15f3c0 42 55 63 6e 56 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 BUcnVzdCBD.ZW50ZXIxJTAjBgNVBAMMH
15f3e0 46 51 74 56 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 FQtVGVsZVNlYyBHbG9iYWxSb290IENsY
15f400 58 4e 7a 49 44 4d 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 XNzIDMwggEiMA0GCSqGSIb3.DQEBAQUA
15f420 41 34 49 42 44 77 41 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 A4IBDwAwggEKAoIBAQC9dZPwYiJvJK7g
15f440 65 6e 61 73 66 62 33 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 enasfb3ZJNW4t/zN8ELg63iIVl6bmlQd
15f460 54 51 79 4b 0a 39 74 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 TQyK.9tPPcPRStdiTBONGhnFBSivwKix
15f480 56 41 39 5a 49 77 2b 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 VA9ZIw+A5OO3yXDw/RLyTPWGrTs0NvvA
15f4a0 67 4a 31 67 4f 52 48 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 gJ1gORH8EGoel15YU.NpDQSXuhdfsaa3
15f4c0 4f 78 2b 4d 36 70 43 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 Ox+M6pCSzyU9XDFES4hqX2iys52qMzVN
15f4e0 6e 36 63 68 72 33 49 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 n6chr3IhUciJFrf2blw2qAsCTz34ZF.i
15f500 50 30 5a 66 33 57 48 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 P0Zf3WHHx+xGwpzJFu5ZeAsVMhg02YXP
15f520 2b 48 4d 56 44 4e 7a 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 +HMVDNzkQI6pn97djmiH5a2OK61yJN0H
15f540 5a 36 35 74 4f 56 67 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 Z65tOVgnS9W.0eDrXltMEnAMbEQgqxHY
15f560 39 42 6e 32 30 70 78 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 9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6
15f580 42 37 68 38 44 52 2f 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 B7h8DR/Wgx6zAgMBAAGjQjBA.MA8GA1U
15f5a0 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 48 2f 42 41 51 dEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQ
15f5c0 44 41 67 45 47 4d 42 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 DAgEGMB0GA1UdDgQWBBS1A/d2O2GCahK
15f5e0 71 47 46 50 72 0a 41 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 qGFPr.AyGUv/7OyjANBgkqhkiG9w0BAQ
15f600 73 46 41 41 4f 43 41 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 sFAAOCAQEAVj3vlNW92nOyWL6ukK2YJ5
15f620 66 2b 41 62 47 77 55 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 f+AbGwUgC4TeQbIXQb.fsDuXmkqJa9c1
15f640 68 33 61 30 6e 6e 4a 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 h3a0nnJ85cp4IaH3gRZD/FZ1GSFS5mvJ
15f660 51 51 65 79 55 61 70 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 QQeyUapl96Cshtwn5z2r3Ex3XsFpSzT.
15f680 75 63 70 48 39 73 72 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 ucpH9sry9uetuUg/vBa3wW306gmv7PO1
15f6a0 35 77 57 65 70 68 36 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 5wWeph6KU1HWk4HMdJP2udqmJQV0eVp+
15f6c0 51 44 36 43 53 79 59 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 QD6CSyYRMG7h.P0HHRwA11fXT91Q+gT3
15f6e0 61 53 57 71 61 73 2b 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 aSWqas+8QPebrb9HIIkfLzM8BMZLZGOM
15f700 69 76 67 6b 65 47 6a 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 ivgkeGj5asuRrDFR6fUNOuIml.e9eiPZ
15f720 61 47 7a 50 49 6d 4e 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 aGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8
15f740 45 39 6c 59 4c 52 52 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 E9lYLRRpo7PHi4b6HQDWSieB4pTpPDpF
15f760 51 55 57 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 2d QUWw==.-----END.CERTIFICATE-----
15f780 0a 0a 45 45 20 43 65 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 ..EE.Certification.Centre.Root.C
15f7a0 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.==============================
15f7c0 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
15f7e0 49 45 41 7a 43 43 41 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 IEAzCCAuugAwIBAgIQVID5oHPtPwBMyo
15f800 6e 59 34 33 48 6d 53 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 nY43HmSjANBgkqhkiG9w0BAQUFADB1MQ
15f820 73 77 43 51 59 44 56 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 swCQYDVQQG.EwJFRTEiMCAGA1UECgwZQ
15f840 56 4d 67 55 32 56 79 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 VMgU2VydGlmaXRzZWVyaW1pc2tlc2t1c
15f860 7a 45 6f 4d 43 59 47 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 zEoMCYGA1UEAwwfRUUgQ2Vy.dGlmaWNh
15f880 64 47 6c 76 62 69 42 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 dGlvbiBDZW50cmUgUm9vdCBDQTEYMBYG
15f8a0 43 53 71 47 53 49 62 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 CSqGSIb3DQEJARYJcGtpQHNrLmVlMCIY
15f8c0 44 7a 49 77 0a 4d 54 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 DzIw.MTAxMDMwMTAxMDMwWhgPMjAzMDE
15f8e0 79 4d 54 63 79 4d 7a 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 yMTcyMzU5NTlaMHUxCzAJBgNVBAYTAkV
15f900 46 4d 53 49 77 49 41 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 FMSIwIAYDVQQKDBlB.UyBTZXJ0aWZpdH
15f920 4e 6c 5a 58 4a 70 62 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 NlZXJpbWlza2Vza3VzMSgwJgYDVQQDDB
15f940 39 46 52 53 42 44 5a 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 9FRSBDZXJ0aWZpY2F0aW9uIENlbnRy.Z
15f960 53 42 53 62 32 39 30 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 SBSb290IENBMRgwFgYJKoZIhvcNAQkBF
15f980 67 6c 77 61 32 6c 41 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 glwa2lAc2suZWUwggEiMA0GCSqGSIb3D
15f9a0 51 45 42 41 51 55 41 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 QEBAQUAA4IB.DwAwggEKAoIBAQDIIMDs
15f9c0 34 4d 56 4c 71 77 64 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 4MVLqwd4lfNE7vsLDP90jmG7sWLqI9ir
15f9e0 6f 57 55 79 65 75 75 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 oWUyeuuOF0+W2Ap7kaJjbMeM.TC55v6k
15fa00 46 2f 47 6c 63 6c 59 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 F/GlclY1i+blw7cNRfdCT5mzrMEvhvH2
15fa20 2f 55 70 76 4f 62 6e 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 /UpvObntl8jixwKIy72KyaOBhU8E2lf/
15fa40 73 6c 4c 6f 32 0a 72 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 slLo2.rpwcpzIP5Xy0xm90/XsY6KxX7Q
15fa60 59 67 53 7a 49 77 57 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 YgSzIwWFv9zajmofxwvI6Sc9uXp3whrj
15fa80 33 42 39 55 69 48 62 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 3B9UiHbCe9nyV0gVWw.93X2PaRka9ZP5
15faa0 38 35 41 72 51 2f 64 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 85ArQ/dMtO8ihJTmMmJ+xAdTX7Nfh9WD
15fac0 53 46 77 68 66 59 67 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 SFwhfYggx/2uh8Ej+p3iDXE/+pOoYtN.
15fae0 50 32 4d 62 52 4d 4e 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 P2MbRMNE1CV2yreN1x5KZmTNXMWcg+HC
15fb00 43 49 69 61 37 45 36 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 CIia7E6j8T4cLNlsHaFLAgMBAAGjgYow
15fb20 67 59 63 77 44 77 59 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 gYcwDwYDVR0T.AQH/BAUwAwEB/zAOBgN
15fb40 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 46 42 4c VHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBL
15fb60 79 57 6a 37 71 56 68 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 yWj7qVhy/zQas8fElyalL1BSZ.MEUGA1
15fb80 55 64 4a 51 51 2b 4d 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 UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQ
15fba0 63 44 41 51 59 49 4b 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 cDAQYIKwYBBQUHAwMGCCsGAQUFBwMEBg
15fbc0 67 72 42 67 45 46 0a 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 grBgEF.BQcDCAYIKwYBBQUHAwkwDQYJK
15fbe0 6f 5a 49 68 76 63 4e 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 oZIhvcNAQEFBQADggEBAHv25MANqhlHt
15fc00 30 31 58 6f 2f 36 74 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 01Xo/6tu7Fq1Q+e2+Rj.xY6hUFaTlrg4
15fc20 77 43 51 69 5a 72 78 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 wCQiZrxTFGGVv9DHKpY5P30osxBAIWrE
15fc40 72 37 42 53 64 78 6a 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 r7BSdxjhlthWXePdNl4dp1BUoMUq5KqM
15fc60 0a 6c 49 70 50 6e 54 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 .lIpPnTX/dqQGE5Gion0ARD9V04I8GtV
15fc80 62 76 46 5a 4d 49 69 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 bvFZMIi5GQ4okQC3zErg7cBqklrkar4d
15fca0 42 47 6d 6f 59 44 51 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 BGmoYDQZPxz5u.uSlNDUmJEYcyW+ZLBM
15fcc0 6a 6b 58 4f 5a 30 63 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 jkXOZ0c5RdFpgTlf7727FE5TpwrDdr5r
15fce0 4d 7a 63 69 6a 4a 73 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 MzcijJs1eg9gIWiAYLtqZLICjU.3j2Lr
15fd00 54 63 46 55 33 54 2b 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 TcFU3T+bsy8QxdxXvnFzBqpYe73dgzzc
15fd20 76 52 79 72 63 39 79 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 vRyrc9yAjYHR8/vGVCJYMzpJJUPwssd8
15fd40 6d 39 32 6b 4d 66 4d 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 m92kMfM.dcGWxZ0=.-----END.CERTIF
15fd60 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 74 ICATE-----..TURKTRUST.Certificat
15fd80 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 30 30 37 0a 3d 3d e.Services.Provider.Root.2007.==
15fda0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
15fdc0 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
15fde0 46 49 43 41 54 45 2d 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 FICATE-----.MIIEPTCCAyWgAwIBAgIB
15fe00 41 54 41 4e 42 67 6b 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 ATANBgkqhkiG9w0BAQUFADCBvzE/MD0G
15fe20 41 31 55 45 41 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 A1UEAww2VMOcUktUUlVTVCBF.bGVrdHJ
15fe40 76 62 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 vbmlrIFNlcnRpZmlrYSBIaXptZXQgU2H
15fe60 45 6e 32 78 68 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 En2xhecSxY8Sxc8SxMQswCQYDVQQGEwJ
15fe80 55 55 6a 45 50 0a 4d 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 UUjEP.MA0GA1UEBwwGQW5rYXJhMV4wXA
15fea0 59 44 56 51 51 4b 44 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 YDVQQKDFVUw5xSS1RSVVNUIEJpbGdpIM
15fec0 53 77 62 47 56 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 SwbGV0acWfaW0gdmUg.QmlsacWfaW0gR
15fee0 38 4f 38 64 6d 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 8O8dmVubGnEn2kgSGl6bWV0bGVyaSBBL
15ff00 73 57 65 4c 69 41 6f 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 sWeLiAoYykgQXJhbMSxayAyMDA3MB4X.
15ff20 44 54 41 33 4d 54 49 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 DTA3MTIyNTE4MzcxOVoXDTE3MTIyMjE4
15ff40 4d 7a 63 78 4f 56 6f 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 MzcxOVowgb8xPzA9BgNVBAMMNlTDnFJL
15ff60 56 46 4a 56 55 31 51 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 VFJVU1QgRWxl.a3Ryb25payBTZXJ0aWZ
15ff80 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 58 50 pa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXP
15ffa0 45 73 54 45 4c 4d 41 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 EsTELMAkGA1UEBhMCVFIxDzAN.BgNVBA
15ffc0 63 4d 42 6b 46 75 61 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 cMBkFua2FyYTFeMFwGA1UECgxVVMOcUk
15ffe0 74 55 55 6c 56 54 56 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 tUUlVTVCBCaWxnaSDEsGxldGnFn2ltIH
160000 5a 6c 49 45 4a 70 0a 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 ZlIEJp.bGnFn2ltIEfDvHZlbmxpxJ9pI
160020 45 68 70 65 6d 31 6c 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 Ehpem1ldGxlcmkgQS7Fni4gKGMpIEFyY
160040 57 7a 45 73 57 73 67 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 WzEsWsgMjAwNzCCASIw.DQYJKoZIhvcN
160060 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 75 33 50 67 71 4d AQEBBQADggEPADCCAQoCggEBAKu3PgqM
160080 79 4b 56 59 46 65 61 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 yKVYFeaK7yc9SrToJdPNM8Ig3BnuiD9N
1600a0 0a 59 76 44 64 45 33 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 .YvDdE3ePYakqtdTyuTFYKTsvP2qcb3N
1600c0 32 4a 65 34 30 49 49 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 2Je40IIDu6rfwxArNK4aUyeNgsURSslo
1600e0 70 74 4a 47 58 67 39 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 ptJGXg9i3phQv.KUmi8wUG+7RP2qFsmm
160100 61 66 38 45 4d 4a 79 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 af8EMJyupyj+sA1zU511YXRxcw9L6/P8
160120 4a 6f 72 7a 5a 41 77 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 JorzZAwan0qafoEGsIiveGHtya.KhUG9
160140 71 50 77 39 4f 44 48 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 qPw9ODHFNRRf8+0222vR5YXm3dx2Kdxn
160160 53 51 4d 39 70 51 2f 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 SQM9pQ/hTEST7ruToK4uT6PIzdezKKqd
160180 66 63 59 62 77 6e 54 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 fcYbwnT.rqdUKDT74eA7YH2gvnmJhsif
1601a0 4c 66 6b 4b 53 38 52 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 LfkKS8RQouf9eRbHegsYz85M733WB2+Y
1601c0 38 61 2b 78 77 58 72 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 8a+xwXrXgTW4qhe04MsC.AwEAAaNCMEA
1601e0 77 48 51 59 44 56 52 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 wHQYDVR0OBBYEFCnFkKslrxHkYb+j/4h
160200 68 6b 65 59 4f 2f 70 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 hkeYO/pyBMA4GA1UdDwEB/wQEAwIBBjA
160220 50 0a 42 67 4e 56 48 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 P.BgNVHRMBAf8EBTADAQH/MA0GCSqGSI
160240 62 33 44 51 45 42 42 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 b3DQEBBQUAA4IBAQAQDdr4Ouwo0RSVgr
160260 45 53 4c 46 46 36 51 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 ESLFF6QSU2TJ/s.Px+EnWVUXKgWAkD6b
160280 68 6f 33 68 4f 39 79 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 ho3hO9ynYYKVZ1WKKxmLNA6VpM0ByWtC
1602a0 4c 43 50 79 41 38 4a 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 LCPyA8JWcqdmBzlVPi5RX9ql2+I.aE1K
1602c0 42 69 59 33 69 41 49 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 BiY3iAIOtsbWcpnOa3faYjGkVh+uX413
1602e0 32 6c 33 32 69 50 77 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 2l32iPwa2Z61gfAyuOOI0JzzaqC5mxRZ
160300 4e 54 5a 50 7a 2f 4f 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 NTZPz/OO.Xl0XrRWV2N2y1RVuAE6zS89
160320 6d 6c 4f 54 67 7a 62 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 mlOTgzbUF2mNXi+WzqtvALhyQRNsaXRi
160340 6b 37 72 34 45 57 35 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 k7r4EW5nVcV9VZWRi1aKb.BFmGyGJ353
160360 79 43 52 57 6f 39 46 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 yCRWo9F7/snXUMrqNvWtMvmDb08PUZqx
160380 46 64 79 4b 62 6a 4b 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 FdyKbjKlhqQgnDvZImZjINXQhVdP+MmN
1603a0 41 4b 0a 70 6f 52 71 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 AK.poRq0Tl9.-----END.CERTIFICATE
1603c0 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 32 -----..D-TRUST.Root.Class.3.CA.2
1603e0 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 3d 3d .2009.==========================
160400 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-----
160420 0a 4d 49 49 45 4d 7a 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 .MIIEMzCCAxugAwIBAgIDCYPzMA0GCSq
160440 47 53 49 62 33 44 51 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 GSIb3DQEBCwUAME0xCzAJBgNVBAYTAkR
160460 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 6b FMRUwEwYDVQQK.DAxELVRydXN0IEdtYk
160480 67 78 4a 7a 41 6c 42 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 gxJzAlBgNVBAMMHkQtVFJVU1QgUm9vdC
1604a0 42 44 62 47 46 7a 63 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 BDbGFzcyAzIENBIDIgMjAwOTAe.Fw0wO
1604c0 54 45 78 4d 44 55 77 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 TExMDUwODM1NThaFw0yOTExMDUwODM1N
1604e0 54 68 61 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 59 44 56 ThaME0xCzAJBgNVBAYTAkRFMRUwEwYDV
160500 51 51 4b 44 41 78 45 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 QQKDAxE.LVRydXN0IEdtYkgxJzAlBgNV
160520 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 79 41 7a BAMMHkQtVFJVU1QgUm9vdCBDbGFzcyAz
160540 49 45 4e 42 49 44 49 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 IENBIDIgMjAwOTCCASIw.DQYJKoZIhvc
160560 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 4e 4f 79 53 73 39 NAQEBBQADggEPADCCAQoCggEBANOySs9
160580 36 52 2b 39 31 6d 79 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 6R+91myP6Oi/WUEWJNTrGa9v+2wBoqOA
1605a0 44 0a 45 52 30 33 55 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 D.ER03UAifTUpolDWzU9GUY6cgVq/eUX
1605c0 6a 73 4b 6a 33 7a 53 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 jsKj3zSEhQPgrfRlWLJ23DEE0NkVJD2I
1605e0 66 67 58 55 34 32 74 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 fgXU42tSHKXzlA.BF9bfsyjxiupQB7ZN
160600 6f 54 57 53 50 4f 53 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 oTWSPOSHjRGICTBpFGOShrvUD9pXRl/R
160620 63 50 48 41 59 39 52 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 cPHAY9RySPocq60vFYJfxLLHLGv.KZAK
160640 79 56 58 4d 44 39 4f 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 yVXMD9O0Gu1HNVpK7ZxzBCHQqr0ME7UA
160660 79 69 5a 73 78 47 73 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 yiZsxGsMlFqVlNpQmvH/pStmMaTJOKDf
160680 48 52 2b 34 43 53 37 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 HR+4CS7z.p+hnUquVH+BGPtikw8paxTG
1606a0 41 36 45 69 61 6e 35 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 A6Eian5Rp/hnd2HN8gcqW3o7tszIFZYQ
1606c0 30 35 75 62 39 56 78 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 05ub9VxC1X3a/L7AQDcUC.AwEAAaOCAR
1606e0 6f 77 67 67 45 57 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 owggEWMA8GA1UdEwEB/wQFMAMBAf8wHQ
160700 59 44 56 52 30 4f 42 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 YDVR0OBBYEFP3aFMSfMN4hvR5COfyrYy
160720 4e 4a 0a 34 50 47 45 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 NJ.4PGEMA4GA1UdDwEB/wQEAwIBBjCB0
160740 77 59 44 56 52 30 66 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 wYDVR0fBIHLMIHIMIGAoH6gfIZ6bGRhc
160760 44 6f 76 4c 32 52 70 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 DovL2RpcmVjdG9y.eS5kLXRydXN0Lm5l
160780 64 43 39 44 54 6a 31 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 dC9DTj1ELVRSVVNUJTIwUm9vdCUyMENs
1607a0 59 58 4e 7a 4a 54 49 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 YXNzJTIwMyUyMENBJTIwMiUyMDIw.MDk
1607c0 73 54 7a 31 45 4c 56 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 sTz1ELVRydXN0JTIwR21iSCxDPURFP2N
1607e0 6c 63 6e 52 70 5a 6d 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 lcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q
160800 77 51 36 42 42 6f 44 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 wQ6BBoD+G.PWh0dHA6Ly93d3cuZC10cn
160820 56 7a 64 43 35 75 5a 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 VzdC5uZXQvY3JsL2QtdHJ1c3Rfcm9vdF
160840 39 6a 62 47 46 7a 63 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 9jbGFzc18zX2NhXzJfMjAw.OS5jcmwwD
160860 51 59 4a 4b 6f 5a 49 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 QYJKoZIhvcNAQELBQADggEBAH+X2zDI3
160880 36 53 63 66 53 46 36 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 6ScfSF6gHDOFBJpiBSVYEQBrLLpME+bU
1608a0 4d 4a 6d 0a 32 48 36 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 MJm.2H6NMLVwMeniacfzcNsgFYbQDfC+
1608c0 72 41 46 31 68 4d 35 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 rAF1hM5+n02/t2A7nPPKHeJeaNijnZfl
1608e0 51 47 44 53 4e 69 48 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 QGDSNiH+0LS4F9p0.o3/U37CYAqxva2s
160900 73 4a 53 52 79 6f 57 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 sJSRyoWXuJVrl5jLn8t+rSfrzkGkj2wT
160920 5a 35 31 78 59 2f 47 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 Z51xY/GXUl77M/C4KzCUqNQT4YJEV.dT
160940 31 42 2f 79 4d 66 47 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 1B/yMfGchs64JTBKbkTCJNjYy6zltz7G
160960 52 55 55 47 33 52 6e 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 RUUG3RnFX7acM2w4y8PIWmawomDeCTmG
160980 43 75 66 73 59 6b 6c 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 CufsYkl4ph.X5GOZpIJhzbNi5stPvZR1
1609a0 46 44 55 57 53 69 39 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 FDUWSi9g/LMKHtThm3YJohw1+qRzT65y
1609c0 73 43 51 62 6c 72 47 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 sCQblrGXnRl11z+o+I=.-----END.CER
1609e0 54 49 46 49 43 41 54 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 TIFICATE-----..D-TRUST.Root.Clas
160a00 73 20 33 20 43 41 20 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 s.3.CA.2.EV.2009.===============
160a20 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
160a40 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 41 77 49 42 41 RTIFICATE-----.MIIEQzCCAyugAwIBA
160a60 67 49 44 43 59 50 30 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 gIDCYP0MA0GCSqGSIb3DQEBCwUAMFAxC
160a80 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 0a 44 41 78 45 zAJBgNVBAYTAkRFMRUwEwYDVQQK.DAxE
160aa0 4c 56 52 79 64 58 4e 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 LVRydXN0IEdtYkgxKjAoBgNVBAMMIUQt
160ac0 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 67 VFJVU1QgUm9vdCBDbGFzcyAzIENBIDIg
160ae0 52 56 59 67 4d 6a 41 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 RVYgMjAw.OTAeFw0wOTExMDUwODUwNDZ
160b00 61 46 77 30 79 4f 54 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 aFw0yOTExMDUwODUwNDZaMFAxCzAJBgN
160b20 56 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 VBAYTAkRFMRUwEwYDVQQK.DAxELVRydX
160b40 4e 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 N0IEdtYkgxKjAoBgNVBAMMIUQtVFJVU1
160b60 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 67 52 56 59 67 4d 6a QgUm9vdCBDbGFzcyAzIENBIDIgRVYgMj
160b80 41 77 0a 4f 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 Aw.OTCCASIwDQYJKoZIhvcNAQEBBQADg
160ba0 67 45 50 41 44 43 43 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 gEPADCCAQoCggEBAJnxhDRwui+3MKCOv
160bc0 58 77 45 7a 37 35 69 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 XwEz75ivJn9gpfS.egpnljgJ9hBOlSJz
160be0 6d 59 33 61 46 53 33 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 mY3aFS3nBfwZcyK3jpgAvDw9rKFs+9Z5
160c00 4a 55 75 74 38 4d 78 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 JUut8Mxk2og+KbgPCdM03TP1YtHh.zRn
160c20 70 37 68 68 50 54 46 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 p7hhPTFiu4h7WDFsVWtg6uMQYZB7jM7K
160c40 31 69 58 64 4f 44 4c 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 1iXdODL/ZlGsTl28So/6ZqQTMFexgaDb
160c60 74 43 48 75 33 39 62 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 tCHu39b+T.7WYxg4zGcTSHThfqr4uRjR
160c80 78 57 51 61 34 69 4e 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 xWQa4iN1438h3Z0S0NL2lRp75mpoo6Kr
160ca0 33 48 47 72 48 68 46 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 3HGrHhFPC+Oh25z1uxav60.sUYgovseO
160cc0 33 44 76 6b 35 68 39 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 3Dvk5h9jHOW8sXvhXCtKSb8HgQ+HKDYD
160ce0 38 74 53 67 32 4a 38 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 8tSg2J87otTlZCpV6LqYQXY+U3EJ/pur
160d00 65 33 35 0a 31 31 48 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 e35.11H3a6UCAwEAAaOCASQwggEgMA8G
160d20 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 42 59 45 A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE
160d40 46 4e 4f 55 69 6b 78 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 FNOUikxiEyoZLsyv.cop9NteaHNxnMA4
160d60 47 41 31 55 64 44 77 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 GA1UdDwEB/wQEAwIBBjCB3QYDVR0fBIH
160d80 56 4d 49 48 53 4d 49 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 VMIHSMIGHoIGEoIGBhn9sZGFwOi8v.ZG
160da0 6c 79 5a 57 4e 30 62 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 lyZWN0b3J5LmQtdHJ1c3QubmV0L0NOPU
160dc0 51 74 56 46 4a 56 55 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 QtVFJVU1QlMjBSb290JTIwQ2xhc3MlMj
160de0 41 7a 4a 54 49 77 51 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 AzJTIwQ0El.MjAyJTIwRVYlMjAyMDA5L
160e00 45 38 39 52 43 31 55 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 E89RC1UcnVzdCUyMEdtYkgsQz1ERT9jZ
160e20 58 4a 30 61 57 5a 70 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 XJ0aWZpY2F0ZXJldm9jYXRp.b25saXN0
160e40 4d 45 61 67 52 4b 42 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 MEagRKBChkBodHRwOi8vd3d3LmQtdHJ1
160e60 63 33 51 75 62 6d 56 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 c3QubmV0L2NybC9kLXRydXN0X3Jvb3Rf
160e80 59 32 78 68 0a 63 33 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 Y2xh.c3NfM19jYV8yX2V2XzIwMDkuY3J
160ea0 73 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 30 37 58 74 sMA0GCSqGSIb3DQEBCwUAA4IBAQA07Xt
160ec0 61 50 4b 53 55 69 4f 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 aPKSUiO8aEXUHL7P+.PPoeUSbrh/Yp3u
160ee0 44 78 31 4d 59 6b 43 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 Dx1MYkCenBz1UbtDDZzhr+BlGmFaQt77
160f00 4a 4c 76 79 41 6f 4a 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 JLvyAoJUnRpjZ3NOhk31KxEcdzes05.n
160f20 73 4b 74 6a 48 45 68 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 sKtjHEh8lprr988TlWvsoRlFIm5d8sqM
160f40 62 37 50 6f 32 33 50 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 b7Po23Pb0iUMkZv53GMoKaEGTcH8gNFC
160f60 53 75 47 64 58 7a 66 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 SuGdXzfX2lX.ANtu2KZyIktQ1HWYVt+3
160f80 47 50 39 44 51 31 43 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 GP9DQ1CuekR78HlR10M9p9OB0/DJT7na
160fa0 78 70 65 47 30 49 4c 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 xpeG0ILD5EJt/rDiZE4OJudA.NCa1CIn
160fc0 58 43 47 4e 6a 4f 43 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 XCGNjOCd1HjPqbqjdn5lPdE2BiYBL3Zq
160fe0 58 4b 56 77 76 76 6f 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 XKVwvvoFBuYz/6n1gBp7N1z3TLqMVvKj
161000 6d 4a 75 56 76 0a 77 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 mJuVv.w9y4AyHqnxbxLFS1.-----END.
161020 43 45 52 54 49 46 49 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 CERTIFICATE-----..PSCProcert.===
161040 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--
161060 2d 2d 2d 0a 4d 49 49 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 ---.MIIJhjCCB26gAwIBAgIBCzANBgkq
161080 68 6b 69 47 39 77 30 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 hkiG9w0BAQsFADCCAR4xPjA8BgNVBAMT
1610a0 4e 55 46 31 64 47 39 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 NUF1dG9yaWRhZCBk.ZSBDZXJ0aWZpY2F
1610c0 6a 61 57 39 75 49 46 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 jaW9uIFJhaXogZGVsIEVzdGFkbyBWZW5
1610e0 6c 65 6d 39 73 59 57 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 lem9sYW5vMQswCQYDVQQGEwJWRTEQ.MA
161100 34 47 41 31 55 45 42 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 4GA1UEBxMHQ2FyYWNhczEZMBcGA1UECB
161120 4d 51 52 47 6c 7a 64 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 MQRGlzdHJpdG8gQ2FwaXRhbDE2MDQGA1
161140 55 45 43 68 4d 74 55 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 UEChMtU2lz.dGVtYSBOYWNpb25hbCBkZ
161160 53 42 44 5a 58 4a 30 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 SBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9ua
161180 57 4e 68 4d 55 4d 77 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 WNhMUMwQQYDVQQLEzpTdXBl.cmludGVu
1611a0 5a 47 56 75 59 32 6c 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 ZGVuY2lhIGRlIFNlcnZpY2lvcyBkZSBD
1611c0 5a 58 4a 30 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 ZXJ0aWZpY2FjaW9uIEVsZWN0cm9uaWNh
1611e0 4d 53 55 77 0a 49 77 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 MSUw.IwYJKoZIhvcNAQkBFhZhY3JhaXp
161200 41 63 33 56 7a 59 32 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 Ac3VzY2VydGUuZ29iLnZlMB4XDTEwMTI
161220 79 4f 44 45 32 4e 54 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 yODE2NTEwMFoXDTIw.MTIyNTIzNTk1OV
161240 6f 77 67 64 45 78 4a 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 owgdExJjAkBgkqhkiG9w0BCQEWF2Nvbn
161260 52 68 59 33 52 76 51 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 RhY3RvQHByb2NlcnQubmV0LnZlMQ8w.D
161280 51 59 44 56 51 51 48 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 QYDVQQHEwZDaGFjYW8xEDAOBgNVBAgTB
1612a0 30 31 70 63 6d 46 75 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 01pcmFuZGExKjAoBgNVBAsTIVByb3ZlZ
1612c0 57 52 76 63 69 42 6b 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 WRvciBkZSBD.ZXJ0aWZpY2Fkb3MgUFJP
1612e0 51 30 56 53 56 44 45 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 Q0VSVDE2MDQGA1UEChMtU2lzdGVtYSBO
161300 59 57 4e 70 62 32 35 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 YWNpb25hbCBkZSBDZXJ0aWZp.Y2FjaW9
161320 75 49 45 56 73 5a 57 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 uIEVsZWN0cm9uaWNhMQswCQYDVQQGEwJ
161340 57 52 54 45 54 4d 42 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 WRTETMBEGA1UEAxMKUFNDUHJvY2VydDC
161360 43 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 CAiIw.DQYJKoZIhvcNAQEBBQADggIPAD
161380 43 43 41 67 6f 43 67 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 CCAgoCggIBANW39KOUM6FGqVVhSQ2oh3
1613a0 4e 65 6b 53 31 77 77 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 NekS1wwQYalNo97BVC.wfWMrmoX8Yqt/
1613c0 49 43 56 36 6f 4e 45 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 ICV6oNEolt6Vc5Pp6XVurgfoCfAUFM+j
1613e0 62 6e 41 44 72 67 56 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 bnADrgV3NZs+J74BCXfgI8Qhd19L3uA.
161400 33 56 63 41 5a 43 50 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 3VcAZCP4bsm+lU/hdezgfl6VzbHvvnpC
161420 32 4d 6b 73 30 2b 73 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 2Mks0+saGiKLt38GieU89RLAu9MLmV+Q
161440 66 49 34 74 4c 33 63 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 fI4tL3czkkoh.RqipCKzx9hEC2ZUWno0
161460 76 6c 75 59 43 33 58 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 vluYC3XXCFCpa1sl9JcLB/KpnheLsvtF
161480 38 50 50 71 76 31 57 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 8PPqv1W7/U0HU9TI4seJfxPmO.EO8GqQ
1614a0 4b 4a 2f 2b 4d 4d 62 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 KJ/+MMbpfg353bIdD0PghpbNjU5Db4g7
1614c0 61 79 4e 6f 2b 63 37 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 ayNo+c7zo3Fn2/omnXO1ty0K+qP1xmk6
1614e0 77 4b 49 6d 47 32 0a 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 wKImG2.0qCZyFSTXai20b1dCl53lKItw
161500 49 4b 4f 76 4d 6f 44 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 IKOvMoDKjSuc/HUtQy9vmebVOvh+qBa7
161520 44 68 2b 50 73 48 4d 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 Dh+PsHMosdEMXXqP+UH.0quhJZb25uSg
161540 58 54 63 59 4f 57 45 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 XTcYOWEAM11G1ADEtMo88aKjPvM6/2kw
161560 4c 6b 44 64 39 70 2b 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 LkDd9p+cJsmWN63nOaK/6mnbVSKVUyqU
161580 0a 74 64 2b 74 46 6a 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 .td+tFjiBdWbjxywbk5yqjKPK2Ww8F22
1615a0 63 33 48 78 54 34 43 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 c3HxT4CAnQzb5EuE8XL1mv6JpIzi4mWC
1615c0 5a 44 6c 5a 54 4f 70 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 ZDlZTOpx+FIyw.Bm/xhnaQr/2v/pDGj5
1615e0 39 2f 69 35 49 6a 6e 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 9/i5IjnOcVdo/Vi5QTcmn7K2FjiO/mpF
161600 37 6d 6f 78 64 71 57 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 7moxdqWEfLcU8UC17IAggmosvp.r2uKG
161620 63 66 4c 46 46 62 31 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 cfLFFb14dq12fy/czja+eevbqQ34gcnA
161640 67 4d 42 41 41 47 6a 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 gMBAAGjggMXMIIDEzASBgNVHRMBAf8EC
161660 44 41 47 41 51 48 2f 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 DAGAQH/.AgEBMDcGA1UdEgQwMC6CD3N1
161680 63 32 4e 6c 63 6e 52 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 c2NlcnRlLmdvYi52ZaAbBgVghl4CAqAS
1616a0 44 42 42 53 53 55 59 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 DBBSSUYtRy0yMDAwNDAz.Ni0wMB0GA1U
1616c0 64 44 67 51 57 42 42 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 dDgQWBBRBDxk4qpl/Qguk1yeYVKIXTC1
1616e0 52 56 44 43 43 41 56 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 RVDCCAVAGA1UdIwSCAUcwggFDgBStuyI
161700 64 0a 78 75 44 53 41 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 d.xuDSAaj9dlBSk+2YwU2u06GCASakgg
161720 45 69 4d 49 49 42 48 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 EiMIIBHjE+MDwGA1UEAxM1QXV0b3JpZG
161740 46 6b 49 47 52 6c 49 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 FkIGRlIENlcnRp.ZmljYWNpb24gUmFpe
161760 69 42 6b 5a 57 77 67 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 iBkZWwgRXN0YWRvIFZlbmV6b2xhbm8xC
161780 7a 41 4a 42 67 4e 56 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 zAJBgNVBAYTAlZFMRAwDgYDVQQH.EwdD
1617a0 59 58 4a 68 59 32 46 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 YXJhY2FzMRkwFwYDVQQIExBEaXN0cml0
1617c0 62 79 42 44 59 58 42 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 byBDYXBpdGFsMTYwNAYDVQQKEy1TaXN0
1617e0 5a 57 31 68 49 45 35 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 ZW1hIE5h.Y2lvbmFsIGRlIENlcnRpZml
161800 6a 59 57 4e 70 62 32 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 jYWNpb24gRWxlY3Ryb25pY2ExQzBBBgN
161820 56 42 41 73 54 4f 6c 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 VBAsTOlN1cGVyaW50ZW5k.ZW5jaWEgZG
161840 55 67 55 32 56 79 64 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 UgU2VydmljaW9zIGRlIENlcnRpZmljYW
161860 4e 70 62 32 34 67 52 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 Npb24gRWxlY3Ryb25pY2ExJTAjBgkqhk
161880 69 47 0a 39 77 30 42 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 iG.9w0BCQEWFmFjcmFpekBzdXNjZXJ0Z
1618a0 53 35 6e 62 32 49 75 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 S5nb2IudmWCAQowDgYDVR0PAQH/BAQDA
1618c0 67 45 47 4d 45 30 47 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 gEGME0GA1UdEQRG.MESCDnByb2NlcnQu
1618e0 62 6d 56 30 4c 6e 5a 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 bmV0LnZloBUGBWCGXgIBoAwMClBTQy0w
161900 4d 44 41 77 4d 44 4b 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 MDAwMDKgGwYFYIZeAgKgEgwQUklG.LUo
161920 74 4d 7a 45 32 4d 7a 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 tMzE2MzUzNzMtNzB2BgNVHR8EbzBtMEa
161940 67 52 4b 42 43 68 6b 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 gRKBChkBodHRwOi8vd3d3LnN1c2NlcnR
161960 6c 4c 6d 64 76 59 69 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 lLmdvYi52.ZS9sY3IvQ0VSVElGSUNBRE
161980 38 74 55 6b 46 4a 57 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 8tUkFJWi1TSEEzODRDUkxERVIuY3JsMC
1619a0 4f 67 49 61 41 66 68 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 OgIaAfhh1sZGFwOi8vYWNy.YWl6LnN1c
1619c0 32 4e 6c 63 6e 52 6c 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 2NlcnRlLmdvYi52ZTA3BggrBgEFBQcBA
1619e0 51 51 72 4d 43 6b 77 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 QQrMCkwJwYIKwYBBQUHMAGGG2h0dHA6L
161a00 79 39 76 0a 59 33 4e 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 y9v.Y3NwLnN1c2NlcnRlLmdvYi52ZTBB
161a20 42 67 4e 56 48 53 41 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 BgNVHSAEOjA4MDYGBmCGXgMBAjAsMCoG
161a40 43 43 73 47 41 51 55 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 CCsGAQUFBwIBFh5o.dHRwOi8vd3d3LnN
161a60 31 63 32 4e 6c 63 6e 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 1c2NlcnRlLmdvYi52ZS9kcGMwDQYJKoZ
161a80 49 68 76 63 4e 41 51 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 IhvcNAQELBQADggIBACtZ6yKZu4Sq.T9
161aa0 36 51 78 74 47 47 63 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 6QxtGGcSOeSwORR3C7wJJg7ODU523G0+
161ac0 31 6e 67 33 64 53 31 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 1ng3dS1fLld6c2suNUvtm7CpsR72H0xp
161ae0 6b 7a 6d 66 57 76 41 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 kzmfWvADmN.g7+mvTV+LFwxNG9s2/NkA
161b00 5a 69 71 6c 43 78 42 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 ZiqlCxB3RWGymspThbASfzXg0gTB1GEM
161b20 56 4b 49 75 34 59 58 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 VKIu4YXx2sviiCtxQuPcD4q.uxtxj7mk
161b40 6f 50 33 59 6c 64 6d 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 oP3YldmvWb8lK5jpY5MvYB7Eqvh39Yts
161b60 4c 2b 31 2b 4c 72 56 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 L+1+LrVPQA3uvFd359m21D+VJzog1eWu
161b80 71 32 77 31 0a 6e 38 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 q2w1.n8GhHVnchIHuTQfiSLaeS5UtQbH
161ba0 68 36 4e 35 2b 4c 77 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 h6N5+LwUeaO6/u5BlOsju6rEYNxxik6S
161bc0 67 4d 65 78 78 62 4a 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 gMexxbJHmpHmJWhSn.FFAFTKQAVzAswb
161be0 56 68 6c 74 77 2b 48 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 Vhltw+HoSvOULP5dAssSS830DD7X9jSr
161c00 33 68 54 78 4a 6b 68 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 3hTxJkhpXzsOfIt+FTvZLm8wyWuevo.5
161c20 70 4c 74 70 34 45 4a 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 pLtp4EJFAv8lXrPj9Y0TzYS3F7RNHXGR
161c40 6f 41 76 6c 51 53 4d 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 oAvlQSMx4bEqCaJqD8Zm4G7UaRKhqsLE
161c60 51 2b 78 72 6d 4e 54 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 Q+xrmNTbSjq.3TNWOByyrYDT13K9mmyZ
161c80 59 2b 67 41 75 30 46 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 Y+gAu0F2BbdbmRiKw7gSXFbPVgx96OLP
161ca0 37 62 78 30 52 2f 76 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 7bx0R/vu0xdOIk9W/1DzLuY5.poLWccr
161cc0 65 74 39 57 36 61 41 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 et9W6aAjtmcz9opLLabid+Qqkpj5Pkyg
161ce0 71 59 57 77 48 4a 67 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 qYWwHJgD/ll9ohri4zspV4KuxPX+Y1zM
161d00 4f 57 6a 33 59 0a 65 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 OWj3Y.eMLEYC/HYvBhkdI4sPaeVdtAgA
161d20 55 53 4d 38 34 64 6b 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 USM84dkpvRabP/v/GSCmE1P93+hvS84B
161d40 70 78 73 32 4b 6d 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 pxs2Km.-----END.CERTIFICATE-----
161d60 0a 0a 43 68 69 6e 61 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 ..China.Internet.Network.Informa
161d80 74 69 6f 6e 20 43 65 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 tion.Center.EV.Certificates.Root
161da0 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 .===============================
161dc0 3d 3d 3d 3d 3d 3d 3d 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 ===============================.
161de0 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
161e00 39 7a 43 43 41 74 2b 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 9zCCAt+gAwIBAgIESJ8AATANBgkqhkiG
161e20 39 77 30 42 41 51 55 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 9w0BAQUFADCBijELMAkGA1UEBhMCQ04x
161e40 4d 6a 41 77 42 67 4e 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 MjAwBgNV.BAoMKUNoaW5hIEludGVybmV
161e60 30 49 45 35 6c 64 48 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 0IE5ldHdvcmsgSW5mb3JtYXRpb24gQ2V
161e80 75 64 47 56 79 4d 55 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 udGVyMUcwRQYDVQQDDD5D.aGluYSBJbn
161ea0 52 6c 63 6d 35 6c 64 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 Rlcm5ldCBOZXR3b3JrIEluZm9ybWF0aW
161ec0 39 75 49 45 4e 6c 62 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 9uIENlbnRlciBFViBDZXJ0aWZpY2F0ZX
161ee0 4d 67 0a 55 6d 39 76 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 Mg.Um9vdDAeFw0xMDA4MzEwNzExMjVaF
161f00 77 30 7a 4d 44 41 34 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 w0zMDA4MzEwNzExMjVaMIGKMQswCQYDV
161f20 51 51 47 45 77 4a 44 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 QQGEwJDTjEyMDAG.A1UECgwpQ2hpbmEg
161f40 53 57 35 30 5a 58 4a 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 SW50ZXJuZXQgTmV0d29yayBJbmZvcm1h
161f60 64 47 6c 76 62 69 42 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 dGlvbiBDZW50ZXIxRzBFBgNVBAMM.PkN
161f80 6f 61 57 35 68 49 45 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 oaW5hIEludGVybmV0IE5ldHdvcmsgSW5
161fa0 6d 62 33 4a 74 59 58 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 mb3JtYXRpb24gQ2VudGVyIEVWIENlcnR
161fc0 70 5a 6d 6c 6a 59 58 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 pZmljYXRl.cyBSb290MIIBIjANBgkqhk
161fe0 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 6d 33 iG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAm3
162000 35 7a 37 72 30 37 65 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 5z7r07eKpkQ0H1UN+U8i6y.jUqORlTSI
162020 52 4c 49 4f 54 4a 43 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 RLIOTJCBumD1Z9S7eVnAztUwYyZmczpw
162040 41 2f 2f 44 64 6d 45 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 A//DdmEEbK40ctb3B75aDFk4Zv6dOtou
162060 53 43 56 0a 39 38 59 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 SCV.98YPjUesWgbdYavi7NifFy2cyjw1
162080 6c 31 56 78 7a 55 4f 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 l1VxzUOFsUcW9SxTgHbP0wBkvUCZ3czY
1620a0 32 38 53 66 31 68 4e 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 28Sf1hNfQYOL+Q2H.klY0bBoQCxfVWhy
1620c0 58 57 49 51 38 68 42 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 XWIQ8hBouXJE0bhlffxdpxWXvayHG1VA
1620e0 36 76 32 47 35 42 59 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 6v2G5BY3vbzQ6sm8UY78WO5upKv23.Kz
162100 68 6d 42 73 55 73 34 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 hmBsUs4qpnHkWnjQRmQvaPK++IIGmPMo
162120 77 55 63 39 6f 72 68 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 wUc9orhpFjIpryp9vOiYurXccUwVswah
162140 2b 78 74 35 34 75 67 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 +xt54ugQEC.7c+WXmPbqOY4twIDAQABo
162160 32 4d 77 59 54 41 66 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 2MwYTAfBgNVHSMEGDAWgBR8cks5x8DbY
162180 71 56 50 6d 36 6f 59 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 qVPm6oYNJKiyoOCWTAPBgNV.HRMBAf8E
1621a0 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 41 64 BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAd
1621c0 42 67 4e 56 48 51 34 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 BgNVHQ4EFgQUfHJLOcfA22KlT5uqGDSS
1621e0 6f 73 71 44 0a 67 6c 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 osqD.glkwDQYJKoZIhvcNAQEFBQADggE
162200 42 41 43 72 44 78 30 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 BACrDx0M3j92tpLIM7twUbY8opJhJywy
162220 41 36 76 50 74 49 32 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 A6vPtI2Z1fcXTIWd5.0XPFtQO3WKwMVC
162240 2f 47 56 68 4d 50 4d 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 /GVhMPMdoG52U7HW8228gd+f2ABsqjPW
162260 59 57 71 4a 31 4d 46 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 YWqJ1MFn3AlUa1UeTiH9fqBk1jjZaM.7
162280 2b 63 7a 56 30 49 36 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 +czV0I664zBechNdn3e9rG3geCg+aF4R
1622a0 68 63 61 56 70 6a 77 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 hcaVpjwTj2rHO3sOdwHSPdj/gauwqRca
1622c0 6c 73 79 69 4d 58 48 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 lsyiMXHM4Ws.ZkJHwlgkmeHlPuV1LI5D
1622e0 31 6c 30 38 65 42 36 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 1l08eB6olYIpUNHRFrrvwb562bTYzB5M
162300 52 75 46 33 73 54 47 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 RuF3sTGrvSrIzo9uoV1/A3U0.5K2JRVR
162320 65 76 71 34 6f 70 62 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 evq4opbs/eHnrc7MKDf2+yfdWrPa37S+
162340 62 49 53 6e 48 4f 4c 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 bISnHOLaVxATywy39FCqQmbkHzJ8=.--
162360 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 69 73 73 63 6f ---END.CERTIFICATE-----..Swissco
162380 6d 20 52 6f 6f 74 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 m.Root.CA.2.==================.-
1623a0 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 32 ----BEGIN.CERTIFICATE-----.MIIF2
1623c0 54 43 43 41 38 47 67 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 TCCA8GgAwIBAgIQHp4o6Ejy5e/DfEoeW
1623e0 68 68 6e 74 6a 41 4e 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 hhntjANBgkqhkiG9w0BAQsFADBkMQswC
162400 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 4d 49 55 33 64 70 QYDVQQG.EwJjaDERMA8GA1UEChMIU3dp
162420 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 6c 30 59 57 77 67 c3Njb20xJTAjBgNVBAsTHERpZ2l0YWwg
162440 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 58 4d 78 47 7a 41 Q2VydGlmaWNhdGUgU2Vy.dmljZXMxGzA
162460 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 33 51 67 51 30 45 ZBgNVBAMTElN3aXNzY29tIFJvb3QgQ0E
162480 67 4d 6a 41 65 46 77 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 gMjAeFw0xMTA2MjQwODM4MTRaFw0zMTA
1624a0 32 0a 4d 6a 55 77 4e 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 2.MjUwNzM4MTRaMGQxCzAJBgNVBAYTAm
1624c0 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 62 54 45 6c 4d 43 NoMREwDwYDVQQKEwhTd2lzc2NvbTElMC
1624e0 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 30 61 57 5a 70 59 MGA1UECxMcRGln.aXRhbCBDZXJ0aWZpY
162500 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 45 41 78 4d 53 55 2F0ZSBTZXJ2aWNlczEbMBkGA1UEAxMSU
162520 33 64 70 63 33 4e 6a 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 3dpc3Njb20gUm9vdCBDQSAyMIIC.IjAN
162540 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 49 43 43 67 4b 43 BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
162560 41 67 45 41 6c 55 4a 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 AgEAlUJOhJ1R5tMJ6HJaI2nbeHCOFvEr
162580 6a 77 30 44 7a 70 50 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 jw0DzpPM.LgAIe6szjPTpQOYXTKueuEc
1625a0 55 4d 6e 63 79 33 53 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 UMncy3SgM3hhLX3af+Dk7/E6J2HzFZ++
1625c0 72 30 72 6b 30 58 32 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 r0rk0X2s682Q2zsKwzxNo.ysjL67XiPS
1625e0 34 68 33 2b 6f 73 31 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 4h3+os1OD5cJZM/2pYmLcX5BtS5X4HAB
162600 31 66 32 75 59 2b 6c 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 1f2uY+lQS3aYg5oUFgJWFLlTloYhyxCw
162620 57 4a 0a 77 44 61 43 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 WJ.wDaCFCE/rtuh/bxvHGCGtlOUSbkrR
162640 73 56 50 41 43 75 2f 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 sVPACu/obvLP+DHVxxX6NZp+MEkUp2IV
162660 64 33 43 68 79 35 30 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 d3Chy50I9AU/SpH.Wrumnf2U5NGKpV+G
162680 59 33 61 46 79 36 2f 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 Y3aFy6//SSj8gO1MedK75MDvAe5QQQg1
1626a0 49 33 41 72 71 52 61 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 I3ArqRa0jG6F6bYRzzHdUyYb3y1a.SgJ
1626c0 41 2f 4d 54 41 74 75 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 A/MTAtukxGggo5WDDH8SQjhBiYEQN7Aq
1626e0 2b 56 52 68 78 4c 4b 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 +VRhxLKX0srwVYv8c474d2h5Xszx+zYI
162700 64 6b 65 4e 4c 36 79 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 dkeNL6yxS.NLCK/RJOlrDrcH+eOfdmQr
162720 47 72 72 46 4c 61 64 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 GrrFLadkBXeyq96G4DsguAhYidDMfCd7
162740 43 61 6d 6c 66 30 75 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 Camlf0uPoTXGiTOmekl9Ab.mbeGMktg2
162760 4d 37 76 30 41 78 2f 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 M7v0Ax/lZ9vh0+Hio5fCHyqW/xavqGRn
162780 31 56 39 54 72 41 4c 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 1V9TrALacywlKinh/LTSlDcX3KwFnUey
1627a0 37 51 59 0a 59 70 71 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 7QY.Ypqwpzmqm59m2I2mbJYV4+by+PGD
1627c0 59 6d 79 37 56 65 6c 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 Ymy7Velhk6M99bFXi08jsJvllGov34zf
1627e0 6c 56 45 70 59 4b 45 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 lVEpYKELKeRcVVi3.qPyZ7iVNTA6z00y
162800 50 68 4f 67 70 44 2f 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 PhOgpD/0QVAKFyPnlw4vP5w8CAwEAAaO
162820 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 59 59 77 0a 48 51 BhjCBgzAOBgNVHQ8BAf8EBAMCAYYw.HQ
162840 59 44 56 52 30 68 42 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 YDVR0hBBYwFDASBgdghXQBUwIBBgdghX
162860 51 42 55 77 49 42 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 QBUwIBMBIGA1UdEwEB/wQIMAYBAf8CAQ
162880 63 77 48 51 59 44 56 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 cwHQYDVR0O.BBYEFE0mICKJS9PVpAqhb
1628a0 39 37 69 45 6f 48 46 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 97iEoHF8TwuMB8GA1UdIwQYMBaAFE0mI
1628c0 43 4b 4a 53 39 50 56 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 CKJS9PVpAqhb97iEoHF8Twu.MA0GCSqG
1628e0 53 49 62 33 44 51 45 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 SIb3DQEBCwUAA4ICAQAyCrKkG8t9voJX
162900 69 62 6c 71 66 2f 50 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 iblqf/P0wS4RfbgZPnm3qKhyN2abGu2s
162920 45 7a 73 4f 0a 76 32 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 EzsO.v2LwnN+ee6FTSA5Besogpxcbtnj
162940 73 51 4a 48 7a 51 71 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 sQJHzQq0Qw1zv/2BZf82Fo4s9SBwlAjx
162960 6e 66 66 55 79 36 53 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 nffUy6S8w5X2lejjQ.82YqZh6NM4OKb3
162980 78 75 71 46 70 31 6d 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 xuqFp1mrjX2lhIREeoTPpMSQpKwhI3qE
1629a0 41 4d 77 38 6a 68 30 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 AMw8jh0FcNlzKVxzqfl9NX+Ave5XLz.o
1629c0 39 76 2f 74 64 68 5a 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 9v/tdhZsnPdTSpxsrpJ9csc1fV5yJmz/
1629e0 4d 46 4d 64 4f 4f 30 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 MFMdOO0vSk3FQQoHt5FRnDsr7p4Dooqz
162a00 67 42 35 33 4d 42 66 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 gB53MBfGWcs.a0vvaGgLQ+OswWIJ76bd
162a20 5a 57 47 67 72 34 52 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 ZWGgr4RVSJFSHMYlkSrQwSIjYVmvRRGF
162a40 48 51 45 6b 4e 49 2f 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 HQEkNI/Ps/8XciATwoCqISxx.OQ7Qj1z
162a60 42 30 39 47 4f 49 6e 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 B09GOInJGTB2Wrk9xseEFKZZZ9LuedT3
162a80 50 44 54 63 4e 59 74 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 PDTcNYtsmjGOpI99nBjx8Oto0QuFmtEY
162aa0 45 33 73 61 57 0a 6d 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 E3saW.mA9LSHokMnWRn6z3aOkquVVlzl
162ac0 31 68 30 79 64 77 32 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 1h0ydw2Df+n7mvoC5Wt6NlUe07qxS/TF
162ae0 45 44 36 46 2b 4b 42 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 ED6F+KBZvuim6c779o.+sjaC+NCydAXF
162b00 4a 79 33 53 75 43 76 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 Jy3SuCvkychVSa1ZC+N8f+mQAWFBVzKB
162b20 78 6c 63 43 78 4d 6f 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 xlcCxMoTFh/wqXvRdpg065lYZ1Tg3TC.
162b40 72 76 4a 63 77 68 62 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 rvJcwhbtkj6EPnNgiLx29CzP0H1907he
162b60 30 5a 45 53 45 4f 6e 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 0ZESEOnN3col49XtmS++dYFLJPlFRpTJ
162b80 4b 53 46 54 6e 43 5a 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 KSFTnCZFqhMX.5OfNeOI5wSsSnqaeG8X
162ba0 6d 44 74 6b 78 32 51 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 mDtkx2Q==.-----END.CERTIFICATE--
162bc0 2d 2d 2d 0a 0a 53 77 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 ---..Swisscom.Root.EV.CA.2.=====
162be0 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
162c00 49 46 49 43 41 54 45 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 IFICATE-----.MIIF4DCCA8igAwIBAgI
162c20 52 41 50 4c 36 5a 4f 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 RAPL6ZOJ0Y9ON/RAdBB92ylgwDQYJKoZ
162c40 49 68 76 63 4e 41 51 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 IhvcNAQELBQAwZzELMAkGA1UE.BhMCY2
162c60 67 78 45 54 41 50 42 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 gxETAPBgNVBAoTCFN3aXNzY29tMSUwIw
162c80 59 44 56 51 51 4c 45 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 YDVQQLExxEaWdpdGFsIENlcnRpZmljYX
162ca0 52 6c 49 46 4e 6c 0a 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 RlIFNl.cnZpY2VzMR4wHAYDVQQDExVTd
162cc0 32 6c 7a 63 32 4e 76 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 2lzc2NvbSBSb290IEVWIENBIDIwHhcNM
162ce0 54 45 77 4e 6a 49 30 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 TEwNjI0MDk0NTA4WhcN.MzEwNjI1MDg0
162d00 4e 54 41 34 57 6a 42 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 NTA4WjBnMQswCQYDVQQGEwJjaDERMA8G
162d20 41 31 55 45 43 68 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 A1UEChMIU3dpc3Njb20xJTAjBgNVBAsT
162d40 0a 48 45 52 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 56 .HERpZ2l0YWwgQ2VydGlmaWNhdGUgU2V
162d60 79 64 6d 6c 6a 5a 58 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 ydmljZXMxHjAcBgNVBAMTFVN3aXNzY29
162d80 74 49 46 4a 76 62 33 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 tIFJvb3QgRVYg.Q0EgMjCCAiIwDQYJKo
162da0 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 4d ZIhvcNAQEBBQADggIPADCCAgoCggIBAM
162dc0 54 33 48 53 39 58 36 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 T3HS9X6lds93BdY7BxUglgRCgz.o3pOC
162de0 76 72 59 36 6d 79 4c 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 vrY6myLURYaVa5UJsTMRQdBTxB5f3HSe
162e00 6b 34 2f 4f 45 36 7a 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 k4/OE6zAMaVylvNwSqD1ycfMQ4jFrcly
162e20 78 79 30 75 59 41 79 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 xy0uYAy.Xhqdk/HoPGAsp15XGVhRXrws
162e40 56 67 75 34 32 4f 2b 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 Vgu42O+LgrQ8uMIkqBPHoCE2G3pXKSin
162e60 4c 72 39 78 4a 5a 44 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 Lr9xJZDzRINpUKTk4Rti.GZQJo/PDvO/
162e80 30 76 65 7a 62 45 35 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 0vezbE53PnUgJUmfANykRHvvSEaeFGHR
162ea0 35 35 45 2b 46 46 4f 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 55E+FFOtSN+KxRdjMDUN/rhPSays/p8L
162ec0 69 0a 71 47 31 32 57 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 i.qG12W0OfvrSdsyaGOx9/5fLoZigWJd
162ee0 42 4c 6c 7a 69 6e 35 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 BLlzin5M8J0TbDC77aO0RYjb7xnglrPv
162f00 4d 79 78 79 75 48 78 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 MyxyuHxuxenPaH.Za0zKcQvidm5y8kDn
162f20 66 74 73 6c 46 47 58 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 ftslFGXEBuGCxobP/YCfnvUxVFkKJ310
162f40 36 79 44 67 59 6a 54 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 6yDgYjTdLRZncHrYTNaRdHLOdAG.alNg
162f60 48 61 2f 32 2b 32 6d 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 Ha/2+2m8atwBz735j9m9W8E6X47aD0up
162f80 6d 35 30 71 4b 47 73 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 m50qKGsaCnw8qyIL5XctcfaCNYGu+HuB
162fa0 35 75 72 2b 72 50 51 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 5ur+rPQa.m3Rc6I8k9l2dRsQs0h4rIWq
162fc0 44 4a 32 64 56 53 71 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 DJ2dVSqTjyDKXZpBy2uPUZC5f46Fq9mD
162fe0 55 35 7a 58 4e 79 73 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 U5zXNysRojddxyNMkM3Ox.bPlq4SjbX8
163000 59 39 36 4c 35 56 35 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 Y96L5V5jcb7STZDxmPX2MYWFCBUWVv8p
163020 39 2b 61 67 54 6e 4e 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 9+agTnNCRxunZLWB4ZvRVgRaoMEkABnR
163040 44 69 0a 78 7a 67 48 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 Di.xzgHcgplwLa7JSnaFp6LNYth7eVxV
163060 34 4f 31 50 48 47 66 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 4O1PHGf40+/fh6Bn0GXAgMBAAGjgYYwg
163080 59 4d 77 44 67 59 44 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 YMwDgYDVR0PAQH/.BAQDAgGGMB0GA1Ud
1630a0 49 51 51 57 4d 42 51 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 IQQWMBQwEgYHYIV0AVMCAgYHYIV0AVMC
1630c0 41 6a 41 53 42 67 4e 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 AjASBgNVHRMBAf8ECDAGAQH/AgED.MB0
1630e0 47 41 31 55 64 44 67 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 GA1UdDgQWBBRF2aWBbj2ITY1x0kbBbkU
163100 65 38 38 53 41 6e 54 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 e88SAnTAfBgNVHSMEGDAWgBRF2aWBbj2
163120 49 54 59 31 78 30 6b 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 ITY1x0kbB.bkUe88SAnTANBgkqhkiG9w
163140 30 42 41 51 73 46 41 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 0BAQsFAAOCAgEAlDpzBp9SSzBc1P6xXC
163160 58 35 31 34 35 76 39 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 X5145v9Ydkn+0UjrgEjihL.j6p7jjm02
163180 56 6a 32 65 36 45 31 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 Vj2e6E1CqGdivdj5eu9OYLU43otb98TP
1631a0 4c 72 2b 66 6c 61 59 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 Lr+flaYC/NUn81ETm484T4VvwYmneTwk
1631c0 4c 62 55 0a 77 70 34 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 LbU.wp4wLh/vx3rEUMfqe9pQy3omywC0
1631e0 57 71 75 31 6b 78 2b 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 Wqu1kx+AiYQElY2NfwmTv9SoqORjbdlk
163200 35 4c 67 70 57 67 69 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 5LgpWgi/UOGED1V7.XwgiG/W9mR4U9s7
163220 30 57 42 43 43 73 77 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 0WBCCswo9GcG/W6uqmdjyMb3lOGbcWAX
163240 48 37 57 4d 61 4c 67 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 H7WMaLgqXfIeTK7KK4/HsGOV1timH.59
163260 79 4c 47 6e 36 30 32 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 yLGn602MnTihdsfSlEvoqq9X46Lmgxk7
163280 6c 71 32 70 72 67 32 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 lq2prg2+kupYTNHAq4Sgj5nPFhJpiTt3
1632a0 74 6d 37 4a 46 65 33 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 tm7JFe3VE/.23MPrQRYCd0EApUKPtN23
1632c0 36 59 51 48 6f 41 39 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 6YQHoA96M2kZNEzx5LH4k5E4wnJTsJdh
1632e0 77 34 53 6e 72 38 50 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 w4Snr8PyQUQ3nqjsTzyP6Wq.J3mtMX0f
163300 2f 66 77 5a 61 63 58 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 /fwZacXduT98zca0wjAefm6S139hdlqP
163320 36 35 56 4e 76 42 46 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 65VNvBFuIXxZN5nQBrz5Bm0yFqXZaajh
163340 33 44 79 41 0a 48 6d 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 3DyA.HmBR3NdUIR7KYndP+tiPsys6DXh
163360 79 79 57 68 42 57 6b 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 yyWhBWkdKwqPrGtcKqzwyVcgKEZzfdNb
163380 77 51 42 55 64 79 4c 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 wQBUdyLmPtTbFr/gi.uMod89a2GQ+fYW
1633a0 56 71 36 6e 54 49 66 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 Vq6nTIfI/DT11lgh/ZDYnadXL77/FHZx
1633c0 4f 7a 79 4e 45 5a 69 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 OzyNEZiCcmmpl5fx7kLD977vHeTYuW.l
1633e0 38 50 56 50 33 77 62 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 8PVP3wbI+2ksx0WckNLIOFZfsLorSa/o
163400 76 63 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 vc=.-----END.CERTIFICATE-----..C
163420 41 20 44 69 73 69 67 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 A.Disig.Root.R1.================
163440 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
163460 46 61 54 43 43 41 31 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 FaTCCA1GgAwIBAgIJAMMDmu5QkG4oMA0
163480 47 43 53 71 47 53 49 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 GCSqGSIb3DQEBBQUAMFIxCzAJBgNVBAY
1634a0 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 30 61 58 4e 73 59 58 TAlNLMRMw.EQYDVQQHEwpCcmF0aXNsYX
1634c0 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 68 4c 6e 4d 75 4d 52 ZhMRMwEQYDVQQKEwpEaXNpZyBhLnMuMR
1634e0 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 42 53 62 32 39 30 49 kwFwYDVQQDExBDQSBEaXNp.ZyBSb290I
163500 46 49 78 4d 42 34 58 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 FIxMB4XDTEyMDcxOTA5MDY1NloXDTQyM
163520 44 63 78 4f 54 41 35 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 DcxOTA5MDY1NlowUjELMAkGA1UEBhMCU
163540 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 32 78 68 64 6d 45 78 0sx.EzARBgNVBAcTCkJyYXRpc2xhdmEx
163560 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 79 34 78 47 54 41 58 EzARBgNVBAoTCkRpc2lnIGEucy4xGTAX
163580 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 62 33 51 67 55 6a 45 BgNVBAMTEENBIERp.c2lnIFJvb3QgUjE
1635a0 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 44 77 41 wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwA
1635c0 77 67 67 49 4b 41 6f 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 wggIKAoICAQCqw3j33Jijp1pedxiy.3Q
1635e0 52 6b 44 32 50 39 6d 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 RkD2P9m5YJgNXoqqXinCaUOuiZc4yd39
163600 66 66 67 2f 4e 34 54 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 ffg/N4T0Dhf9Kn0uXKE5Pn7cZ3Xza1lK
163620 2f 6f 4f 49 37 62 6d 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 /oOI7bm+V8.u8yN63Vz4STN5qctGS7Y1
163640 6f 70 72 46 4f 73 49 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 oprFOsIYgrY3LMATcMjfF9DCCMyEtztD
163660 4b 33 41 66 51 2b 6c 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 K3AfQ+lekLZWnDZv6fXARz2.m6uOt0qG
163680 65 4b 41 65 56 6a 47 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 eKAeVjGu74IKgEH3G8muqzIm1Cxr7X1r
1636a0 35 4f 4a 65 49 67 70 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 5OJeIgpFy4QxTaz+29FHuvlglzmxZcfe
1636c0 2b 35 6e 6b 0a 43 69 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 +5nk.CiKxLU3lSCZpq+Kq8/v8kiky6bM
1636e0 2b 54 52 38 6e 6f 63 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 +TR8noc2OuRf7JT7JbvN32g0S9l3HuzY
163700 51 31 56 54 57 38 2b 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 Q1VTW8+DiR0jm3hTa.YVKvJrT1cU/J19
163720 49 47 33 32 50 4b 2f 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 IG32PK/yHoWQbgCNWEFVP3Q+V8xaCJmG
163740 74 7a 78 6d 6a 4f 5a 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 tzxmjOZd69fwX3se72V6FglcXM6pM6.v
163760 70 6d 75 6d 77 4b 6a 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 pmumwKjrckWtc7dXpl4fho5frLABaTAg
163780 71 57 6a 52 35 36 4d 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 qWjR56M6ly2vGfb5ipN0gTco65F97yLn
1637a0 42 79 6e 31 74 55 44 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 Byn1tUD3AjL.LhbKXEAz6GfDLuemROoR
1637c0 52 52 77 31 5a 53 30 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 RRw1ZS0eRWEkG4IupZ0zXWX4Qfkuy5Q/
1637e0 48 36 4d 4d 4d 53 52 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 H6MMMSRE7cderVC6xkGbrPAX.ZcD4XW9
163800 62 6f 41 6f 30 50 4f 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 boAo0PO7X6oifmPmvTiT6l7Jkdtqr9O3
163820 6a 77 32 44 76 31 66 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 jw2Dv1fkCyC2fg69naQanMVXVz0tv/wQ
163840 46 78 31 69 73 0a 58 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 Fx1is.XxYb5dKj6zHbHzMVTdDypVP1y+
163860 45 39 54 6d 67 74 32 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 E9Tmgt2BLdqvLmTZtJ5cUoobqwWsagtQ
163880 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 38 45 42 54 41 44 41 IDAQABo0IwQDAPBgNV.HRMBAf8EBTADA
1638a0 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 41 64 42 67 4e 56 48 QH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVH
1638c0 51 34 45 46 67 51 55 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 Q4EFgQUiQq0OJMa5qvum5EY+fU8PjXQ.
1638e0 30 34 49 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 4b 4c 04IwDQYJKoZIhvcNAQEFBQADggIBADKL
163900 39 70 31 4b 79 62 34 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 9p1Kyb4U5YysOMo6CdQbzoaz3evUuii+
163920 45 71 35 46 4c 41 52 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 Eq5FLAR0rBNR.xVgYZk2C2tXck8An4b5
163940 38 6e 31 4b 65 45 6c 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 8n1KeElb21Zyp9HWc+jcSjxyT7Ff+Bw+
163960 72 31 52 4c 33 44 36 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 r1RL3D65hXlaASfX8MPWbTx9B.LxyE04
163980 6e 48 34 74 6f 43 64 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 nH4toCdu0Jz2zBuByDHBb6lM19oMgY0s
1639a0 69 64 62 76 57 39 61 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 idbvW9adRtPTXoHqJPYNcHKfyyo6Sdbh
1639c0 57 53 56 68 6c 4d 0a 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 WSVhlM.CrDpfNIZTUJG7L399ldb3Zh+p
1639e0 45 33 4d 63 67 4f 44 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 E3McgODWF3vkzpBemOqfDqo9ayk0d2iL
163a00 62 59 71 2f 4a 38 42 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 bYq/J8BjuIQscTK5Gfb.VSUZP/3oNn6z
163a20 34 65 47 42 72 78 45 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 4eGBrxEWi1CXYBmCAMBrTXO40RMHPuq2
163a40 4d 55 2f 77 51 70 70 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 MU/wQppt4hF05ZSsjYSVPCGvxdpHyN85
163a60 0a 59 6d 4c 4c 57 31 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 .YmLLW1AL14FABZyb7bq2ix4Eb5YgOe2
163a80 6b 66 53 6e 62 53 4d 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 kfSnbSM6C3NQCjR0EMVrHS/BsYVLXtFH
163aa0 43 67 57 7a 4e 34 66 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 CgWzN4funodKS.ds+xDzdYpPJScWc/DI
163ac0 68 34 67 49 6e 42 79 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 h4gInByLUfkmO+p3qKViwaqKactV2zY9
163ae0 41 54 49 4b 48 72 6b 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 ATIKHrkWzQjX2v3wvkF7mGnjix.lAxYj
163b00 4f 42 56 71 6a 74 6a 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 OBVqjtjbZqJYLhkKpLGN/R+Q0O3c+gB5
163b20 33 2b 58 44 39 66 79 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 3+XD9fyexn9GtePyfqFa3qdnom2piiZk
163b40 34 68 41 39 7a 37 4e 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 4hA9z7N.UaPK6u95RyG1/jLix8NRb76A
163b60 64 50 43 6b 77 7a 72 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 dPCkwzryT+lf3xkK8jsTQ6wxpLPn6/wY
163b80 31 67 47 70 38 79 71 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 1gGp8yqPNg7rtLG8t0zJ.a7+h89n07eL
163ba0 77 34 2b 31 6b 6e 6a 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 w4+1knj0vllJPgFOL.-----END.CERTI
163bc0 46 49 43 41 54 45 2d 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 FICATE-----..CA.Disig.Root.R2.==
163be0 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
163c00 49 43 41 54 45 2d 2d 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 ICATE-----.MIIFaTCCA1GgAwIBAgIJA
163c20 4a 4b 34 69 4e 75 77 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 JK4iNuwisFjMA0GCSqGSIb3DQEBCwUAM
163c40 46 49 78 43 7a 41 4a 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 FIxCzAJBgNVBAYTAlNLMRMw.EQYDVQQH
163c60 45 77 70 43 63 6d 46 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 EwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpE
163c80 61 58 4e 70 5a 79 42 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 aXNpZyBhLnMuMRkwFwYDVQQDExBDQSBE
163ca0 61 58 4e 70 0a 5a 79 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 aXNp.ZyBSb290IFIyMB4XDTEyMDcxOTA
163cc0 35 4d 54 55 7a 4d 46 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 5MTUzMFoXDTQyMDcxOTA5MTUzMFowUjE
163ce0 4c 4d 41 6b 47 41 31 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 LMAkGA1UEBhMCU0sx.EzARBgNVBAcTCk
163d00 4a 79 59 58 52 70 63 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 JyYXRpc2xhdmExEzARBgNVBAoTCkRpc2
163d20 6c 6e 49 47 45 75 63 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 lnIGEucy4xGTAXBgNVBAMTEENBIERp.c
163d40 32 6c 6e 49 46 4a 76 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 2lnIFJvb3QgUjIwggIiMA0GCSqGSIb3D
163d60 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 69 6f 38 51 41 43 QEBAQUAA4ICDwAwggIKAoICAQCio8QAC
163d80 64 61 46 58 53 31 74 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 daFXS1tFPbC.w3OeNcJxVX6B+6tGUODB
163da0 66 45 6c 34 35 71 74 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 fEl45qt5WDza/3wcn9iXAng+a0EE6UG9
163dc0 76 67 4d 73 52 66 59 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 vgMsRfYvZNSrXaNHPWSb6Wia.xswbP7q
163de0 2b 73 6f 73 30 41 69 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 +sos0Ai6YVRn8jG+qX9pMzk0DIaPY0jS
163e00 54 56 70 62 4c 54 41 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 TVpbLTAwAFjxfGs3Ix2ymrdMxp7zo5eF
163e20 6d 31 74 4c 37 0a 41 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 m1tL7.A7RBZckQrg4FY8aAamkw/dLukO
163e40 38 4e 4a 39 2b 66 6c 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 8NJ9+flXP04SXabBbeQTg06ov80egEFG
163e60 45 74 51 58 36 73 78 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 EtQX6sx3dOy1FU+16S.GBsEWmjGycT6t
163e80 78 4f 67 6d 4c 63 52 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 xOgmLcRK7fWV8x8nhfRyyX+hk4kLlYMe
163ea0 45 32 65 41 52 4b 6d 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 E2eARKmK6cBZW58Yh2EhN/qwGu1pSqV.
163ec0 67 38 4e 54 45 51 78 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 g8NTEQxzHQuyRpDRQjrOQG6Vrf/GlK1u
163ee0 6c 34 53 4f 66 57 2b 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 l4SOfW+eioANSW1z4nuSHsPzwfPrLgVv
163f00 32 52 76 50 4e 33 59 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 2RvPN3YEyLRa.5Beny912H9AZdugsBbP
163f20 57 6e 44 54 59 6c 74 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 WnDTYltxhh5EF5EQIM8HauQhl1K6yNg3
163f40 72 75 6a 69 36 44 4f 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 ruji6DOWbnuuNZt2Zz9aJQfYE.koopKW
163f60 31 72 4f 68 7a 6e 64 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 1rOhzndX0CcQ7zwOe9yxndnWCywmZgtr
163f80 45 45 37 73 6e 6d 68 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 EE7snmhrmaZkCo5xHtgUUDi/ZnWejBBh
163fa0 47 39 33 63 2b 41 0a 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 G93c+A.Ak9lQHhcR1DIm+YfgXvkRKhbh
163fc0 5a 72 69 33 6c 72 56 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 Zri3lrVx/k6RGZL5DJUfORsnLMOPReis
163fe0 6a 51 53 31 6e 36 79 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 jQS1n6yqEm70XooQL6i.Fh/f5DcfEXP7
164000 6b 41 70 6c 51 36 49 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 kAplQ6INfPgGAVUzfbANuPT1rqVCV3w2
164020 45 59 78 37 58 73 51 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 EYx7XsQDnYx5nQIDAQABo0IwQDAPBgNV
164040 0a 48 52 4d 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 2f 77 51 .HRMBAf8EBTADAQH/MA4GA1UdDwEB/wQ
164060 45 41 77 49 42 42 6a 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 EAwIBBjAdBgNVHQ4EFgQUtZn4r7CU9eM
164080 67 31 67 71 74 7a 6b 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 g1gqtzk5WpC5u.Qu0wDQYJKoZIhvcNAQ
1640a0 45 4c 42 51 41 44 67 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 ELBQADggIBACYGXnDnZTPIgm7ZnBc6G3
1640c0 70 6d 73 67 48 32 65 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 pmsgH2eDtpXi/q/075KMOYKmFM.tCQSi
1640e0 6e 31 74 45 52 54 33 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 n1tERT3nLXK5ryeJ45MGcipvXrA1zYOb
164100 59 56 79 62 71 6a 47 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 YVybqjGom32+nNjf7xueQgcnYqfGopTp
164120 74 69 37 32 54 56 56 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 ti72TVV.sRHFqQOzVju5hJMiXn7B9hJS
164140 69 2b 6f 73 5a 37 7a 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 i+osZ7z+Nkz1uM/Rs0mSO9MpDpkblvdh
164160 75 44 76 45 4b 37 5a 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 uDvEK7Z4bLQjb/D907Je.dR+Zlais9tr
164180 68 78 54 46 37 2b 39 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 hxTF7+9FGs9K8Z7RiVLoJ92Owk6Ka+el
1641a0 53 4c 6f 74 67 45 71 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 SLotgEqv89WBW7xBci8QaQtyDW2QOy7W
1641c0 38 0a 31 6b 2f 42 66 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 8.1k/BfDxujRNt+3vrMNDcTa/F1balTF
1641e0 74 78 79 65 67 78 76 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 txyegxvug4BkihGuLq0t4SOVga/4AOgn
164200 58 6d 74 38 6b 48 62 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 Xmt8kHbA7v/zjx.mHHEt38OFdAlab0in
164220 53 76 74 42 66 5a 47 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 SvtBfZGR6ztwPDUO+Ls7pZbkBNOHlY66
164240 37 44 76 6c 72 75 57 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 7DvlruWIxG68kOGdGSVyCh13x01.utI3
164260 67 7a 68 54 4f 44 59 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 gzhTODY7z2zp+WsO0PsE6E9312UBeIYM
164280 65 6a 34 68 59 76 46 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 ej4hYvF/Y3EMyZ9E26gnonW+boE+18Dr
1642a0 47 35 67 50 63 46 77 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 G5gPcFw0.sorMwIUY6256s/daoQe/qUK
1642c0 53 38 32 41 69 6c 2b 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 S82Ail+QUoQebTnbAjn39pCXHR+3/H3O
1642e0 73 7a 4d 4f 6c 36 57 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 szMOl6W8KjptlwlCFtaOg.UxLMVYdh84
164300 47 75 45 45 5a 68 76 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 GuEEZhvUQhuMI9dM9+JDX6HAcOmz0iyu
164320 38 78 4c 34 79 73 45 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 8xL4ysEr3vQCj8KWefshNPZiTEUxnpHi
164340 6b 56 0a 37 2b 5a 74 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 kV.7+ZtsH8tZ/3zbBt1RqPlShfppNcL.
164360 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 43 43 56 52 -----END.CERTIFICATE-----..ACCVR
164380 41 49 5a 31 0a 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 AIZ1.=========.-----BEGIN.CERTIF
1643a0 49 43 41 54 45 2d 2d 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 ICATE-----.MIIH0zCCBbugAwIBAgIIX
1643c0 73 4f 33 70 6b 4e 2f 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 sO3pkN/pOAwDQYJKoZIhvcNAQEFBQAwQ
1643e0 6a 45 53 4d 42 41 47 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 jESMBAGA1UEAwwJQUNDVlJB.SVoxMRAw
164400 44 67 59 44 56 51 51 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 DgYDVQQLDAdQS0lBQ0NWMQ0wCwYDVQQK
164420 44 41 52 42 51 30 4e 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 DARBQ0NWMQswCQYDVQQGEwJFUzAeFw0x
164440 4d 54 41 31 0a 4d 44 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 MTA1.MDUwOTM3MzdaFw0zMDEyMzEwOTM
164460 33 4d 7a 64 61 4d 45 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 3MzdaMEIxEjAQBgNVBAMMCUFDQ1ZSQUl
164480 61 4d 54 45 51 4d 41 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 aMTEQMA4GA1UECwwH.UEtJQUNDVjENMA
1644a0 73 47 41 31 55 45 43 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 sGA1UECgwEQUNDVjELMAkGA1UEBhMCRV
1644c0 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 34 49 43 0a 44 MwggIiMA0GCSqGSIb3DQEBAQUAA4IC.D
1644e0 77 41 77 67 67 49 4b 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 wAwggIKAoICAQCbqau/YUqXry+XZpp0X
164500 39 44 5a 6c 76 33 50 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 9DZlv3P4uRm7x8fRzPCRKPfmt4ftVTdF
164520 58 78 70 4e 52 46 76 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 XxpNRFvu8gM.jmoYHtiP2Ra8EEg2XPBj
164540 73 35 42 61 58 43 51 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 s5BaXCQ316PWywlxufEBcoSwfdtNgM38
164560 30 32 2f 4a 2b 4e 71 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 02/J+Nq2DoLSRYWoG2ioPej0.RGy9ocL
164580 4c 41 37 36 4d 50 68 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 LA76MPhMAhN9KSMDjIgro6TenGEyxCQ0
1645a0 6a 56 6e 38 45 54 64 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 jVn8ETdkXhBilyNpAlHPrzg5XPAOBOp0
1645c0 4b 6f 56 64 44 0a 61 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 KoVdD.aaxXbXmQeOW1tDvYvEyNKKGno6
1645e0 65 36 41 6b 34 6c 30 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 e6Ak4l0Squ7a4DIrhrIA8wKFSVf+Duzg
164600 70 6d 6e 64 46 41 4c 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 pmndFALW4ir50awQUZ.0m/A8p/4e7MCQ
164620 76 74 51 71 52 30 74 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 vtQqR0tkw8jq8bBD5L/0KIV9VMJcRz/R
164640 52 4f 45 35 69 5a 65 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 ROE5iZe+OCIHAr8Fraocwa48GOEAqDG.
164660 57 75 7a 6e 64 4e 39 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 WuzndN9wrqODJerWx5eHk6fGioozl2A3
164680 45 44 36 58 50 6d 34 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 ED6XPm4pFdahD9GILBKfb6qkxkLrQaLj
1646a0 6c 55 50 54 41 59 56 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 lUPTAYVtjrs7.8yM2x/474KElB0iryYl
1646c0 30 2f 77 69 50 67 4c 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 0/wiPgL/AlmXz7uxLaL2diMMxs0Dx6M/
1646e0 32 4f 4c 75 63 35 4e 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 2OLuc5NF/1OVYm3z61PMOm3WR.5LpSLh
164700 6c 2b 30 66 58 4e 57 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 l+0fXNWhn8ugb2+1KoS5kE3fj5tItQo0
164720 35 69 69 66 43 48 4a 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 5iifCHJPqDQsGH+tUtKSpacXpkatcnYG
164740 4d 4e 32 38 35 4a 0a 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 MN285J.9Y0fkIkyF/hzQ7jSWpOGYdbhd
164760 51 72 71 65 57 5a 32 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 QrqeWZ2iE9x6wQl1gpaepPluUsXQA+xt
164780 72 6e 31 33 6b 2f 63 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 rn13k/c4LOsOxFwYIRK.Q26ZIMApcQrA
1647a0 5a 51 49 44 41 51 41 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 ZQIDAQABo4ICyzCCAscwfQYIKwYBBQUH
1647c0 41 51 45 45 63 54 42 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 AQEEcTBvMEwGCCsGAQUFBzAChkBodHRw
1647e0 0a 4f 69 38 76 64 33 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 .Oi8vd3d3LmFjY3YuZXMvZmlsZWFkbWl
164800 75 4c 30 46 79 59 32 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 uL0FyY2hpdm9zL2NlcnRpZmljYWRvcy9
164820 79 59 57 6c 36 59 57 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 yYWl6YWNjdjEu.Y3J0MB8GCCsGAQUFBz
164840 41 42 68 68 4e 6f 64 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 ABhhNodHRwOi8vb2NzcC5hY2N2LmVzMB
164860 30 47 41 31 55 64 44 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 0GA1UdDgQWBBTSh7Tj3zcnk1X2.VuqB5
164880 54 62 4d 6a 42 34 2f 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 TbMjB4/vTAPBgNVHRMBAf8EBTADAQH/M
1648a0 42 38 47 41 31 55 64 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 B8GA1UdIwQYMBaAFNKHtOPfNyeTVfZW6
1648c0 6f 48 6c 4e 73 79 4d 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 oHlNsyM.Hj+9MIIBcwYDVR0gBIIBajCC
1648e0 41 57 59 77 67 67 46 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 AWYwggFiBgRVHSAAMIIBWDCCASIGCCsG
164900 41 51 55 46 42 77 49 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 AQUFBwICMIIBFB6CARAA.QQB1AHQAbwB
164920 79 41 47 6b 41 5a 41 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 yAGkAZABhAGQAIABkAGUAIABDAGUAcgB
164940 30 41 47 6b 41 5a 67 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 0AGkAZgBpAGMAYQBjAGkA8wBuACAAUgB
164960 68 0a 41 4f 30 41 65 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 h.AO0AegAgAGQAZQAgAGwAYQAgAEEAQw
164980 42 44 41 46 59 41 49 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 BDAFYAIAAoAEEAZwBlAG4AYwBpAGEAIA
1649a0 42 6b 41 47 55 41 49 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 BkAGUAIABUAGUA.YwBuAG8AbABvAGcA7
1649c0 51 42 68 41 43 41 41 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 QBhACAAeQAgAEMAZQByAHQAaQBmAGkAY
1649e0 77 42 68 41 47 4d 41 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 wBhAGMAaQDzAG4AIABFAGwAZQBj.AHQA
164a00 63 67 44 7a 41 47 34 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 cgDzAG4AaQBjAGEALAAgAEMASQBGACAA
164a20 55 51 41 30 41 44 59 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 UQA0ADYAMAAxADEANQA2AEUAKQAuACAA
164a40 51 77 42 51 41 46 4d 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 QwBQAFMA.IABlAG4AIABoAHQAdABwADo
164a60 41 4c 77 41 76 41 48 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 ALwAvAHcAdwB3AC4AYQBjAGMAdgAuAGU
164a80 41 63 7a 41 77 42 67 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 AczAwBggrBgEFBQcCARYk.aHR0cDovL3
164aa0 64 33 64 79 35 68 59 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 d3dy5hY2N2LmVzL2xlZ2lzbGFjaW9uX2
164ac0 4d 75 61 48 52 74 4d 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 MuaHRtMFUGA1UdHwROMEwwSqBIoEaGRG
164ae0 68 30 0a 64 48 41 36 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 h0.dHA6Ly93d3cuYWNjdi5lcy9maWxlY
164b00 57 52 74 61 57 34 76 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 WRtaW4vQXJjaGl2b3MvY2VydGlmaWNhZ
164b20 47 39 7a 4c 33 4a 68 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 G9zL3JhaXphY2N2.MV9kZXIuY3JsMA4G
164b40 41 31 55 64 44 77 45 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 A1UdDwEB/wQEAwIBBjAXBgNVHREEEDAO
164b60 67 51 78 68 59 32 4e 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 gQxhY2N2QGFjY3YuZXMwDQYJKoZI.hvc
164b80 4e 41 51 45 46 42 51 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 NAQEFBQADggIBAJcxAp/n/UNnSEQU5Cm
164ba0 48 37 55 77 6f 5a 74 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 H7UwoZtCPNdpNYbdKl02125DgBS4Oxnn
164bc0 51 38 70 64 70 44 37 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 Q8pdpD70E.R9m+27Up2pvZrqmZ1dM8MJ
164be0 50 31 6a 61 47 6f 2f 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 P1jaGo/AaNRPTKFpV8M9xii6g3+CfYCS
164c00 30 62 37 38 67 55 4a 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 0b78gUJyCpZET/LtZ1qmxN.YEAZSUNUY
164c20 39 72 69 7a 4c 70 6d 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 9rizLpm5U9EelvZaoErQNV/+QEnWCzI7
164c40 55 69 52 66 44 2b 6d 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 UiRfD+mAM/EKXMRNt6GGT6d7hmKG9Ww7
164c60 59 34 39 0a 6e 43 72 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 Y49.nCrADdg9ZuM8Db3VlFzi4qc1GwQA
164c80 39 6a 39 61 6a 65 70 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 9j9ajepDvV+JHanBsMyZ4k0ACtrJJ1vn
164ca0 45 35 42 63 35 50 55 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 E5Bc5PUzolVt3OAJ.TS+xJlsndQAJxGJ
164cc0 33 4b 51 68 66 6e 6c 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 3KQhfnlmstn6tn1QwIgPBHnFk/vk4CpY
164ce0 59 33 51 49 55 72 43 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 Y3QIUrCPLBhwepH2NDd4nQeit2hW3.sC
164d00 50 64 4b 36 6a 54 32 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 PdK6jT2iWH7ehVRE2I9DZ+hJp4rPcOVk
164d20 6b 4f 31 6a 4d 6c 31 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 kO1jMl1oRQQmwgEh0q1b688nCBpHBgvg
164d40 57 31 6d 35 34 45 52 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 W1m54ERL5h.I6zppSSMEYCUWqKiuUnSw
164d60 64 7a 52 70 2b 30 78 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 dzRp+0xESyeGabu4VXhwOrPDYTkF7eif
164d80 4b 58 65 56 53 55 47 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 KXeVSUG7szAh1xA2syVP1Xg.Nce4hL60
164da0 58 63 31 36 67 77 46 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 Xc16gwFy7ofmXx2utYXGJt/mwZrpHgJH
164dc0 6e 79 71 6f 62 61 6c 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 nyqobalbz+xFd3+YJ5oyXSrjhO7FmGYv
164de0 6c 69 41 64 0a 33 64 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 liAd.3djDJ9ew+f7Zfc3Qn48LFFhRny+
164e00 4c 77 7a 67 74 33 75 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 Lwzgt3uiP1o2HpPVWQxaZLPSkVrQ0uGE
164e20 33 79 63 4a 59 67 42 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 3ycJYgBugl6H8WY3p.EfbRD0tVNEYqi4
164e40 59 37 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 54 57 Y7.-----END.CERTIFICATE-----..TW
164e60 43 41 20 47 6c 6f 62 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 CA.Global.Root.CA.==============
164e80 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----
164ea0 2d 0a 4d 49 49 46 51 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 -.MIIFQTCCAymgAwIBAgICDL4wDQYJKo
164ec0 5a 49 68 76 63 4e 41 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 ZIhvcNAQELBQAwUTELMAkGA1UEBhMCVF
164ee0 63 78 45 6a 41 51 42 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 cxEjAQBgNVBAoT.CVRBSVdBTi1DQTEQM
164f00 41 34 47 41 31 55 45 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 A4GA1UECxMHUm9vdCBDQTEcMBoGA1UEA
164f20 78 4d 54 56 46 64 44 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 xMTVFdDQSBHbG9iYWwgUm9vdCBD.QTAe
164f40 46 77 30 78 4d 6a 41 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 Fw0xMjA2MjcwNjI4MzNaFw0zMDEyMzEx
164f60 4e 54 55 35 4e 54 6c 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 NTU5NTlaMFExCzAJBgNVBAYTAlRXMRIw
164f80 45 41 59 44 56 51 51 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 EAYDVQQK.EwlUQUlXQU4tQ0ExEDAOBgN
164fa0 56 42 41 73 54 42 31 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 VBAsTB1Jvb3QgQ0ExHDAaBgNVBAMTE1R
164fc0 58 51 30 45 67 52 32 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 XQ0EgR2xvYmFsIFJvb3Qg.Q0EwggIiMA
164fe0 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
165000 49 43 41 51 43 77 42 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 ICAQCwBdvI64zEbooh745NnHEKH1Jw7W
165020 32 43 0a 6e 4a 66 46 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 2C.nJfF10xORUnLQEK1EjRsGcJ0pDFfh
165040 51 4b 58 37 45 4d 7a 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 QKX7EMzClPSnIyOt7h52yvVavKOZsTuK
165060 77 45 48 6b 74 53 7a 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 wEHktSz0ALfUPZV.r2YOy+BHYC8rMjk1
165080 55 6a 6f 6f 67 2f 68 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 Ujoog/h7FsYYuGLWRyWRzvAZEk2tY/XT
1650a0 50 33 56 66 4b 66 43 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 P3VfKfChMBwqoJimFb3u/Rk28OKR.Q4/
1650c0 36 79 74 59 51 4a 30 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 6ytYQJ0lM793B8YVwm8rqqFpD/G2Gb3P
1650e0 70 4e 30 57 70 38 44 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 pN0Wp8DbHzIh1HrtsBv+baz4X7GGqcXz
165100 47 48 61 4c 33 53 65 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 GHaL3SekV.tTzWoWH1EfcFbx39Eb7QMA
165120 66 43 4b 62 41 4a 54 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 fCKbAJTibc46KokWofwpFFiFzlmLhxpR
165140 55 5a 79 58 78 31 45 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 UZyXx1EcxwdE8tmx2RRP1W.KKD+u4Zqy
165160 50 70 63 43 31 6a 63 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 PpcC1jcxkt2yKsi2XMPpfRaAok/T54ig
165180 75 36 69 64 46 4d 71 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 u6idFMqPVMnaR1sjjIsZAAmY2E2TqNGt
1651a0 7a 39 39 0a 73 79 32 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 z99.sy2sbZCilaLOz9qC5wc0GZbpuCGq
1651c0 4b 58 36 6d 4f 4c 36 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 KX6mOL6OKUohZnkfs8O1CWfe1tQHRvMq
1651e0 32 75 59 69 4e 32 44 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 2uYiN2DLgbYPoA/p.yJV/v1WRBXrPPRX
165200 41 62 39 34 4a 6c 41 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 Ab94JlAGD1zQbzECl8LibZ9WYkTunhHi
165220 56 4a 71 52 61 43 50 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 VJqRaCPgrdLQABDzfuBSO6N+pjWxn.kj
165240 4d 64 77 4c 66 53 37 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 MdwLfS7JLIvgm/LCkFbwJrnu+8vyq8W8
165260 42 51 6a 30 46 77 63 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 BQj0FwcYeyTbcEqYSjMq+u7msXi7Kx/m
165280 7a 68 6b 49 79 49 71 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 zhkIyIqJdI.zshNy/MGz19qCkKxHh53L
1652a0 34 36 67 35 70 49 4f 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 46g5pIOBvwFItIm4TFRfTLcDwIDAQABo
1652c0 79 4d 77 49 54 41 4f 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 yMwITAOBgNVHQ8BAf8EBAMC.AQYwDwYD
1652e0 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 42 VR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B
165300 41 51 73 46 41 41 4f 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 AQsFAAOCAgEAXzSBdu+WHdXltdkCY4QW
165320 77 61 36 67 0a 63 46 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 wa6g.cFGn90xHNcgL1yg9iXHZqjNB6hQ
165340 62 62 43 45 41 77 47 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 bbCEAwGxCGX6faVsgQt+i0trEfJdLjbD
165360 6f 72 4d 6a 75 70 57 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 orMjupWkEmQqSpqsn.LhpNgb+E1HAerU
165380 66 2b 2f 55 71 64 4d 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 f+/UqdM+DyucRFCCEK2mlpc3INvjT+lI
1653a0 75 74 77 78 34 31 31 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 utwx4116KD7+U4x6WFH6vPNOw/KP4M.8
1653c0 56 65 47 54 73 6c 56 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 VeGTslV9xzU2KV9Bnpv1d8Q34FOIWWxt
1653e0 75 45 58 65 5a 56 46 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 uEXeZVFBs5fzNxGiWNoRI2T9GRwoD2dK
165400 41 58 44 4f 58 43 34 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 AXDOXC4Ynsg./eTb6QihuJ49CcdP+yz4
165420 6b 33 5a 42 33 6c 4c 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 k3ZB3lLg4VfSnQO8d57+nile98FRYB/e
165440 32 67 75 79 4c 58 57 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 2guyLXW3Q0iT5/Z5xoRdgFlg.lPx4mI8
165460 38 6b 31 48 74 51 4a 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 8k1HtQJAH32RjJMtOcQWh15QaiDLxInQ
165480 69 72 71 57 6d 32 42 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 irqWm2BJpTGCjAu4r7NRjkgtevi92a6O
1654a0 32 4a 72 79 50 0a 41 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 2JryP.A9gK8kxkRr05YuWW6zRjESjMlf
1654c0 47 74 37 2b 2f 63 67 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 Gt7+/cgFhI6Uu46mWs6fyAtbXIRfmswZ
1654e0 2f 5a 75 65 70 69 69 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 /ZuepiiI7E8UuDEq3m.i4TWnsLrgxifa
165500 72 73 62 4a 47 41 7a 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 rsbJGAzcMzs9zLzXNl5fe+epP7JI8Mk7
165520 68 57 53 73 54 32 52 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 hWSsT2RTyaGvWZzJBPqpK5jwa19hAM8.
165540 45 48 69 47 47 33 6e 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 EHiGG3njxPPyBJUgriOCxLM6AGK/5jYk
165560 34 56 65 36 78 78 36 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 4Ve6xx6QddVfP5VhK8E7zeWzaGHQRiap
165580 49 56 4a 70 4c 65 73 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 IVJpLesux+t3.zqY6tQMzT3bR51xUAV3
1655a0 4c 65 50 54 4a 44 4c 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 LePTJDL/PEo4XLSNolOer/qmyKwbQBM0
1655c0 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 54 65 6c =.-----END.CERTIFICATE-----..Tel
1655e0 69 61 53 6f 6e 65 72 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 iaSonera.Root.CA.v1.============
165600 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
165620 45 2d 2d 2d 2d 2d 0a 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 E-----.MIIFODCCAyCgAwIBAgIRAJW+F
165640 71 44 33 4c 6b 62 78 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 qD3LkbxezmCcvqLzZYwDQYJKoZIhvcNA
165660 51 45 46 42 51 41 77 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 QEFBQAwNzEUMBIGA1UE.CgwLVGVsaWFT
165680 62 32 35 6c 63 6d 45 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 b25lcmExHzAdBgNVBAMMFlRlbGlhU29u
1656a0 5a 58 4a 68 49 46 4a 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 ZXJhIFJvb3QgQ0EgdjEwHhcNMDcxMDE4
1656c0 0a 4d 54 49 77 4d 44 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 .MTIwMDUwWhcNMzIxMDE4MTIwMDUwWjA
1656e0 33 4d 52 51 77 45 67 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 3MRQwEgYDVQQKDAtUZWxpYVNvbmVyYTE
165700 66 4d 42 30 47 41 31 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 fMB0GA1UEAwwW.VGVsaWFTb25lcmEgUm
165720 39 76 64 43 42 44 51 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 9vdCBDQSB2MTCCAiIwDQYJKoZIhvcNAQ
165740 45 42 42 51 41 44 67 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 EBBQADggIPADCCAgoCggIBAMK+.6yfwI
165760 61 50 7a 61 53 5a 56 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 aPzaSZVfp3FVRaRXP3vIb9TgHot0pGMY
165780 7a 48 77 37 43 54 77 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 zHw7CTww6XScnwQbfQ3t+XmfHnqjLWCi
1657a0 36 35 49 74 71 77 41 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 65ItqwA.3GV17CpNX8GH9SBlK4GoRz6J
1657c0 49 35 55 77 46 70 42 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 I5UwFpB/6FcHSOcZrr9FZ7E3GwYq/t75
1657e0 72 48 32 44 2b 31 36 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 rH2D+1665I+XZ75Ljo1k.B1c4VWk0Nj0
165800 54 53 4f 39 50 34 74 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 TSO9P4tNmHqTPGrdeNjPUtAa9GAH9d4R
165820 51 41 45 58 31 6a 46 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 QAEX1jF3oI7x+/jXh7VB7qTCNGdMJjmh
165840 6e 0a 58 62 38 38 6c 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 n.Xb88lxhTuylixcpecsHHltTbLaC0H2
165860 6b 44 37 4f 72 69 55 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 kD7OriUPEMPPCs81Mt8Bz17Ww5OXOAFs
165880 68 53 73 43 50 4e 34 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 hSsCPN4D7c3TxH.oLs1iuKYaIu+5b9y7
1658a0 74 4c 36 70 65 30 53 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 tL6pe0S7fyYGKkmdtwoSxAgHNN/Fnct7
1658c0 57 2b 41 39 30 6d 37 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 W+A90m7UwW7XWjH1Mh1Fj+JWov3.F0fU
1658e0 54 50 48 53 69 58 6b 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 TPHSiXk+TT2YqGHeOh7S+F4D4MHJHIzT
165900 6a 55 33 54 6c 54 61 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 jU3TlTazN19jY5szFPAtJmtTfImMMsJu
165920 37 44 30 68 41 44 6e 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 7D0hADnJ.oWjiUIMusDor8zagrC/kb2H
165940 43 55 51 6b 35 50 6f 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 CUQk5PotTubtn2txTuXZZNp1D5SDgPTJ
165960 67 68 53 4a 52 74 38 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 ghSJRt8czu90VL6R4pgd7.gUY2BIbdeT
165980 58 48 6c 53 77 37 73 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 XHlSw7sKMXNeVzH7RcWe/a6hBle3rQf5
1659a0 2b 7a 74 43 6f 33 4f 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 +ztCo3O3CLm1u5K7fsslESl1MpWtTwEh
1659c0 44 63 0a 54 77 4b 37 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 Dc.TwK7EpIvYtQ/aUN8Ddb8WHUBiJ1YF
1659e0 6b 76 65 75 70 44 2f 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 kveupD/RwGJBmr2X7KQarMCpgKIv7NHf
165a00 69 72 5a 31 66 70 6f 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 irZ1fpoeDVNAgMB.AAGjPzA9MA8GA1Ud
165a20 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 45 47 EwEB/wQFMAMBAf8wCwYDVR0PBAQDAgEG
165a40 4d 42 30 47 41 31 55 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 MB0GA1UdDgQWBBTwj1k4ALP1j5qW.DNX
165a60 72 2b 6e 75 71 46 2b 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 r+nuqF+gTEjANBgkqhkiG9w0BAQUFAAO
165a80 43 41 67 45 41 76 75 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 CAgEAvuRcYk4k9AwI//DTDGjkk0kiP0Q
165aa0 6e 62 37 74 74 33 6f 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 nb7tt3oNm.zqjMDfz1mgbldxSR651Be5
165ac0 6b 71 68 4f 58 2f 2f 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 kqhOX//CHBXfDkH1e3damhXwIm/9fH90
165ae0 37 65 54 2f 6a 33 48 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 7eT/j3HEbAek9ALCI18Bmx.0GtnLLCo4
165b00 4d 42 41 4e 7a 58 32 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 MBANzX2hFxc469CeP6nyQ1Q6g2EdvZR7
165b20 34 4e 54 78 6e 72 2f 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 4NTxnr/DlZJLo961gzmJ1TjTQpgcmLNk
165b40 51 66 57 0a 70 62 2f 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 QfW.pb/ImWvtxBnmq0wROMVvMeJuScg/
165b60 64 6f 41 6d 41 79 59 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 doAmAyYp4Db29iBT4xdwNBedY2gea+zD
165b80 54 59 61 34 45 7a 41 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 TYa4EzAvXUYNR0PV.G6pZDrlcjQZIrXS
165ba0 48 58 38 66 38 4d 56 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 HX8f8MVRBE+LHIQ6e4B4N4cB7Q4WQxYp
165bc0 59 78 6d 55 4b 65 46 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 YxmUKeFfyxiMPAdkgS94P+5KFdSpc.c4
165be0 31 74 65 79 57 52 79 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 1teyWRyu5FrgZLAMzTsVlQ2jqIOylDRl
165c00 36 58 4b 31 54 4f 55 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 6XK1TOU2+NSueW+r9xDkKLfP0ooNBIyt
165c20 72 45 67 55 79 37 6f 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 rEgUy7onOT.JsjrDNYmiLbAJM+7vVvrd
165c40 58 33 70 43 49 36 47 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 X3pCI6GMyx5dwlppYn8s3CQh3aP0yK7Q
165c60 73 36 39 63 77 73 67 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 s69cwsgJirQmz1wHiRszYd2.qReWt88N
165c80 6b 76 75 4f 47 4b 6d 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 kvuOGKmYSdGe/mBEciG5Ge3C9THxOUiI
165ca0 6b 43 52 31 56 42 61 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 kCR1VBatzvT4aRRkOfujuLpwQMcnHL/E
165cc0 56 6c 50 36 0a 59 32 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 VlP6.Y2XQ8xwOFvVrhlhNGNTkDY6lnVu
165ce0 52 33 48 59 6b 55 44 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 R3HYkUD/GKvvZt5y11ubQ2egZixVxSK2
165d00 33 36 74 68 5a 69 4e 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 36thZiNSQvxaz2ems.WWFUyBy6ysHK4b
165d20 6b 67 54 49 38 36 6b 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 kgTI86k4mloMy/0/Z1pHWWbVY=.-----
165d40 45 4e 44 20 43 45 52 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 END.CERTIFICATE-----..E-Tugra.Ce
165d60 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.==========
165d80 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
165da0 20 43 45 52 54 49 46 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 .CERTIFICATE-----.MIIGSzCCBDOgAw
165dc0 49 42 41 67 49 49 61 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 IBAgIIamg+nFGby1MwDQYJKoZIhvcNAQ
165de0 45 4c 42 51 41 77 67 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 ELBQAwgbIxCzAJBgNVBAYTAlRSMQ8w.D
165e00 51 59 44 56 51 51 48 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 QYDVQQHDAZBbmthcmExQDA+BgNVBAoMN
165e20 30 55 74 56 48 58 45 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 0UtVHXEn3JhIEVCRyBCaWxpxZ9pbSBUZ
165e40 57 74 75 62 32 78 76 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 Wtub2xvamls.ZXJpIHZlIEhpem1ldGxl
165e60 63 6d 6b 67 51 53 37 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 cmkgQS7Fni4xJjAkBgNVBAsMHUUtVHVn
165e80 63 6d 45 67 55 32 56 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 cmEgU2VydGlmaWthc3lvbiBN.ZXJrZXp
165ea0 70 4d 53 67 77 4a 67 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 pMSgwJgYDVQQDDB9FLVR1Z3JhIENlcnR
165ec0 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 4d 42 34 58 44 54 45 pZmljYXRpb24gQXV0aG9yaXR5MB4XDTE
165ee0 7a 4d 44 4d 77 0a 4e 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 zMDMw.NTEyMDk0OFoXDTIzMDMwMzEyMD
165f00 6b 30 4f 46 6f 77 67 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 k0OFowgbIxCzAJBgNVBAYTAlRSMQ8wDQ
165f20 59 44 56 51 51 48 44 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 YDVQQHDAZBbmthcmEx.QDA+BgNVBAoMN
165f40 30 55 74 56 48 58 45 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 0UtVHXEn3JhIEVCRyBCaWxpxZ9pbSBUZ
165f60 57 74 75 62 32 78 76 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 Wtub2xvamlsZXJpIHZlIEhpem1ldGxl.
165f80 63 6d 6b 67 51 53 37 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 cmkgQS7Fni4xJjAkBgNVBAsMHUUtVHVn
165fa0 63 6d 45 67 55 32 56 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 cmEgU2VydGlmaWthc3lvbiBNZXJrZXpp
165fc0 4d 53 67 77 4a 67 59 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 MSgwJgYDVQQD.DB9FLVR1Z3JhIENlcnR
165fe0 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 4d 49 49 43 49 6a 41 pZmljYXRpb24gQXV0aG9yaXR5MIICIjA
166000 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 0a 4d 49 49 43 43 67 NBgkqhkiG9w0BAQEFAAOCAg8A.MIICCg
166020 4b 43 41 67 45 41 34 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 KCAgEA4vU/kwVRHoViVF56C/UYB4Oufq
166040 39 38 39 39 53 4b 61 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 9899SKa6VjQzm5S/fDxmSJPZQuVIBSOT
166060 6b 48 53 30 76 64 0a 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 kHS0vd.hQd2h8y/L5VMzH2nPbxHD5hw+
166080 49 79 46 48 6e 53 4f 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 IyFHnSOkm0bQNGZDbt1bsipa5rAhDGvy
1660a0 6b 50 4c 36 79 73 30 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 kPL6ys06I+XawGb1Q5K.CKpbknSFQ9OA
1660c0 72 71 47 49 57 36 36 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 rqGIW66z6l7LFpp3RMih9lRozt6Plyu6
1660e0 57 30 41 43 44 47 51 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 W0ACDGQXwLWTzeHxE2bODHnv0ZEoq1+g
166100 0a 45 6c 49 77 63 78 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 .ElIwcxmOj+GMB6LDu0rw6h8VqO4lzKR
166120 47 2b 42 73 69 37 37 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 G+Bsi77MOQ7osJLjFLFzUHPhdZL3Dk14
166140 6f 70 7a 38 6e 38 59 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 opz8n8Y4e0ypQ.BaNV2cvnOVPAmJ6MVG
166160 4b 4c 4a 72 44 33 66 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 KLJrD3fY185MaeZkJVgkfnsliNZvcHfC
166180 34 32 35 6c 41 63 50 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 425lAcP9tDJMW/hkd5s3kc91r0.E+xs+
1661a0 44 2f 69 57 52 2b 56 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 D/iWR+V7kI+ua2oMoVJl0b+SzGPWsutd
1661c0 45 63 66 36 5a 47 33 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 Ecf6ZG33ygEIqDUD13ieU/qbIWGvaimz
1661e0 75 54 36 77 2b 47 7a 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 uT6w+Gz.rt48Ue7LE3wBf4QOXVGUnhMM
166200 74 69 36 6c 54 50 6b 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 ti6lTPk5cDZvlsouDERVxcr6XQKj39Zk
166220 6a 46 71 7a 41 51 71 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 jFqzAQqptQpHF//vkUAq.jqFGOjGY5RH
166240 38 7a 4c 74 4a 56 6f 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 8zLtJVor8udBhmm9lbObDyz51Sf6Pp+K
166260 4a 78 57 66 58 6e 55 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 JxWfXnUYTTjF2OySznhFlhqt/7x3U+Lz
166280 6e 0a 72 46 70 63 74 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 n.rFpct1pHXFXOVbQicVtbC/DP3KBhZO
1662a0 71 70 31 32 67 4b 59 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 qp12gKY6fgDT+gr9Oq0n7vUaDmUStVkh
1662c0 55 58 55 38 75 33 5a 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 UXU8u3Zg5mTPj5.dUyQ5xJwx0UCAwEAA
1662e0 61 4e 6a 4d 47 45 77 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 aNjMGEwHQYDVR0OBBYEFC7j27JJ0JxUe
166300 56 7a 36 4a 79 72 2b 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 Vz6Jyr+zE7S6E5UMA8GA1UdEwEB./wQF
166320 4d 41 4d 42 41 66 38 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 MAMBAf8wHwYDVR0jBBgwFoAULuPbsknQ
166340 6e 46 52 35 58 50 6f 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 nFR5XPonKv7MTtLoTlQwDgYDVR0PAQH/
166360 42 41 51 44 41 67 45 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 BAQDAgEG.MA0GCSqGSIb3DQEBCwUAA4I
166380 43 41 51 41 46 4e 7a 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 CAQAFNzr0TbdF4kV1JI+2d1LoHNgQk2X
1663a0 7a 38 6c 6b 47 70 44 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 z8lkGpD4eKexd0dCrfOAK.kEh47U6YA5
1663c0 6e 2b 4b 47 43 52 48 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 n+KGCRHTAduGN8qOY1tfrTYXbm1gdLym
1663e0 6d 61 73 6f 52 36 64 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 masoR6d5NFFxWfJNCYExL/u6Au/U5Mh/
166400 6a 4f 0a 58 4b 71 59 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 jO.XKqYGwXgAEZKgoClM4so3O0409/lP
166420 75 6e 2b 2b 31 6e 64 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 un++1ndYYRP0lSWE2ETPo+Aab6TR7U1Q
166440 39 4a 61 75 7a 31 63 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 9Jauz1c77NCR807.VRMGsAnb/WP2OogK
166460 6d 57 39 2b 34 63 34 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 mW9+4c4bU2pEZiNRCHu8W1Ki/QY3OEBh
166480 6a 30 71 57 75 4a 41 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 j0qWuJA3+GbHeJAAFS6LrVE1Uweo.a2i
1664a0 75 2b 55 34 38 42 79 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 u+U48BybNCAVwzDk/dr2l02cmAYamU9J
1664c0 67 4f 33 78 44 66 31 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 gO3xDf1WKvJUawSg5TB9D0pH0clmKuVb
1664e0 38 50 37 53 64 32 6e 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 8P7Sd2nCc.dlqMQ1DujjByTd//SffGqW
166500 66 5a 62 61 77 43 45 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 fZbawCEeI6FiWnWAjLb1NBnEg4R2gz0d
166520 66 48 6a 39 52 30 49 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 fHj9R0IdTDBZB6/86WiLEV.KV0jq9Bgo
166540 52 4a 50 33 76 51 58 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 RJP3vQXzTLlyb/IQ639Lo7xr+L0mPoSH
166560 79 44 59 77 4b 63 4d 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 yDYwKcMhcWQ9DstliaxLL5Mq+ux0orJ2
166580 33 67 54 0a 44 78 34 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 3gT.Dx4JnW2PAJ8C2sH6H3p6CcRK5ogq
1665a0 6c 35 2b 4a 69 2f 30 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 l5+Ji/03X186zjhZhkuvcQu02PJwT58y
1665c0 45 2b 4f 77 70 31 66 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 E+Owp1fl2tpDy4Q0.8ijE6m30Ku/Ba3b
1665e0 61 2b 33 36 37 68 54 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 a+367hTzSU8JNvnHhRdH9I2cNE3X7z2V
166600 6e 49 70 32 75 73 41 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 nIp2usAnRCf8dNL/+I5c30jn6PQ0G.C7
166620 54 62 4f 36 4f 72 62 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 TbO6Orb1wdtn7os4I07QZcJA==.-----
166640 45 4e 44 20 43 45 52 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 END.CERTIFICATE-----..T-TeleSec.
166660 47 6c 6f 62 61 6c 52 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 GlobalRoot.Class.2.=============
166680 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
1666a0 46 49 43 41 54 45 2d 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 FICATE-----.MIIDwzCCAqugAwIBAgIB
1666c0 41 54 41 4e 42 67 6b 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 ATANBgkqhkiG9w0BAQsFADCBgjELMAkG
1666e0 41 31 55 45 42 68 4d 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 A1UEBhMCREUxKzApBgNVBAoM.IlQtU3l
166700 7a 64 47 56 74 63 79 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 zdGVtcyBFbnRlcnByaXNlIFNlcnZpY2V
166720 7a 49 45 64 74 59 6b 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 zIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGV
166740 74 63 79 42 55 0a 63 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 tcyBU.cnVzdCBDZW50ZXIxJTAjBgNVBA
166760 4d 4d 48 46 51 74 56 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 MMHFQtVGVsZVNlYyBHbG9iYWxSb290IE
166780 4e 73 59 58 4e 7a 49 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 NsYXNzIDIwHhcNMDgx.MDAxMTA0MDE0W
1667a0 68 63 4e 4d 7a 4d 78 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 hcNMzMxMDAxMjM1OTU5WjCBgjELMAkGA
1667c0 31 55 45 42 68 4d 43 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 1UEBhMCREUxKzApBgNVBAoMIlQtU3lz.
1667e0 64 47 56 74 63 79 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 dGVtcyBFbnRlcnByaXNlIFNlcnZpY2Vz
166800 49 45 64 74 59 6b 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 IEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVt
166820 63 79 42 55 63 6e 56 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 cyBUcnVzdCBD.ZW50ZXIxJTAjBgNVBAM
166840 4d 48 46 51 74 56 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 MHFQtVGVsZVNlYyBHbG9iYWxSb290IEN
166860 73 59 58 4e 7a 49 44 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 sYXNzIDIwggEiMA0GCSqGSIb3.DQEBAQ
166880 55 41 41 34 49 42 44 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 UAA4IBDwAwggEKAoIBAQCqX9obX+hzke
1668a0 58 61 58 50 53 69 35 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 XaXPSi5kfl82hVYAUdAqSzm1nzHoqvNK
1668c0 33 38 44 63 4c 5a 0a 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 38DcLZ.SBnuaY/JIPwhqgcZ7bBcrGXHX
1668e0 2b 30 43 66 48 74 38 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 +0CfHt8LRvWurmAwhiCFoT6ZrAIxlQjg
166900 65 54 4e 75 55 6b 2f 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 eTNuUk/9k9uN0goOA/F.vudocP05l03S
166920 78 35 69 52 55 4b 72 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 x5iRUKrERLMjfTlH6VJi1hKTXrcxlkIF
166940 2b 33 61 6e 48 71 50 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 +3anHqP1wvzpesVsqXFP6st4vGCvx970
166960 0a 32 63 75 2b 66 6a 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 .2cu+fjOlbpSD8DT6IavqjnKgP6TeMFv
166980 76 68 6b 31 71 6c 56 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 vhk1qlVtDRKgQFRzlAVfFmPHmBiiRqiD
1669a0 46 74 31 4d 6d 55 55 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 Ft1MmUUOyCxGV.WOHAD3bZwI18gfNycJ
1669c0 35 76 2f 68 71 4f 32 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 5v/hqO2V81xrJvNHy+SE/iWjnX2J14np
1669e0 2b 47 50 67 4e 65 47 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 +GPgNeGYtEotXHAgMBAAGjQjBA.MA8GA
166a00 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 48 2f 42 1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/B
166a20 41 51 44 41 67 45 47 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 AQDAgEGMB0GA1UdDgQWBBS/WSA2AHmgo
166a40 43 4a 72 6a 4e 58 79 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 CJrjNXy.YdK4LMuCSjANBgkqhkiG9w0B
166a60 41 51 73 46 41 41 4f 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 AQsFAAOCAQEAMQOiYQsfdOhyNsZt+U2e
166a80 2b 69 4b 6f 34 59 46 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 +iKo4YFWz827n+qrkRk4.r6p8FU3ztqO
166aa0 4e 70 66 53 4f 39 6b 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 NpfSO9kSpp+ghla0+AGIWiPACuvxhI+Y
166ac0 7a 6d 7a 42 36 61 7a 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 zmzB6azZie60EI4RYZeLbK4rnJVM3YlN
166ae0 66 0a 76 4e 6f 42 59 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 f.vNoBYimipidx5joifsFvHZVwIEoHNN
166b00 2f 71 2f 78 57 41 35 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 /q/xWA5brXethbdXwFeilHfkCoMRN3zU
166b20 41 37 74 46 46 48 65 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 A7tFFHei4R40cR.3p1m0IvVVGb6g1Xqf
166b40 4d 49 70 69 52 76 70 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 MIpiRvpb7PO4gWEyS8+eIVibslfwXhjd
166b60 46 6a 41 53 42 67 4d 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 FjASBgMmTnrpMwatXlajRWc2BQN.9noH
166b80 56 38 63 69 67 77 55 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 V8cigwUtPJslJj0Ys6lDfMjIq2SPDqO/
166ba0 6e 42 75 64 4d 4e 76 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 nBudMNva0Bkuqjzx+zOAduTNrRlPBSeO
166bc0 45 36 46 75 77 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 E6Fuwg==.-----END.CERTIFICATE---
166be0 2d 2d 0a 0a 41 74 6f 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 --..Atos.TrustedRoot.2011.======
166c00 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
166c20 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 49 42 41 67 49 49 FICATE-----.MIIDdzCCAl+gAwIBAgII
166c40 58 44 50 4c 59 69 78 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 XDPLYixfszIwDQYJKoZIhvcNAQELBQAw
166c60 50 44 45 65 4d 42 77 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 PDEeMBwGA1UEAwwVQXRvcyBU.cnVzdGV
166c80 6b 55 6d 39 76 64 43 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 kUm9vdCAyMDExMQ0wCwYDVQQKDARBdG9
166ca0 7a 4d 51 73 77 43 51 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 zMQswCQYDVQQGEwJERTAeFw0xMTA3MDc
166cc0 78 4e 44 55 34 0a 4d 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 xNDU4.MzBaFw0zMDEyMzEyMzU5NTlaMD
166ce0 77 78 48 6a 41 63 42 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 wxHjAcBgNVBAMMFUF0b3MgVHJ1c3RlZF
166d00 4a 76 62 33 51 67 4d 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 Jvb3QgMjAxMTENMAsG.A1UECgwEQXRvc
166d20 7a 45 4c 4d 41 6b 47 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 zELMAkGA1UEBhMCREUwggEiMA0GCSqGS
166d40 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 43 56 0a Ib3DQEBAQUAA4IBDwAwggEKAoIBAQCV.
166d60 68 54 75 58 62 79 6f 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 hTuXbyo7LjvPpvMpNb7PGKw+qtn4TaA+
166d80 47 6b 65 35 76 4a 72 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 Gke5vJrf8v7MPkfoepbCJI419KkM/IL9
166da0 62 63 46 79 59 69 65 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 bcFyYie96mvr.54rMVD6QUM+A1JX76LW
166dc0 43 31 42 54 46 74 71 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 C1BTFtqlVJVfbsVD2sGBkWXppzwO3bw2
166de0 2b 79 6a 35 76 64 48 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 +yj5vdHLqqjAqc2K+SZFhyBH+.DgMq92
166e00 6f 67 33 41 49 56 44 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 og3AIVDV4VavzjgsG1xZ1kCWyjWZgHJ8
166e20 63 62 6c 69 74 68 64 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 cblithdHFsQ/H3NYkQ4J7sVaE3IqKHBA
166e40 55 73 52 33 32 30 0a 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 UsR320.HLliKWYoyrfhk/WklAOZuXCFt
166e60 65 5a 49 36 6f 31 51 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 eZI6o1Q/NnezG8HDt0Lcp2AMBYHlT8oD
166e80 76 33 46 64 55 39 54 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 v3FdU9T1nSatCQujgKR.z3bFmx5VdJx4
166ea0 49 62 48 77 4c 66 45 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 IbHwLfELn8LVlhgf8FQieowHAgMBAAGj
166ec0 66 54 42 37 4d 42 30 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 fTB7MB0GA1UdDgQWBBSnpQaxLKYJYO7R
166ee0 0a 6c 2b 6c 77 72 72 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 .l+lwrrw7GWzbITAPBgNVHRMBAf8EBTA
166f00 44 41 51 48 2f 4d 42 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 DAQH/MB8GA1UdIwQYMBaAFKelBrEspgl
166f20 67 37 74 47 58 36 58 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 g7tGX6XCuvDsZ.bNshMBgGA1UdIAQRMA
166f40 38 77 44 51 59 4c 4b 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 8wDQYLKwYBBAGwLQMEAQEwDgYDVR0PAQ
166f60 48 2f 42 41 51 44 41 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 H/BAQDAgGGMA0GCSqGSIb3DQEB.CwUAA
166f80 34 49 42 41 51 41 6d 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 4IBAQAmdzTblEiGKkGdLD4GkGDEjKwLV
166fa0 4c 67 66 75 58 76 54 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 LgfuXvTBznk+j57sj1O7Z8jvZfza1zv7
166fc0 76 31 41 70 74 2b 68 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 v1Apt+h.k6EKhqzvINB5Ab149xnYJDE0
166fe0 42 41 47 6d 75 68 57 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 BAGmuhWawyfc2E8PzBhj/5kPDpFrdRbh
167000 49 66 7a 59 4a 73 64 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 IfzYJsdHt6bPWHJxfrrh.TZVHO8mvbaG
167020 30 77 65 79 4a 39 72 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 0weyJ9rQPOLXiZNwlz6bb65pcmaHFCN7
167040 39 35 74 72 56 31 6c 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 95trV1lpFDMS3wrUU77QR/w4VtfX128a
167060 39 0a 36 31 71 6e 38 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 9.61qn8FYiqTxlVMYVqL2Gns2Dlmh6cY
167080 47 4a 34 51 76 68 36 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 GJ4Qvh6hEbaAjMaZ7snkGeRDImeuKHCn
1670a0 45 39 36 2b 52 61 70 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 E96+RapNLbxc3G.3mB/ufNPRJLvKrcYP
1670c0 71 63 5a 32 51 74 39 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 qcZ2Qt9sTdBQrC6YB3y/gkRsPCHe6ed.
1670e0 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 51 75 6f 56 61 -----END.CERTIFICATE-----..QuoVa
167100 64 69 73 20 52 6f 6f 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 dis.Root.CA.1.G3.===============
167120 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---
167140 2d 2d 0a 4d 49 49 46 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 --.MIIFYDCCA0igAwIBAgIUeFhfLq0sG
167160 55 76 6a 4e 77 63 31 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 UvjNwc1NBMotZbUZZMwDQYJKoZIhvcNA
167180 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 78 47 54 41 58 QELBQAwSDELMAkG.A1UEBhMCQk0xGTAX
1671a0 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 30 5a 57 51 78 BgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQx
1671c0 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 76 0a 62 33 51 HjAcBgNVBAMTFVF1b1ZhZGlzIFJv.b3Q
1671e0 67 51 30 45 67 4d 53 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 gQ0EgMSBHMzAeFw0xMjAxMTIxNzI3NDR
167200 61 46 77 30 30 4d 6a 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 aFw00MjAxMTIxNzI3NDRaMEgxCzAJBgN
167220 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 57 39 57 59 57 VBAYTAkJN.MRkwFwYDVQQKExBRdW9WYW
167240 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 78 56 52 64 57 RpcyBMaW1pdGVkMR4wHAYDVQQDExVRdW
167260 39 57 59 57 52 70 63 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 9WYWRpcyBSb290IENBIDEg.RzMwggIiM
167280 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 67 49 4b 41 A0GCSqGSIb3DQEBAQUAA4ICDwAwggIKA
1672a0 6f 49 43 41 51 43 67 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 oICAQCgvlAQjunybEC0BJyFuTHK3C3kE
1672c0 61 6b 45 0a 50 42 74 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 akE.PBtVwedYMB0ktMPvhd6MLOHBPd+C
1672e0 35 6b 2b 74 52 34 64 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 5k+tR4ds7FtJwUrVu4/sh6x/gpqG7D0D
167300 6d 56 49 42 30 6a 57 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 mVIB0jWerNrwU8lm.PNSsAgHaJNM7qAJ
167320 47 72 36 51 63 34 2f 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 Gr6Qc4/hzWHa39g6QDbXwz8z6+cZM5cO
167340 47 4d 41 71 4e 46 33 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 GMAqNF34168Xfuw6cwI2H44g4hWf6.Ps
167360 65 72 34 42 4f 63 42 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 er4BOcBRiYz5P1sZK0/CPTz9XEJ0ngnj
167380 79 62 43 4b 4f 4c 58 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 ybCKOLXSoh4Pw5qlPafX7PGglTvF0FBM
1673a0 2b 68 53 6f 2b 4c 64 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 +hSo+LdoIN.ofjSxxR3W5A2B4GbPgb6U
1673c0 6c 35 6a 78 61 59 41 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 l5jxaYA/qXpUhtStZI5cgMJYr2wYBZup
1673e0 74 30 6c 77 67 4e 6d 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 t0lwgNm3fME0UDiTouG9G/l.g6AnhF4E
167400 77 66 57 51 76 54 41 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 wfWQvTA9xO+oabw4m6SkltFi2mnAAZau
167420 79 38 52 52 4e 4f 6f 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 y8RRNOoMqv8hjlmPSlzkYZqn0ukqeI1R
167440 50 54 6f 56 0a 37 71 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 PToV.7qJZjqlc3sX5kCLliEVx3ZGZbHq
167460 66 50 54 32 59 66 46 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 fPT2YfF72vhZooF6uCyP8Wg+qInYtyaE
167480 51 48 65 54 54 52 43 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 QHeTTRCOQiJ/GKubX.9ZqzWB4vMIkIG1
1674a0 53 69 74 5a 67 6a 37 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 SitZgj7Ah3HJVdYdHLiZxfokqRmu8hqk
1674c0 6b 57 43 4b 69 39 59 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 kWCKi9YSgxyXSthfbZxbGL0eUQMk1f.i
1674e0 79 41 36 50 45 6b 66 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 yA6PEkfM4VZDdvLCXVDaXP7a3F98N/ET
167500 48 33 47 6f 79 37 49 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 H3Goy7IlXnLc6KOTk0k+17kBL5yG6YnL
167520 55 6c 61 6d 58 72 58 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 UlamXrXXAkg.t3+UuU/xDRxeiEIbEbfn
167540 6b 64 75 65 62 50 52 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 kduebPRq34wGmAOtzCjvpUfzUwIDAQAB
167560 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 48 2f 4d 41 34 o0IwQDAPBgNVHRMBAf8EBTAD.AQH/MA4
167580 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 51 GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQ
1675a0 55 6f 35 66 57 38 31 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 Uo5fW816iEOGrRZ88F2Q87gFwnMwwDQY
1675c0 4a 4b 6f 5a 49 0a 68 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 JKoZI.hvcNAQELBQADggIBABj6W3X8Pn
1675e0 72 48 58 33 66 48 79 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 rHX3fHyt/PX8MSxEBd1DKquGrX1RUVRp
167600 67 6a 70 65 61 51 57 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 gjpeaQWxiZTOOtQqOC.MTaIzen7xASWS
167620 49 73 42 78 34 30 42 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 IsBx40Bz1szBpZGZnQdT+3Btrm0DWHMY
167640 33 37 58 4c 6e 65 4d 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 37XLneMlhwqI2hrhVd2cDMT/uFPpiN3.
167660 47 50 6f 61 6a 4f 69 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 GPoajOi9ZcnPP/TJF9zrx7zABC4tRi9p
167680 5a 73 4d 62 6a 2f 37 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 ZsMbj/7sPtPKlL92CiUNqXsCHKnQO18L
1676a0 77 49 45 36 50 57 54 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 wIE6PWThv6ct.Tr1NxNgpxiIY0MWscgK
1676c0 43 50 36 6f 36 6f 6a 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 CP6o6ojoilzHdCGPDdRS5YCgtW2jgFql
1676e0 6d 67 69 4e 52 39 65 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 mgiNR9etT2DGbe+m3nUvriBbP.+V04ik
167700 6b 77 6a 2b 33 78 36 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 kwj+3x6xn0dxoxGE1nVGwvb2X52z3sIe
167720 78 65 39 50 53 4c 79 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 xe9PSLymBlVNFxZPT5pqOBMzYzcfCkeF
167740 39 4f 72 59 4d 68 0a 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 9OrYMh.3jRJjehZrJ3ydlo28hP0r+AJx
167760 32 45 71 62 50 66 67 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 2EqbPfgna67hkooby7utHnNkDPDs3b69
167780 66 42 73 6e 51 47 51 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 fBsnQGQ+p6Q9pxyz0fa.wx/kNSBT8lTR
1677a0 33 32 47 44 70 67 4c 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 32GDpgLiJTjehTItXnOQUl1CxM49S+H5
1677c0 47 59 51 64 31 61 4a 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 GYQd1aJQzEH7QRTDvdbJWqNjZgKAvQU6
1677e0 0a 4f 30 65 63 37 41 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 .O0ec7AAmTPWIUb+oI38YB7AL7YsmoWT
167800 54 59 55 72 72 58 4a 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 TYUrrXJ/es69nA7Mf3W1daWhpq1467Hx
167820 70 76 4d 63 37 68 55 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 pvMc7hU6eFbm0.FU/DlXpY18ls6Wy58y
167840 6c 6a 58 72 51 73 38 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 ljXrQs8C097Vpl4KlbQMJImYFtnh8GKj
167860 77 53 74 49 73 50 6d 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 wStIsPm6Ik8KaN1nrgS7ZklmOV.hMJKz
167880 52 77 75 4a 49 63 7a 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 RwuJIczYOXD.-----END.CERTIFICATE
1678a0 2d 2d 2d 2d 2d 0a 0a 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 -----..QuoVadis.Root.CA.2.G3.===
1678c0 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
1678e0 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 41 77 49 42 41 RTIFICATE-----.MIIFYDCCA0igAwIBA
167900 67 49 55 52 46 63 30 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 gIURFc0JFuBiZs18s64KztbpybwdSgwD
167920 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 0a 41 31 55 45 QYJKoZIhvcNAQELBQAwSDELMAkG.A1UE
167940 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 68 5a 47 6c 7a BhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlz
167960 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 31 62 31 5a 68 IExpbWl0ZWQxHjAcBgNVBAMTFVF1b1Zh
167980 5a 47 6c 7a 49 46 4a 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 ZGlzIFJv.b3QgQ0EgMiBHMzAeFw0xMjA
1679a0 78 4d 54 49 78 4f 44 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 xMTIxODU5MzJaFw00MjAxMTIxODU5MzJ
1679c0 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 77 59 44 56 51 aMEgxCzAJBgNVBAYTAkJN.MRkwFwYDVQ
1679e0 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 52 34 77 48 41 QKExBRdW9WYWRpcyBMaW1pdGVkMR4wHA
167a00 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 45 4e 42 49 44 YDVQQDExVRdW9WYWRpcyBSb290IENBID
167a20 49 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 41 51 55 41 41 Ig.RzMwggIiMA0GCSqGSIb3DQEBAQUAA
167a40 34 49 43 44 77 41 77 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 4ICDwAwggIKAoICAQChriWyARjcV4g/R
167a60 75 76 35 72 2b 4c 72 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 uv5r+LrI3HimtFh.ZiFfqq8nUeVuGxbU
167a80 4c 58 31 51 73 46 4e 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 LX1QsFN3vXg6YOJkApt8hpvWGo6t/x8V
167aa0 66 39 57 56 48 68 4c 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 f9WVHhLL5hSEBMHfNrMWn4rjyduY.NM7
167ac0 59 4d 78 63 6f 52 76 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 YMxcoRvynyfDStNVNCXJJ+fKH46nafaF
167ae0 39 61 37 49 36 4a 61 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 9a7I6JaltUkSs+L5u+9ymc5GQYaYDFCD
167b00 79 35 34 65 6a 69 4b 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 y54ejiK2t.oIz/pgslUiXnFgHVy7g1gQ
167b20 79 6a 4f 2f 44 68 34 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 yjO/Dh4fxaXc6AcW34Sas+O7q414AB+6
167b40 58 72 57 37 50 46 58 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 XrW7PFXmAqMaCvN+ggOp+o.MiwMzAkd0
167b60 35 36 4f 58 62 78 4d 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 56OXbxMmO7FGmh77FOm6RQ1o9/NgJ8MS
167b80 50 73 63 39 50 47 2f 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 Psc9PG/Srj61YxxSscfrf5BmrODXfKEV
167ba0 75 2b 6c 0a 56 30 50 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 u+l.V0POKa2Mq1W/xPtbAd0jIaFYAI7D
167bc0 30 47 6f 54 37 52 50 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 0GoT7RPjEiuA3GfmlbLNHiJuKvhB1PLK
167be0 46 41 65 4e 69 6c 55 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 FAeNilUSxmn1uIZo.L1NesNKqIcGY5jD
167c00 6a 5a 31 58 48 6d 32 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 jZ1XHm26sGahVpkUG0CM62+tlXSoREfA
167c20 37 54 38 70 74 39 44 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 7T8pt9DTEceT/AFr2XK4jYIVz8eQQ.sS
167c40 57 75 31 5a 4b 37 45 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 Wu1ZK7E8EM4DnatDlXtas1qnIhO4M15z
167c60 48 66 65 69 46 75 75 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 HfeiFuuDIIfR0ykRVKYnLP43ehvNURG3
167c80 59 42 5a 77 6a 67 51 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 YBZwjgQQvD.6xVu+KQZ2aKrr+InUlYrA
167ca0 6f 6f 73 46 43 54 35 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 oosFCT5v0ICvybIxo/gbjh9Uy3l7Zizl
167cc0 57 4e 6f 66 2f 6b 31 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 WNof/k19N+IxWA1ksB8aRxh.lRbQ694L
167ce0 72 7a 34 45 45 45 56 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 rz4EEEVlWFA4r0jyWbYW8jwNkALGcC4B
167d00 72 54 77 56 31 77 49 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 rTwV1wIDAQABo0IwQDAPBgNVHRMBAf8E
167d20 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 42 6a 41 BTAD.AQH/MA4GA1UdDwEB/wQEAwIBBjA
167d40 64 42 67 4e 56 48 51 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 dBgNVHQ4EFgQU7edvdlq/YOxJW8ald7t
167d60 79 46 6e 47 62 78 44 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 yFnGbxD0wDQYJKoZI.hvcNAQELBQADgg
167d80 49 42 41 4a 48 66 67 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 IBAJHfgD9DCX5xwvfrs4iP4VGyvD11+S
167da0 68 64 79 4c 79 5a 6d 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 hdyLyZm3tdquXK4Qr36LLTn91nMX66.A
167dc0 61 72 48 61 6b 45 37 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 arHakE7kNQIXLJgapDwyM4DYvmL7ftuK
167de0 74 77 47 54 54 77 70 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 twGTTwpD4kWilhMSA/ohGHqPHKmd+RCr
167e00 6f 69 6a 51 31 68 35 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 oijQ1h5fq7K.pVMNqT1wvSAZYaRsOPxD
167e20 4d 75 48 42 52 2f 2f 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 MuHBR//47PERIjKWnML2W2mWeyAMQ0Ga
167e40 57 2f 5a 5a 47 59 6a 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 W/ZZGYjeVYg3UQt4XAoeo0L9.x52ID8D
167e60 79 65 41 49 6b 56 4a 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 yeAIkVJOviYeIyUqAHerQbj5hLja7NQ4
167e80 6e 6c 76 31 6d 4e 44 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 nlv1mNDthcnPxFlxHBlRJAHpYErAK74X
167ea0 39 73 62 67 7a 0a 64 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 9sbgz.dWqTHBLmYF5vHX/JHyPLhGGfHo
167ec0 4a 45 2b 56 2b 74 59 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 JE+V+tYlUkmlKY7VHnoX6XOuYvHxHaU4
167ee0 41 73 68 5a 36 72 4e 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 AshZ6rNRDbIl9qxV6X.U/IyAgkwo1jwD
167f00 51 48 56 63 73 61 78 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 QHVcsaxfGl7w/U2Rcxhbl5MlMVerugOX
167f20 6f 75 2f 39 38 33 67 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 ou/983g7aEOGzPuVBj+D77vfoRrQ+Nw.
167f40 6d 4e 74 64 64 62 49 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 mNtddbINWQeFFSM51vHfqSYP1kjHs6Yi
167f60 39 54 4d 33 57 70 56 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 9TM3WpVHn3u6GBVv/9YUZINJ0gpnIdsP
167f80 4e 57 4e 67 4b 43 4c 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 NWNgKCLjsZWD.zYWm3S8P52dSbrsvhXz
167fa0 31 53 6e 50 6e 78 54 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 1SnPnxT7AvSESBT/8twNJAlvIJebiVDj
167fc0 31 65 59 65 4d 48 56 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 1eYeMHVOyToV7BjjHLPj4sHKN.JeV3Uv
167fe0 51 44 48 45 69 6d 55 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 QDHEimUF+IIDBu8oJDqz2XhOdT+yHBTw
168000 38 69 6d 6f 61 34 57 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 8imoa4WSr2Rz0ZiC3oheGe7IUIarFsNM
168020 6b 64 37 45 67 72 0a 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 kd7Egr.O3jtZsSOeWmD3n+M.-----END
168040 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
168060 20 43 41 20 33 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 2d .CA.3.G3.=====================.-
168080 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
1680a0 44 43 43 41 30 69 67 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 DCCA0igAwIBAgIULvWbAiin23r/1aOp7
1680c0 72 30 44 6f 4d 38 53 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 r0DoM8Sah0wDQYJKoZIhvcNAQELBQAwS
1680e0 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 54 DELMAkG.A1UEBhMCQk0xGTAXBgNVBAoT
168100 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 56 EFF1b1ZhZGlzIExpbWl0ZWQxHjAcBgNV
168120 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 79 42 BAMTFVF1b1ZhZGlzIFJv.b3QgQ0EgMyB
168140 48 4d 7a 41 65 46 77 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 HMzAeFw0xMjAxMTIyMDI2MzJaFw00MjA
168160 78 4d 54 49 79 4d 44 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 xMTIyMDI2MzJaMEgxCzAJBgNVBAYTAkJ
168180 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 57 N.MRkwFwYDVQQKExBRdW9WYWRpcyBMaW
1681a0 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 79 1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcy
1681c0 42 53 62 32 39 30 49 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 BSb290IENBIDMg.RzMwggIiMA0GCSqGS
1681e0 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 7a 79 Ib3DQEBAQUAA4ICDwAwggIKAoICAQCzy
168200 77 34 51 5a 34 37 71 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 w4QZ47qFJenMioKVjZ/aEzHs286.IxSR
168220 2f 78 6c 2f 70 63 71 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 /xl/pcqs7rN2nXrpixurazHb+gtTTK/F
168240 70 52 70 35 50 49 70 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 pRp5PIpM/6zfJd5O2YIyC0TeytuMrKNu
168260 46 6f 4d 37 70 6d 52 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 FoM7pmRL.Mon7FhY4futD4tN0SsJiCnM
168280 4b 33 55 6d 7a 56 39 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 K3UmzV9KwCoWdcTzeo8vAMvMBOSBDGzX
1682a0 52 55 37 4f 78 37 73 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 RU7Ox7sWTaYI+FrUoRqHe.6okJ7UO4BU
1682c0 61 4b 68 76 56 5a 52 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 aKhvVZR74bbwEhELn9qdIoyhA5CcoTNs
1682e0 2b 63 72 61 31 41 64 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 +cra1AdHkrAj80//ogaX3T7mH1urPnMN
168300 41 33 0a 49 34 5a 79 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 A3.I4ZyYUUpSFlob3emLoG+B01vr87ER
168320 52 4f 52 46 48 41 47 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 RORFHAGjx+f+IdpsQ7vw4kZ6+ocYfx6b
168340 49 72 63 31 67 4d 4c 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 Irc1gMLnia6Et3U.VDmrJqMz6nWB2i3N
168360 44 30 2f 6b 41 39 48 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 D0/kA9HvFZcba5DFApCTZgIhsUfei5pK
168380 67 4c 6c 56 6a 37 57 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 gLlVj7WiL8DWM2fafsSntARE60f7.5li
1683a0 35 39 77 7a 77 65 79 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 59wzweyuxwHApw0BiLTtIadwjPEjrewl
1683c0 35 71 57 33 61 71 44 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 5qW3aqDCYz4ByA4imW0aucnl8CAMhZa6
1683e0 33 34 52 79 6c 73 53 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 34RylsSqi.Md5mBPfAdOhx3v89WcyWJh
168400 4b 4c 68 5a 56 58 47 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 KLhZVXGqtrdQtEPREoPHtht+KPZ0/l7D
168420 78 4d 59 49 42 70 56 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 xMYIBpVzgeAVuNVejH38DM.dyM0SXV89
168440 70 67 52 36 79 33 65 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 pgR6y3e7UEuFAUCf+D+IOs15xGsIs5XP
168460 64 37 4a 4d 47 30 51 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 d7JMG0QA4XN8f+MFrXBsj6IbGB/kE+V9
168480 2f 59 74 0a 72 51 45 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 /Yt.rQE5BwT6dYB9v0lQ7e/JxHwc64B+
1684a0 32 37 62 51 33 52 50 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 27bQ3RP+ydOc17KXqQIDAQABo0IwQDAP
1684c0 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 45 BgNVHRMBAf8EBTAD.AQH/MA4GA1UdDwE
1684e0 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 78 68 66 51 76 4b 6a B/wQEAwIBBjAdBgNVHQ4EFgQUxhfQvKj
168500 71 41 6b 50 79 47 77 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 qAkPyGwaZXSuQILnXnOQwDQYJKoZI.hv
168520 63 4e 41 51 45 4c 42 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 cNAQELBQADggIBADRh2Va1EodVTd2jNT
168540 46 47 75 36 51 48 63 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 FGu6QHcrxfYWLopfsLN7E8trP6KZ1/Av
168560 57 6b 79 61 69 54 74 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 WkyaiTt3px.KGmPc+FSkNrVvjrlt3ZqV
168580 6f 41 68 33 31 33 6d 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 oAh313m6Tqe5T72omnHKgqwGEfcIHB9U
1685a0 71 4d 2b 57 58 7a 42 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 qM+WXzBusnIFUBhynLWcKzS.t/Ac5IYp
1685c0 38 4d 37 76 61 47 50 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 8M7vaGPQtSCKFWGafoaYtMnCdvvMujAW
1685e0 7a 4b 4e 68 78 6e 51 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 zKNhxnQT5WvvoxXqA/4Ti2Tk08HS6IT7
168600 53 64 45 51 0a 54 58 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 SdEQ.TXlm66r99I0xHnAUrdzeZxNMgRV
168620 68 76 4c 66 5a 6b 58 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 hvLfZkXdxGYFgu/BYpbWcC/ePIlUnwEs
168640 42 62 54 75 5a 44 64 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 BbTuZDdQdm2NnL9Du.DcpmvJRPpq3t/O
168660 35 6a 72 46 63 2f 5a 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 5jrFc/ZSXPsoaP0Aj/uHYUbt7lJ+yreL
168680 56 54 75 62 59 2f 36 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 VTubY/6CD50qi+YUbKh4yE8/nxoGib.I
1686a0 68 36 42 4a 70 73 51 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 h6BJpsQBJFxwAYf3KDTuVan45gtf4Od3
1686c0 34 77 72 6e 44 4b 4f 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 4wrnDKOMpTwATwiKp9Dwi7DmDkHOHv8X
1686e0 67 42 43 48 2f 4d 79 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 gBCH/MyJnmD.hPbl8MFREsALHgQjDFSl
168700 54 43 39 4a 78 55 72 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 TC9JxUrRtm5gDWv8a4uFJGS3iQ6rJUdb
168720 50 4d 39 2b 53 62 33 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 PM9+Sb3H6QrG2vd+DhcI00iX.0HGS8A8
168740 35 50 6a 52 71 48 48 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 5PjRqHH3Y8iKuu2n0M7SmSFXRDw4m6Oy
168760 32 43 79 32 6e 68 54 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 2Cy2nhTXN/VnIn9HNPlopNLk9hM6xZdR
168780 5a 6b 5a 46 57 0a 64 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 ZkZFW.dSHBd575euFgndOtBBj0fOtek4
1687a0 39 54 53 69 49 70 2b 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 9TSiIp+EgrPk2GrFt/ywaZWWDYWGWVjU
1687c0 54 52 39 33 39 2b 4a 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 TR939+J399roD1B0y2.PpxxVJkES/1Y+
1687e0 5a 6a 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 44 Zj0.-----END.CERTIFICATE-----..D
168800 69 67 69 43 65 72 74 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 igiCert.Assured.ID.Root.G2.=====
168820 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
168840 4e 20 43 45 52 54 49 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 N.CERTIFICATE-----.MIIDljCCAn6gA
168860 77 49 42 41 67 49 51 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 wIBAgIQC5McOtY5Z+pnI7/Dr5r0SzANB
168880 67 6b 71 68 6b 69 47 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 gkqhkiG9w0BAQsFADBlMQswCQYDVQQG.
1688a0 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
1688c0 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
1688e0 63 6e 51 75 59 32 39 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 cnQuY29tMSQw.IgYDVQQDExtEaWdpQ2V
168900 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 49 77 48 68 63 ydCBBc3N1cmVkIElEIFJvb3QgRzIwHhc
168920 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 0a 4d 54 45 31 4d 54 NMTMwODAxMTIwMDAwWhcNMzgw.MTE1MT
168940 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 7a 45 56 4d 42 IwMDAwWjBlMQswCQYDVQQGEwJVUzEVMB
168960 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 77 46 77 MGA1UEChMMRGlnaUNlcnQgSW5jMRkwFw
168980 59 44 56 51 51 4c 0a 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 YDVQQL.ExB3d3cuZGlnaWNlcnQuY29tM
1689a0 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 63 33 4e 31 63 SQwIgYDVQQDExtEaWdpQ2VydCBBc3N1c
1689c0 6d 56 6b 49 45 6c 45 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 mVkIElEIFJvb3QgRzIw.ggEiMA0GCSqG
1689e0 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 5a SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ
168a00 35 79 67 76 55 6a 38 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 5ygvUj82ckmIkzTz+GoeMVSAn61UQbVH
168a20 0a 33 35 61 6f 31 4b 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 .35ao1K+ALbkKz3X9iaV9JPrjIgwrvJU
168a40 58 43 7a 4f 2f 47 55 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 XCzO/GU1BBpAAvQxNEP4HteccbiJVMWW
168a60 58 76 64 4d 58 30 68 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 XvdMX0h5i89vq.bFCMP4QMls+3ywPgym
168a80 32 68 46 45 77 62 69 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 2hFEwbid3tALBSfK+RbLE4E9HpEgjAAL
168aa0 41 63 4b 78 48 61 64 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 AcKxHad3A2m67OeYfcgnDmCXRw.VWmvo
168ac0 32 69 66 76 39 32 32 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 2ifv922ebPynXApVfSr/5Vh88lAbx3Rv
168ae0 70 4f 37 30 34 67 71 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 pO704gqu52/clpWcTs/1PPRCv4o76Pu2
168b00 5a 6d 76 41 39 4f 50 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 ZmvA9OP.YLfykqGxvYmJHzDNw6YuYjOu
168b20 46 67 4a 33 52 46 72 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 FgJ3RFrngQo8p0Quebg/BLxcoIfhG69R
168b40 6a 73 33 73 4c 50 72 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 js3sLPr4/m3wOnyqi+Rn.lTGNAgMBAAG
168b60 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
168b80 44 56 52 30 50 41 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 DVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBT
168ba0 4f 0a 77 30 71 35 6d 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 O.w0q5mVXyuNtgv6l+vVa1lzan1jANBg
168bc0 6b 71 68 6b 69 47 39 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 kqhkiG9w0BAQsFAAOCAQEAyqVVjOPIQW
168be0 35 70 4a 36 64 31 45 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 5pJ6d1Ee88hjZv.0p3GeDgdaZaikmkuO
168c00 47 79 62 66 51 54 55 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 GybfQTUiaWxMTeKySHMq2zNixya1r9I0
168c20 6a 4a 6d 77 59 72 41 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 jJmwYrA8y8678Dj1JGG0VDjA9tz.d29K
168c40 4f 56 50 74 33 69 62 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 OVPt3ibHtX2vK0LRdWLjSisCx1BL4Gni
168c60 6c 6d 77 4f 52 47 59 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 lmwORGYQRI+tBev4eaymG+g3NJ1TyWGq
168c80 6f 6c 4b 76 53 6e 41 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 olKvSnAW.hsI6yLETcDbYz+70CjTVW0z
168ca0 39 42 35 79 69 75 74 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 9B5yiutkBclzzTcHdDrEcDcRjvq30FPu
168cc0 4a 37 4b 4a 42 44 6b 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 J7KJBDkzMyFdA0G4Dqs0M.jomZmWzwPD
168ce0 43 76 4f 4e 39 76 76 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 CvON9vvKO+KSAnq3T/EyJ43pdSVR6DtV
168d00 51 67 41 2b 36 75 77 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 QgA+6uwE9W3jfMw3+qBCe703e4YtsXfJ
168d20 77 6f 0a 49 68 4e 7a 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 wo.IhNzbM8m9Yop5w==.-----END.CER
168d40 54 49 46 49 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 TIFICATE-----..DigiCert.Assured.
168d60 49 44 20 52 6f 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 ID.Root.G3.=====================
168d80 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---
168da0 2d 2d 0a 4d 49 49 43 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 --.MIICRjCCAc2gAwIBAgIQC6Fa+h3fo
168dc0 4c 56 4a 52 4b 2f 4e 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 LVJRK/NJKBs7DAKBggqhkjOPQQDAzBlM
168de0 51 73 77 43 51 59 44 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 QswCQYDVQQGEwJV.UzEVMBMGA1UEChMM
168e00 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
168e20 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 0a 56 51 51 d3cuZGlnaWNlcnQuY29tMSQwIgYD.VQQ
168e40 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
168e60 76 62 33 51 67 52 7a 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 vb3QgRzMwHhcNMTMwODAxMTIwMDAwWhc
168e80 4e 4d 7a 67 77 4d 54 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 NMzgwMTE1.MTIwMDAwWjBlMQswCQYDVQ
168ea0 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
168ec0 51 67 53 57 35 6a 4d 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 QgSW5jMRkwFwYDVQQLExB3.d3cuZGlna
168ee0 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
168f00 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 4d 77 64 2VydCBBc3N1cmVkIElEIFJvb3QgRzMwd
168f20 6a 41 51 0a 42 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 5a jAQ.BgcqhkjOPQIBBgUrgQQAIgNiAAQZ
168f40 35 37 79 73 52 47 58 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 57ysRGXtzbg/WPuNsVepRC0FFfLvC/8Q
168f60 64 4a 2b 31 59 6c 4a 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 dJ+1YlJfZn4f5dwb.RXkLzMZTCp2NXQL
168f80 5a 71 56 6e 65 41 6c 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 ZqVneAlr2lSoOjThKiknGvMYDOAdfVdp
168fa0 2b 43 57 37 69 66 31 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 +CW7if17QRSAPWXYQ1qAk8C3eNvJs.KT
168fc0 6d 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 mjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDg
168fe0 59 44 56 52 30 50 41 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 YDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBB
169000 54 4c 30 4c 32 70 34 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 TL0L2p4ZgF.UaFNN6KDec6NHSrkhDAKB
169020 67 67 71 68 6b 6a 4f 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 ggqhkjOPQQDAwNnADBkAjAlpIFFAmsSS
169040 33 56 30 54 38 67 6a 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 3V0T8gj43DydXLefInwz5Fy.YZ5eEJJZ
169060 56 72 6d 44 78 78 44 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 VrmDxxDnOOlYJjZ91eQ0hjkCMHw2U/Aw
169080 35 57 4a 6a 4f 70 6e 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 5WJjOpnitqM7mzT6HtoQknFekROn3aRu
1690a0 6b 73 77 79 0a 31 76 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 kswy.1vUhZscv6pZjamVFkpUBtA==.--
1690c0 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 69 67 69 43 65 72 ---END.CERTIFICATE-----..DigiCer
1690e0 74 20 47 6c 6f 62 61 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 t.Global.Root.G2.===============
169100 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-
169120 2d 2d 2d 2d 0a 4d 49 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 ----.MIIDjjCCAnagAwIBAgIQAzrx5qc
169140 52 71 61 43 37 4b 47 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 RqaC7KGSxHQn65TANBgkqhkiG9w0BAQs
169160 46 41 44 42 68 4d 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 FADBhMQswCQYDVQQG.EwJVUzEVMBMGA1
169180 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 77 46 77 59 44 56 51 UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQ
1691a0 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 74 4d 53 41 77 0a 48 QLExB3d3cuZGlnaWNlcnQuY29tMSAw.H
1691c0 67 59 44 56 51 51 44 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 gYDVQQDExdEaWdpQ2VydCBHbG9iYWwgU
1691e0 6d 39 76 64 43 42 48 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 m9vdCBHMjAeFw0xMzA4MDExMjAwMDBaF
169200 77 30 7a 4f 44 41 78 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 w0zODAxMTUx.MjAwMDBaMGExCzAJBgNV
169220 42 41 59 54 41 6c 56 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 BAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2Vy
169240 64 43 42 4a 62 6d 4d 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 dCBJbmMxGTAXBgNVBAsTEHd3.dy5kaWd
169260 70 59 32 56 79 64 43 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 pY2VydC5jb20xIDAeBgNVBAMTF0RpZ2l
169280 44 5a 58 4a 30 49 45 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 DZXJ0IEdsb2JhbCBSb290IEcyMIIBIjA
1692a0 4e 42 67 6b 71 0a 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 NBgkq.hkiG9w0BAQEFAAOCAQ8AMIIBCg
1692c0 4b 43 41 51 45 41 75 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 KCAQEAuzfNNNx7a8myaJCtSnX/RrohCg
1692e0 69 4e 39 52 6c 55 79 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 iN9RlUyfuI2/Ou8jqJ.kTx65qsGGmvPr
169300 43 33 6f 58 67 6b 6b 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 C3oXgkkRLpimn7Wo6h+4FR1IAWsULecY
169320 78 70 73 4d 4e 7a 61 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 xpsMNzaHxmx1x7e/dfgy5SDN67sH0NO.
169340 33 58 73 73 30 72 30 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 3Xss0r0upS/kqbitOtSZpLYl6ZtrAGCS
169360 59 50 39 50 49 55 6b 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 YP9PIUkY92eQq2EGnI/yuum06ZIya7Xz
169380 56 2b 68 64 47 38 32 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 V+hdG82MHauV.BJVJ8zUtluNJbd134/t
1693a0 4a 53 37 53 73 56 51 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 JS7SsVQepj5WztCO7TG1F8PapspUwtP1
1693c0 4d 56 59 77 6e 53 6c 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 MVYwnSlcUfIKdzXOS0xZKBgyM.UNGPHg
1693e0 6d 2b 46 36 48 6d 49 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 m+F6HmIcr9g+UQvIOlCsRnKPZzFBQ9Rn
169400 62 44 68 78 53 4a 49 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 bDhxSJITRNrw9FDKZJobq7nMWxM4MphQ
169420 49 44 41 51 41 42 0a 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 IDAQAB.o0IwQDAPBgNVHRMBAf8EBTADA
169440 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 64 42 67 4e 56 48 QH/MA4GA1UdDwEB/wQEAwIBhjAdBgNVH
169460 51 34 45 46 67 51 55 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 Q4EFgQUTiJUIBiV5uNu.5g/6+rkS7QYX
169480 6a 7a 6b 77 44 51 59 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 jzkwDQYJKoZIhvcNAQELBQADggEBAGBn
1694a0 4b 4a 52 76 44 6b 68 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 KJRvDkhj6zHd6mcY1Yl9PMWLSn/pvtsr
1694c0 0a 46 39 2b 77 58 33 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 .F9+wX3N3KjITOYFnQoQj8kVnNeyIv/i
1694e0 50 73 47 45 4d 4e 4b 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 PsGEMNKSuIEyExtv4NeF22d+mQrvHRAi
169500 47 66 7a 5a 30 4a 46 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 GfzZ0JFrabA0U.WTW98kndth/Jsw1HKj
169520 32 5a 4c 37 74 63 75 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 2ZL7tcu7XUIOGZX1NGFdtom/DzMNU+Me
169540 4b 4e 68 4a 37 6a 69 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 KNhJ7jitralj41E6Vf8PlwUHBH.QRFXG
169560 55 37 41 6a 36 34 47 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 U7Aj64GxJUTFy8bJZ918rGOmaFvE7FBc
169580 66 36 49 4b 73 68 50 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 f6IKshPECBV1/MUReXgRPTqh5Uykw7+U
1695a0 30 62 36 4c 4a 33 2f 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 0b6LJ3/.iyK5S9kJRaTepLiaWN0bfVKf
1695c0 6a 6c 6c 44 69 49 47 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 jllDiIGknibVb63dDcY3fe0Dkhvld192
1695e0 37 6a 79 4e 78 46 31 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 7jyNxF1WW6LZZm6zNTfl.MrY=.-----E
169600 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 20 47 6c ND.CERTIFICATE-----..DigiCert.Gl
169620 6f 62 61 6c 20 52 6f 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 obal.Root.G3.===================
169640 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-----
169660 0a 4d 49 49 43 50 7a 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 .MIICPzCCAcWgAwIBAgIQBVVWvPJepDU
169680 31 77 36 51 50 31 61 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 1w6QP1atFcjAKBggqhkjOPQQDAzBhMQs
1696a0 77 43 51 59 44 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 wCQYDVQQGEwJV.UzEVMBMGA1UEChMMRG
1696c0 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 33 lnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3
1696e0 63 75 5a 47 6c 6e 61 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 cuZGlnaWNlcnQuY29tMSAwHgYD.VQQDE
169700 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 4d xdEaWdpQ2VydCBHbG9iYWwgUm9vdCBHM
169720 7a 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 4d zAeFw0xMzA4MDExMjAwMDBaFw0zODAxM
169740 54 55 78 4d 6a 41 77 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 TUxMjAw.MDBaMGExCzAJBgNVBAYTAlVT
169760 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 78 MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMx
169780 47 54 41 58 42 67 4e 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 GTAXBgNVBAsTEHd3dy5k.aWdpY2VydC5
1697a0 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 64 jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEd
1697c0 73 62 32 4a 68 62 43 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 sb2JhbCBSb290IEczMHYwEAYHKoZIzj0
1697e0 43 0a 41 51 59 46 4b 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 C.AQYFK4EEACIDYgAE3afZu4q4C/sLfy
169800 48 53 38 4c 36 2b 63 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 HS8L6+c/MzXRq8NOrexpu80JX28MzQC7
169820 70 68 57 31 46 47 66 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 phW1FGfp4tn+6O.YwwX7Adw9c+ELkCDn
169840 4f 67 2f 51 57 30 37 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 Og/QW07rdOkFFk2eJ0DQ+4QE2xy3q6Ip
169860 36 46 72 74 55 50 4f 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 6FrtUPOZ9wj/wMco+I+o0IwQDAP.BgNV
169880 48 52 4d 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 2f 77 51 45 HRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
1698a0 41 77 49 42 68 6a 41 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 AwIBhjAdBgNVHQ4EFgQUs9tIpPmhxdiu
1698c0 4e 6b 48 4d 45 57 4e 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 NkHMEWNp.Yim8S8YwCgYIKoZIzj0EAwM
1698e0 44 61 41 41 77 5a 51 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 DaAAwZQIxAK288mw/EkrRLTnDCgmXc/S
169900 49 4e 6f 79 49 4a 37 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 INoyIJ7vmiI1Qhadj+Z4y.3maTD/HMsQ
169920 6d 50 33 57 79 72 2b 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 mP3Wyr+mt/oAIwOWZbwmSNuJ5Q3KjVSa
169940 4c 74 78 39 7a 52 53 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 Ltx9zRSX8XAbjIho9OjIgrqJqpisXRAL
169960 33 34 0a 56 4f 4b 61 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 34.VOKa5Vt8sycX.-----END.CERTIFI
169980 43 41 54 45 2d 2d 2d 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 CATE-----..DigiCert.Trusted.Root
1699a0 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 3d 0a 2d 2d 2d .G4.========================.---
1699c0 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 6b 44 43 --BEGIN.CERTIFICATE-----.MIIFkDC
1699e0 43 41 33 69 67 41 77 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 CA3igAwIBAgIQBZsbV56OITLiOQe9p3d
169a00 31 58 44 41 4e 42 67 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 1XDANBgkqhkiG9w0BAQwFADBiMQswCQY
169a20 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 47 6c 6e 61 55 DVQQG.EwJVUzEVMBMGA1UEChMMRGlnaU
169a40 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 33 63 75 5a 47 NlcnQgSW5jMRkwFwYDVQQLExB3d3cuZG
169a60 6c 6e 61 57 4e 6c 63 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 lnaWNlcnQuY29tMSEw.HwYDVQQDExhEa
169a80 57 64 70 51 32 56 79 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 WdpQ2VydCBUcnVzdGVkIFJvb3QgRzQwH
169aa0 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 45 31 0a hcNMTMwODAxMTIwMDAwWhcNMzgwMTE1.
169ac0 4d 54 49 77 4d 44 41 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 MTIwMDAwWjBiMQswCQYDVQQGEwJVUzEV
169ae0 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 77 MBMGA1UEChMMRGlnaUNlcnQgSW5jMRkw
169b00 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 59 32 39 FwYDVQQLExB3.d3cuZGlnaWNlcnQuY29
169b20 74 4d 53 45 77 48 77 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 tMSEwHwYDVQQDExhEaWdpQ2VydCBUcnV
169b40 7a 64 47 56 6b 49 46 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 zdGVkIFJvb3QgRzQwggIiMA0G.CSqGSI
169b60 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 2f 35 70 b3DQEBAQUAA4ICDwAwggIKAoICAQC/5p
169b80 42 7a 61 4e 36 37 35 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 BzaN675F1KPDAiMGkz7MKnJS7JIT3yit
169ba0 68 5a 77 75 45 70 0a 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 hZwuEp.pz1Yq3aaza57G4QNxDAf8xukO
169bc0 42 62 72 56 73 61 58 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 BbrVsaXbR2rsnnyyhHS5F/WBTxSD1Ifx
169be0 70 34 56 70 58 36 2b 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 p4VpX6+n6lXFllVcq9o.k3DCsrp1mWpz
169c00 4d 70 54 52 45 45 51 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 MpTREEQQLt+C8weE5nQ7bXHiLQwb7iDV
169c20 79 53 41 64 59 79 6b 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 ySAdYyktzuxeTsiT+CFhmzTrBcZe7Fsa
169c40 0a 76 4f 76 4a 7a 38 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 .vOvJz82sNEBfsXpm7nfISKhmV1efVFi
169c60 4f 44 43 75 33 54 36 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 ODCu3T6cw2Vbuyntd463JT17lNecxy9q
169c80 54 58 74 79 4f 6a 34 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 TXtyOj4DatpGY.QJB5w3jHtrHEtWoYOA
169ca0 4d 51 6a 64 6a 55 4e 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 MQjdjUN6QuBX2I9YI+EJFwq1WCQTLX2w
169cc0 52 7a 4b 6d 36 52 41 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 RzKm6RAXwhTNS8rhsDdV14Ztk6.MUSaM
169ce0 30 43 2f 43 4e 64 61 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 0C/CNdaSaTC5qmgZ92kJ7yhTzm1EVgX9
169d00 79 52 63 52 6f 39 6b 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 yRcRo9k98FpiHaYdj1ZXUJ2h4mXaXpI8
169d20 4f 43 69 45 68 74 6d 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 OCiEhtm.mnTK3kse5w5jrubU75KSOp49
169d40 33 41 44 6b 52 53 57 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 3ADkRSWJtppEGSt+wJS00mFt6zPZxd9L
169d60 42 41 44 4d 66 52 79 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 BADMfRyVw4/3IbKyEbe7.f/LVjHAsQWC
169d80 71 73 57 4d 59 52 4a 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 qsWMYRJUadmJ+9oCw++hkpjPRiQfhvbf
169da0 6d 51 36 51 59 75 4b 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 mQ6QYuKZ3AeEPlAwhHbJUKSWJbOUOUlF
169dc0 48 0a 64 4c 34 6d 72 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 H.dL4mrLZBdd56rF+NP8m800ERElvlEF
169de0 44 72 4d 63 58 4b 63 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 DrMcXKchYiCd98THU/Y+whX8QgUWtvsa
169e00 75 47 69 30 2f 43 31 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 uGi0/C1kVfnSD8.oR7FwI+isX4KJpn15
169e20 47 6b 76 6d 42 30 74 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 GkvmB0t9dmpsh3lGwIDAQABo0IwQDAPB
169e40 67 4e 56 48 52 4d 42 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 gNVHRMBAf8EBTADAQH/MA4GA1Ud.DwEB
169e60 2f 77 51 45 41 77 49 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 /wQEAwIBhjAdBgNVHQ4EFgQU7NfjgtJx
169e80 58 57 52 4d 33 79 35 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 XWRM3y5nP+e6mK4cD08wDQYJKoZIhvcN
169ea0 41 51 45 4d 42 51 41 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 AQEMBQAD.ggIBALth2X2pbL4XxJEbw6G
169ec0 69 41 49 33 6a 5a 47 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 iAI3jZGgPVs93rnD5/ZpKmbnJeFwMDF/
169ee0 6b 35 68 51 70 56 67 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 k5hQpVgs2SV1EY+CtnJYY.ZhsjDT156W
169f00 31 72 31 6c 54 34 30 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 1r1lT40jzBQ0CuHVD1UvyQO7uYmWlrx8
169f20 47 6e 71 47 69 6b 4a 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 GnqGikJ9yd+SeuMIW59mdNOj6PWTkiU0
169f40 54 72 0a 79 46 30 44 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 Tr.yF0Dyu1Qen1iIQqAyHNm0aAFYF/op
169f60 62 53 6e 72 36 6a 33 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 bSnr6j3bTWcfFqK1qI4mfN4i/RN0iAL3
169f80 67 54 75 6a 4a 74 48 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 gTujJtHgXINwBQy.7zBZLq7gcfJW5GqX
169fa0 62 35 4a 51 62 5a 61 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 b5JQbZaNaHqasjYUegbyJLkJEVDXCLG4
169fc0 69 58 71 45 49 32 46 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 iXqEI2FCKeWjzaIgQdfRnGTZ6iah.ixT
169fe0 58 54 42 6d 79 55 45 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 XTBmyUEFxPT9NcCOGDErcgdLMMpSEDQg
16a000 4a 6c 78 78 50 77 4f 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 JlxxPwO5rIHQw0uA5NBCFIRUBCOhVMt5
16a020 78 53 64 6b 6f 46 31 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 xSdkoF1BN.5r5N0XWs0Mr7QbhDparTww
16a040 56 45 54 79 77 32 6d 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 VETyw2m+L64kW4I1NsBm9nVX9GtUw/bi
16a060 68 61 65 53 62 53 70 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 haeSbSpKhil9Ie4u1Ki7wb./UdKDd9nZ
16a080 6e 36 79 57 30 48 51 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 n6yW0HQO+T0O/QEY+nvwlQAUaCKKsnOe
16a0a0 4d 7a 56 36 6f 63 45 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 MzV6ocEGLPOr0mIr/OSmbaz5mEP0oUA5
16a0c0 31 41 61 0a 35 42 75 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 1Aa.5BuVnRmhuZyxm7EAHu/QD09CbMkK
16a0e0 76 4f 35 44 2b 6a 70 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 vO5D+jpxpchNJqU1/YldvIViHTLSoCtU
16a100 37 5a 70 58 77 64 76 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 7ZpXwdv6EM8Zt4tK.G48BtieVU+i2iW1
16a120 62 76 47 6a 55 49 2b 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 bvGjUI+iLUaJW+fCmgKDWHrO8Dw9TdSm
16a140 71 36 68 4e 33 35 4e 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 q6hN35N6MgSGtBxBHEa2HPQfRdbzP.82
16a160 5a 2b 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 57 6f Z+.-----END.CERTIFICATE-----..Wo
16a180 53 69 67 6e 0a 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 Sign.======.-----BEGIN.CERTIFICA
16a1a0 54 45 2d 2d 2d 2d 2d 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 TE-----.MIIFdjCCA16gAwIBAgIQXmjW
16a1c0 45 58 47 55 59 31 42 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 EXGUY1BWAGjzPsnFkTANBgkqhkiG9w0B
16a1e0 41 51 55 46 41 44 42 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 AQUFADBVMQswCQYDVQQG.EwJDTjEaMBg
16a200 47 41 31 55 45 43 68 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 GA1UEChMRV29TaWduIENBIExpbWl0ZWQ
16a220 78 4b 6a 41 6f 42 67 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 xKjAoBgNVBAMTIUNlcnRpZmljYXRpb24
16a240 67 0a 51 58 56 30 61 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 g.QXV0aG9yaXR5IG9mIFdvU2lnbjAeFw
16a260 30 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 0wOTA4MDgwMTAwMDFaFw0zOTA4MDgwMT
16a280 41 77 4d 44 46 61 4d 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 AwMDFaMFUxCzAJ.BgNVBAYTAkNOMRowG
16a2a0 41 59 44 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 AYDVQQKExFXb1NpZ24gQ0EgTGltaXRlZ
16a2c0 44 45 71 4d 43 67 47 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 DEqMCgGA1UEAxMhQ2VydGlmaWNh.dGlv
16a2e0 62 69 42 42 64 58 52 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 biBBdXRob3JpdHkgb2YgV29TaWduMIIC
16a300 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 49 43 IjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC
16a320 43 67 4b 43 41 67 45 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 CgKCAgEA.vcqNrLiRFVaXe2tcesLea9m
16a340 68 73 4d 4d 51 49 2f 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 hsMMQI/qnobLMMfo+2aYpbxY94Gv4uEB
16a360 66 32 7a 6d 6f 41 48 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 f2zmoAHqLoE1UfcIiePyO.CbiohdfMlZ
16a380 64 4c 64 4e 69 65 66 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 dLdNiefvAA5A6JrkkoRBoQmTIPJYhTpA
16a3a0 32 7a 44 78 49 49 46 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 2zDxIIFgsDcSccf+Hb0v1naMQFXQoOXX
16a3c0 44 58 0a 32 4a 65 67 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 DX.2JegvFNBmpGN9J42Znp+VsGQX+axa
16a3e0 43 41 32 70 49 77 6b 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 CA2pIwkLCxHC1l2ZjC1vt7tj/id07sBM
16a400 4f 62 79 38 77 37 67 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 Oby8w7gLJKA84X5.KIq0VC6a7fd2/BVo
16a420 46 75 74 4b 62 4f 73 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 FutKbOsuEo/Uz/4Mx1wdC34FMr5esAkq
16a440 51 74 58 4a 54 70 43 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 QtXJTpCzWQ27en7N1QhatH/YHGkR.+Sc
16a460 50 65 77 61 76 56 49 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 PewavVIMYe+HdVHpRaG53/Ma/UkpmRqG
16a480 79 5a 78 71 37 6f 30 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 yZxq7o093oL5d//xWC0Nyd5DKnvnyOfU
16a4a0 4e 71 66 54 71 31 2b 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 NqfTq1+ez.EC8wQjchzDBwyYaYD8xYTY
16a4c0 4f 37 66 65 55 61 70 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 O7feUapTeNtqwylwA6Y3EkHp43xP901D
16a4e0 66 41 34 76 36 49 52 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 fA4v6IRmAR3Qg/UDaruHqk.lWJqbrDKa
16a500 69 46 61 61 66 50 7a 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 iFaafPz+x1wOZXzp26mgYmhiMU7ccqjU
16a520 75 36 44 75 2f 32 67 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 u6Du/2gd/Tkb+dC221KmYo0SLwX3OSAC
16a540 43 4b 32 0a 38 6a 48 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 CK2.8jHAPwQ+658geda4BmRkAjHXqc1S
16a560 2b 34 52 46 61 51 6b 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 +4RFaQkAKtxVi8QGRkvASh0JWzko/amr
16a580 7a 67 44 35 4c 6b 68 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 zgD5LkhLJuYwTKVY.yrREgk/nkR4zw7C
16a5a0 54 2f 78 48 38 67 64 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 T/xH8gdLKH3Ep3XZPkiWvHYG3Dy+Mwwb
16a5c0 4d 4c 79 65 6a 53 75 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 MLyejSuQOmbp8HkUff6oZRZb9/D0C.Aw
16a5e0 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 45 47 4d 41 EAAaNCMEAwDgYDVR0PAQH/BAQDAgEGMA
16a600 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 42 8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBB
16a620 59 45 46 4f 46 6d 7a 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 YEFOFmzw7R.8bNLtwYgFP6HEtX2/vs+M
16a640 41 30 47 43 53 71 47 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 A0GCSqGSIb3DQEBBQUAA4ICAQCoy3JAs
16a660 6e 62 42 66 6e 76 38 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 nbBfnv8rWTjMnvMPLZdRtP1.LOJwXcgu
16a680 32 41 5a 39 6d 4e 45 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 2AZ9mNELIaCJWSQBnfmvCX0KI4I01fx8
16a6a0 63 70 6d 35 6f 39 64 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 cpm5o9dU9OpScA7F9dY74ToJMuYhOZO9
16a6c0 73 78 58 71 0a 54 32 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 sxXq.T2r09Ys/L3yNWC7F4TmgPsc9SnO
16a6e0 65 51 48 72 41 4b 32 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 eQHrAK2GpZ8nzJLmzbVUsWh2eJXLOC62
16a700 71 78 31 56 69 43 37 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 qx1ViC777Y7NhRCOj.y+EaDveaBk3e1C
16a720 4e 4f 49 5a 5a 62 4f 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 NOIZZbOVtXHS9dCF4Jef98l7VNg64N1u
16a740 61 6a 65 65 41 7a 30 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 ajeeAz0JmWAjCnPv/So0M/BVoG6kQC.2
16a760 6e 7a 34 53 4e 41 7a 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 nz4SNAzqfkHx5Xh9T71XXG68pWpdIhhW
16a780 65 4f 2f 79 6c 6f 54 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 eO/yloTunK0jF02h+mmxTwTv97QRCbut
16a7a0 2b 77 75 63 50 72 58 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 +wucPrXnbes.5cVAWubXbHssw1abR80L
16a7c0 7a 76 6f 62 74 43 48 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 zvobtCHXt2a49CUwi1wNuepnsvRtrtWh
16a7e0 6e 6b 2f 59 6e 2b 6b 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 nk/Yn+knArAdBtaP4/tIEp9/.EaEQPkx
16a800 52 4f 70 61 77 30 52 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 ROpaw0RPxx9gmrjrKkcRpnd8BKWRRb2j
16a820 61 46 4f 77 49 51 5a 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 aFOwIQZeQjdCygPLPwj2/kWjFgGcexGA
16a840 54 56 64 56 68 0a 6d 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 TVdVh.mVd8upUPYUk6ynW8yQqTP2cOEv
16a860 49 6f 34 6a 45 62 77 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 Io4jEbwFcW3wh8GcF+Dx+FHgo2fFt+J7
16a880 78 36 76 2b 44 62 39 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 x6v+Db9NpSvd4MVHAx.kUOVyLzwPt0Jf
16a8a0 6a 42 6b 55 4f 31 2f 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 jBkUO1/AaQzZ01oT74V77D2AhGiGxMlO
16a8c0 74 7a 43 57 66 48 6a 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 tzCWfHjXEa7ZywCRuoeSKbmW9m1vFGi.
16a8e0 6b 70 62 62 71 73 59 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 kpbbqsY3Iqb+zCB0oy2pLmvLwIIRIbWT
16a900 65 65 35 45 68 72 37 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 ee5Ehr7XHuQe+w==.-----END.CERTIF
16a920 49 43 41 54 45 2d 2d 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 ICATE-----..WoSign.China.=======
16a940 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----
16a960 2d 0a 4d 49 49 46 57 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 -.MIIFWDCCA0CgAwIBAgIQUHBrzdgT/B
16a980 74 4f 4f 7a 4e 79 30 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 tOOzNy0hFIjTANBgkqhkiG9w0BAQsFAD
16a9a0 42 47 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 BGMQswCQYDVQQG.EwJDTjEaMBgGA1UEC
16a9c0 68 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 47 7a 41 5a 42 hMRV29TaWduIENBIExpbWl0ZWQxGzAZB
16a9e0 67 4e 56 42 41 4d 4d 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 gNVBAMMEkNBIOayg+mAmuagueiv.geS5
16aa00 70 6a 41 65 46 77 30 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 pjAeFw0wOTA4MDgwMTAwMDFaFw0zOTA4
16aa20 4d 44 67 77 4d 54 41 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 MDgwMTAwMDFaMEYxCzAJBgNVBAYTAkNO
16aa40 4d 52 6f 77 47 41 59 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 MRowGAYD.VQQKExFXb1NpZ24gQ0EgTGl
16aa60 74 61 58 52 6c 5a 44 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 taXRlZDEbMBkGA1UEAwwSQ0Eg5rKD6YC
16aa80 61 35 71 43 35 36 4b 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 a5qC56K+B5LmmMIICIjAN.BgkqhkiG9w
16aaa0 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 30 45 6b 68 48 69 0BAQEFAAOCAg8AMIICCgKCAgEA0EkhHi
16aac0 58 38 68 38 45 71 77 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 X8h8EqwqzbdoYGTufQdDTc7WU1/FDWiD
16aae0 2b 6b 0a 38 48 2f 72 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 +k.8H/rD195L4mx/bxjWDeTmzj4t1up+
16ab00 74 68 78 78 37 53 38 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 thxx7S8gJeNbEvxUNUqKaqoGXqW5pWOd
16ab20 4f 32 58 43 6c 64 31 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 O2XCld19AXbbQs5.uQF/qvbW2mzmBeCk
16ab40 54 56 4c 38 32 39 42 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 TVL829B0txGMe41P/4eDrv8FAxNXUDf+
16ab60 6a 4a 5a 53 45 45 78 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 jJZSEExfv5RxadmWPgxDT74wwJ85.dE8
16ab80 47 52 56 32 6a 31 6c 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 GRV2j1lY5aAfMh09Qd5Nx2UQIsYo06Ym
16aba0 73 32 35 74 4f 34 64 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 s25tO4dnkUkWMLhQfkWsZHWgpLFbE4h4
16abc0 54 56 32 54 77 59 65 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 TV2TwYeO5.Ed+w4VegG63XX9Gv2ystP9
16abe0 42 6f 6a 67 2f 71 6e 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 Bojg/qnw+LNVgbExz03jWhCl3W6t8Sb8
16ac00 44 37 61 51 64 47 63 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 D7aQdGctyB9gQjF+BNdeFy.b7Ao65vh4
16ac20 59 4f 68 6e 30 70 64 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 YOhn0pdr8yb+gIgthhid5E7o9Vlrdx8k
16ac40 48 63 63 52 45 47 6b 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 HccREGkSovrlXLp9glk3Kgtn3R46MGiC
16ac60 57 4f 63 0a 37 36 44 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 WOc.76DbT52VqyBPt7D3h1ymoOQ3OMdc
16ac80 34 7a 55 50 4c 4b 32 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 4zUPLK2jgKLsLl3Az+2LBcLmc272idX1
16aca0 30 6b 61 4f 36 6d 31 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 0kaO6m1jGx6KyX2m.+Jzr5dVjhU1zZmk
16acc0 52 2f 73 67 4f 39 4d 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 R/sgO9MHHZklTfuQZa/HpelmjbX7FF+Y
16ace0 6e 78 75 38 62 32 32 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 nxu8b22/8DU0GAbQOXDBGVWCvOGU6.yk
16ad00 65 36 72 43 7a 4d 52 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 e6rCzMRh+yRpY/8+0mBe53oWprfi1tWF
16ad20 78 4b 31 49 35 6e 75 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 xK1I5nuPHa1UaKJ/kR8slC/k7e3x9cxK
16ad40 53 47 68 78 59 7a 6f 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 SGhxYzoacX.GKUN5AXlK8IrC6KVkLn9Y
16ad60 44 78 4f 69 54 37 6e 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 DxOiT7nnO4fuwECAwEAAaNCMEAwDgYDV
16ad80 52 30 50 41 51 48 2f 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 R0PAQH/BAQDAgEGMA8GA1Ud.EwEB/wQF
16ada0 4d 41 4d 42 41 66 38 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 MAMBAf8wHQYDVR0OBBYEFOBNv9ybQV0T
16adc0 36 47 54 77 70 2b 6b 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 6GTwp+kVpOGBwboxMA0GCSqGSIb3DQEB
16ade0 43 77 55 41 0a 41 34 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 CwUA.A4ICAQBqinA4WbbaixjIvirTthn
16ae00 56 5a 69 6c 36 58 63 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 VZil6Xc1bL3McJk6jfW+rtylNpumlEYO
16ae20 6e 4f 58 4f 76 45 45 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 nOXOvEESS5iVdT2H6.yAa+Tkvv/vMx/s
16ae40 5a 38 63 41 70 42 57 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 Z8cApBWNromUuWyXi8mHwCKe0JgOYKOo
16ae60 49 43 4b 75 4c 4a 4c 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 ICKuLJL8hWGSbueBwj/feTZU7n85iY.r
16ae80 38 33 64 32 5a 35 41 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 83d2Z5AiDEoOqsuC7CsDCT6eiaY8xJhE
16aea0 50 52 64 46 2f 64 2b 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 PRdF/d+4niXVOKM6Cm6jBAyvd0zaziGf
16aec0 6a 6b 39 44 67 4e 79 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 jk9DgNyp115.j0WKWa5bIW4xRtVZjc8V
16aee0 58 39 30 78 4a 63 2f 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 X90xJc/bYNaBRHIpAlf2ltTW/+op2znF
16af00 75 43 79 4b 47 6f 33 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 uCyKGo3Oy+dCMYYFaA6eFN0A.kLppRQj
16af20 62 62 70 43 42 68 71 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 bbpCBhqcqBT/mhDn4t/lXX0ykeVoQDF7
16af40 56 61 2f 38 31 58 77 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 Va/81XwVRHmyjdanPUIPTfPRm94KNPQx
16af60 39 36 4e 39 37 0a 71 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 96N97.qA4bLJyuQHCH2u2nFoJavjVsIE
16af80 34 69 59 64 6d 38 55 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 4iYdm8UXrNemHcSxH5/mc0zy4EZmFcV5
16afa0 63 6a 6a 50 4f 47 47 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 cjjPOGG0jfKq+nwf/Y.jj4Du9gqsPoUJ
16afc0 62 4a 52 61 34 5a 44 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 bJRa4ZDhS4HIxaAjUz7tGM7zMN07RujH
16afe0 76 34 31 44 31 39 38 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 v41D198HRaG9Q7DlfEvr10lO1Hm13ZB.
16b000 4f 4e 46 4c 41 7a 6b 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 ONFLAzkopR6RctR9q5czxNM+4Gm2KHmg
16b020 43 59 30 63 30 66 39 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 CY0c0f9BckgG/Jou5yD5m6Leie2uPAmv
16b040 79 6c 65 7a 6b 6f 6c 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 ylezkolwQOQv.T8Jwg0DXJCxr5wkf09X
16b060 48 77 51 6a 30 32 77 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 HwQj02w47HAcLQxGEIYbpgNR12KvxAmL
16b080 42 73 58 35 56 59 63 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 BsX5VYc8T1yaw15zLKYs4SgsO.kI26oQ
16b0a0 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 43 4f ==.-----END.CERTIFICATE-----..CO
16b0c0 4d 4f 44 4f 20 52 53 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 MODO.RSA.Certification.Authority
16b0e0 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 .===============================
16b100 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-----.
16b120 4d 49 49 46 32 44 43 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 MIIF2DCCA8CgAwIBAgIQTKr5yttjb+Af
16b140 39 30 37 59 57 77 4f 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 907YWwOGnTANBgkqhkiG9w0BAQwFADCB
16b160 68 54 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 hTELMAkGA1UE.BhMCR0IxGzAZBgNVBAg
16b180 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
16b1a0 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 0a 41 31 55 45 43 68 GA1UEBxMHU2FsZm9yZDEaMBgG.A1UECh
16b1c0 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
16b1e0 4e 56 42 41 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 NVBAMTIkNPTU9ETyBSU0EgQ2VydGlmaW
16b200 4e 68 64 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 NhdGlv.biBBdXRob3JpdHkwHhcNMTAwM
16b220 54 45 35 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 TE5MDAwMDAwWhcNMzgwMTE4MjM1OTU5W
16b240 6a 43 42 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 jCBhTELMAkGA1UEBhMC.R0IxGzAZBgNV
16b260 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
16b280 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
16b2a0 0a 43 68 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 .ChMRQ09NT0RPIENBIExpbWl0ZWQxKzA
16b2c0 70 42 67 4e 56 42 41 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 pBgNVBAMTIkNPTU9ETyBSU0EgQ2VydGl
16b2e0 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 77 67 67 49 69 4d 41 maWNhdGlvbiBB.dXRob3JpdHkwggIiMA
16b300 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
16b320 49 43 41 51 43 52 36 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 ICAQCR6FSS0gpWsawNJN3Fz0Rn.dJkrN
16b340 36 4e 39 49 33 41 41 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 6N9I3AAcbxT38T6KhKPS38QVr2fcHK3Y
16b360 58 2f 4a 53 77 38 58 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 X/JSw8Xpz3jsARh7v8Rl8f0hj4K+j5c+
16b380 5a 50 6d 4e 48 72 5a 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 ZPmNHrZ.FGvnnLOFoIJ6dq9xkNfs/Q36
16b3a0 6e 47 7a 36 33 37 43 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 nGz637CC9BR++b7Epi9Pf5l/tfxnQ3K9
16b3c0 44 41 44 57 69 65 74 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 DADWietrLNPtj5gcFKt+.5eNu/Nio5JI
16b3e0 6b 32 6b 4e 72 59 72 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 k2kNrYrhV/erBvGy2i/MOjZrkm2xpmfh
16b400 34 53 44 42 46 31 61 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 4SDBF1a3hDTxFYPwyllEnvGfDyi62a+p
16b420 47 0a 78 38 63 67 6f 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 G.x8cgoLEfZd5ICLqkTqnyg0Y3hOvozI
16b440 46 49 51 32 64 4f 63 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 FIQ2dOciqbXL1MGyiKXCJ7tKuY2e7gUY
16b460 50 44 43 55 5a 4f 62 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 PDCUZObT6Z+pUX.2nwzV0E8jVHtC7Zcr
16b480 79 78 6a 47 74 39 58 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 yxjGt9XyD+86V3Em69FmeKjWiS0uqlWP
16b4a0 63 39 76 71 76 39 4a 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 c9vqv9JWL7wqP/0uK3pN/u6uPQL.Ovno
16b4c0 51 30 49 65 69 64 69 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 Q0IeidiEyxPx2bvhiWC4jChWrBQdnArn
16b4e0 63 65 76 50 44 74 30 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 cevPDt09qZahSL0896+1DSJMwBGB7FY7
16b500 39 74 4f 69 34 6c 75 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 9tOi4lu3.sgQiUpWAk2nojkxl8ZEDLXB
16b520 30 41 75 71 4c 5a 78 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 0AuqLZxUpaVICu9ffUGpVRr+goyhhf3D
16b540 51 77 36 4b 71 4c 43 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 Qw6KqLCGqR84onAZFdr+C.GCe01a60y1
16b560 44 6d 61 2f 52 4d 68 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 Dma/RMhnEw6abfFobg2P9A3fvQQoh/oz
16b580 4d 36 4c 6c 77 65 51 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 M6LlweQRGBY84YcWsr7KaKtzFcOmpH4M
16b5a0 4e 35 0a 57 64 59 67 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 N5.WdYgGq/yapiqcrxXStJLnbsQ/LBMQ
16b5c0 65 58 74 48 54 31 65 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 eXtHT1eKJ2czL+zUdqnR+WEUwIDAQABo
16b5e0 30 49 77 51 44 41 64 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 0IwQDAdBgNVHQ4E.FgQUu69+Aj36pvE8
16b600 68 49 36 74 37 6a 69 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 hI6t7jiY7NkyMtQwDgYDVR0PAQH/BAQD
16b620 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 38 77 0a 44 51 59 AgEGMA8GA1UdEwEB/wQFMAMBAf8w.DQY
16b640 4a 4b 6f 5a 49 68 76 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 JKoZIhvcNAQEMBQADggIBAArx1UaEt65
16b660 52 75 32 79 79 54 55 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 Ru2yyTUEUAJNMnMvlwFTPoCWOAvn9sKI
16b680 4e 39 53 43 59 50 42 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 N9SCYPBMt.rFaisNZ+EZLpLrqeLppysb
16b6a0 30 5a 52 47 78 68 4e 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 0ZRGxhNaKatBYSaVqM4dc+pBroLwP0rm
16b6c0 45 64 45 42 73 71 70 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 EdEBsqpIt6xf4FpuHA1sj+.nq6PK7o9m
16b6e0 66 6a 59 63 77 6c 59 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 fjYcwlYRm6mnPTXJ9OV2jeDchzTc+CiR
16b700 35 6b 44 4f 46 33 56 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 5kDOF3VSXkAKRzH7JsgHAckaVd4sjn8O
16b720 6f 53 67 0a 74 5a 78 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 oSg.tZx8jb8uk2IntznaFxiuvTwJaP+E
16b740 6d 7a 7a 56 31 67 73 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 mzzV1gsD41eeFPfR60/IvYcjt7ZJQ3mF
16b760 58 4c 72 72 6b 67 75 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 XLrrkguhxuhoqEwW.sRqZCuhTLJK7oQk
16b780 59 64 51 78 6c 71 48 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 YdQxlqHvLI7cawiiFwxv/0Cti76R7CZG
16b7a0 59 5a 34 77 55 41 63 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 YZ4wUAc1oBmpjIXUDgIiKboHGhfKp.pC
16b7c0 33 6e 39 4b 55 6b 45 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 3n9KUkEEeDys30jXlYsQab5xoq2Z0B15
16b7e0 52 39 37 51 4e 4b 79 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 R97QNKyvDb6KkBPvVWmckejkk9u+UJue
16b800 42 50 53 5a 49 39 46 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 BPSZI9FoJA.zMxZxuY67RIuaTxslbH9q
16b820 68 31 37 66 34 61 2b 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 h17f4a+Hg4yRvv7E491f0yLS0Zj/gA0Q
16b840 48 44 42 77 37 6d 68 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 HDBw7mh3aZw4gSzQbzpgJHq.ZJx64SID
16b860 71 5a 78 75 62 77 35 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 qZxubw5lT2yHh17zbqD5daWbQOhTsied
16b880 53 72 6e 41 64 79 47 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 SrnAdyGN/4fy3ryM7xfft0kL0fJuMAsa
16b8a0 44 6b 35 32 0a 37 52 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 Dk52.7RH89elWsn2/x20Kk4yl0MC2Hb4
16b8c0 36 54 70 53 69 31 32 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 6TpSi125sC8KKfPog88Tk5c0NqMuRkrF
16b8e0 38 68 65 79 31 46 47 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 8hey1FGlmDoLnzc7I.LaZRfyHBNVOFBk
16b900 70 64 6e 36 32 37 47 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 pdn627G190.-----END.CERTIFICATE-
16b920 2d 2d 2d 2d 0a 0a 55 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 ----..USERTrust.RSA.Certificatio
16b940 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 3d 3d 3d n.Authority.====================
16b960 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
16b980 54 49 46 49 43 41 54 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 TIFICATE-----.MIIF3jCCA8agAwIBAg
16b9a0 49 51 41 66 31 74 4d 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 IQAf1tMPyjylGoG7xkDjUDLTANBgkqhk
16b9c0 69 47 39 77 30 42 41 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 iG9w0BAQwFADCBiDELMAkGA1UE.BhMCV
16b9e0 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
16ba00 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
16ba20 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
16ba40 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
16ba60 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
16ba80 6f 62 33 4a 70 64 48 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 ob3JpdHkwHhcNMTAwMjAxMDAwMDAwWhc
16baa0 4e 4d 7a 67 77 4d 54 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 NMzgwMTE4MjM1OTU5WjCBiDELMAkGA1U
16bac0 45 0a 42 68 4d 43 56 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 E.BhMCVVMxEzARBgNVBAgTCk5ldyBKZX
16bae0 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 42 44 61 58 JzZXkxFDASBgNVBAcTC0plcnNleSBDaX
16bb00 52 35 4d 52 34 77 48 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 R5MR4wHAYDVQQK.ExVUaGUgVVNFUlRSV
16bb20 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 56 56 54 52 VNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTR
16bb40 56 4a 55 63 6e 56 7a 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 VJUcnVzdCBSU0EgQ2VydGlmaWNh.dGlv
16bb60 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 33 biBBdXRob3JpdHkwggIiMA0GCSqGSIb3
16bb80 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 41 45 6d 55 58 DQEBAQUAA4ICDwAwggIKAoICAQCAEmUX
16bba0 4e 67 37 44 32 77 69 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 Ng7D2wiz.0KxXDXbtzSfTTK1Qg2HiqiB
16bbc0 4e 43 53 31 6b 43 64 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 NCS1kCdzOiZ/MPans9s/B3PHTsdZ7Nyg
16bbe0 52 4b 30 66 61 4f 63 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 RK0faOca8Ohm0X6a9fZ2j.Y0K2dvKpOy
16bc00 75 52 2b 4f 4a 76 30 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 uR+OJv0OwWIJAJPuLodMkYtJHUYmTbf6
16bc20 4d 47 38 59 67 59 61 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 MG8YgYapAiPLz+E/CHFHv25B+O1ORRxh
16bc40 46 6e 0a 52 67 68 52 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 Fn.RghRy4YUVD+8M/5+bJz/Fp0YvVGON
16bc60 61 61 6e 5a 73 68 79 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 aanZshyZ9shZrHUm3gDwFA66Mzw3LyeT
16bc80 50 36 76 42 5a 59 31 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 P6vBZY1H1dat//O.+T23LLb2VN3I5xI6
16bca0 54 61 35 4d 69 72 64 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 Ta5MirdcmrS3ID3KfyI0rn47aGYBROcB
16bcc0 54 6b 5a 54 6d 7a 4e 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 TkZTmzNg95S+UzeQc0PzMsNT79uq./nR
16bce0 4f 61 63 64 72 6a 47 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 OacdrjGCT3sTHDN/hMq7MkztReJVni+4
16bd00 39 56 76 34 4d 30 47 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 9Vv4M0GkPGw/zJSZrM233bkf6c0Plfg6
16bd20 6c 5a 72 45 70 66 44 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 lZrEpfDKE.Y1WJxA3Bk1QwGROs0303p+
16bd40 74 64 4f 6d 77 31 58 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 tdOmw1XNtB1xLaqUkL39iAigmTYo61Zs
16bd60 38 6c 69 4d 32 45 75 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 8liM2EuLE/pDkP2QKe6xJM.lXzzawWpX
16bd80 68 61 44 7a 4c 68 6e 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 haDzLhn4ugTncxbgtNMs+1b/97lc6wjO
16bda0 79 30 41 76 7a 56 56 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 y0AvzVVdAlJ2ElYGn+SNuZRkg7zJn0cT
16bdc0 52 65 38 0a 79 65 78 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 Re8.yexDJtC/QV9AqURE9JnnV4eeUB9X
16bde0 56 4b 67 2b 2f 58 52 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 VKg+/XRjL7FQZQnmWEIuQxpMtPAlR1n6
16be00 42 42 36 54 31 43 5a 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 BB6T1CZGSlCBst6+.eLf8ZxXhyVeEHg9
16be20 6a 31 75 6c 69 75 74 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 j1uliutZfVS7qXMYoCAQlObgOK6nyTJc
16be40 63 42 7a 38 4e 55 76 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 cBz8NUvXt7y+CDwIDAQABo0IwQDAd.Bg
16be60 4e 56 48 51 34 45 46 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 NVHQ4EFgQUU3m/WqorSs9UgOHYm8Cd8r
16be80 49 44 5a 73 73 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 IDZsswDgYDVR0PAQH/BAQDAgEGMA8GA1
16bea0 55 64 45 77 45 42 2f 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 UdEwEB/wQF.MAMBAf8wDQYJKoZIhvcNA
16bec0 51 45 4d 42 51 41 44 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 QEMBQADggIBAFzUfA3P9wF9QZllDHPFU
16bee0 70 2f 4c 2b 4d 2b 5a 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 p/L+M+ZBn8b2kMVn54CVVeW.FPFSPCeH
16bf00 6c 43 6a 74 48 7a 6f 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 lCjtHzoBN6J2/FNQwISbxmtOuowhT6KO
16bf20 56 57 4b 52 38 32 6b 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 VWKR82kV2LyI48SqC/3vqOlLVSoGIG1V
16bf40 65 43 6b 5a 0a 37 6c 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 eCkZ.7l8wXEskEVX/JJpuXior7gtNn3/
16bf60 33 41 54 69 55 46 4a 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 3ATiUFJVDBwn7YKnuHKsSjKCaXqeYall
16bf80 74 69 7a 38 49 2b 38 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 tiz8I+8jRRa8YFWSQ.Eg9zKC7F4iRO/F
16bfa0 6a 73 38 50 52 46 2f 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 js8PRF/iKz6y+O0tlFYQXBl2+odnKPi4
16bfc0 77 32 72 37 38 4e 42 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 w2r78NBc5xjeambx9spnFixdjQg3IM.8
16bfe0 57 63 52 69 51 79 63 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 WcRiQycE0xyNN+81XHfqnHd4blsjDwSX
16c000 57 58 61 76 56 63 53 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 WXavVcStkNr/+XeTWYRUc+ZruwXtuhxk
16c020 59 7a 65 53 66 37 64 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 YzeSf7dNXGi.FSeUHM9h4ya7b6NnJSFd
16c040 35 74 30 64 43 79 35 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 5t0dCy5oGzuCr+yDZ4XUmFF0sbmZgIn/
16c060 66 33 67 5a 58 48 6c 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 f3gZXHlKYC6SQK5MNyosycdi.yA5d9zZ
16c080 62 79 75 41 6c 4a 51 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 byuAlJQG03RoHnHcAP9Dc1ew91Pq7P8y
16c0a0 46 31 6d 39 2f 71 53 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 F1m9/qS3fuQL39ZeatTXaw2ewh0qpKJ4
16c0c0 6a 6a 76 39 63 0a 4a 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 jjv9c.J2vhsE/zB+4ALtRZh8tSQZXq9E
16c0e0 66 58 37 6d 52 42 56 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 fX7mRBVXyNWQKV3WKdwrnuWih0hKWbt5
16c100 44 48 44 41 66 66 39 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 DHDAff9Yk2dDLWKMGw.sAvgnEzDHNb84
16c120 32 6d 31 52 30 61 42 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 2m1R0aBL6KCq9NjRHDEjf8tM7qtj3u1c
16c140 49 69 75 50 68 6e 50 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 IiuPhnPQCjY/MiQu12ZIvVS5ljFH4gx.
16c160 51 2b 36 49 48 64 66 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 Q+6IHdfGjjxDah2nGN59PRbxYvnKkKj9
16c180 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 53 45 52 .-----END.CERTIFICATE-----..USER
16c1a0 54 72 75 73 74 20 45 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 Trust.ECC.Certification.Authorit
16c1c0 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 3d y.==============================
16c1e0 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--
16c200 2d 2d 2d 0a 4d 49 49 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 ---.MIICjzCCAhWgAwIBAgIQXIuZxVqU
16c220 78 64 4a 78 56 74 37 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 xdJxVt7NiYDMJjAKBggqhkjOPQQDAzCB
16c240 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
16c260 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
16c280 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
16c2a0 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
16c2c0 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
16c2e0 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 48 68 63 4e 4d lmaWNhdGlv.biBBdXRob3JpdHkwHhcNM
16c300 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 45 34 4d 6a 4d 31 4f TAwMjAxMDAwMDAwWhcNMzgwMTE4MjM1O
16c320 54 55 35 57 6a 43 42 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 TU5WjCBiDELMAkGA1UEBhMC.VVMxEzAR
16c340 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
16c360 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
16c380 45 78 56 55 0a 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 ExVU.aGUgVVNFUlRSVVNUIE5ldHdvcms
16c3a0 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 46 51 30 4d xLjAsBgNVBAMTJVVTRVJUcnVzdCBFQ0M
16c3c0 67 51 32 56 79 64 47 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 gQ2VydGlmaWNhdGlv.biBBdXRob3JpdH
16c3e0 6b 77 64 6a 41 51 42 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 kwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAA
16c400 51 61 72 46 52 61 71 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 QarFRaqfloI+d61SRvU8Za2EurxtW2.0
16c420 65 5a 7a 63 61 37 64 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 eZzca7dnNYMYf3boIkDuAUU7FfO7l0/4
16c440 69 47 7a 7a 76 66 55 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 iGzzvfUinngo4N+LZfQYcTxmdwlkWOrf
16c460 7a 43 6a 74 48 44 69 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 zCjtHDix6Ez.nPO/LlxTsV+zfTJ/ijTj
16c480 65 58 6d 6a 51 6a 42 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 eXmjQjBAMB0GA1UdDgQWBBQ64QmG1M8Z
16c4a0 77 70 5a 32 64 45 6c 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 wpZ2dEl23OA1xmNjmjAOBgNV.HQ8BAf8
16c4c0 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 41 EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zA
16c4e0 4b 42 67 67 71 68 6b 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 KBggqhkjOPQQDAwNoADBlAjA2Z6EWCNz
16c500 6b 6c 77 42 42 0a 48 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 klwBB.HU6+4WMBzzuqQhFkoJ2UOQIReV
16c520 78 37 48 66 70 6b 75 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 x7Hfpkue4WQrO/isIJxOzksU0CMQDpKm
16c540 46 48 6a 46 4a 4b 53 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 FHjFJKS04YcPbWRNZu.9YO6bVi9JNlWS
16c560 4f 72 76 78 4b 4a 47 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 OrvxKJGgYhqOkbRqZtNyWHa0V1Xahg=.
16c580 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 6c 6f 62 61 -----END.CERTIFICATE-----..Globa
16c5a0 6c 53 69 67 6e 20 45 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 lSign.ECC.Root.CA.-.R4.=========
16c5c0 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
16c5e0 52 54 49 46 49 43 41 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 RTIFICATE-----.MIIB4TCCAYegAwIBA
16c600 67 49 52 4b 6a 69 6b 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 gIRKjikHJYKBN5CsiilC+g0mAIwCgYIK
16c620 6f 5a 49 7a 6a 30 45 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 oZIzj0EAwIwUDEkMCIGA1UECxMb.R2xv
16c640 59 6d 46 73 55 32 6c 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 YmFsU2lnbiBFQ0MgUm9vdCBDQSAtIFI0
16c660 4d 52 4d 77 45 51 59 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 MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMw
16c680 45 51 59 44 56 51 51 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 EQYDVQQD.EwpHbG9iYWxTaWduMB4XDTE
16c6a0 79 4d 54 45 78 4d 7a 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 yMTExMzAwMDAwMFoXDTM4MDExOTAzMTQ
16c6c0 77 4e 31 6f 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 wN1owUDEkMCIGA1UECxMb.R2xvYmFsU2
16c6e0 6c 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 lnbiBFQ0MgUm9vdCBDQSAtIFI0MRMwEQ
16c700 59 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 YDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQ
16c720 51 44 0a 45 77 70 48 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 QD.EwpHbG9iYWxTaWduMFkwEwYHKoZIz
16c740 6a 30 43 41 51 59 49 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 j0CAQYIKoZIzj0DAQcDQgAEuMZ5049sJ
16c760 51 36 66 4c 6a 6b 5a 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 Q6fLjkZHAOkrprl.OQcJFspjsbmG+IpX
16c780 77 56 66 4f 51 76 70 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 wVfOQvpzofdlQv8ewQCybnMO/8ch5Rik
16c7a0 71 74 6c 78 50 36 6a 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 qtlxP6jUuc6MHaNCMEAwDgYDVR0P.AQH
16c7c0 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 41 66 38 /BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8
16c7e0 77 48 51 59 44 56 52 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 wHQYDVR0OBBYEFFSwe61FuOJAf/sKbvu
16c800 2b 4d 38 6b 38 6f 34 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 +M8k8o4TV.MAoGCCqGSM49BAMCA0gAME
16c820 55 43 49 51 44 63 6b 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 UCIQDckqGgE6bPA7DmxCGXkPoUVy0D7O
16c840 34 38 30 32 37 4b 71 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 48027KqGx2vKLeuwIgJ6iF.JzWbVsaj8
16c860 6b 66 53 74 32 34 62 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 kfSt24bAgAXqmemFZHe+pTsewv4n4Q=.
16c880 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 6c 6f 62 61 -----END.CERTIFICATE-----..Globa
16c8a0 6c 53 69 67 6e 20 45 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 lSign.ECC.Root.CA.-.R5.=========
16c8c0 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
16c8e0 52 54 49 46 49 43 41 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 RTIFICATE-----.MIICHjCCAaSgAwIBA
16c900 67 49 52 59 46 6c 4a 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 gIRYFlJ4CYuu1X5CneKcflK2GwwCgYIK
16c920 6f 5a 49 7a 6a 30 45 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 oZIzj0EAwMwUDEkMCIGA1UECxMb.R2xv
16c940 59 6d 46 73 55 32 6c 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 YmFsU2lnbiBFQ0MgUm9vdCBDQSAtIFI1
16c960 4d 52 4d 77 45 51 59 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 MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMw
16c980 45 51 59 44 56 51 51 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 EQYDVQQD.EwpHbG9iYWxTaWduMB4XDTE
16c9a0 79 4d 54 45 78 4d 7a 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 yMTExMzAwMDAwMFoXDTM4MDExOTAzMTQ
16c9c0 77 4e 31 6f 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 wN1owUDEkMCIGA1UECxMb.R2xvYmFsU2
16c9e0 6c 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 lnbiBFQ0MgUm9vdCBDQSAtIFI1MRMwEQ
16ca00 59 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 YDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQ
16ca20 51 44 0a 45 77 70 48 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 QD.EwpHbG9iYWxTaWduMHYwEAYHKoZIz
16ca40 6a 30 43 41 51 59 46 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 j0CAQYFK4EEACIDYgAER0UOlvt9Xb/pO
16ca60 64 45 68 2b 4a 38 4c 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 dEh+J8LttV7HpI6.SFkc8GIxLcB6KP4a
16ca80 70 31 79 7a 74 73 79 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 p1yztsyX50XUWPrRd21DosCHZTQKH3rd
16caa0 36 7a 77 7a 6f 63 57 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 6zwzocWdTaRvQZU4f8kehOvRnkmS.h5S
16cac0 48 44 44 71 46 53 6d 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 HDDqFSmafnVmTTZdhBoZKo0IwQDAOBgN
16cae0 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
16cb00 77 41 77 45 42 2f 7a 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 wAwEB/zAd.BgNVHQ4EFgQUPeYpSJvqB8
16cb20 6f 68 52 45 6f 6d 33 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 ohREom3m7e0oPQn1kwCgYIKoZIzj0EAw
16cb40 4d 44 61 41 41 77 5a 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 MDaAAwZQIxAOVpEslu28Yx.uglB4Zf4+
16cb60 2f 32 61 34 6e 30 53 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 /2a4n0Sye18ZNPLBSWLVtmg515dTguDn
16cb80 46 74 32 4b 61 41 4a 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 Ft2KaAJJiFqYgIwcdK1j1zqO+F4CYWod
16cba0 5a 49 37 0a 79 46 7a 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 ZI7.yFz9SO8NdCKoCOJuxUnOxwy8p2Fp
16cbc0 38 66 63 37 34 53 72 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 8fc74SrL+SvzZpA3.-----END.CERTIF
16cbe0 49 43 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 ICATE-----..Staat.der.Nederlande
16cc00 6e 20 52 6f 6f 74 20 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 n.Root.CA.-.G3.=================
16cc20 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
16cc40 54 49 46 49 43 41 54 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 TIFICATE-----.MIIFdDCCA1ygAwIBAg
16cc60 49 45 41 4a 69 69 4f 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 IEAJiiOTANBgkqhkiG9w0BAQsFADBaMQ
16cc80 73 77 43 51 59 44 56 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 swCQYDVQQGEwJOTDEeMBwGA1UE.CgwVU
16cca0 33 52 68 59 58 51 67 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 3RhYXQgZGVyIE5lZGVybGFuZGVuMSswK
16ccc0 51 59 44 56 51 51 44 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 QYDVQQDDCJTdGFhdCBkZXIgTmVkZXJsY
16cce0 57 35 6b 5a 57 34 67 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 W5kZW4g.Um9vdCBDQSAtIEczMB4XDTEz
16cd00 4d 54 45 78 4e 44 45 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 MTExNDExMjg0MloXDTI4MTExMzIzMDAw
16cd20 4d 46 6f 77 57 6a 45 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 MFowWjELMAkGA1UEBhMC.TkwxHjAcBgN
16cd40 56 42 41 6f 4d 46 56 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 VBAoMFVN0YWF0IGRlciBOZWRlcmxhbmR
16cd60 6c 62 6a 45 72 4d 43 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 lbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5
16cd80 6c 0a 5a 47 56 79 62 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 l.ZGVybGFuZGVuIFJvb3QgQ0EgLSBHMz
16cda0 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 67 49 50 41 44 CCAiIwDQYJKoZIhvcNAQEBBQADggIPAD
16cdc0 43 43 41 67 6f 43 67 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 CCAgoCggIBAL4y.olQPcPssXFnrbMSkU
16cde0 65 69 46 4b 72 50 4d 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 eiFKrPMSjTysF/zDsccPVMeiAho2G89r
16ce00 63 4b 65 7a 49 4a 6e 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 cKezIJnByeHaHE6n3WWIkYFsO2t.x1ue
16ce20 4b 74 36 63 2f 44 72 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 Kt6c/DrGlaf1F2cY5y9JCAxcz+bMNO14
16ce40 2b 31 43 78 33 47 73 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 +1Cx3Gsy8KL+tjzk7FqXxz8ecAgwoNzF
16ce60 73 32 31 76 30 49 4a 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 s21v0IJy.EavSgWhZghe3eJJg+szeP4T
16ce80 72 6a 54 67 7a 6b 41 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 rjTgzkApyI/o1zCZxMdFyKJLZWyNtZrV
16cea0 74 42 30 4c 72 70 6a 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 tB0LrpjPOktvA9mxjeM3K.Tj215VKb8b
16cec0 34 37 35 6c 52 67 73 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 475lRgsGYeCasH/lSJEULR9yS6YHgamP
16cee0 66 4a 45 66 30 57 77 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 fJEf0WwTUaVHXvQ9Plrk7O53vDxk5hUU
16cf00 75 72 0a 6d 6b 56 4c 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 ur.mkVLoR9BvUhTFXFkC4az5S6+zqQbw
16cf20 53 6d 45 6f 72 58 4c 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 SmEorXLCCN2QyIkHxcE1G6cxvx/K2Ya7
16cf40 49 72 6c 31 73 39 4e 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 Irl1s9N9WMJtxU5.1nus6+N86U78dULI
16cf60 37 56 69 56 44 41 5a 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 7ViVDAZCopz35HCz33JvWjdAidiFpNfx
16cf80 43 39 35 44 47 64 52 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 C95DGdRKWCyMijmev4SH8RY7Ngzp.07T
16cfa0 4b 62 42 6c 42 55 67 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 KbBlBUgmhHbBqv4LvcFEhMtwFdozL92T
16cfc0 6b 41 31 43 76 6a 4a 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 kA1CvjJFnq8Xy7ljY3r735zHPbMk7ccH
16cfe0 56 69 4c 56 6c 76 4d 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 ViLVlvMDo.FxcHErVc0qsgk7TmgoNwNs
16d000 58 4e 6f 34 32 74 69 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 XNo42ti+yjwUOH5kPiNL6VizXtBznaqB
16d020 31 36 6e 7a 61 65 45 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 16nzaeErAMZRKQFWDZJkBE.41ZgpRDUa
16d040 6a 7a 39 51 64 77 4f 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 jz9QdwOWke275dhdU/Z/seyHdTtXUmzq
16d060 57 72 4c 5a 6f 51 54 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 WrLZoQT1Vyg3N9udwbRcXXIV2+vD3dbA
16d080 67 4d 42 0a 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 gMB.AAGjQjBAMA8GA1UdEwEB/wQFMAMB
16d0a0 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 30 47 41 31 55 64 Af8wDgYDVR0PAQH/BAQDAgEGMB0GA1Ud
16d0c0 44 67 51 57 42 42 52 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 DgQWBBRUrfrHkleu.yjWcLhL75LpdINy
16d0e0 55 56 7a 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 4d 4a 6d UVzANBgkqhkiG9w0BAQsFAAOCAgEAMJm
16d100 64 42 54 4c 49 58 67 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 dBTLIXg47mAE6iqTnB/d6+Oea31BD.U5
16d120 63 71 50 63 6f 38 52 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 cqPco8R5gu4RV78ZLzYdqQJRZlwJ9UXQ
16d140 34 44 4f 31 74 33 41 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 4DO1t3ApyEtg2YXzTdO2PCwyiBwpwpLi
16d160 6e 69 79 4d 4d 42 38 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 niyMMB8jPq.KqrMCQj3ZWfGzd/Ttiunv
16d180 63 7a 52 44 6e 42 66 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 czRDnBfuCPRy5FOCvTIeuXZYzbB1N/8I
16d1a0 70 66 33 59 46 33 71 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 pf3YF3qKS9Ysr1YvY2WTxB1.v0h7PVGH
16d1c0 6f 54 78 30 49 73 4c 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 oTx0IsL8B3+A3MSs/mrBcDCw6Y5p4ixp
16d1e0 67 5a 51 4a 75 74 33 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 gZQJut3+TcCDjJRYwEYgr5wfAvg1VUkv
16d200 52 74 54 41 0a 38 4b 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 RtTA.8KCWAg8zxXHzniN9lLf9OtMJgwY
16d220 68 2f 57 41 39 72 6a 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 h/WA9rjLA0u6NpvDntIJ8CsxwyXmA+P5
16d240 4d 39 7a 57 45 47 59 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 M9zWEGYox+wrZ13+b.8KKaa8MFSu1BYB
16d260 51 77 30 61 6f 52 51 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 Qw0aoRQm7TIwIEC8Zl3d1Sd9qBa7Ko+g
16d280 45 34 75 5a 62 71 4b 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 E4uZbqKmxnl4mUnrzhVNXkanjvSr0r.m
16d2a0 6a 31 41 66 73 62 41 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 j1AfsbAddJu+2gw7OyLnflJNZoaLNmzl
16d2c0 54 6e 56 48 70 4c 33 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 TnVHpL3prllL+U9bTpITAjc5CgSKL59N
16d2e0 56 7a 71 34 42 5a 2b 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 Vzq4BZ+Extq.1z7XnvwtdbLBFNUjA9tb
16d300 62 77 73 2b 65 43 38 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 bws+eC8N3jONFrdI54OagQ97wUNNVQQX
16d320 4f 45 70 52 31 56 6d 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 OEpR1VmiiXTTn74eS9fGbbeI.JG9gkaS
16d340 43 68 56 74 57 51 62 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 ChVtWQbzQRKtqE77RLFi3EjNYsjdj3BP
16d360 31 6c 42 30 2f 51 46 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 1lB0/QFH1T/U67cjF68IeHRaVesd+QnG
16d380 54 62 6b 73 56 0a 74 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 TbksV.tzDfqu1XhUisHWrdOWnk4Xl4vs
16d3a0 34 46 76 36 45 4d 39 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 4Fv6EM94B7IWcnMFk=.-----END.CERT
16d3c0 49 46 49 43 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 IFICATE-----..Staat.der.Nederlan
16d3e0 64 65 6e 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 3d 3d 3d den.EV.Root.CA.=================
16d400 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
16d420 46 49 43 41 54 45 2d 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 FICATE-----.MIIFcDCCA1igAwIBAgIE
16d440 41 4a 69 57 6a 54 41 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 AJiWjTANBgkqhkiG9w0BAQsFADBYMQsw
16d460 43 51 59 44 56 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 CQYDVQQGEwJOTDEeMBwGA1UE.CgwVU3R
16d480 68 59 58 51 67 5a 47 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 hYXQgZGVyIE5lZGVybGFuZGVuMSkwJwY
16d4a0 44 56 51 51 44 44 43 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 DVQQDDCBTdGFhdCBkZXIgTmVkZXJsYW5
16d4c0 6b 5a 57 34 67 0a 52 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 kZW4g.RVYgUm9vdCBDQTAeFw0xMDEyMD
16d4e0 67 78 4d 54 45 35 4d 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 gxMTE5MjlaFw0yMjEyMDgxMTEwMjhaMF
16d500 67 78 43 7a 41 4a 42 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 gxCzAJBgNVBAYTAk5M.MR4wHAYDVQQKD
16d520 42 56 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 78 4b BVTdGFhdCBkZXIgTmVkZXJsYW5kZW4xK
16d540 54 41 6e 42 67 4e 56 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 TAnBgNVBAMMIFN0YWF0IGRlciBOZWRl.
16d560 63 6d 78 68 62 6d 52 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 cmxhbmRlbiBFViBSb290IENBMIICIjAN
16d580 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 49 43 43 67 4b 43 BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
16d5a0 41 67 45 41 34 38 64 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 AgEA48d+ifkk.SzrSM4M1LGns3Amk41G
16d5c0 6f 4a 53 74 35 75 41 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 oJSt5uAg94JG6hIXGhaTK5skuU6TJJB7
16d5e0 39 56 57 5a 78 58 53 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 9VWZxXSzFYGgEt9nCUiY4iKTW.O0Cmws
16d600 30 2f 7a 5a 69 54 73 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 0/zZiTs1QUWJZV1VD+hq2kY39ch/aO5i
16d620 65 53 5a 78 65 53 41 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 eSZxeSAgMs3NZmdO3dZ//BYY1jTw+bbR
16d640 63 77 4a 75 2b 72 0a 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 cwJu+r.0h8QoPnFfxZpgQNH7R5ojXKhT
16d660 62 49 6d 78 72 70 73 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 bImxrpsX23Wr9GxE46prfNeaXUmGD5BK
16d680 79 46 2f 37 6f 74 64 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 yF/7otdBwadQ8QpCiv8.Kj6GyzyDOvnJ
16d6a0 44 64 72 46 6d 65 4b 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 DdrFmeK8eEEzduG/L13lpJhQDBXd4Pqc
16d6c0 66 7a 68 6f 30 4c 4b 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 fzho0LKmeqfRMb1+ilgnQ7O6M5HTp5gV
16d6e0 0a 58 4a 72 6d 30 77 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 .XJrm0w912fxBmJc+qiXbj5IusHsMX/F
16d700 6a 71 54 66 35 6d 33 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 jqTf5m3VpTCgmJdrV8hJwRVXj33NeN/U
16d720 68 62 4a 43 4f 4e 56 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 hbJCONVrJ0yPr.08C+eKxCKFhmpUZtcA
16d740 4c 58 45 50 6c 4c 56 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 LXEPlLVPxdhkqHz3/KRawRWrUgUY0viE
16d760 65 58 4f 63 44 50 75 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 eXOcDPusBCAUCZSCELa6fS/ZbV.0b5Gn
16d780 55 6e 67 43 36 61 67 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 UngC6agIk440ME8MLxwjyx1zNDFjFE7P
16d7a0 5a 51 49 5a 43 5a 68 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 ZQIZCZhfbnDZY8UnCHQqv0XcgOPvZuM5
16d7c0 6c 35 54 6e 72 6d 64 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 l5Tnrmd.74K74bzickFbIZTTRTeU0d8J
16d7e0 4f 56 33 6e 49 36 71 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 OV3nI6qaHcptqAqGhYqCvkIH1vI4gnPa
16d800 68 31 76 6c 50 4e 4f 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 h1vlPNOePqc7nvQDs/nx.fRN0Av+7oeX
16d820 36 41 48 6b 63 70 6d 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 6AHkcpmZBiFxgV6YuCcS6/ZrPpx9Aw7v
16d840 4d 57 67 70 56 53 7a 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 MWgpVSzs4dlG4Y4uElBbmVvMCAwEAAaN
16d860 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 42 67 C.MEAwDwYDVR0TAQH/BAUwAwEB/zAOBg
16d880 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 46 50 NVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFP
16d8a0 36 72 41 4a 43 59 6e 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 6rAJCYniT8qcwa.ivsnuL8wbqg7MA0GC
16d8c0 53 71 47 53 49 62 33 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 SqGSIb3DQEBCwUAA4ICAQDPdyxuVr5Os
16d8e0 37 61 45 41 4a 53 72 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 7aEAJSrR8kN0nbHhp8dB9O2tLsI.eK9p
16d900 30 67 74 4a 33 6a 50 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 0gtJ3jPFrK3CiAJ9Brc1AsFgyb/E6JTe
16d920 31 4e 4f 70 45 79 56 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 1NOpEyVa/m6irn0F3H3zbPB+po3u2dfO
16d940 57 42 66 6f 71 53 6d 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 WBfoqSmu.c0iH55vKbimhZF8ZE/euBhD
16d960 2f 55 63 61 62 54 56 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 /UcabTVUlT5OZEAFTdfETzsemQUHSv4i
16d980 6c 66 30 58 38 72 4c 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 lf0X8rLiltTMMgsT7B/Zq.5SWEXwbKwY
16d9a0 59 35 45 64 74 59 7a 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 Y5EdtYzXc7LMJMD16a4/CrPmEbUCTCwP
16d9c0 54 78 47 66 41 52 4b 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 TxGfARKbalGAKb12NMcIxHowNDXLldRq
16d9e0 41 4e 0a 62 2f 39 5a 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 AN.b/9Zjr7dn3LDWyvfjFvO5QxGbJKyC
16da00 71 4e 4d 56 45 49 59 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 qNMVEIYFRIYvdr8unRu/8G2oGTYqV9Vr
16da20 70 39 63 61 6e 61 57 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 p9canaW2HNnh/tN.f1zuacpzEPuKqf2e
16da40 76 54 59 34 53 55 6d 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 vTY4SUmH9A4U8OmHuD+nT3pajnnUk+S7
16da60 61 46 4b 45 72 47 7a 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 aFKErGzp85hwVXIy+TSrK0m1zSBi.5Dp
16da80 36 5a 32 4f 72 6c 74 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 6Z2Orltxtrpfs/J92VoguZs9btsmksNc
16daa0 46 75 75 45 6e 4c 35 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 FuuEnL5O7Jiqik7Ab846+HUCjuTaPPoI
16dac0 61 47 6c 36 49 36 6c 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 aGl6I6lD4.WeKDRikL40Rc4ZW2aZCaFG
16dae0 2b 58 72 6f 48 50 61 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 +XroHPaO+Zmr615+F/+PoTRxZMzG0IQO
16db00 65 4c 65 47 39 51 67 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 eLeG9QgkRQP2YGiqtDhFZK.DyAthg710
16db20 74 76 53 65 6f 70 4c 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 tvSeopLzaXoTvFeJiUBWSOgftL2fiFX1
16db40 79 65 38 46 56 64 4d 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 ye8FVdMpEbB4IMeDExNH08GGeL5qPQ6g
16db60 71 47 79 0a 65 55 4e 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 qGy.eUN51q1veieQA6TqJIc/2b3Z6fJf
16db80 55 45 6b 63 37 75 7a 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 UEkc7uzXLg==.-----END.CERTIFICAT
16dba0 45 2d 2d 2d 2d 2d 0a 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 E-----..IdenTrust.Commercial.Roo
16dbc0 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 3d 3d 3d 3d t.CA.1.=========================
16dbe0 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----
16dc00 2d 0a 4d 49 49 46 59 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 -.MIIFYDCCA0igAwIBAgIQCgFCgAAAAU
16dc20 55 6a 79 45 53 31 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 UjyES1AAAAAjANBgkqhkiG9w0BAQsFAD
16dc40 42 4b 4d 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 BKMQswCQYDVQQG.EwJVUzESMBAGA1UEC
16dc60 68 4d 4a 53 57 52 6c 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 hMJSWRlblRydXN0MScwJQYDVQQDEx5JZ
16dc80 47 56 75 56 48 4a 31 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 GVuVHJ1c3QgQ29tbWVyY2lhbCBS.b290
16dca0 49 45 4e 42 49 44 45 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 IENBIDEwHhcNMTQwMTE2MTgxMjIzWhcN
16dcc0 4d 7a 51 77 4d 54 45 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 MzQwMTE2MTgxMjIzWjBKMQswCQYDVQQG
16dce0 45 77 4a 56 55 7a 45 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 EwJVUzES.MBAGA1UEChMJSWRlblRydXN
16dd00 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 63 33 51 67 51 32 39 0MScwJQYDVQQDEx5JZGVuVHJ1c3QgQ29
16dd20 74 62 57 56 79 59 32 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 tbWVyY2lhbCBSb290IENB.IDEwggIiMA
16dd40 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
16dd60 49 43 41 51 43 6e 55 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 ICAQCnUBneP5k91DNG8W9RYYKyqU+PZ4
16dd80 6c 64 0a 68 4e 6c 54 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 ld.hNlT3Qwo2dfw/66VQ3KZ+bVdfIrBQ
16dda0 75 45 78 55 48 54 52 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 uExUHTRgQ18zZshq0PirK1ehm7zCYofW
16ddc0 6a 4b 39 6f 75 75 55 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 jK9ouuU+ehcCuz/.mNKvcbO0U59Oh++S
16dde0 76 4c 33 73 54 7a 49 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 vL3sTzIwiEsXXlfEU8L2ApeN2WIrvyQf
16de00 59 6f 33 66 77 37 67 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 Yo3fw7gpS0l4PJNgiCL8mdo2yMKi.1Cx
16de20 55 41 47 63 31 62 6e 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 UAGc1bnO/AljwpN3lsKImesrgNqUZFvX
16de40 39 74 2b 2b 75 50 30 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 9t++uP0D1bVoE/c40yiTcdCMbXTMTEl3
16de60 45 41 53 58 32 4d 4e 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 EASX2MN0C.XZ/g1Ue9tOsbobtJSdifWw
16de80 4c 7a 69 75 51 6b 6b 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 LziuQkkORiT0/Br4sOdBeo0XKIanoBSc
16dea0 79 30 52 6e 6e 47 46 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 y0RnnGF7HamB4HWfp1IYVl.3ZBWzvurp
16dec0 57 43 64 78 4a 33 35 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 WCdxJ35UrCLvYf5jysjCiN2O/cz4ckA8
16dee0 32 6e 35 53 36 4c 67 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 2n5S6LgTrx+kzmEB/dEcH7+B1rlsazRG
16df00 4d 7a 79 0a 4e 65 56 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 Mzy.NeVJSQjKVsk9+w8YfYs7wRPCTY/J
16df20 54 77 34 33 36 52 2b 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 Tw436R+hDmrfYi7LNQZReSzIJTj0+kun
16df40 69 56 79 63 30 75 4d 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 iVyc0uMNOYZKdHzV.WYfCP04MXFL0Pfd
16df60 53 67 76 48 71 6f 36 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 SgvHqo6z9STQaKPNBiDoT7uje/5kdX7r
16df80 4c 36 42 37 79 75 56 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 L6B7yuVBgwDHTc+XvvqDtMwt0viAg.xG
16dfa0 64 73 38 41 67 44 65 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 ds8AgDelWAf0ZOlqf0Hj7h9tgJ4TNkK2
16dfc0 50 58 4d 6c 36 66 2b 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 PXMl6f+cB7D3hvl7yTmvmcEpB4eoCHFd
16dfe0 64 79 64 4a 78 56 64 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 dydJxVdHix.uuFucAS6T6C6aMN7/zHwc
16e000 7a 30 39 6c 43 71 78 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 z09lCqxC0EOoP5NiGVreTO01wIDAQABo
16e020 30 49 77 51 44 41 4f 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 0IwQDAOBgNVHQ8BAf8EBAMC.AQYwDwYD
16e040 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 46 67 51 55 VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU
16e060 37 55 51 5a 77 4e 50 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 7UQZwNPwBovupHu+QucmVMiONnYwDQYJ
16e080 4b 6f 5a 49 0a 68 76 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 KoZI.hvcNAQELBQADggIBAA2ukDL2pkt
16e0a0 38 52 48 59 5a 59 52 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 8RHYZYR4nKM1eVO8lvOMIkPkp165oCOG
16e0c0 55 41 46 6a 76 4c 69 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 UAFjvLi5+U1KMtlwH.6oi6mYtQlNeCgN
16e0e0 39 68 43 51 43 54 72 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 9hCQCTrQ0U5s7B8jeUeLBfnLOic7iPBZ
16e100 4d 34 7a 59 30 2b 73 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 M4zY0+sLj7wM+x8uwtLRvM7Kqas6pg.g
16e120 68 73 74 4f 38 4f 45 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 hstO8OEPVeKlh6cdbjTMM1gCIOQ045U8
16e140 55 31 6d 77 46 31 30 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 U1mwF10A0Cj7oV+wh93nAbowacYXVKV7
16e160 63 6e 64 4a 5a 35 74 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 cndJZ5t+qnt.ozo00Fl72u1Q8zW/7esU
16e180 54 54 48 48 59 50 54 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 TTHHYPTa8Yec4kjixsU3+wYQ+nVZZjFH
16e1a0 4b 64 70 32 6d 68 7a 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 Kdp2mhzpgq7vmrlR94gjmmmV.YjzlVYA
16e1c0 32 31 31 51 43 2f 2f 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 211QC//G5Xc7UI2/YRYRKW2XviQzdFKc
16e1e0 67 79 78 69 6c 4a 62 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 gyxilJbQN+QHwotL0AMh0jqEqSI5l2xP
16e200 45 34 69 55 58 0a 66 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 E4iUX.feu+h1sXIFRRk0pTAwvsXcoz7W
16e220 4c 39 52 63 63 76 57 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 L9RccvW9xYoIA55vrX/hMUpu09lEpCdN
16e240 54 44 64 31 6c 7a 7a 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 TDd1lzzY9GvlU47/ro.kTLql1gEIt44w
16e260 38 79 38 62 63 6b 7a 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 8y8bckzOmoKaT+gyOpyj4xjhiO9bTyWn
16e280 70 58 67 53 55 79 71 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 pXgSUyqorkqG5w2gXjtw+hG4iZZRHUe.
16e2a0 32 58 57 4a 55 63 30 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 2XWJUc0QhJ1hYMtd+ZciTY6Y5uN/9lu7
16e2c0 72 73 33 4b 53 6f 46 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 rs3KSoFrXgvzUeF0K+l+J6fZmUlO+KWA
16e2e0 32 79 55 50 48 47 4e 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 2yUPHGNiiskz.Z2s8EIPGrd6ozRaOjfA
16e300 48 4e 33 47 66 38 71 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 HN3Gf8qv8QfXBi+wAN10J5U6A7/qxXDg
16e320 47 70 52 74 4b 34 64 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 GpRtK4dw4LTzcqx+QGtVKnO7R.cGzM7v
16e340 52 58 2b 42 69 36 68 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 RX+Bi6hG6H.-----END.CERTIFICATE-
16e360 2d 2d 2d 2d 0a 0a 49 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 ----..IdenTrust.Public.Sector.Ro
16e380 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 3d 3d 3d ot.CA.1.========================
16e3a0 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
16e3c0 2d 2d 2d 2d 2d 0a 4d 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 -----.MIIFZjCCA06gAwIBAgIQCgFCgA
16e3e0 41 41 41 55 55 6a 7a 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 AAAUUjz0Z8AAAAAjANBgkqhkiG9w0BAQ
16e400 73 46 41 44 42 4e 4d 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 sFADBNMQswCQYDVQQG.EwJVUzESMBAGA
16e420 31 55 45 43 68 4d 4a 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 1UEChMJSWRlblRydXN0MSowKAYDVQQDE
16e440 79 46 4a 5a 47 56 75 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 yFJZGVuVHJ1c3QgUHVibGljIFNlY3Rv.
16e460 63 69 42 53 62 32 39 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 ciBSb290IENBIDEwHhcNMTQwMTE2MTc1
16e480 4d 7a 4d 79 57 68 63 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 MzMyWhcNMzQwMTE2MTc1MzMyWjBNMQsw
16e4a0 43 51 59 44 56 51 51 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 CQYDVQQGEwJV.UzESMBAGA1UEChMJSWR
16e4c0 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 56 48 4a lblRydXN0MSowKAYDVQQDEyFJZGVuVHJ
16e4e0 31 63 33 51 67 55 48 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 1c3QgUHVibGljIFNlY3RvciBS.b290IE
16e500 4e 42 49 44 45 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 NBIDEwggIiMA0GCSqGSIb3DQEBAQUAA4
16e520 49 43 44 77 41 77 67 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 ICDwAwggIKAoICAQC2IpT8pEiv6EdrCv
16e540 73 6e 64 75 54 79 0a 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 snduTy.P4o7ekosMSqMjbCpwzFrqHd2h
16e560 43 61 32 72 49 46 43 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 Ca2rIFCDQjrVVi7evi8ZX3yoG2LqEfpY
16e580 6e 59 65 45 65 34 49 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 nYeEe4IFNGyRBb06tD6.Hi9e28tzQa68
16e5a0 41 4c 42 4b 4b 30 43 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 ALBKK0CyrOE7S8ItneShm+waOh7wCLPQ
16e5c0 35 43 51 31 42 35 2b 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 5CQ1B5+ctMlSbdsHyo+1W/CD80/HLaXI
16e5e0 0a 72 63 75 56 49 4b 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 .rcuVIKQxKFdYWuSNG5qrng0M8gozOSI
16e600 35 43 70 63 75 38 31 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 5Cpcu81N3uURF/YTLNiCBWS2ab21ISGH
16e620 4b 54 4e 39 54 30 61 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 KTN9T0a9SvESf.qy9rg3LvdYDaBjMbXc
16e640 6a 61 59 38 5a 4e 7a 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 jaY8ZNzaxmMc3R3j6HEDbhuaR672BQss
16e660 76 4b 70 6c 62 67 4e 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 vKplbgN6+rNBM5Jeg5ZuSYeqoS.mJxZZ
16e680 6f 59 2b 72 66 47 77 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 oY+rfGwyj4GD3vwEUs3oERte8uojHH01
16e6a0 62 57 52 4e 73 7a 77 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 bWRNszwFcYr3lEXsZdMUD2xlVl8BX0tI
16e6c0 64 55 41 76 77 46 6e 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 dUAvwFn.ol57plzy9yLxkA2T26pEUWbM
16e6e0 66 58 59 44 36 32 71 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 fXYD62qoKjgZl3YNa4ph+bz27nb9cCvd
16e700 4b 54 7a 34 43 68 35 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 KTz4Ch5bQhyLVi9VGxyh.LrXHFub4qjy
16e720 53 6a 6d 6d 32 41 63 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 Sjmm2AcG1hp2JDws4lFTo6tyePSW8Uyb
16e740 74 31 61 73 35 71 73 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 t1as5qsVATFSrsrTZ2fjXctscvG29ZV/
16e760 76 0a 69 44 55 71 5a 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 v.iDUqZi/u9rNl8DONfJhBaUYPQxxp+p
16e780 75 31 30 47 46 71 7a 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 u10GFqzcpL2UyQRqsVWaFHVCkugyhfHM
16e7a0 4b 69 71 33 49 58 41 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 Kiq3IXAAaOReyL.4jM9f9oZRORicsPfI
16e7c0 73 62 79 56 74 54 64 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 sbyVtTdX5Vy7W1f90gDW/3FKqD2cyOEE
16e7e0 42 73 42 35 77 49 44 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 BsB5wIDAQABo0IwQDAOBgNVHQ8B.Af8E
16e800 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 41 64 BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAd
16e820 42 67 4e 56 48 51 34 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 BgNVHQ4EFgQU43HgntinQtnbcZFrlJPr
16e840 77 36 50 52 46 4b 4d 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 w6PRFKMw.DQYJKoZIhvcNAQELBQADggI
16e860 42 41 45 66 36 33 51 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 BAEf63QqwEZE4rU1d9+UOl1QZgkiHVIy
16e880 71 5a 4a 6e 59 57 76 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 qZJnYWv6IAcVYpZmxI1Qj.t2odIFflAW
16e8a0 4a 42 46 39 4d 4a 32 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 JBF9MJ23XLblSQdf4an4EKwt3X9wnQW3
16e8c0 49 56 35 42 34 4a 61 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 IV5B4Jaj0z8yGa5hV+rVHVDRDtfULAj+
16e8e0 37 41 0a 6d 67 6a 56 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 7A.mgjVQdZcDiFpboBhDhXAuM/FSRJSz
16e900 4c 34 36 7a 4e 51 75 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 L46zNQuOAXeNf0fb7iAaJg9TaDKQGXSc
16e920 33 7a 31 69 39 6b 4b 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 3z1i9kKlT/YPyNt.GtEqJBnZhbMX73hu
16e940 71 56 6a 52 49 39 50 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 qVjRI9PHE+1yJX9dsXNw0H8GlwmEKYBh
16e960 48 66 70 65 2f 33 4f 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 Hfpe/3OsoOOJuBxxFcbeMX8S3OFt.m6/
16e980 6e 36 4a 39 31 65 45 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 n6J91eEyrRjuazr8FGF1NFTwWmhlQBJq
16e9a0 79 6d 6d 39 6c 69 31 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 ymm9li1JfPFgEKCXAZmExfrngdbkaqIH
16e9c0 57 63 68 65 7a 78 51 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 WchezxQMx.NRF4eKLg6TCMf4DfWN88ui
16e9e0 65 57 34 6f 41 30 62 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 eW4oA0beOY02QnrEh+KHdcxiVhJfiFDG
16ea00 58 36 78 44 49 76 70 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 X6xDIvpZgF5PgLZxYWxoK4.Mhn5+bl53
16ea20 42 2f 4e 36 36 2b 72 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 B/N66+rDt0b20XkeucC4pVd/GnwU2lhl
16ea40 58 56 35 43 31 35 56 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 XV5C15V5jgclKlZM57IcXR5f1GJtshqu
16ea60 44 44 49 0a 61 6a 6a 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 DDI.ajjDbp7hNxbqBWJMWxJH7ae0s1hW
16ea80 78 30 6e 7a 66 78 4a 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 x0nzfxJoCTFx8G34Tkf71oXuxVhAGaQd
16eaa0 70 2f 6c 4c 51 7a 66 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 p/lLQzfcaFpPz+vC.ZHTetBXZ9FRUGi8
16eac0 63 31 35 64 78 56 4a 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 c15dxVJCO2SCdUyt/q4/i6jC8UDfv8Ue
16eae0 31 66 58 77 73 42 4f 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 1fXwsBOxonbRJRBD0ckscZOf85muQ.3W
16eb00 6c 39 61 66 30 41 56 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 l9af0AVqW3rLatt8o+Ae+c.-----END.
16eb20 43 45 52 54 49 46 49 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 CERTIFICATE-----..Entrust.Root.C
16eb40 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 0a 3d 3d 3d 3d ertification.Authority.-.G2.====
16eb60 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
16eb80 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----
16eba0 2d 0a 4d 49 49 45 50 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 -.MIIEPjCCAyagAwIBAgIESlOMKDANBg
16ebc0 6b 71 68 6b 69 47 39 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 kqhkiG9w0BAQsFADCBvjELMAkGA1UEBh
16ebe0 4d 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 MCVVMxFjAUBgNV.BAoTDUVudHJ1c3QsI
16ec00 45 6c 75 59 79 34 78 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 EluYy4xKDAmBgNVBAsTH1NlZSB3d3cuZ
16ec20 57 35 30 63 6e 56 7a 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 W50cnVzdC5uZXQvbGVnYWwtdGVy.bXMx
16ec40 4f 54 41 33 42 67 4e 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 OTA3BgNVBAsTMChjKSAyMDA5IEVudHJ1
16ec60 63 33 51 73 49 45 6c 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 c3QsIEluYy4gLSBmb3IgYXV0aG9yaXpl
16ec80 5a 43 42 31 63 32 55 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 ZCB1c2Ug.b25seTEyMDAGA1UEAxMpRW5
16eca0 30 63 6e 56 7a 64 43 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 0cnVzdCBSb290IENlcnRpZmljYXRpb24
16ecc0 67 51 58 56 30 61 47 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 gQXV0aG9yaXR5IC0gRzIw.HhcNMDkwNz
16ece0 41 33 4d 54 63 79 4e 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 A3MTcyNTU0WhcNMzAxMjA3MTc1NTU0Wj
16ed00 43 42 76 6a 45 4c 4d 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 CBvjELMAkGA1UEBhMCVVMxFjAUBgNVBA
16ed20 6f 54 0a 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 56 42 oT.DUVudHJ1c3QsIEluYy4xKDAmBgNVB
16ed40 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 76 62 AsTH1NlZSB3d3cuZW50cnVzdC5uZXQvb
16ed60 47 56 6e 59 57 77 74 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 GVnYWwtdGVybXMx.OTA3BgNVBAsTMChj
16ed80 4b 53 41 79 4d 44 41 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 KSAyMDA5IEVudHJ1c3QsIEluYy4gLSBm
16eda0 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 32 35 73 0a 65 54 45 b3IgYXV0aG9yaXplZCB1c2Ugb25s.eTE
16edc0 79 4d 44 41 47 41 31 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 yMDAGA1UEAxMpRW50cnVzdCBSb290IEN
16ede0 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 43 30 lcnRpZmljYXRpb24gQXV0aG9yaXR5IC0
16ee00 67 52 7a 49 77 67 67 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 gRzIwggEi.MA0GCSqGSIb3DQEBAQUAA4
16ee20 49 42 44 77 41 77 67 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 IBDwAwggEKAoIBAQC6hLZy254Ma+KZ6T
16ee40 41 42 70 33 62 71 4d 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 ABp3bqMriVQRrJ2mFOWHLP./vaCeb9zY
16ee60 51 59 4b 70 53 66 59 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 QYKpSfYs1/TRU4cctZOMvJyig/3gxnQa
16ee80 6f 43 41 41 45 55 65 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 oCAAEUesMfnmr8SVycco2gvCoe9amsOX
16eea0 6d 58 7a 0a 48 48 66 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 mXz.HHfV1IWNcCG0szLni6LVhjkCsbjS
16eec0 52 38 37 6b 79 55 6e 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 R87kyUnEO6fe+1R9V77w6G7CebI6C1Xi
16eee0 55 4a 67 57 4d 68 4e 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 UJgWMhNcL3hWwcKU.s/Ja5CeanyTXxuz
16ef00 51 6d 79 57 43 34 38 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 QmyWC48zCxEXFjJd6BmsqEZ+pCm5IO2/
16ef20 62 31 42 45 5a 51 76 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 b1BEZQvePB7/1U1+cPvQXLOZprE4y.TG
16ef40 4a 33 36 72 66 6f 35 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 J36rfo5bs0vBmLrpxR57d+tVOxMyLlbc
16ef60 39 77 50 42 72 36 34 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 9wPBr64ptntoP0jaWvYkxN4FisZDQSA/
16ef80 69 32 6a 5a 52 6a 4a 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 i2jZRjJKRx.AgMBAAGjQjBAMA4GA1UdD
16efa0 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
16efc0 51 48 2f 4d 42 30 47 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 QH/MB0GA1UdDgQWBBRqciZ6.0B7vfec7
16efe0 61 56 48 55 62 49 32 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 aVHUbI2fkBJmqzANBgkqhkiG9w0BAQsF
16f000 41 41 4f 43 41 51 45 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 AAOCAQEAeZ8dlsa2eT8ijYfThwMEYGpr
16f020 6d 69 35 5a 0a 69 58 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 mi5Z.iXMRrEPR9RP/jTkrwPK9T3CMqS/
16f040 71 46 38 51 4c 56 4a 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 qF8QLVJ7UG5aYMzyorWKiAHarWWluBh1
16f060 2b 78 4c 6c 45 6a 5a 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 +xLlEjZivEtRh2woZ.Rkfz6/djwUAFQK
16f080 58 53 74 2f 53 31 6d 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 XSt/S1mja/qYh2iARVBCuch38aNzx+La
16f0a0 55 61 32 4e 53 4a 58 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 Ua2NSJXsq9rD1s2G2v1fN2D807iDgi.n
16f0c0 57 79 54 6d 73 51 39 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 WyTmsQ9v4IbZT+mD12q/OWyFcq1rca8P
16f0e0 64 43 45 36 4f 6f 47 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 dCE6OoGcrBNOTJ4vz4RnAuknZoh8/CbC
16f100 7a 42 34 32 38 48 63 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 zB428Hch0P+.vGOaysXCHMnHjf87ElgI
16f120 35 72 59 39 37 48 6f 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 5rY97HosTvuDls4MPGmHVHOkc8KT/1EQ
16f140 72 42 56 55 41 64 6a 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 rBVUAdj8BbGJoX90g5pJ19xO.e4pIb4t
16f160 46 39 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 F9g==.-----END.CERTIFICATE-----.
16f180 0a 45 6e 74 72 75 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 .Entrust.Root.Certification.Auth
16f1a0 6f 72 69 74 79 20 2d 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 ority.-.EC1.====================
16f1c0 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
16f1e0 4e 20 43 45 52 54 49 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 N.CERTIFICATE-----.MIIC+TCCAoCgA
16f200 77 49 42 41 67 49 4e 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 wIBAgINAKaLeSkAAAAAUNCR+TAKBggqh
16f220 6b 6a 4f 50 51 51 44 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 kjOPQQDAzCBvzELMAkGA1UEBhMCVVMx.
16f240 46 6a 41 55 42 67 4e 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 FjAUBgNVBAoTDUVudHJ1c3QsIEluYy4x
16f260 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
16f280 64 43 35 75 5a 58 51 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 dC5uZXQvbGVn.YWwtdGVybXMxOTA3BgN
16f2a0 56 42 41 73 54 4d 43 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 VBAsTMChjKSAyMDEyIEVudHJ1c3QsIEl
16f2c0 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 0a 5a 43 42 31 63 32 uYy4gLSBmb3IgYXV0aG9yaXpl.ZCB1c2
16f2e0 55 67 62 32 35 73 65 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 Ugb25seTEzMDEGA1UEAxMqRW50cnVzdC
16f300 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
16f320 39 79 61 58 52 35 0a 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 9yaXR5.IC0gRUMxMB4XDTEyMTIxODE1M
16f340 6a 55 7a 4e 6c 6f 58 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 jUzNloXDTM3MTIxODE1NTUzNlowgb8xC
16f360 7a 41 4a 42 67 4e 56 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 zAJBgNVBAYTAlVTMRYw.FAYDVQQKEw1F
16f380 62 6e 52 79 64 58 4e 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 bnRydXN0LCBJbmMuMSgwJgYDVQQLEx9T
16f3a0 5a 57 55 67 64 33 64 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 ZWUgd3d3LmVudHJ1c3QubmV0L2xlZ2Fs
16f3c0 0a 4c 58 52 6c 63 6d 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 .LXRlcm1zMTkwNwYDVQQLEzAoYykgMjA
16f3e0 78 4d 69 42 46 62 6e 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 xMiBFbnRydXN0LCBJbmMuIC0gZm9yIGF
16f400 31 64 47 68 76 63 6d 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 1dGhvcml6ZWQg.dXNlIG9ubHkxMzAxBg
16f420 4e 56 42 41 4d 54 4b 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 NVBAMTKkVudHJ1c3QgUm9vdCBDZXJ0aW
16f440 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 0a 49 45 56 44 4d ZpY2F0aW9uIEF1dGhvcml0eSAt.IEVDM
16f460 54 42 32 4d 42 41 47 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 TB2MBAGByqGSM49AgEGBSuBBAAiA2IAB
16f480 49 51 54 79 64 43 36 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 IQTydC6bUF74mzQ61VfZgIaJPRbiWlH4
16f4a0 37 6a 43 66 66 48 79 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 7jCffHy.AsWfoPZb1YsGGYZPUxBtByQn
16f4c0 6f 61 44 34 31 55 63 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 oaD41UcZYUx9ypMn6nQM72+WCf5j7HBd
16f4e0 4e 71 31 6e 64 36 37 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 Nq1nd67JnXxVRDqiY1Ef.9eNi1KlHBz7
16f500 4d 49 4b 4e 43 4d 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 MIKNCMEAwDgYDVR0PAQH/BAQDAgEGMA8
16f520 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 42 59 GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBY
16f540 45 0a 46 4c 64 6a 35 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 E.FLdj5xrdjekIplWDpOBqUEFlEUJJMA
16f560 6f 47 43 43 71 47 53 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 oGCCqGSM49BAMDA2cAMGQCMGF52OVCR9
16f580 38 63 72 6c 4f 5a 46 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 8crlOZF7ZvHH3h.vxGU0QOIdeSNiaSKd
16f5a0 30 62 65 62 57 48 76 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 0bebWHvAvX7td/M/k7//qnmpwIwW5nXh
16f5c0 54 63 47 74 58 73 49 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 TcGtXsI/esni0qU+eH6p44mCOh8.kmht
16f5e0 63 39 68 76 4a 71 77 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 c9hvJqwhAriZtyZBWyVgrtBIGu4G.---
16f600 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 46 43 41 20 45 56 20 --END.CERTIFICATE-----..CFCA.EV.
16f620 52 4f 4f 54 0a 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 ROOT.============.-----BEGIN.CER
16f640 54 49 46 49 43 41 54 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 TIFICATE-----.MIIFjTCCA3WgAwIBAg
16f660 49 45 47 45 72 4d 31 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 IEGErM1jANBgkqhkiG9w0BAQsFADBWMQ
16f680 73 77 43 51 59 44 56 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 swCQYDVQQGEwJDTjEwMC4GA1UE.CgwnQ
16f6a0 32 68 70 62 6d 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 2hpbmEgRmluYW5jaWFsIENlcnRpZmljY
16f6c0 58 52 70 62 32 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 44 XRpb24gQXV0aG9yaXR5MRUwEwYDVQQDD
16f6e0 41 78 44 52 6b 4e 42 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 AxDRkNB.IEVWIFJPT1QwHhcNMTIwODA4
16f700 4d 44 4d 77 4e 7a 41 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 MDMwNzAxWhcNMjkxMjMxMDMwNzAxWjBW
16f720 4d 51 73 77 43 51 59 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 MQswCQYDVQQGEwJDTjEw.MC4GA1UECgw
16f740 6e 51 32 68 70 62 6d 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 nQ2hpbmEgRmluYW5jaWFsIENlcnRpZml
16f760 6a 59 58 52 70 62 32 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 jYXRpb24gQXV0aG9yaXR5MRUwEwYDVQQ
16f780 44 0a 44 41 78 44 52 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 D.DAxDRkNBIEVWIFJPT1QwggIiMA0GCS
16f7a0 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 49 43 41 51 qGSIb3DQEBAQUAA4ICDwAwggIKAoICAQ
16f7c0 44 58 58 57 76 4e 45 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 DXXWvNED8fBVnV.BU03sQ7smCuOFR36k
16f7e0 30 73 58 67 69 46 78 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 0sXgiFxEFLXUWRwFsJVaU2OFW2fvwwbw
16f800 75 43 6a 5a 39 59 4d 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 uCjZ9YMrM8irq93VCpLTIpTUnrD.7i7e
16f820 73 33 45 6c 77 65 6c 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 s3ElweldPe6hL6P3KjzJIx1qqx2hp/Hz
16f840 37 4b 44 56 52 4d 38 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 7KDVRM8Vz3IvHWOX6Jn5/ZOkVIBMUtRS
16f860 71 79 35 4a 33 35 44 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 qy5J35DN.uF++P96hyk0g1CXohClTt7G
16f880 49 48 2f 2f 36 32 70 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 IH//62pCfCqktQT+x8Rgp7hZZLDRJGqg
16f8a0 47 31 36 69 49 30 67 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 G16iI0gNyejLi6mhNbiyW.ZXvKWfry4t
16f8c0 33 75 4d 43 7a 37 7a 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 3uMCz7zEasxGPrb382KzRzEpR/38wmnv
16f8e0 46 79 58 56 42 6c 57 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 FyXVBlWY9ps4deMm/DGIq1lY+wejfeWk
16f900 55 37 0a 78 7a 62 68 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 U7.xzbh72fROdOXW3NiGUgthxwG+3SYI
16f920 45 6c 7a 38 41 58 53 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 Elz8AXSG7Ggo7cbcNOIabla1jj0Ytwli
16f940 33 69 2f 2b 4f 68 2b 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 3i/+Oh+uFzJlU9f.py25IGvPa931DfSC
16f960 74 2f 53 79 5a 69 34 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 t/SyZi4QKPaXWnuWFo8BGS1sbn85WAZk
16f980 67 77 47 44 67 38 4e 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 gwGDg8NNkt0yxoekN+kWzqotaK8K.gWU
16f9a0 36 63 4d 47 62 72 55 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 6cMGbrU1tVMoqLUuFG7OA5nBFDWteNfB
16f9c0 2f 4f 37 69 63 35 41 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 /O7ic5ARwiRIlk9oKmSJgamNgTnYGmE6
16f9e0 39 67 36 30 64 57 49 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 9g60dWIol.hdLHZR4tjsbftsbhf4oEIR
16fa00 55 70 64 50 41 2b 6e 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 UpdPA+nJCdDC7xij5aqgwJHsfVPKPtl8
16fa20 4d 65 4e 50 6f 34 2b 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 MeNPo4+QgO48BdK4PRVmrJ.tqhUUy54M
16fa40 6d 63 39 67 6e 39 30 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 mc9gn900PvhtgVguXDbjgv5E1hvcWAQU
16fa60 68 43 35 77 55 45 4a 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 hC5wUEJ73IfZzF4/5YFjQIDAQABo2MwY
16fa80 54 41 66 0a 42 67 4e 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 TAf.BgNVHSMEGDAWgBTj/i39KNALtbq2
16faa0 6f 73 53 2f 42 71 6f 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 osS/BqoFjJP7LzAPBgNVHRMBAf8EBTAD
16fac0 41 51 48 2f 4d 41 34 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 AQH/MA4GA1UdDwEB./wQEAwIBBjAdBgN
16fae0 56 48 51 34 45 46 67 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 VHQ4EFgQU4/4t/SjQC7W6tqLEvwaqBYy
16fb00 54 2b 79 38 77 44 51 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 T+y8wDQYJKoZIhvcNAQELBQADggIB.AC
16fb20 58 47 75 6d 76 72 68 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 XGumvrh8vegjmWPfBEp2uEcwPenStPui
16fb40 42 2f 76 48 69 79 7a 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 B/vHiyz5ewG5zz13ku9Ui20vsXiObTej
16fb60 2f 74 55 78 50 51 34 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 /tUxPQ4i9q.ecsAIyjmHjdXNYmEwnZPN
16fb80 44 61 74 5a 38 50 4f 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 DatZ8POQQaIxffu2Bq41gt/UP+TqhdLj
16fba0 4f 7a 74 55 6d 43 79 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 OztUmCypAbqTuv0axn96/Ua.4CUqmtzH
16fbc0 51 54 62 33 79 48 51 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 QTb3yHQFhDmVOdYLO6Qn+gjYXB74BGBS
16fbe0 45 53 67 6f 41 2f 2f 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 ESgoA//vU2YApUo0FmZ8/Qmkrp5nGm9B
16fc00 43 32 73 47 0a 45 35 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 C2sG.E5uPhnEFtC+NiWYzKXZUmhH4J/q
16fc20 79 50 35 48 67 7a 67 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 yP5Hgzg0b8zAarb8iXRvTvyUFTeGSGn+
16fc40 5a 6e 7a 78 45 6b 38 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 ZnzxEk8rUQElsgIfX.BDrDMlI1Dlb4pd
16fc60 31 39 78 49 73 4e 45 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 19xIsNER9Tyx6yF7Zod1rg1MvIB671Oi
16fc80 36 4f 4e 37 66 51 41 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 6ON7fQAUtDKXeMOZePglr4UeWJoBjn.a
16fca0 48 39 64 43 69 37 37 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 H9dCi77o0cOPaYjesYBx4/IXr9tgFa+i
16fcc0 69 53 36 4d 2b 71 66 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 iS6M+qf4TIRnvHST4D2G0CvOJ4RUHlzE
16fce0 68 4c 4e 35 6d 79 64 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 hLN5mydLIhy.PDCBBpEi6lmt2hkuIsKN
16fd00 75 59 79 48 34 47 61 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 uYyH4Ga8cyNfIWRjgEj1oDwYPZTISEEd
16fd20 51 4c 70 65 2f 76 35 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 QLpe/v5WOaHIz16eGWRGENoX.kbcFgKy
16fd40 4c 6d 5a 4a 39 35 36 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 LmZJ956LYBws2J+dIeWCKw9cTXPhyQN9
16fd60 4b 79 38 2b 5a 41 41 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 Ky8+ZAAoACxGV2lZFA4gKn2fQ1XmxqI1
16fd80 41 62 51 33 43 0a 65 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 AbQ3C.ekD6819kR5LLU7m7Wc5P/dAVUw
16fda0 48 59 33 2b 76 5a 35 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 HY3+vZ5nbv0CO7O6l5s9UCKc2Jo5YPSj
16fdc0 58 6e 54 6b 4c 41 64 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 XnTkLAdc0Hz+Ys63su.-----END.CERT
16fde0 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 45 6c 65 6b 74 72 6f IFICATE-----..T..RKTRUST.Elektro
16fe00 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 6c 61 79 c4 b1 63 c4 nik.Sertifika.Hizmet.Sa..lay..c.
16fe20 b1 73 c4 b1 20 48 35 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 .s...H5.========================
16fe40 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
16fe60 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
16fe80 49 45 4a 7a 43 43 41 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 IEJzCCAw+gAwIBAgIHAI4X/iQggTANBg
16fea0 6b 71 68 6b 69 47 39 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 kqhkiG9w0BAQsFADCBsTELMAkGA1UEBh
16fec0 4d 43 56 46 49 78 44 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 MCVFIxDzAN.BgNVBAcMBkFua2FyYTFNM
16fee0 45 73 47 41 31 55 45 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 EsGA1UECgxEVMOcUktUUlVTVCBCaWxna
16ff00 53 44 45 73 47 78 6c 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 SDEsGxldGnFn2ltIHZlIEJp.bGnFn2lt
16ff20 49 45 66 44 76 48 5a 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 IEfDvHZlbmxpxJ9pIEhpem1ldGxlcmkg
16ff40 51 53 37 46 6e 69 34 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 QS7Fni4xQjBABgNVBAMMOVTDnFJLVFJV
16ff60 55 31 51 67 0a 52 57 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 U1Qg.RWxla3Ryb25payBTZXJ0aWZpa2E
16ff80 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 58 50 45 73 53 42 gSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsSB
16ffa0 49 4e 54 41 65 46 77 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 INTAeFw0xMzA0MzAw.ODA3MDFaFw0yMz
16ffc0 41 30 4d 6a 67 77 4f 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 A0MjgwODA3MDFaMIGxMQswCQYDVQQGEw
16ffe0 4a 55 55 6a 45 50 4d 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 JUUjEPMA0GA1UEBwwGQW5rYXJhMU0w.S
170000 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 4a 70 62 47 64 70 49 wYDVQQKDERUw5xSS1RSVVNUIEJpbGdpI
170020 4d 53 77 62 47 56 30 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 MSwbGV0acWfaW0gdmUgQmlsacWfaW0gR
170040 38 4f 38 64 6d 56 75 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 8O8dmVubGnE.n2kgSGl6bWV0bGVyaSBB
170060 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 6b 74 55 55 6c 56 54 LsWeLjFCMEAGA1UEAww5VMOcUktUUlVT
170080 56 43 42 46 62 47 56 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 VCBFbGVrdHJvbmlrIFNlcnRp.ZmlrYSB
1700a0 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 63 38 53 78 49 45 67 IaXptZXQgU2HEn2xhecSxY8Sxc8SxIEg
1700c0 31 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 1MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8
1700e0 41 4d 49 49 42 0a 43 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 AMIIB.CgKCAQEApCUZ4WWe60ghUEoI5R
170100 48 77 57 72 6f 6d 2f 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 HwWrom/4NZzkQqL/7hzmAD/I0Dpe3/a6
170120 69 36 7a 44 51 47 6e 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 i6zDQGn1k19uwsu537.jVJp45wnEFPzp
170140 41 4c 46 70 2f 6b 52 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 ALFp/kRGml1bsMdi9GYjZOHp3GXDSHHm
170160 66 6c 53 30 79 78 6a 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 flS0yxjXVW86B8BSLlg/kJK9siArs1m.
170180 65 70 35 46 69 6d 68 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 ep5Fimh34khon6La8eHBEJ/rPCmBp+Ey
1701a0 43 4e 53 67 42 62 47 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 CNSgBbGM+42WAA4+Jd9ThiI7/PS98wl+
1701c0 64 2b 79 47 36 77 38 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 d+yG6w8z5UNP.9FR1bSmZLmZaQ9/LXMr
1701e0 49 35 54 6a 78 66 6a 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 I5Tjxfjs1nQ/0xVqhzPMggCTTV+wVunU
170200 6c 6d 2b 68 6b 53 37 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 lm+hkS7M0hO8EuPbJbKoCPrZV.4jI3X/
170220 78 6d 6c 31 2f 4e 31 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 xml1/N1p7HIL9Nxqw/dV8c7TKcfGkAaZ
170240 48 6a 49 78 68 54 36 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 HjIxhT6QIDAQABo0IwQDAdBgNVHQ4EFg
170260 51 55 56 70 6b 48 0a 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 QUVpkH.HtOsDGlktAxQR95DLL4gwPswD
170280 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/
1702a0 77 51 46 4d 41 4d 42 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 wQFMAMBAf8wDQYJKoZI.hvcNAQELBQAD
1702c0 67 67 45 42 41 4a 35 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 ggEBAJ5FdnsXSDLyOIspve6WSk6BGLFR
1702e0 52 79 44 4e 30 47 53 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 RyDN0GSxDsnZAdkJzsiZ3GglE9Rc8qPo
170300 0a 42 50 35 79 43 63 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 .BP5yCccLqh0lVX6Wmle3usURehnmp34
170320 39 68 51 37 31 2b 53 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 9hQ71+S4pL+f5bFgWV1Al9j4uPqrtd3G
170340 71 71 70 6d 57 52 67 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 qqpmWRgqujuwq.URawXs3qZwQcWDD1YI
170360 71 39 70 72 31 4e 35 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 q9pr1N5Za0/EKJAWv2cMhQOQwt1WbZyN
170380 4b 7a 4d 72 63 62 47 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 KzMrcbGW3LM/nfpeYVhDfwwvJl.lpKQd
1703a0 2f 43 74 39 4a 44 70 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 /Ct9JDpEXjXk4nAPQu6KfTomZ1yju2dL
1703c0 2b 36 53 66 61 48 78 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 +6SfaHx/126M2CFYv4HAqGEVka+lgqaE
1703e0 39 63 68 54 4c 64 38 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 9chTLd8.B59OTj+RdPsnnRHM3eaxynFN
170400 45 78 63 35 4a 73 55 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 Exc5JsUpISuTKWqW+qtB4Uu2NQvAmxU=
170420 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 54 c3 9c 52 .-----END.CERTIFICATE-----..T..R
170440 4b 54 52 55 53 54 20 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 KTRUST.Elektronik.Sertifika.Hizm
170460 65 74 20 53 61 c4 9f 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 et.Sa..lay..c..s...H6.==========
170480 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
1704a0 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
1704c0 46 49 43 41 54 45 2d 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 FICATE-----.MIIEJjCCAw6gAwIBAgIG
1704e0 66 61 48 79 5a 65 79 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 faHyZeyKMA0GCSqGSIb3DQEBCwUAMIGx
170500 4d 51 73 77 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 MQswCQYDVQQGEwJUUjEPMA0G.A1UEBww
170520 47 51 57 35 72 59 58 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 GQW5rYXJhMU0wSwYDVQQKDERUw5xSS1R
170540 53 56 56 4e 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 SVVNUIEJpbGdpIMSwbGV0acWfaW0gdmU
170560 67 51 6d 6c 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 gQmls.acWfaW0gR8O8dmVubGnEn2kgSG
170580 6c 36 62 57 56 30 62 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 l6bWV0bGVyaSBBLsWeLjFCMEAGA1UEAw
1705a0 77 35 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 w5VMOcUktUUlVTVCBF.bGVrdHJvbmlrI
1705c0 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 65 FNlcnRpZmlrYSBIaXptZXQgU2HEn2xhe
1705e0 63 53 78 59 38 53 78 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 cSxY8Sxc8SxIEg2MB4XDTEzMTIxODA5.
170600 4d 44 51 78 4d 46 6f 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 MDQxMFoXDTIzMTIxNjA5MDQxMFowgbEx
170620 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 41 5a 42 CzAJBgNVBAYTAlRSMQ8wDQYDVQQHDAZB
170640 62 6d 74 68 63 6d 45 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 bmthcmExTTBL.BgNVBAoMRFTDnFJLVFJ
170660 56 55 31 51 67 51 6d 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 VU1QgQmlsZ2kgxLBsZXRpxZ9pbSB2ZSB
170680 43 61 57 78 70 78 5a 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 CaWxpxZ9pbSBHw7x2ZW5sacSf.aSBIaX
1706a0 70 74 5a 58 52 73 5a 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 ptZXRsZXJpIEEuxZ4uMUIwQAYDVQQDDD
1706c0 6c 55 77 35 78 53 53 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 lUw5xSS1RSVVNUIEVsZWt0cm9uaWsgU2
1706e0 56 79 64 47 6c 6d 0a 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 VydGlm.aWthIEhpem1ldCBTYcSfbGF5x
170700 4c 46 6a 78 4c 46 7a 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 LFjxLFzxLEgSDYwggEiMA0GCSqGSIb3D
170720 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 64 73 47 6a 57 QEBAQUAA4IBDwAwggEK.AoIBAQCdsGjW
170740 36 4c 30 55 6c 71 4d 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 6L0UlqMACprx9MfMkU1xeHe59yEmFXNR
170760 46 70 51 4a 52 77 58 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 FpQJRwXiM/VomjX/3EsvMsew7eKC5W/a
170780 0a 32 75 71 73 78 67 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 .2uqsxgbPJQ1BgfbBOCK9+bGlprMBvD9
1707a0 51 46 79 76 32 36 57 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 QFyv26WZV1DOzXPhDIHiTVRZwGTLmidd
1707c0 6b 36 37 31 49 55 50 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 k671IUP320EED.wnS3/faAz1vFq6TWlR
1707e0 4b 62 35 35 63 54 4d 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 Kb55cTMgPp1KtDWxbtMyJkKbbSk60vbN
170800 67 39 74 76 59 64 44 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 g9tvYdDjTu0n2pVQ8g9P0pu5Fb.HH3GQ
170820 6a 68 74 51 69 68 74 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 jhtQiht1AH7zYiXSX6484P4tZgvsycLS
170840 46 35 57 35 30 36 6a 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 F5W506jM7NE1qXyGJTtHB6plVxiSvgNZ
170860 31 47 70 72 79 48 56 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 1GpryHV.+DKdeboaX+UEVU0TRv/yz3TH
170880 47 6d 4e 74 77 78 38 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 GmNtwx8XEsMeED5gCLMxAgMBAAGjQjBA
1708a0 4d 42 30 47 41 31 55 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 MB0GA1UdDgQWBBTdVRcT.9qzoSCHK77W
1708c0 76 30 51 41 79 37 5a 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 v0QAy7Z6MtTAOBgNVHQ8BAf8EBAMCAQY
1708e0 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 6b 71 68 6b 69 wDwYDVR0TAQH/BAUwAwEB/zANBgkqhki
170900 47 0a 39 77 30 42 41 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 G.9w0BAQsFAAOCAQEAb1gNl0OqFlQ+v6
170920 6e 66 6b 6b 55 2f 68 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 nfkkU/hQu7VtMMUszIv3ZnXuaqs6fvua
170940 79 30 45 42 51 4e 64 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 y0EBQNdH49ba3R.fdCaqaXKGDsCQC4qn
170960 46 41 55 69 2f 35 58 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 FAUi/5XfldcEQlLNkVS9z2sFP1E34uXI
170980 39 54 44 77 65 37 55 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 9TDwe7UU5X+LEr+DXCqu4svLcsy.o4Ly
1709a0 56 4e 2f 59 38 74 33 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 VN/Y8t3XSHLuSqMplsNEzm61kod2pLv0
1709c0 6b 6d 7a 4f 4c 42 51 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 kmzOLBQJZo6NrRa1xxsJYTvjIKIDgI6t
1709e0 66 6c 45 41 54 73 65 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 flEATseW.hvtDmHd9KMeP2Cpu54Rvl0E
170a00 70 41 42 5a 65 54 65 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 pABZeTeIT6lnAY2c6RPuY/ATTMHKm9oc
170a20 4a 56 36 31 32 70 68 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 JV612ph1jmv3XZch4gyt1.O6VbuA1df7
170a40 34 6a 72 6c 5a 56 6c 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 4jrlZVlFjvH4GMKrLN5ptjnhi85WsGtA
170a60 75 59 53 79 68 65 72 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 uYSyher4hYyw==.-----END.CERTIFIC
170a80 41 54 45 2d 2d 2d 2d 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 ATE-----..Certinomis.-.Root.CA.=
170aa0 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
170ac0 45 52 54 49 46 49 43 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 ERTIFICATE-----.MIIFkjCCA3qgAwIB
170ae0 41 67 49 42 41 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 AgIBATANBgkqhkiG9w0BAQsFADBaMQsw
170b00 43 51 59 44 56 51 51 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 CQYDVQQGEwJGUjETMBEGA1UEChMK.Q2V
170b20 79 64 47 6c 75 62 32 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 ydGlub21pczEXMBUGA1UECxMOMDAwMiA
170b40 30 4d 7a 4d 35 4f 54 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 0MzM5OTg5MDMxHTAbBgNVBAMTFENlcnR
170b60 70 62 6d 39 74 61 58 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 pbm9taXMg.LSBSb290IENBMB4XDTEzMT
170b80 41 79 4d 54 41 35 4d 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 AyMTA5MTcxOFoXDTMzMTAyMTA5MTcxOF
170ba0 6f 77 57 6a 45 4c 4d 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 owWjELMAkGA1UEBhMCRlIx.EzARBgNVB
170bc0 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 44 AoTCkNlcnRpbm9taXMxFzAVBgNVBAsTD
170be0 6a 41 77 4d 44 49 67 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 jAwMDIgNDMzOTk4OTAzMR0wGwYDVQQDE
170c00 78 52 44 0a 5a 58 4a 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 xRD.ZXJ0aW5vbWlzIC0gUm9vdCBDQTCC
170c20 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 67 49 50 41 44 43 43 AiIwDQYJKoZIhvcNAQEBBQADggIPADCC
170c40 41 67 6f 43 67 67 49 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 AgoCggIBANTMCQos.P5L2fxSeC5yaah1
170c60 41 4d 47 54 39 71 74 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 AMGT9qt8OHgZbn1CF6s2Nq0Nn3rD6foC
170c80 57 6e 6f 52 34 6b 6b 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 WnoR4kkjW4znuzuRZWJflLieY6pOo.d5
170ca0 74 4b 38 4f 39 30 67 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 tK8O90gC3rMB+12ceAnGInkYjwSond3I
170cc0 6a 6d 46 50 6e 56 41 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 jmFPnVAy//ldu9n+ws+hQVWZUKxkd8aR
170ce0 69 35 70 77 50 35 79 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 i5pwP5ynap.z8dvtF4F/u7BUrJ1Mofs7
170d00 53 6c 6d 4f 2f 4e 4b 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 SlmO/NKFoL21prbcpjp3vDFTKWrteoB4
170d20 6f 77 75 5a 48 39 6b 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 owuZH9kb/2jJZOLyKIOSY00.8B/sWEUu
170d40 4e 4b 71 45 55 4c 33 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 NKqEUL3nskoTuLAPrjhdsKkb5nPJWqHZ
170d60 5a 6b 43 71 71 55 32 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 ZkCqqU2mNAKthH6yI8H7KsZn9DS2sJVq
170d80 4d 30 39 78 0a 52 4c 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 M09x.RLWtwHkziOC/7aOgFLScCbAK42C
170da0 2b 2b 50 68 6d 69 4d 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 ++PhmiM1b8XcF4LVzbsF9Ri6OSyemzTU
170dc0 4b 2f 65 56 4e 66 61 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 K/eVNfaoqoynHWmgE.6OXWk6RiwsXm9E
170de0 2f 47 2b 5a 38 61 6a 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 /G+Z8ajYJJGYrKWUM66A0ywfRMEwNvbq
170e00 59 2f 6b 58 50 4c 79 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 Y/kXPLynNvEiCL7sCCeN5LLsJJwx3t.F
170e20 76 59 6b 39 43 63 62 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 vYk9CcbXFcx3FXuqB5vbKziRcxXV4p1V
170e40 78 6e 67 74 56 69 5a 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 xngtViZSTYxPDMBbRZKzbgqg4SGm/lg0
170e60 68 39 74 6b 51 50 54 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 h9tkQPTYKbV.PZrdd5A9NaSfD171UkRp
170e80 75 63 43 36 33 4d 39 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 ucC63M9933zZxKyGIjK8e2uR73r4F2iw
170ea0 34 6c 4e 56 59 43 32 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 4lNVYC2vPsKD2NkJK/DAZNuH.i5HMkes
170ec0 45 2f 58 61 30 6c 5a 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 E/Xa0lZrmFAYb1TQdvtj/dBxThZngWVJ
170ee0 4b 59 65 32 49 6e 6d 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 KYe2InmtJiUZ+IFrZ50rlau7SZRFDAgM
170f00 42 41 41 47 6a 0a 59 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 BAAGj.YzBhMA4GA1UdDwEB/wQEAwIBBj
170f20 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 44 67 APBgNVHRMBAf8EBTADAQH/MB0GA1UdDg
170f40 51 57 42 42 54 76 6b 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 QWBBTvkUz1pcMw6C8I.6tNxIqSSaHh02
170f60 54 41 66 42 67 4e 56 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 TAfBgNVHSMEGDAWgBTvkUz1pcMw6C8I6
170f80 74 4e 78 49 71 53 53 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 tNxIqSSaHh02TANBgkqhkiG9w0BAQsF.
170fa0 41 41 4f 43 41 67 45 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 AAOCAgEAfj1U2iJdGlg+O1QnurrMyOMa
170fc0 61 75 6f 2b 2b 52 4c 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 auo++RLrVl89UM7g6kgmJs95Vn6RHJk/
170fe0 30 4b 47 52 48 43 77 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 0KGRHCwPT5iV.WVO90CLYiF2cN/z7ZMF
171000 34 6a 49 75 61 59 41 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 4jIuaYAnq1fohX9B0ZedQxb8uuQsLrbW
171020 77 46 36 59 53 6a 4e 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 wF6YSjNRieOpWauwK0kDDPAUw.Pk2Ut5
171040 39 4b 41 39 4e 39 4a 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 9KA9N9J0u2/kTO+hkzGm2kQtHdzMjI1x
171060 5a 53 67 30 38 31 6c 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 ZSg081lLMSVX3l4kLr5JyTCcBMWwerx2
171080 30 52 6f 46 41 58 0a 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 0RoFAX.lCOotQqSD7J6wWAsOMwaplv/8
1710a0 67 7a 6a 71 68 38 63 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 gzjqh8c3LigkyfeY+N/IZ865Z764BNqd
1710c0 65 75 57 58 47 4b 52 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 euWXGKRlI5nU7aJ+BIJ.y29SWwNyhlCV
1710e0 43 4e 53 4e 68 34 59 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 CNSNh4YVH5Uk2KRvms6knZtt0rJ2BobG
171100 56 67 6a 46 36 77 6e 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 VgjF6wnaNsIbW0G+YSrjcOa4pvi2WsS9
171120 0a 49 66 66 2f 71 6c 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 .Iff/ql+hbHY5ZtbqTFXhADObE5hjyW/
171140 51 41 53 41 4a 4e 31 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 QASAJN1LnDE8+zbz1X5YnpyACleAu6Ad
171160 42 42 52 38 56 62 74 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 BBR8Vbtaw5Bng.DwKTACdyxYvRVB9dSs
171180 4e 41 6c 33 35 56 70 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 NAl35VpnzBMwQUAR1JIGkLGZOdblgi90
1711a0 41 4d 52 67 77 6a 59 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 AMRgwjY/M50n92Uaf0yKHxDHYi.I0ZSK
1711c0 53 33 69 6f 30 45 48 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 S3io0EHVmmY0gUJvGnHWmHNj4FgFU2A3
1711e0 5a 44 69 66 63 52 51 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 ZDifcRQ8ow7bkrHxuaAKzyBvBGAFhAn1
171200 2f 44 4e 50 33 6e 4d 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 /DNP3nM.cyrDflOR1m749fPH0FFNjkul
171220 57 2b 59 5a 46 7a 76 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 W+YZFzvWgQncItzujrnEj1PhZ7szuIgV
171240 52 73 2f 74 61 54 58 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 Rs/taTX/dQ1G885x4cVr.hkIGuUE=.--
171260 2d 2d 2d 45 4e 44 20 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 ---END.CERTIFICATE-----.<?php..i
171280 66 20 28 50 48 50 5f 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 f.(PHP_SAPI.!==.'cli').{.....ech
1712a0 6f 20 27 57 61 72 6e 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 o.'Warning:.Composer.should.be.i
1712c0 6e 76 6f 6b 65 64 20 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 nvoked.via.the.CLI.version.of.PH
1712e0 50 2c 20 6e 6f 74 20 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 P,.not.the.'.PHP_SAPI.'.SAPI'.PH
171300 50 5f 45 4f 4c 3b 0a 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 P_EOL;.}..require.__DIR__.'/../s
171320 72 63 2f 62 6f 6f 74 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 rc/bootstrap.php';..use.Composer
171340 5c 43 6f 6e 73 6f 6c 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 \Console\Application;..error_rep
171360 6f 72 74 69 6e 67 28 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 orting(-1);..if.(function_exists
171380 28 27 69 6e 69 5f 73 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 ('ini_set')).{.....@ini_set('dis
1713a0 70 6c 61 79 5f 65 72 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 play_errors',.1);......$memoryIn
1713c0 42 79 74 65 73 20 3d 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 Bytes.=.function.($value).{.....
1713e0 20 20 20 20 24 75 6e 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 ....$unit.=.strtolower(substr($v
171400 61 6c 75 65 2c 20 2d 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 alue,.-1,.1));.........$value.=.
171420 28 69 6e 74 29 20 24 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 (int).$value;.........switch($un
171440 69 74 29 20 7b 0a 20 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 it).{.............case.'g':.....
171460 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 20 20 20 ............$value.*=.1024;.....
171480 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 6c 61 74 ............//.no.break.(cumulat
1714a0 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 61 73 65 ive.multiplier).............case
1714c0 20 27 6d 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 2a 3d 20 .'m':.................$value.*=.
1714e0 31 30 32 34 3b 0a 20 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 1024;.................//.no.brea
171500 6b 20 28 63 75 6d 75 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 k.(cumulative.multiplier).......
171520 20 20 20 20 20 20 63 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 ......case.'k':.................
171540 24 76 61 6c 75 65 20 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 $value.*=.1024;.........}.......
171560 20 20 20 72 65 74 75 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 ...return.$value;.....};......$m
171580 65 6d 6f 72 79 4c 69 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 emoryLimit.=.trim(ini_get('memor
1715a0 79 5f 6c 69 6d 69 74 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 y_limit'));.....//.Increase.memo
1715c0 72 79 5f 6c 69 6d 69 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 ry_limit.if.it.is.lower.than.1GB
1715e0 0a 20 20 20 20 69 66 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 .....if.($memoryLimit.!=.-1.&&.$
171600 6d 65 6d 6f 72 79 49 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 memoryInBytes($memoryLimit).<.10
171620 32 34 20 2a 20 31 30 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 24.*.1024.*.1024).{.........@ini
171640 5f 73 65 74 28 27 6d 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 _set('memory_limit',.'1G');.....
171660 7d 0a 20 20 20 20 75 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 }.....unset($memoryInBytes,.$mem
171680 6f 72 79 4c 69 6d 69 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 oryLimit);.}..//.run.the.command
1716a0 20 61 70 70 6c 69 63 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 .application.$application.=.new.
1716c0 41 70 70 6c 69 63 61 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 Application();.$application->run
1716e0 28 29 3b 0a 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 35 20 4e 69 6c 73 20 41 64 65 ();..Copyright.(c).2015.Nils.Ade
171700 72 6d 61 6e 6e 2c 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 rmann,.Jordi.Boggiano..Permissio
171720 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
171740 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
171760 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
171780 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
1717a0 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
1717c0 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
1717e0 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
171800 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
171820 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
171840 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,
171860 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
171880 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
1718a0 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
1718c0 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
1718e0 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
171900 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
171920 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
171940 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
171960 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
171980 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
1719a0 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
1719c0 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
1719e0 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
171a00 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
171a20 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
171a40 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
171a60 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
171a80 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
171aa0 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
171ac0 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
171ae0 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
171b00 49 4e 47 53 20 49 4e 0a 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 0a ce 0e 0e 94 e6 6c 73 58 6b INGS.IN.THE.SOFTWARE........lsXk
171b20 77 00 ad 34 ad dd 66 98 b2 ab e8 02 00 00 00 47 42 4d 42 w..4..f........GBMB